name('home'); // Halaman diagnosa Route::get('/diagnosis', [DiagnosisController::class, 'index']) ->name('diagnosis'); // Proses diagnosa Route::post('/diagnosis/proses', [DiagnosisController::class, 'proses']) ->name('diagnosis.proses'); // Daftar penyakit Route::get('/penyakit', [PenyakitController::class, 'index']) ->name('penyakit'); // Tentang kami Route::get('/tentang', [TentangController::class, 'index']) ->name('tentang'); // Simpan hasil diagnosa (harus login) Route::post('/diagnosa/simpan', [DiagnosisController::class, 'simpan']) ->middleware('auth') ->name('diagnosa.simpan'); /* |-------------------------------------------------------------------------- | AUTH (LOGIN, REGISTER, LOGOUT) |-------------------------------------------------------------------------- */ // Form login Route::get('/login', [AuthController::class, 'loginForm']) ->middleware('guest') ->name('login'); // Proses login Route::post('/login', [AuthController::class, 'login']) ->middleware('guest'); // Form register Route::get('/register', [AuthController::class, 'registerForm']) ->middleware('guest') ->name('register'); // Proses register Route::post('/register', [AuthController::class, 'register']) ->middleware('guest'); // Logout Route::post('/logout', [AuthController::class, 'logout']) ->middleware('auth') ->name('logout'); /* |-------------------------------------------------------------------------- | USER SETELAH LOGIN (PETANI) |-------------------------------------------------------------------------- */ // Riwayat diagnosa milik user (harus login) Route::middleware('auth')->group(function () { Route::get('/riwayat', [RiwayatController::class, 'index']) ->name('riwayat'); }); /* |-------------------------------------------------------------------------- | ADMIN (DIKUNCI PAKAI is_admin) |-------------------------------------------------------------------------- | Hanya user dengan peran = 'admin' yang bisa masuk prefix /admin */ Route::middleware(['auth', 'is_admin']) // ⬅️ KUNCI ADMIN DI SINI ->prefix('admin') // semua url diawali /admin ->name('admin.') // semua nama route diawali admin. ->group(function () { // Dashboard admin Route::get('/dashboard', [AdminDashboardController::class, 'index']) ->name('dashboard'); //CRUD Diagnosa Admin Route::delete('diagnosa/{id}', [App\Http\Controllers\Admin\AdminDiagnosaController::class, 'destroy']) ->name('diagnosa.destroy'); // CRUD Penyakit Route::resource('penyakit', AdminPenyakitController::class); // CRUD Gejala Route::resource('gejala', AdminGejalaController::class); // ATURAN Route::get('aturan', [AdminAturanController::class, 'index']) ->name('aturan.index'); Route::get('aturan/create', [AdminAturanController::class, 'create']) ->name('aturan.create'); Route::post('aturan', [AdminAturanController::class, 'store']) ->name('aturan.store'); Route::get('aturan/{penyakitId}/edit', [AdminAturanController::class, 'edit']) ->name('aturan.edit'); Route::put('aturan/{penyakitId}', [AdminAturanController::class, 'update']) ->name('aturan.update'); Route::delete('aturan/{penyakitId}/delete',[AdminAturanController::class,'deleteByPenyakit']) ->name('aturan.deleteByPenyakit'); });