'admin', 'as' => 'admin.'], function () { // Login Routes. Route::post('/login/submit', [LoginController::class, 'login'])->name('login.submit'); Route::get('/login', [LoginController::class, 'showLoginForm'])->name('login'); // Logout Routes. Route::post('/logout/submit', [LoginController::class, 'logout'])->name('logout.submit'); }); /** * Admin routes */ Route::group(['prefix' => 'admin', 'as' => 'admin.', 'middleware' => ['auth:admin', 'menu']], function () { Route::resource('admins', AdminsController::class); Route::get('/admins/expense/{user_id}', [AdminsController::class, 'expense'])->name('admins.expense'); Route::resource('roles', RolesController::class); Route::get('/admin', [DashboardController::class, 'index'])->name('dashboard'); // Rayon Route::get('/rayon', [RayonController::class, 'index'])->name('rayon.index'); Route::get('/rayon/create', [RayonController::class, 'create'])->name('rayon.create'); Route::post('/rayon/store', [RayonController::class, 'store'])->name('rayon.store'); Route::get('/rayon/edit/{id}', [RayonController::class, 'edit'])->name('rayon.edit'); Route::put('/rayon/update/{id}', [RayonController::class, 'update'])->name('rayon.update'); Route::delete('/rayon/destroy/{id}', [RayonController::class, 'destroy'])->name('rayon.destroy'); // Cost Centre Route::get('/cost', [CostCentreController::class, 'index'])->name('cost.index'); Route::get('/cost/create', [CostCentreController::class, 'create'])->name('cost.create'); Route::post('/cost/store', [CostCentreController::class, 'store'])->name('cost.store'); Route::get('/cost/edit/{id}', [CostCentreController::class, 'edit'])->name('cost.edit'); Route::put('/cost/update/{id}', [CostCentreController::class, 'update'])->name('cost.update'); Route::delete('/cost/destroy/{id}', [CostCentreController::class, 'destroy'])->name('cost.destroy'); // Category Route::get('/category', [CategoryController::class, 'index'])->name('category.index'); Route::get('/category/create', [CategoryController::class, 'create'])->name('category.create'); Route::post('/category/store', [CategoryController::class, 'store'])->name('category.store'); Route::get('/category/edit/{id}', [CategoryController::class, 'edit'])->name('category.edit'); Route::put('/category/update/{id}', [CategoryController::class, 'update'])->name('category.update'); Route::delete('/category/destroy/{id}', [CategoryController::class, 'destroy'])->name('category.destroy'); // Audit Trail Route::get('/audit-trails', [AuditTrailController::class, 'index'])->name('audit-trail.index'); })->middleware(['auth:admin']); Route::middleware(['auth:admin', 'menu'])->group(function () { Route::get('/', [DashboardController::class, 'index'])->name('dashboard.index'); // Forms Route::prefix('forms')->group(function () { // Up Country Route::get('/up-country', [FormUpCountryController::class, 'index'])->name('forms.up-country'); Route::get('/up-country/detail/{id}', [FormUpCountryController::class, 'detail'])->name('forms.up-country.detail'); Route::get('/up-country/create', [FormUpCountryController::class, 'create'])->name('forms.up-country.create'); Route::post('/up-country/store', [FormUpCountryController::class, 'store'])->name('forms.up-country.store'); Route::get('/up-country/edit/{id}', [FormUpCountryController::class, 'edit'])->name('forms.up-country.edit'); Route::put('/up-country/update/{id}', [FormUpCountryController::class, 'update'])->name('forms.up-country.update'); Route::delete('/up-country/destroy/{id}', [FormUpCountryController::class, 'destroy'])->name('forms.up-country.destroy'); Route::put('/up-country/approve/{id}', [FormUpCountryController::class, 'approve'])->name('forms.up-country.approve'); Route::put('/up-country/reject/{id}', [FormUpCountryController::class, 'reject'])->name('forms.up-country.reject'); Route::put('/up-country/final-approve/{id}', [FormUpCountryController::class, 'finalApprove'])->name('forms.up-country.final-approve'); Route::put('/up-country/open/{id}', [FormUpCountryController::class, 'open'])->name('forms.up-country.open'); // Vehicle Running Cost Route::get('/vehicle-running-cost', [FormVehicleController::class, 'index'])->name('forms.vehicle'); Route::get('/vehicle-running-cost/create', [FormVehicleController::class, 'create'])->name('forms.vehicle.create'); Route::post('/vehicle-running-cost/store', [FormVehicleController::class, 'store'])->name('forms.vehicle.store'); Route::get('/vehicle-running-cost/edit/{id}', [FormVehicleController::class, 'edit'])->name('forms.vehicle.edit'); Route::put('/vehicle-running-cost/update/{id}', [FormVehicleController::class, 'update'])->name('forms.vehicle.update'); Route::delete('/vehicle-running-cost/destroy/{id}', [FormVehicleController::class, 'destroy'])->name('forms.vehicle.destroy'); Route::put('/vehicle-running-cost/approve/{id}', [FormVehicleController::class, 'approve'])->name('forms.vehicle.approve'); Route::put('/vehicle-running-cost/reject/{id}', [FormVehicleController::class, 'reject'])->name('forms.vehicle.reject'); Route::put('/vehicle-running-cost/final-approve/{id}', [FormVehicleController::class, 'finalApprove'])->name('forms.vehicle.final-approve'); Route::put('/vehicle-running-cost/open/{id}', [FormVehicleController::class, 'open'])->name('forms.vehicle.open'); // Entertainment & Presentation Route::get('/entertainment-presentation', [FormEntertainmentPresentationController::class, 'index'])->name('forms.entertainment'); Route::get('/entertainment-presentation/create', [FormEntertainmentPresentationController::class, 'create'])->name('forms.entertainment.create'); Route::post('/entertainment-presentation/store', [FormEntertainmentPresentationController::class, 'store'])->name('forms.entertainment.store'); Route::get('/entertainment-presentation/edit/{id}', [FormEntertainmentPresentationController::class, 'edit'])->name('forms.entertainment.edit'); Route::put('/entertainment-presentation/update/{id}', [FormEntertainmentPresentationController::class, 'update'])->name('forms.entertainment.update'); Route::delete('/entertainment-presentation/destroy/{id}', [FormEntertainmentPresentationController::class, 'destroy'])->name('forms.entertainment.destroy'); Route::put('/entertainment-presentation/approve/{id}', [FormEntertainmentPresentationController::class, 'approve'])->name('forms.entertainment.approve'); Route::put('/entertainment-presentation/reject/{id}', [FormEntertainmentPresentationController::class, 'reject'])->name('forms.entertainment.reject'); Route::put('/entertainment-presentation/final-approve/{id}', [FormEntertainmentPresentationController::class, 'finalApprove'])->name('forms.entertainment.final-approve'); Route::put('/entertainment-presentation/open/{id}', [FormEntertainmentPresentationController::class, 'open'])->name('forms.entertainment.open'); // Meeting & Seminar Route::get('/meeting-seminar', [FormMeetingSeminarController::class, 'index'])->name('forms.meeting'); Route::get('/meeting-seminar/detail/{id}', [FormMeetingSeminarController::class, 'detail'])->name('forms.meeting.detail'); Route::get('/meeting-seminar/create', [FormMeetingSeminarController::class, 'create'])->name('forms.meeting.create'); Route::post('/meeting-seminar/store', [FormMeetingSeminarController::class, 'store'])->name('forms.meeting.store'); Route::get('/meeting-seminar/edit/{id}', [FormMeetingSeminarController::class, 'edit'])->name('forms.meeting.edit'); Route::put('/meeting-seminar/update/{id}', [FormMeetingSeminarController::class, 'update'])->name('forms.meeting.update'); Route::delete('/meeting-seminar/destroy/{id}', [FormMeetingSeminarController::class, 'destroy'])->name('forms.meeting.destroy'); Route::put('/meeting-seminar/approve/{id}', [FormMeetingSeminarController::class, 'approve'])->name('forms.meeting.approve'); Route::put('/meeting-seminar/reject/{id}', [FormMeetingSeminarController::class, 'reject'])->name('forms.meeting.reject'); Route::put('/meeting-seminar/final-approve/{id}', [FormMeetingSeminarController::class, 'finalApprove'])->name('forms.meeting.final-approve'); Route::put('/meeting-seminar/open/{id}', [FormMeetingSeminarController::class, 'open'])->name('forms.meeting.open'); // Other Route::get('/other', [FormOtherController::class, 'index'])->name('forms.other'); Route::get('/other/create', [FormOtherController::class, 'create'])->name('forms.other.create'); Route::post('/other/store', [FormOtherController::class, 'store'])->name('forms.other.store'); Route::get('/other/edit/{id}', [FormOtherController::class, 'edit'])->name('forms.other.edit'); Route::put('/other/update/{id}', [FormOtherController::class, 'update'])->name('forms.other.update'); Route::delete('/other/destroy/{id}', [FormOtherController::class, 'destroy'])->name('forms.other.destroy'); Route::put('/other/approve/{id}', [FormOtherController::class, 'approve'])->name('forms.other.approve'); Route::put('/other/reject/{id}', [FormOtherController::class, 'reject'])->name('forms.other.reject'); Route::put('/other/final-approve/{id}', [FormOtherController::class, 'finalApprove'])->name('forms.other.final-approve'); Route::put('/other/open/{id}', [FormOtherController::class, 'open'])->name('forms.other.open'); }); //Menu Role Route::get('/auth/menu-tree/{id}', [MenuRoleController::class, 'index'])->name('auth.menurole.index'); Route::post('/auth/menu-tree/submit', [MenuRoleController::class, 'saveMenu'])->name('auth.menurole.submit'); });