add all controllers logic

This commit is contained in:
root
2026-03-11 17:53:15 -04:00
parent 3e6c577085
commit 2ef71cc92b
421 changed files with 12009 additions and 5211 deletions
@@ -0,0 +1,86 @@
<?php
namespace App\Http\Controllers\Api\Frontend;
use App\Http\Controllers\Api\BaseApiController;
use App\Http\Requests\Frontend\LandingTeacherRequest;
use App\Http\Resources\Frontend\LandingPageResource;
use App\Services\Frontend\LandingPageService;
use Illuminate\Http\JsonResponse;
class LandingPageController extends BaseApiController
{
public function __construct(private LandingPageService $service)
{
parent::__construct();
}
public function index(LandingTeacherRequest $request): JsonResponse
{
$payload = $this->service->dashboardForUser(
$request->user(),
$request->validated()['class_section_id'] ?? null
);
return $this->success([
'landing' => new LandingPageResource($payload),
]);
}
public function teacher(LandingTeacherRequest $request): JsonResponse
{
$payload = $this->service->teacher(
$request->user(),
$request->validated()['class_section_id'] ?? null
);
return $this->success([
'landing' => new LandingPageResource($payload),
]);
}
public function parent(): JsonResponse
{
$payload = $this->service->parent(auth()->user());
return $this->success([
'landing' => new LandingPageResource($payload),
]);
}
public function administrator(): JsonResponse
{
$payload = $this->service->administrator();
return $this->success([
'landing' => new LandingPageResource($payload),
]);
}
public function admin(): JsonResponse
{
$payload = $this->service->admin();
return $this->success([
'landing' => new LandingPageResource($payload),
]);
}
public function student(): JsonResponse
{
$payload = $this->service->student();
return $this->success([
'landing' => new LandingPageResource($payload),
]);
}
public function guest(): JsonResponse
{
$payload = $this->service->guest();
return $this->success([
'landing' => new LandingPageResource($payload),
]);
}
}