|
- <?php
-
- namespace App\Http\Controllers\Web\SeasonTicketContract\Selection;
-
- use App\Http\Controllers\Web\FromKintoneController;
- use App\Logic\SeasonTicketContractSelectionManager;
- use Illuminate\Http\JsonResponse;
- use Illuminate\Http\Request;
-
- class FillCandidatesController extends FromKintoneController
- {
-
- public function name(): string
- {
- return "定期選考候補者設定";
- }
-
- public function description(): string
- {
- return "定期選考に候補者を設定する";
- }
-
-
- public function __construct(protected FillCandidatesParams $param)
- {
- parent::__construct();
- }
-
- protected function run(Request $request): JsonResponse
- {
- $param = $this->param;
-
- $manager = new SeasonTicketContractSelectionManager($param->recordNo);
- $manager->makeCandidates()
- ->save();
-
- $selection = $manager->getSelection();
-
- info(sprintf(
- "候補者設定 駐車場:%s 締日:%s 候補者数:%d件",
- $selection->parkingName,
- $selection->selectionFinalDate ? $selection->selectionFinalDate->format('Y/m/d') : "-",
- $selection->candidateList->count(),
- ));
-
- return $this->successResponse();
- }
- }
|