inti project
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
<?php
|
||||
declare(strict_types=1);
|
||||
namespace App\Http\Controllers\Students;
|
||||
use App\Domain\SchoolCore\Context\SchoolContext; use App\Domain\SchoolCore\Students\Contracts\GuardianServiceContract; use App\Http\Requests\Students\CreateGuardianRequest; use App\Http\Requests\Students\LinkGuardianRequest; use Illuminate\Http\Request; use Illuminate\Routing\Controller;
|
||||
final class GuardianController extends Controller { public function __construct(private readonly GuardianServiceContract $guardians){} public function store(CreateGuardianRequest $request): array { $context=$request->attributes->get(SchoolContext::class); return ['data'=>$this->guardians->createGuardian($context,$request->toDTO())]; } public function link(LinkGuardianRequest $request): array { $context=$request->attributes->get(SchoolContext::class); return ['data'=>$this->guardians->linkGuardianToStudent($context,$request->toDTO())]; } public function unlink(Request $request,int $student,int $guardian): array { $context=$request->attributes->get(SchoolContext::class); return ['data'=>$this->guardians->unlinkGuardianFromStudent($context,$student,$guardian,(string)$request->input('reason','unlink guardian'))]; } }
|
||||
Reference in New Issue
Block a user