json($controlUnitService->datatable($request)); } public function start(StartRequest $request, Mission $mission): JsonResponse { DB::transaction(function () use ($request, $mission) { $mission->histories()->create([ 'user_id' => auth()->user()->id, 'previous_state_id' => $mission->state_id, 'previous_state_name' => $mission->state_name, 'start_time' => now() ]); $state = MissionStates::START_MISSION->value; $mission->update([ 'state_id' => $state, 'state_name' => MissionStates::name($state), ]); }); return $this->successResponse(); } public function finish(FinishRequest $request, Mission $mission): JsonResponse { DB::transaction(function () use ($request, $mission) { $mission->histories()->create([ 'user_id' => auth()->user()->id, 'previous_state_id' => $mission->state_id, 'previous_state_name' => $mission->state_name, 'finish_time' => now() ]); $state = MissionStates::END_MISSION->value; $mission->update([ 'state_id' => $state, 'state_name' => MissionStates::name($state), ]); }); return $this->successResponse(); } }