feat: implement tenant management system including database schema, CRUD services, and bootstrap functionality

This commit is contained in:
2026-06-26 12:16:50 -03:00
parent 0dae985230
commit 1f9d876bc3
8 changed files with 394 additions and 5 deletions

View File

@@ -6,12 +6,17 @@ use App\Domains\Tenant\Models\Tenant;
use App\Domains\Tenant\Requests\StoreTenantRequest;
use App\Domains\Tenant\Requests\UpdateTenantRequest;
use App\Domains\Tenant\Resources\TenantResource;
use App\Domains\Tenant\Services\TenantService;
use App\Http\Controllers\Controller;
use Illuminate\Http\JsonResponse;
use Illuminate\Http\Response;
class TenantController extends Controller
{
public function __construct(protected TenantService $tenantService)
{
}
public function index(): JsonResponse
{
return TenantResource::collection(Tenant::query()->latest()->get())->response();
@@ -19,7 +24,7 @@ class TenantController extends Controller
public function store(StoreTenantRequest $request): JsonResponse
{
$tenant = Tenant::query()->create($request->validated());
$tenant = $this->tenantService->create($request->validated());
return TenantResource::make($tenant)->response()->setStatusCode(201);
}
@@ -31,7 +36,7 @@ class TenantController extends Controller
public function update(UpdateTenantRequest $request, Tenant $tenant): TenantResource
{
$tenant->update($request->validated());
$tenant = $this->tenantService->update($tenant, $request->validated());
return TenantResource::make($tenant);
}