json($data); } /** * Store a newly created resource in storage. */ public function store(StoreRequest $request): JsonResponse { $azmayeshType = AzmayeshType::query()->findOrFail($request->azmayesh_type_id); $province = Province::query()->findOrFail($request->province_id); $user = auth()->user(); Azmayesh::query()->create([ 'lat' => $request->lat, 'lng' => $request->lng, 'azmayesh_type_id' => $azmayeshType->id, 'azmayesh_type_name' => $azmayeshType->name, 'request_date' => $request->request_date, 'report_date' => $request->report_date, 'request_number' => $request->request_number ?? '-', 'employer' => $request->employer ?? '-', 'contractor' => $request->contractor ?? '-', 'work_number' => $request->work_number ?? '-', 'project_name' => $request->project_name, 'consultant' => $request->consultant ?? '-', 'applicant' => $request->applicant ?? '-', 'province_id' => $province->id, 'province_name' => $province->name_fa, 'user_id' => $user->id, 'user_name' => $user->name, 'contract_subitem_id' => $request->contract_subitem_id ]); return $this->successResponse(); } /** * Display the specified resource. */ public function show(Azmayesh $azmayesh): JsonResponse { return $this->successResponse($azmayesh->load('azmayeshSamples')); } /** * Update the specified resource in storage. */ public function update(UpdateRequest $request, Azmayesh $azmayesh): JsonResponse { $province = Province::query()->findOrFail($request->province_id); $azmayeshType = AzmayeshType::query()->findOrFail($request->azmayesh_type_id); $azmayesh->update([ 'lat' => $request->lat, 'lng' => $request->lng, 'azmayesh_type_id' => $azmayeshType->id, 'azmayesh_type_name' => $azmayeshType->name, 'request_date' => $request->request_date, 'report_date' => $request->report_date, 'request_number' => $request->request_number ?? '-', 'employer' => $request->employer ?? '-', 'contractor' => $request->contractor ?? '-', 'work_number' => $request->work_number ?? '-', 'project_name' => $request->project_name, 'consultant' => $request->consultant ?? '-', 'applicant' => $request->applicant ?? '-', 'province_id' => $province->id, 'province_name' => $province->name_fa, 'contract_subitem_id' => $request->contract_subitem_id ]); return $this->successResponse(); } /** * Remove the specified resource from storage. */ public function destroy(Azmayesh $azmayesh): JsonResponse { try { $azmayesh->delete(); return $this->successResponse(); } catch (QueryException $exception) { return $this->errorResponse('امکان حذف وجود ندارد'); } } }