feat: Add IT Support catalog and related migrations, seeders, and email templates

- Created migration to add 'group_label' to 'product_type_fields' table.
- Implemented ItSupportCatalogSeeder to populate IT Support features and tiers.
- Added ProductCategorySeeder for initial product categories.
- Developed ProductMockupSeeder for mockup products in various categories.
- Introduced ProductTypeFieldSeeder to define fields for different product types.
- Created email templates for VPS service information and service renewal reminders.
This commit is contained in:
baodev0
2026-08-26 16:19:38 +07:00
parent 382b7c0ef8
commit c917e3bf5e
47 changed files with 2992 additions and 1759 deletions
@@ -0,0 +1,21 @@
<?php
namespace App\Services\Customer\Concerns;
use App\Models\Customer;
use App\Repositories\Customer\CustomerRepositoryInterface;
/**
* @property-read CustomerRepositoryInterface $customerRepository
*/
trait ResolvesCustomer
{
protected function resolveCustomer(string $uuid): Customer
{
$customer = $this->customerRepository->findBy('uuid', $uuid);
abort_if(!$customer, 404, "Can't find customer by UUID #{$uuid}");
return $customer;
}
}