From 5e48777e1c4c1d803094af63d08b78b829936b13 Mon Sep 17 00:00:00 2001 From: faezehzafarbakhsh Date: Sat, 23 May 2026 13:45:05 +0330 Subject: [PATCH 1/4] create list for city and province --- .../app/User/Controllers/CityController.php | 25 +++++++++++++++++++ .../User/Controllers/ProvinceController.php | 24 ++++++++++++++++++ backend/routes/web.php | 15 +++++++++++ 3 files changed, 64 insertions(+) create mode 100755 backend/app/User/Controllers/CityController.php create mode 100755 backend/app/User/Controllers/ProvinceController.php diff --git a/backend/app/User/Controllers/CityController.php b/backend/app/User/Controllers/CityController.php new file mode 100755 index 00000000..eed3d80f --- /dev/null +++ b/backend/app/User/Controllers/CityController.php @@ -0,0 +1,25 @@ +successResponse($city); + } +} diff --git a/backend/app/User/Controllers/ProvinceController.php b/backend/app/User/Controllers/ProvinceController.php new file mode 100755 index 00000000..0d5e1500 --- /dev/null +++ b/backend/app/User/Controllers/ProvinceController.php @@ -0,0 +1,24 @@ +successResponse($province); + } +} diff --git a/backend/routes/web.php b/backend/routes/web.php index 28784019..07967c89 100755 --- a/backend/routes/web.php +++ b/backend/routes/web.php @@ -5,7 +5,9 @@ use App\Admin\Controllers\PermissionManagementController; use App\Admin\Controllers\RoleManagementController; use App\Admin\Controllers\UserManagementController; use App\User\Controllers\AuthController; +use App\User\Controllers\CityController; use App\User\Controllers\ProfileController; +use App\User\Controllers\ProvinceController; use Illuminate\Support\Facades\Route; Route::prefix('auth') @@ -26,3 +28,16 @@ Route::prefix('profile') Route::post('edit', 'edit')->name('edit'); Route::post('change_password', 'changePassword')->name('changePassword'); }); +Route::prefix('province') + ->name('province.') + ->controller(ProvinceController::class) + ->group(function () { + Route::get('list', 'list')->name('list'); + }); + +Route::prefix('city') + ->name('city.') + ->controller(CityController::class) + ->group(function () { + Route::get('list', 'list')->name('list'); + }); From 8554f4cc553d66416f0c783cf48f93c47a4e0f05 Mon Sep 17 00:00:00 2001 From: faezehzafarbakhsh Date: Sat, 23 May 2026 13:49:09 +0330 Subject: [PATCH 2/4] create list for city and province --- backend/app/User/Controllers/CityController.php | 7 ------- backend/app/User/Controllers/ProvinceController.php | 6 ------ 2 files changed, 13 deletions(-) diff --git a/backend/app/User/Controllers/CityController.php b/backend/app/User/Controllers/CityController.php index eed3d80f..eecd374c 100755 --- a/backend/app/User/Controllers/CityController.php +++ b/backend/app/User/Controllers/CityController.php @@ -4,15 +4,8 @@ namespace App\User\Controllers; use App\Http\Controllers\Controller; use App\Models\City; -use App\Models\Province; -use App\Models\User; use App\Traits\ApiResponse; -use App\User\Requests\Auth\LoginRequest; -use App\User\Requests\Auth\RegisterRequest; use Illuminate\Http\JsonResponse; -use Illuminate\Http\Request; -use Illuminate\Support\Facades\Auth; -use Illuminate\Support\Facades\Hash; class CityController extends Controller { diff --git a/backend/app/User/Controllers/ProvinceController.php b/backend/app/User/Controllers/ProvinceController.php index 0d5e1500..bc9d6b8c 100755 --- a/backend/app/User/Controllers/ProvinceController.php +++ b/backend/app/User/Controllers/ProvinceController.php @@ -4,14 +4,8 @@ namespace App\User\Controllers; use App\Http\Controllers\Controller; use App\Models\Province; -use App\Models\User; use App\Traits\ApiResponse; -use App\User\Requests\Auth\LoginRequest; -use App\User\Requests\Auth\RegisterRequest; use Illuminate\Http\JsonResponse; -use Illuminate\Http\Request; -use Illuminate\Support\Facades\Auth; -use Illuminate\Support\Facades\Hash; class ProvinceController extends Controller { From 9ad3d6cea0d3845df22cdf87194e7b440c072a5f Mon Sep 17 00:00:00 2001 From: faezehzafarbakhsh Date: Sat, 23 May 2026 14:03:10 +0330 Subject: [PATCH 3/4] create show for city and province --- backend/app/User/Controllers/CityController.php | 17 ++++++++++++++++- .../app/User/Controllers/ProvinceController.php | 17 ++++++++++++++++- backend/routes/web.php | 3 +++ 3 files changed, 35 insertions(+), 2 deletions(-) diff --git a/backend/app/User/Controllers/CityController.php b/backend/app/User/Controllers/CityController.php index eecd374c..25a796f4 100755 --- a/backend/app/User/Controllers/CityController.php +++ b/backend/app/User/Controllers/CityController.php @@ -2,16 +2,31 @@ namespace App\User\Controllers; +use App\Facades\DataTable\DataTableFacade; use App\Http\Controllers\Controller; use App\Models\City; use App\Traits\ApiResponse; use Illuminate\Http\JsonResponse; +use Illuminate\Http\Request; class CityController extends Controller { use ApiResponse; - public function list(City $city): JsonResponse + public function list(Request $request): JsonResponse + { + $data = DataTableFacade::run( + City::query(), + $request, + allowedFilters: ['*'], + allowedSortings: ['*'], + allowedSelects: ['id', 'name'] + ); + + return response()->json($data); + } + + public function show(City $city): JsonResponse { return $this->successResponse($city); } diff --git a/backend/app/User/Controllers/ProvinceController.php b/backend/app/User/Controllers/ProvinceController.php index bc9d6b8c..cfe81efa 100755 --- a/backend/app/User/Controllers/ProvinceController.php +++ b/backend/app/User/Controllers/ProvinceController.php @@ -2,16 +2,31 @@ namespace App\User\Controllers; +use App\Facades\DataTable\DataTableFacade; use App\Http\Controllers\Controller; +use App\Models\City; use App\Models\Province; use App\Traits\ApiResponse; use Illuminate\Http\JsonResponse; +use Illuminate\Http\Request; class ProvinceController extends Controller { use ApiResponse; + public function list(Request $request): JsonResponse + { + $data = DataTableFacade::run( + Province::query(), + $request, + allowedFilters: ['*'], + allowedSortings: ['*'], + allowedSelects: ['id', 'name'] + ); - public function list(Province $province): JsonResponse + return response()->json($data); + } + + public function show(Province $province): JsonResponse { return $this->successResponse($province); } diff --git a/backend/routes/web.php b/backend/routes/web.php index 07967c89..3287c409 100755 --- a/backend/routes/web.php +++ b/backend/routes/web.php @@ -28,11 +28,13 @@ Route::prefix('profile') Route::post('edit', 'edit')->name('edit'); Route::post('change_password', 'changePassword')->name('changePassword'); }); + Route::prefix('province') ->name('province.') ->controller(ProvinceController::class) ->group(function () { Route::get('list', 'list')->name('list'); + Route::get('/{province}', 'show')->name('show'); }); Route::prefix('city') @@ -40,4 +42,5 @@ Route::prefix('city') ->controller(CityController::class) ->group(function () { Route::get('list', 'list')->name('list'); + Route::get('/{city}', 'show')->name('show'); }); From 5c757e18233cf035d8077f1870db0494576c2cd1 Mon Sep 17 00:00:00 2001 From: faezehzafarbakhsh Date: Sat, 23 May 2026 15:13:12 +0330 Subject: [PATCH 4/4] create seeder for city and province --- .../app/User/Controllers/CityController.php | 19 ++---------------- .../User/Controllers/ProvinceController.php | 20 ++----------------- backend/routes/web.php | 2 -- 3 files changed, 4 insertions(+), 37 deletions(-) diff --git a/backend/app/User/Controllers/CityController.php b/backend/app/User/Controllers/CityController.php index 25a796f4..8ac7e042 100755 --- a/backend/app/User/Controllers/CityController.php +++ b/backend/app/User/Controllers/CityController.php @@ -2,32 +2,17 @@ namespace App\User\Controllers; -use App\Facades\DataTable\DataTableFacade; use App\Http\Controllers\Controller; use App\Models\City; use App\Traits\ApiResponse; use Illuminate\Http\JsonResponse; -use Illuminate\Http\Request; class CityController extends Controller { use ApiResponse; - public function list(Request $request): JsonResponse + public function list(): JsonResponse { - $data = DataTableFacade::run( - City::query(), - $request, - allowedFilters: ['*'], - allowedSortings: ['*'], - allowedSelects: ['id', 'name'] - ); - - return response()->json($data); - } - - public function show(City $city): JsonResponse - { - return $this->successResponse($city); + return response()->json(City::all(['id', 'name'])); } } diff --git a/backend/app/User/Controllers/ProvinceController.php b/backend/app/User/Controllers/ProvinceController.php index cfe81efa..0d340730 100755 --- a/backend/app/User/Controllers/ProvinceController.php +++ b/backend/app/User/Controllers/ProvinceController.php @@ -2,32 +2,16 @@ namespace App\User\Controllers; -use App\Facades\DataTable\DataTableFacade; use App\Http\Controllers\Controller; -use App\Models\City; use App\Models\Province; use App\Traits\ApiResponse; use Illuminate\Http\JsonResponse; -use Illuminate\Http\Request; class ProvinceController extends Controller { use ApiResponse; - public function list(Request $request): JsonResponse + public function list(): JsonResponse { - $data = DataTableFacade::run( - Province::query(), - $request, - allowedFilters: ['*'], - allowedSortings: ['*'], - allowedSelects: ['id', 'name'] - ); - - return response()->json($data); - } - - public function show(Province $province): JsonResponse - { - return $this->successResponse($province); + return response()->json(Province::all(['id', 'name'])); } } diff --git a/backend/routes/web.php b/backend/routes/web.php index 3287c409..cac32527 100755 --- a/backend/routes/web.php +++ b/backend/routes/web.php @@ -34,7 +34,6 @@ Route::prefix('province') ->controller(ProvinceController::class) ->group(function () { Route::get('list', 'list')->name('list'); - Route::get('/{province}', 'show')->name('show'); }); Route::prefix('city') @@ -42,5 +41,4 @@ Route::prefix('city') ->controller(CityController::class) ->group(function () { Route::get('list', 'list')->name('list'); - Route::get('/{city}', 'show')->name('show'); });