dataTable($request); return response()->json($data); } /** * @throws Throwable */ public function noProcess(NoProcessRequest $request, MissionViolation $violation): JsonResponse { DB::transaction(function () use ($request, $violation) { $start = Carbon::parse($request->start_date); $end = Carbon::parse($request->end_date); $type = $start->diffInMinutes($end) > 480 ? MissionTypes::NO_PROCESS_ROZANE->value : MissionTypes::NO_PROCESS_SAATY->value; $user = auth()->user(); $zone = $request->zone; $state = MissionStates::END_MISSION->value; $machine = CMMSMachine::query()->where('machine_code', '=', $violation->machine_code)->first(['id', 'machine_code']); $mission = Mission::query()->create([ 'user_id' => $user->id, 'username' => $user->username, 'province_id' => $user->province_id, 'province_name' => $user->province_fa, 'edare_shahri_id' => $user->edarate_shahri_id ?? null, 'edare_shahri_name' => $user->edarate_shahri_name ?? null, 'zone' => $zone, 'zone_fa' => MissionZones::name($zone), 'type' => $type, 'type_fa' => MissionTypes::name($type), 'start_date' => $request->start_date,// 'end_date' => $request->end_date,// 'end_point' => $request->end_point, 'area' => json_encode($request->area),// 'category_id' => $request->category_id, 'category_name' => MissionCategory::name($request->category_id), 'start_time' => $request->start_date,// 'finish_time' => $request->end_date,// 'state_id' => $state, 'state_name' => MissionStates::name($state), 'explanation' => $request->explanation, 'request_date' => now(), 'machine_id' => $machine->id,// 'machine_code' => $machine->machine_code,// ]); $mission->rahdaran()->sync($request->rahdaran); $mission->rahdaran()->attach($request->driver, ['is_driver' => true]); $violation->update(['status' => 1]); if ($mission->category_id == 2) { $rpc = new OperatorController; $rpc->store($mission); } }); return $this->successResponse(); } }