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; $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, 'city_id' => $user->city_id ?? null, 'city_name' => $user->city_fa ?? null, '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, 'category_id' => $request->category_id, 'category_name' => MissionCategory::name($request->category_id), 'start_time' => $request->start_date, 'finish_time' => $request->end_date, 'state_id' => MissionStates::END_MISSION->value, 'state_name' => MissionStates::END_MISSION->label(), 'explanation' => $request->explanation, 'request_date' => now(), 'machine_id' => $machine->id, 'machine_code' => $machine->machine_code, 'station_id' => $user->station_id, 'station_name' => RahdariPoint::query()->find( $user->station_id)->name, 'km' => $violation->km ?? null, 'driver_id' => $request->driver, 'driver_name' => Rahdaran::query()->find($request->driver)->name, ]); $mission->rahdaran()->sync($request->rahdaran); $violation->update(['status' => 1]); // if ($mission->category_id == 2) { // $rpc = new OperatorController; // $rpc->store($mission); // } }); return $this->successResponse(); } public function store(StoreRequest $request): JsonResponse { $user = auth()->user(); MissionViolation::query()->create([ 'machine_id'=> CMMSMachine::query()->where('machine_code', '=', $request->machine_code)->value('id'), 'machine_code'=> $request->machine_code, 'type'=> MissionViolationType::KHOROJ_BEDONE_MOGAVEZ->value, 'status' => MissionViolationStatus::BEDON_EGHDAM->value, 'request_date' => now(), 'km' => $request->km, 'gps' => 0, 'province_id' => $user->province_id, 'province_name' => $user->province_fa, 'city_id' => $user->city_id, 'city_name' => $user->city_fa, ]); return $this->successResponse(); } public function show(MissionViolation $violation): JsonResponse { return $this->successResponse($violation); } public function update(UpdateRequest $request, MissionViolation $violation): JsonResponse { $violation->update([ 'enter_time' => $request->enter_time, 'exit_time' => $request->exit_time, ]); return $this->successResponse(); } public function destroy(MissionViolation $violation): JsonResponse { $violation->delete(); return $this->successResponse(); } }