diff --git a/app/Enums/HarimStates.php b/app/Enums/HarimStates.php index 3e74b903..7e0a0a8d 100644 --- a/app/Enums/HarimStates.php +++ b/app/Enums/HarimStates.php @@ -8,7 +8,13 @@ enum HarimStates: int case Baresi_Imeni_Rah_Tavasot_Daftar_Harim = 2; case Baresi_Imeni_Rah_Tavasot_Moaven = 3; case Baresi_Imeni_Rah_Tavasot_Modir_Kol = 4; - case ERSAL_BE_PANJAREVAHED = 5; + 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_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; public static function name(int $state): string { @@ -17,7 +23,13 @@ enum HarimStates: int 2 => "بررسی ایمنی راه توسط ادارات حریم", 3 => "بررسی ایمنی راه توسط معاون ", 4 => "بررسی ایمنی راه توسط مدیر کل", - 5 => "ارسال به پنجره واحد", + 5 => "بررسی فایل آپلود شده توسط اداره حریم", + 6 => "بررسی فایل آپلود شده توسط معاون", + 7 => "بررسی فایل آپلود شده توسط مدیر", + 8 => "ارسال ضمانت نامه توسط کاربر", + 9 => "بارسال به پنجره واحد ( نیاز به راه دسترسی)", + 10 => "امکان پذیر نمی باشد", + 11 => "ارسال به پنجره واحد (بدون نیاز به راه دسترسی)", ]; return $mapArray[$state]; diff --git a/app/Http/Controllers/V3/Dashboard/Harim/GeneralManagerController.php b/app/Http/Controllers/V3/Dashboard/Harim/GeneralManagerController.php index 35fe4547..6645c841 100644 --- a/app/Http/Controllers/V3/Dashboard/Harim/GeneralManagerController.php +++ b/app/Http/Controllers/V3/Dashboard/Harim/GeneralManagerController.php @@ -8,6 +8,7 @@ use App\Facades\DataTable\DataTableFacade; use App\Http\Controllers\Controller; use App\Http\Requests\V3\Dashboard\Harim\GeneralManager\ConfirmRequest; use App\Http\Requests\V3\Dashboard\Harim\GeneralManager\RejectRequest; +use App\Http\Requests\V3\Dashboard\Harim\GeneralManager\ShowRequest; use App\Http\Traits\ApiResponse; use App\Models\Harim; use Illuminate\Http\JsonResponse; @@ -74,7 +75,7 @@ class GeneralManagerController extends Controller }); return $this->successResponse(); } - public function show(Harim $harim): JsonResponse + public function show(ShowRequest $request, Harim $harim): JsonResponse { return $this->successResponse($harim->load('histories')); diff --git a/app/Http/Controllers/V3/Dashboard/Harim/HarimOfficeController.php b/app/Http/Controllers/V3/Dashboard/Harim/HarimOfficeController.php index 9c06f67b..eaf9012f 100644 --- a/app/Http/Controllers/V3/Dashboard/Harim/HarimOfficeController.php +++ b/app/Http/Controllers/V3/Dashboard/Harim/HarimOfficeController.php @@ -6,6 +6,7 @@ use App\Enums\HarimAction; use App\Enums\HarimStates; use App\Facades\DataTable\DataTableFacade; use App\Http\Controllers\Controller; +use App\Http\Requests\V3\Dashboard\Harim\HarimOffice\ShowRequest; use App\Http\Requests\V3\Dashboard\Harim\HarimOffice\YesRequest; use App\Http\Requests\V3\Dashboard\Harim\HarimOffice\NoRequest; use App\Http\Traits\ApiResponse; @@ -78,8 +79,9 @@ class HarimOfficeController extends Controller }); return $this->successResponse(); } - public function show(Harim $harim): JsonResponse + public function show(ShowRequest $request, Harim $harim): JsonResponse { return $this->successResponse($harim->load('histories')); + } } diff --git a/app/Http/Controllers/V3/Dashboard/Harim/ProvinceOfficeController.php b/app/Http/Controllers/V3/Dashboard/Harim/ProvinceOfficeController.php index 43dd7ef6..5537e15f 100644 --- a/app/Http/Controllers/V3/Dashboard/Harim/ProvinceOfficeController.php +++ b/app/Http/Controllers/V3/Dashboard/Harim/ProvinceOfficeController.php @@ -56,9 +56,4 @@ class ProvinceOfficeController extends Controller }); return $this->successResponse(); } - - public function show(Harim $harim): JsonResponse - { - return $this->successResponse($harim); - } } diff --git a/app/Http/Controllers/V3/Dashboard/Harim/TechnicalDeputyController.php b/app/Http/Controllers/V3/Dashboard/Harim/TechnicalDeputyController.php index cbf7b4e4..a920d9fc 100644 --- a/app/Http/Controllers/V3/Dashboard/Harim/TechnicalDeputyController.php +++ b/app/Http/Controllers/V3/Dashboard/Harim/TechnicalDeputyController.php @@ -7,6 +7,7 @@ use App\Enums\HarimStates; use App\Facades\DataTable\DataTableFacade; use App\Http\Controllers\Controller; use App\Http\Requests\V3\Dashboard\Harim\Deputy\ConfirmRequest; +use App\Http\Requests\V3\Dashboard\Harim\Deputy\ShowRequest; use App\Http\Traits\ApiResponse; use App\Models\Harim; use Illuminate\Http\JsonResponse; @@ -22,7 +23,8 @@ class TechnicalDeputyController extends Controller $user = auth()->user(); $query = Harim::query() ->where('state_id', '=', HarimStates::Baresi_Imeni_Rah_Tavasot_Moaven->value) - ->where('edareh_shahri_id', '=', $user->edarate_shahri_id); + ->where('edare_shahri_id', '=', $user->edarate_shahri_id) + ->with('histories:expert_description'); $data = DataTableFacade::run( $query, @@ -76,8 +78,9 @@ class TechnicalDeputyController extends Controller }); return $this->successResponse(); } - public function show(Harim $harim): JsonResponse + public function show(ShowRequest $request, Harim $harim): JsonResponse { return $this->successResponse($harim->load('histories')); + } } diff --git a/app/Http/Requests/V3/Dashboard/Harim/Deputy/ShowRequest.php b/app/Http/Requests/V3/Dashboard/Harim/Deputy/ShowRequest.php new file mode 100644 index 00000000..e9301952 --- /dev/null +++ b/app/Http/Requests/V3/Dashboard/Harim/Deputy/ShowRequest.php @@ -0,0 +1,30 @@ +harim->edareh_shahri_id == auth()->user()->edarate_shahri_id && + $this->harim->state_id == HarimStates::Baresi_Imeni_Rah_Tavasot_Moaven->value; + } + + /** + * Get the validation rules that apply to the request. + * + * @return array|string> + */ + public function rules(): array + { + return [ + // + ]; + } +} diff --git a/app/Http/Requests/V3/Dashboard/Harim/GeneralManager/RejectRequest.php b/app/Http/Requests/V3/Dashboard/Harim/GeneralManager/RejectRequest.php index e81ecd88..b4281fea 100644 --- a/app/Http/Requests/V3/Dashboard/Harim/GeneralManager/RejectRequest.php +++ b/app/Http/Requests/V3/Dashboard/Harim/GeneralManager/RejectRequest.php @@ -13,7 +13,8 @@ class RejectRequest extends FormRequest public function authorize(): bool { return $this->harim->edareh_shahri_id == auth()->user()->edarate_shahri_id && - $this->harim->state_id == HarimStates::Baresi_Imeni_Rah_Tavasot_Modir_Kol->value; } + $this->harim->state_id == HarimStates::Baresi_Imeni_Rah_Tavasot_Modir_Kol->value; + } /** * Get the validation rules that apply to the request. diff --git a/app/Http/Requests/V3/Dashboard/Harim/GeneralManager/ShowRequest.php b/app/Http/Requests/V3/Dashboard/Harim/GeneralManager/ShowRequest.php new file mode 100644 index 00000000..186523b1 --- /dev/null +++ b/app/Http/Requests/V3/Dashboard/Harim/GeneralManager/ShowRequest.php @@ -0,0 +1,30 @@ +harim->edareh_shahri_id == auth()->user()->edarate_shahri_id && + $this->harim->state_id == HarimStates::Baresi_Imeni_Rah_Tavasot_Modir_Kol->value; + } + + /** + * Get the validation rules that apply to the request. + * + * @return array|string> + */ + public function rules(): array + { + return [ + // + ]; + } +} diff --git a/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/ShowRequest.php b/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/ShowRequest.php new file mode 100644 index 00000000..fe46f1a8 --- /dev/null +++ b/app/Http/Requests/V3/Dashboard/Harim/HarimOffice/ShowRequest.php @@ -0,0 +1,30 @@ +harim->edareh_shahri_id == auth()->user()->edarate_shahri_id && + $this->harim->state_id == HarimStates::Baresi_Imeni_Rah_Tavasot_Daftar_Harim->value; + } + + /** + * Get the validation rules that apply to the request. + * + * @return array|string> + */ + public function rules(): array + { + return [ + // + ]; + } +} diff --git a/database/migrations/2025_07_30_153041_create_harims_table.php b/database/migrations/2025_07_30_153041_create_harims_table.php index 231432fa..74ea3fa9 100644 --- a/database/migrations/2025_07_30_153041_create_harims_table.php +++ b/database/migrations/2025_07_30_153041_create_harims_table.php @@ -40,7 +40,8 @@ return new class extends Migration $table->string('file'); $table->json('polygon'); $table->boolean('need_road_access')->nullable(); - $table->integer('final_decision')->nullable(); + $table->boolean('is_file_good')->nullable(); + $table->boolean('is_possible')->nullable(); $table->string('final_description')->nullable(); $table->timestamps(); }); diff --git a/routes/v3.php b/routes/v3.php index 785be560..00fd6a2e 100644 --- a/routes/v3.php +++ b/routes/v3.php @@ -519,7 +519,6 @@ Route::prefix('harim') ->group(function () { Route::get('/', 'index')->name('index'); Route::post('/feedback/{harim}', 'feedback')->name('feedback'); - Route::get('/{harim}', 'show')->name('show'); }); Route::prefix('harim_office') ->name('harim_office.')