25 lines
793 B
PHP
25 lines
793 B
PHP
<?php
|
|
|
|
declare(strict_types=1);
|
|
|
|
namespace App\Http\Controllers\Attendance;
|
|
|
|
use App\Domain\SchoolCore\Attendance\Contracts\StudentAttendanceServiceContract;
|
|
use App\Domain\SchoolCore\Context\SchoolContext;
|
|
use App\Http\Requests\Attendance\RecordStudentAttendanceRequest;
|
|
use Illuminate\Routing\Controller;
|
|
|
|
final class StudentAttendanceController extends Controller
|
|
{
|
|
public function __construct(private StudentAttendanceServiceContract $students) {}
|
|
|
|
public function store(RecordStudentAttendanceRequest $request)
|
|
{
|
|
/** @var SchoolContext $context */
|
|
$context = $request->attributes->get(SchoolContext::class);
|
|
$result = $this->students->recordStudentAttendance($context, $request->toDTO());
|
|
|
|
return response()->json(['data' => $result]);
|
|
}
|
|
}
|