name('home.index'); Route::middleware(['guest', 'prevent-back-history'])->group(function () { Route::controller(AuthController::class)->group(function () { Route::name('login.')->group(function () { Route::get('/login', 'index')->name('index'); Route::post('/login', 'loginProcess')->name('process'); }); Route::name('register.')->group(function () { Route::get('/register', 'register')->name('index'); Route::post('/register-process', 'registerProcess')->name('process'); Route::post('/check-username', 'checkUsername')->name('checkUsername'); Route::post('/check-email', 'checkEmail')->name('checkEmail'); }); Route::name('forgot_password.')->group(function () { Route::get('/forgot-password', 'forgotPassword')->name('index'); Route::post('/forgot-password-process', 'forgotPasswordProcess')->name('process'); }); Route::name('validation_forgot_password.')->group(function () { Route::get('/validation-forgot-password/{token}', 'validationForgotPassword')->name('index'); Route::post('/validation-forgot-password-process', 'validationForgotPasswordProcess')->name('process'); }); }); }); Route::middleware(['auth', 'prevent-back-history'])->group(function () { Route::controller(AuthController::class)->group(function () { Route::post('/logout', 'logout')->name('logout'); Route::get('/profile', 'profile')->name('profile'); Route::post('/update-profile', 'updateProfile')->name('updateProfile'); }); }); Route::middleware(['auth', 'admin', 'prevent-back-history'])->group(function () { Route::get('/dashboard', [DashboardController::class, 'admin'])->name('dashboard'); Route::prefix('users')->controller(UserController::class)->name('users.')->group(function () { Route::get('/', 'index')->name('index'); Route::post('/', 'store')->name('store'); Route::put('/{id}', 'update')->name('update'); Route::delete('/{id}', 'destroy')->name('destroy'); }); Route::prefix('penyakit')->controller(PenyakitController::class)->name('penyakit.')->group(function () { Route::get('/', 'index')->name('index'); Route::post('/', 'store')->name('store'); Route::put('/{id}', 'update')->name('update'); Route::delete('/{id}', 'destroy')->name('destroy'); }); Route::prefix('gejala')->controller(GejalaController::class)->name('gejala.')->group(function () { Route::get('/', 'index')->name('index'); Route::post('/', 'store')->name('store'); Route::put('/{id}', 'update')->name('update'); Route::delete('/{id}', 'destroy')->name('destroy'); }); Route::prefix('rule')->controller(RuleController::class)->name('rule.')->group(function () { Route::get('/', 'index')->name('index'); Route::post('/', 'store')->name('store'); Route::put('/{id}', 'update')->name('update'); Route::delete('/{id}', 'destroy')->name('destroy'); }); }); Route::middleware(['auth', 'user', 'prevent-back-history'])->group(function () { Route::get('/dashboard-user', [DashboardController::class, 'user'])->name('dashboard.user'); Route::prefix('diagnosa')->controller(DiagnosaController::class)->name('diagnosa.')->group(function () { Route::get('/', 'index')->name('index'); Route::post('/', 'prosesDiagnosa')->name('proses'); Route::delete('/{id}', 'destroy')->name('destroy'); Route::get('/riwayat', 'riwayatDiagnosa')->name('riwayat'); Route::get('/download', 'downloadPdf')->name('download'); }); });