diff --git a/Modules/Taxi/config/config.php b/Modules/Taxi/config/config.php new file mode 100644 index 0000000..b270344 --- /dev/null +++ b/Modules/Taxi/config/config.php @@ -0,0 +1,11 @@ + 'Taxi', + #Гаврилов + //КАК ЗАСТАВИТЬ ПРИ СОЗДАНИИ МОДУЛЯ ЭТОТ ПАРАМЕТР ПРОПИСЫВАТЬ АВТОМАТИЧЕСКИ? + 'name_ru' => 'Реестр заказа такси', //Добавляем вручную в каждый конфиг +]; diff --git a/Modules/Taxi/routes/api.php b/Modules/Taxi/routes/api.php new file mode 100644 index 0000000..a65688a --- /dev/null +++ b/Modules/Taxi/routes/api.php @@ -0,0 +1,50 @@ +prefix('v1')->name('api.')->group(function () { +// Route::get('taxi', fn (Request $request) => $request->user())->name('taxi'); +// }); + +Route::group([ + 'prefix' => 'taxi', + 'middleware' => 'checkAppAccess' + ], + function() { + Route::group( + ['middleware' => \Modules\Taxi\App\Http\Middleware\CheckTimeRqstAvailability::class], + function() { + //Route::post('/createOrder', [TaxiControllers\TaxiController::class, 'createTaxiOrder']); + //TODO. Какая будет ошибка, если регулярка не сможет проверить переданные параметр? Можно ли ввести какую-то проверку на уровне роутинга с возвратом конкретной ошибки? + // Route::post('/editOrder/{orderId}', [TaxiControllers\TaxiController::class, 'updateTaxiOrder'])->where('orderId', '^[0-9]+$'); + Route::get('/cancelRqst/{rqstId}', [TaxiControllers\TaxiController::class, 'cancelRqst'])->where('rqstId', '^[0-9]+$'); + Route::post('/createRqst', [TaxiControllers\TaxiController::class, 'createTaxiOrder']); + Route::patch('/editOrder/{orderId}', [TaxiControllers\TaxiController::class, 'updateTaxiOrder'])->where('orderId', '^[0-9]+$'); + }); + Route::get('/getActiveOrders', [TaxiControllers\TaxiController::class, 'getActiveOrders']); + Route::post('/getFilterOrders', [TaxiControllers\TaxiController::class, 'getFilterOrders']); + Route::get('/getEmpInfo/{userLogin}', [TaxiControllers\TaxiController::class, 'getUserInfoByLogin'])->where('userLogin', '^[a-zA-Z_]+[0-9]*$'); + Route::get('/getOfficeAddress/', [TaxiControllers\TaxiController::class, 'getOfficeAddress']); + #Гаврилов + //ВЫНЕСТИ ЭТОТ ЕНДПОИНТ ИЗ ГРУППЫ ТАКСИ И ВЫНЕСТИ МЕТОД ПОЛУЧЕНИЯ ВСЕХ ПОЛЬЗОВАТЕЛЕЙ ИЗ СТАРОГО МЭДЖИКА КАКИМ-ТО ОБЩИМ КОНТРОЛЛЕРОМ, СЕРВИСОМ? + Route::get('/getEmpInfo/', [TaxiControllers\TaxiController::class, 'getActiveUsersInfo']); + //Получаем временные промежутки для заказа такси + Route::get('/getTimePeriods/', [TaxiControllers\TaxiController::class, 'getTimePeriods']); + //Получаем данные по существующему заказу такси + Route::get('/getOrderById/{orderId}', [TaxiControllers\TaxiController::class, 'getOrderById'])->where('orderId', '^[0-9]+$'); + } +); diff --git a/Modules/Taxi/routes/web.php b/Modules/Taxi/routes/web.php new file mode 100644 index 0000000..6655b4e --- /dev/null +++ b/Modules/Taxi/routes/web.php @@ -0,0 +1,44 @@ + 'taxi', + 'middleware' => 'checkAppAccess' + ], + function() { + Route::get('/home', function() { + return view('taxi::taxi_home'); + })->name('taxi_home'); + #Гаврилов + //УБЕРИ ЕНДПОИНТ + Route::get('/checkredis', [TaxiControllers\TaxiController::class, 'testRedisMethod']); + #Гаврилов + //ПОСРЕДНИК АУТЕНТИФИКАЦИИ ЗДЕСЬ БУДЕТ СРАБАТЫВАТЬ? + //внедри внутри роута проверку существует ли запрос и можно ли его редачить (заказ на сегодня + время отправки еще не подошло, либо заказ на завтра) + Route::group(['middleware' => \Modules\Taxi\App\Http\Middleware\CheckTimeRqstAvailability::class], function() { + Route::get('/editOrder/{orderId}', function() { + return view('taxi::taxi_order'); + })->where('orderId', '^[0-9]+$'); + Route::post('/createRqst', [TaxiControllers\TaxiController::class, 'createTaxiOrder']); + Route::post('/editOrder/{orderId}', [TaxiControllers\TaxiController::class, 'updateTaxiOrder'])->where('orderId', '^[0-9]+$'); + Route::get('/createRqst', function() { + return view('taxi::taxi_order'); + })->middleware('checkPermission:admin'); //ГАВРИЛОВ. НЕ ЗАБУДЬ УБРАТЬ ДОСТУП К ЭТОМУ РОУТУ ДЛЯ АДМИНОВ, ОН ДОСТУПЕН ДЛЯ ВСЕХ + }); + } +);