From a78a4fdfdc6612ce8d8b79099c1bd52afa486a89 Mon Sep 17 00:00:00 2001 From: amirghasempoor Date: Tue, 16 Sep 2025 09:19:36 +0330 Subject: [PATCH] add new columns to harim cartables --- app/Enums/HarimStates.php | 2 +- .../Harim/GeneralManagerController.php | 2 +- .../Dashboard/Harim/HarimOfficeController.php | 23 +++++++++++++++---- .../Harim/ProvinceOfficeController.php | 2 +- .../Harim/TechnicalDeputyController.php | 10 ++++---- .../Harim/Deputy/ConfirmRoadAccessRequest.php | 3 ++- .../V3/Dashboard/Harim/Deputy/ShowRequest.php | 6 +---- .../Harim/GeneralManager/ShowRequest.php | 6 +---- .../HarimOffice/NeedRoadAccessRequest.php | 1 + .../Harim/HarimOffice/ShowRequest.php | 9 +++----- .../HarimOffice/WithoutRoadAccessRequest.php | 1 + .../Harim/ProvinceOffice/FeedBackRequest.php | 3 +++ .../Harim/ProvinceOffice/ShowRequest.php | 3 +-- 13 files changed, 38 insertions(+), 33 deletions(-) diff --git a/app/Enums/HarimStates.php b/app/Enums/HarimStates.php index 9dcd1099..8f73c4c0 100644 --- a/app/Enums/HarimStates.php +++ b/app/Enums/HarimStates.php @@ -11,7 +11,7 @@ enum HarimStates: int case BARESI_FILE_APLODE_SHODE_TAVASOTE_DAFTAR_HARIM = 5; case BARESI_FILE_APLODE_SHODE_TAVASOTE_MOAVEN = 6; case BARESI_FILE_APLODE_SHODE_TAVASOTE_MODIR_KOL = 7; - case ERSAL_ZEMANAT_NAME_TAVASOTE_HARIM =8; + case ERSAL_ZEMANAT_NAME_TAVASOTE_KARBAR =8; case ERSAL_BE_PANJAREH_VAHED_NIAZ_BE_RAH_DASTRASI = 9; case EMKAN_PAZIR_NEMEBASHAD = 10; case ERSAL_BE_PANJAREH_VAHED_BEDONEH_NIAZ_BE_RAH_DASTRASI = 11; diff --git a/app/Http/Controllers/V3/Dashboard/Harim/GeneralManagerController.php b/app/Http/Controllers/V3/Dashboard/Harim/GeneralManagerController.php index e065acc3..73685ed5 100644 --- a/app/Http/Controllers/V3/Dashboard/Harim/GeneralManagerController.php +++ b/app/Http/Controllers/V3/Dashboard/Harim/GeneralManagerController.php @@ -32,7 +32,6 @@ class GeneralManagerController extends Controller public function index(Request $request): JsonResponse { $query = Harim::query() - ->whereIn('state_id', [HarimStates::BARESI_TAVASOT_MODIR_KOL->value, HarimStates::BARESI_FILE_APLODE_SHODE_TAVASOTE_MODIR_KOL->value]) ->where('edareh_shahri_id', '=', auth()->user()->edarate_shahri_id); $data = DataTableFacade::run( @@ -41,6 +40,7 @@ class GeneralManagerController extends Controller allowedFilters: ['*'], allowedSortings: ['*'] ); + return response()->json($data); } diff --git a/app/Http/Controllers/V3/Dashboard/Harim/HarimOfficeController.php b/app/Http/Controllers/V3/Dashboard/Harim/HarimOfficeController.php index 3f5c3587..242aa8d7 100644 --- a/app/Http/Controllers/V3/Dashboard/Harim/HarimOfficeController.php +++ b/app/Http/Controllers/V3/Dashboard/Harim/HarimOfficeController.php @@ -14,6 +14,7 @@ use App\Http\Requests\V3\Dashboard\Harim\HarimOffice\NeedRoadAccessRequest; use App\Http\Requests\V3\Dashboard\Harim\HarimOffice\WithoutRoadAccessRequest; use App\Http\Traits\ApiResponse; use App\Models\Harim; +use App\Models\Province; use Illuminate\Http\JsonResponse; use Illuminate\Http\Request; use Illuminate\Support\Facades\DB; @@ -25,10 +26,6 @@ class HarimOfficeController extends Controller public function index(Request $request): JsonResponse { $query = Harim::query() - ->whereIn('state_id', [ - HarimStates::BARESI_TAVASOT_DAFTAR_HARIM->value, - HarimStates::BARESI_FILE_APLODE_SHODE_TAVASOTE_DAFTAR_HARIM->value, - ]) ->where('edareh_shahri_id', '=', auth()->user()->edarate_shahri_id); $data = DataTableFacade::run( @@ -63,6 +60,7 @@ class HarimOfficeController extends Controller 'is_possible' => false, ]); }); + return $this->successResponse(); } @@ -87,12 +85,13 @@ class HarimOfficeController extends Controller 'state_name' => HarimStates::name($state), 'is_possible' => true, 'need_access_road' => true, + 'need_payment' => $request->need_payment ]); }); + return $this->successResponse(); } - public function withoutRoadAccess(WithoutRoadAccessRequest $request, Harim $harim): JsonResponse { DB::transaction(function () use ($request,$harim) { @@ -113,8 +112,10 @@ class HarimOfficeController extends Controller 'state_name' => HarimStates::name($state), 'is_possible' => true, 'need_access_road' => false, + 'need_payment' => $request->need_payment ]); }); + return $this->successResponse(); } public function fileAccepted(FileAcceptedRequest $request, Harim $harim): JsonResponse @@ -138,6 +139,7 @@ class HarimOfficeController extends Controller 'access_road_allowed' => true, ]); }); + return $this->successResponse(); } public function fileRejected(FileRejectedRequest $request, Harim $harim): JsonResponse @@ -161,11 +163,22 @@ class HarimOfficeController extends Controller 'access_road_allowed' => false, ]); }); + return $this->successResponse(); } public function show(ShowRequest $request, Harim $harim): JsonResponse { return $this->successResponse($harim->load('histories')); + } + public function referToCity(Request $request, Harim $harim) + { + $province = Province::query()->find($request->province_id); + + $harim->update([ + 'edareh_shahri_id' => $request->edarate_shahri_id, + 'province_id' => $province->id, + 'province_name' => $province->name_fa, + ]); } } diff --git a/app/Http/Controllers/V3/Dashboard/Harim/ProvinceOfficeController.php b/app/Http/Controllers/V3/Dashboard/Harim/ProvinceOfficeController.php index 0e178706..f4e38618 100644 --- a/app/Http/Controllers/V3/Dashboard/Harim/ProvinceOfficeController.php +++ b/app/Http/Controllers/V3/Dashboard/Harim/ProvinceOfficeController.php @@ -22,7 +22,6 @@ class ProvinceOfficeController extends Controller { $user = auth()->user(); $query = Harim::query() - ->where('state_id', '=', HarimStates::BARESI_EDARE_SHAHRESTAN->value) ->where('edareh_shahri_id', '=', $user->edarate_shahri_id); $data = DataTableFacade::run( @@ -53,6 +52,7 @@ class ProvinceOfficeController extends Controller $harim ->update([ 'state_id' => $state, 'state_name' => HarimStates::name($state), + 'forbidden_area' => $request->input('forbidden_area'), ]); }); return $this->successResponse(); diff --git a/app/Http/Controllers/V3/Dashboard/Harim/TechnicalDeputyController.php b/app/Http/Controllers/V3/Dashboard/Harim/TechnicalDeputyController.php index 749a73ab..b9004306 100644 --- a/app/Http/Controllers/V3/Dashboard/Harim/TechnicalDeputyController.php +++ b/app/Http/Controllers/V3/Dashboard/Harim/TechnicalDeputyController.php @@ -23,10 +23,6 @@ class TechnicalDeputyController extends Controller public function index(Request $request): JsonResponse { $query = Harim::query() - ->whereIn('state_id', [ - HarimStates::BARESI_FILE_APLODE_SHODE_TAVASOTE_MOAVEN->value, - HarimStates::BARESI_TAVASOT_MOAVEN->value, - ]) ->where('edareh_shahri_id', '=', auth()->user()->edarate_shahri_id); $data = DataTableFacade::run( @@ -59,8 +55,8 @@ class TechnicalDeputyController extends Controller 'state_name' => HarimStates::name($state), ]); }); - return $this->successResponse(); + return $this->successResponse(); } public function referRequest(ReferRequest $request, Harim $harim): JsonResponse { @@ -83,6 +79,7 @@ class TechnicalDeputyController extends Controller 'state_name' => HarimStates::name($state), ]); }); + return $this->successResponse(); } public function confirmRoadAccess(ConfirmRoadAccessRequest $request, Harim $harim): JsonResponse @@ -105,6 +102,7 @@ class TechnicalDeputyController extends Controller 'state_name' => HarimStates::name($state), ]); }); + return $this->successResponse(); } @@ -128,11 +126,11 @@ class TechnicalDeputyController extends Controller 'state_name' => HarimStates::name($state), ]); }); + return $this->successResponse(); } public function show(ShowRequest $request, Harim $harim): JsonResponse { return $this->successResponse($harim->load('histories')); - } } diff --git a/app/Http/Requests/V3/Dashboard/Harim/Deputy/ConfirmRoadAccessRequest.php b/app/Http/Requests/V3/Dashboard/Harim/Deputy/ConfirmRoadAccessRequest.php index 525e72fd..119e6524 100644 --- a/app/Http/Requests/V3/Dashboard/Harim/Deputy/ConfirmRoadAccessRequest.php +++ b/app/Http/Requests/V3/Dashboard/Harim/Deputy/ConfirmRoadAccessRequest.php @@ -3,6 +3,7 @@ namespace App\Http\Requests\V3\Dashboard\Harim\Deputy; use App\Enums\HarimStates; +use Illuminate\Contracts\Validation\ValidationRule; use Illuminate\Foundation\Http\FormRequest; class ConfirmRoadAccessRequest extends FormRequest @@ -19,7 +20,7 @@ class ConfirmRoadAccessRequest extends FormRequest /** * Get the validation rules that apply to the request. * - * @return array|string> + * @return array */ public function rules(): array { diff --git a/app/Http/Requests/V3/Dashboard/Harim/Deputy/ShowRequest.php b/app/Http/Requests/V3/Dashboard/Harim/Deputy/ShowRequest.php index 0264699f..f23097b6 100644 --- a/app/Http/Requests/V3/Dashboard/Harim/Deputy/ShowRequest.php +++ b/app/Http/Requests/V3/Dashboard/Harim/Deputy/ShowRequest.php @@ -12,11 +12,7 @@ class ShowRequest extends FormRequest */ public function authorize(): bool { - return $this->harim->edareh_shahri_id == auth()->user()->edarate_shahri_id && - in_array($this->harim->state_id, [ - HarimStates::BARESI_TAVASOT_MOAVEN->value, - HarimStates::BARESI_FILE_APLODE_SHODE_TAVASOTE_MOAVEN->value, - ]); + return $this->harim->edareh_shahri_id == auth()->user()->edarate_shahri_id; } /** diff --git a/app/Http/Requests/V3/Dashboard/Harim/GeneralManager/ShowRequest.php b/app/Http/Requests/V3/Dashboard/Harim/GeneralManager/ShowRequest.php index 47e8bdce..22904351 100644 --- a/app/Http/Requests/V3/Dashboard/Harim/GeneralManager/ShowRequest.php +++ b/app/Http/Requests/V3/Dashboard/Harim/GeneralManager/ShowRequest.php @@ -12,11 +12,7 @@ class ShowRequest extends FormRequest */ public function authorize(): bool { - return $this->harim->edareh_shahri_id == auth()->user()->edarate_shahri_id && - in_array($this->harim->state_id, [ - HarimStates::BARESI_TAVASOT_MODIR_KOL->value, - HarimStates::BARESI_FILE_APLODE_SHODE_TAVASOTE_MODIR_KOL->value - ]); + return $this->harim->edareh_shahri_id == auth()->user()->edarate_shahri_id; } /** diff --git a/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/NeedRoadAccessRequest.php b/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/NeedRoadAccessRequest.php index 6e83e4ad..e7dd187a 100644 --- a/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/NeedRoadAccessRequest.php +++ b/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/NeedRoadAccessRequest.php @@ -25,6 +25,7 @@ class NeedRoadAccessRequest extends FormRequest { return [ 'expert_description' => 'required|string', + 'need_payment' => 'required|in:0,1', ]; } } diff --git a/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/ShowRequest.php b/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/ShowRequest.php index 71977382..375a5581 100644 --- a/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/ShowRequest.php +++ b/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/ShowRequest.php @@ -3,6 +3,7 @@ namespace App\Http\Requests\V3\Dashboard\Harim\HarimOffice; use App\Enums\HarimStates; +use Illuminate\Contracts\Validation\ValidationRule; use Illuminate\Foundation\Http\FormRequest; class ShowRequest extends FormRequest @@ -12,18 +13,14 @@ class ShowRequest extends FormRequest */ public function authorize(): bool { - return $this->harim->edareh_shahri_id == auth()->user()->edarate_shahri_id && - in_array($this->harim->state_id, [ - HarimStates::BARESI_TAVASOT_DAFTAR_HARIM->value, - HarimStates::BARESI_FILE_APLODE_SHODE_TAVASOTE_DAFTAR_HARIM->value, - ]); + return $this->harim->edareh_shahri_id == auth()->user()->edarate_shahri_id; } /** * Get the validation rules that apply to the request. * - * @return array|string> + * @return array */ public function rules(): array { diff --git a/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/WithoutRoadAccessRequest.php b/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/WithoutRoadAccessRequest.php index 44c64bfa..17cb99e1 100644 --- a/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/WithoutRoadAccessRequest.php +++ b/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/WithoutRoadAccessRequest.php @@ -25,6 +25,7 @@ class WithoutRoadAccessRequest extends FormRequest { return [ 'expert_description' => 'required|string', + 'need_payment' => 'required|in:0,1', ]; } } diff --git a/app/Http/Requests/V3/Dashboard/Harim/ProvinceOffice/FeedBackRequest.php b/app/Http/Requests/V3/Dashboard/Harim/ProvinceOffice/FeedBackRequest.php index 3c0b229b..8bc9d03f 100644 --- a/app/Http/Requests/V3/Dashboard/Harim/ProvinceOffice/FeedBackRequest.php +++ b/app/Http/Requests/V3/Dashboard/Harim/ProvinceOffice/FeedBackRequest.php @@ -25,6 +25,9 @@ class FeedBackRequest extends FormRequest { return [ 'expert_description' => 'required|string', + 'forbidden_area' => 'required|array', + 'forbidden_area.type' => 'required|string', + 'forbidden_area.coordinates' => 'required|array', ]; } } diff --git a/app/Http/Requests/V3/Dashboard/Harim/ProvinceOffice/ShowRequest.php b/app/Http/Requests/V3/Dashboard/Harim/ProvinceOffice/ShowRequest.php index 59739c40..f0c0d996 100644 --- a/app/Http/Requests/V3/Dashboard/Harim/ProvinceOffice/ShowRequest.php +++ b/app/Http/Requests/V3/Dashboard/Harim/ProvinceOffice/ShowRequest.php @@ -12,8 +12,7 @@ class ShowRequest extends FormRequest */ public function authorize(): bool { - return $this->harim->edareh_shahri_id == auth()->user()->edarate_shahri_id && - $this->harim->state_id == HarimStates::BARESI_EDARE_SHAHRESTAN->value; + return $this->harim->edareh_shahri_id == auth()->user()->edarate_shahri_id; }