feat: Refactor bootstrap functionality by adding AdminApp and Tenant controllers, requests, resources, and services; remove deprecated event form components

This commit is contained in:
2026-08-03 13:37:37 -03:00
parent f4638bc984
commit 12697c2268
26 changed files with 207 additions and 283 deletions

View File

@@ -0,0 +1,22 @@
<?php
namespace App\Domains\Bootstrap\Services;
use App\Domains\Tenant\Models\SocialMedia;
use App\Domains\Tenant\Models\WebsiteType;
use Illuminate\Database\Eloquent\Collection;
class AdminAppBootstrapService
{
/** @return array{website_type: WebsiteType, social_media: Collection<int, SocialMedia>} */
public function get(string $domain): array
{
return [
'website_type' => WebsiteType::query()
->with(['siteLogo', 'footerLogo'])
->where('dominio', $domain)
->firstOrFail(),
'social_media' => SocialMedia::query()->orderBy('id')->get(),
];
}
}

View File

@@ -0,0 +1,26 @@
<?php
namespace App\Domains\Bootstrap\Services;
use App\Domains\Authorization\Enums\RoleCode;
use App\Domains\Tenant\Models\Tenant;
use App\Domains\Tenant\Services\TenantInformationService;
class TenantBootstrapService
{
public function __construct(protected TenantInformationService $tenantInformationService) {}
public function get(string $domain): Tenant
{
return $this->tenantInformationService->load(
Tenant::query()->where('dominio', $domain)->firstOrFail(),
[
'menues' => fn ($query) => $query->whereHas(
'roles',
fn ($query) => $query->where('codigo', RoleCode::User->value)
),
'categories' => fn ($query) => $query->orderBy('nombre'),
]
);
}
}