web.php 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657
  1. <?php
  2. use App\Http\Controllers\ImportStreamController;
  3. use App\Http\Controllers\MenuVisibilityController;
  4. use App\Http\Controllers\NotificationController;
  5. use Illuminate\Support\Facades\Route;
  6. Route::get('/', function () {
  7. return redirect()->route('filament.admin.pages.dashboard');
  8. });
  9. Route::get('/test-math', function () {
  10. return view('test-math');
  11. });
  12. Route::get('/test-case', function () {
  13. return view('test-case');
  14. });
  15. Route::view('/knowledge-mindmap-public', 'public.knowledge-mindmap');
  16. Route::get('/admin/intelligent-exam/pdf/{paper_id}', [\App\Http\Controllers\ExamPdfController::class, 'show'])->name('filament.admin.auth.intelligent-exam.pdf');
  17. Route::get('/admin/intelligent-exam/grading/{paper_id}', [\App\Http\Controllers\ExamPdfController::class, 'showGrading'])->name('filament.admin.auth.intelligent-exam.grading');
  18. Route::get('/admin/intelligent-exam/knowledge-explanation/{paper_id}', [\App\Http\Controllers\ExamPdfController::class, 'showKnowledgeExplanation'])->name('filament.admin.auth.intelligent-exam.knowledge-explanation');
  19. // 服务端渲染预览(与 PDF 生成效果一致,用于调试)
  20. Route::get('/preview/exam/pdf-server/{paper_id}', [\App\Http\Controllers\ExamPdfController::class, 'showServerRendered'])->name('preview.exam.pdf-server');
  21. Route::get('/preview/exam/grading-server/{paper_id}', [\App\Http\Controllers\ExamPdfController::class, 'showGradingServerRendered'])->name('preview.exam.grading-server');
  22. Route::get('/admin/exam-analysis/pdf', [\App\Http\Controllers\ExamAnalysisPdfController::class, 'show'])->name('filament.admin.auth.exam-analysis.pdf');
  23. Route::get('/admin/reports/teacher-weekly-stats/open', [\App\Http\Controllers\TeacherWeeklyStatsReportController::class, 'open'])
  24. ->middleware(['web', 'auth'])
  25. ->name('filament.admin.reports.teacher-weekly-stats.open');
  26. // 检查通知的路由
  27. Route::get('/admin/question-management/check-notifications', [NotificationController::class, 'checkNotifications']);
  28. // 菜单可见性切换路由
  29. Route::post('/admin/toggle-menu-visibility', [MenuVisibilityController::class, 'toggle'])
  30. ->name('filament.admin.auth.toggle-menu-visibility');
  31. // Livewire测试路由
  32. Route::get('/test-livewire', function () {
  33. return view('test-livewire');
  34. })->name('test.livewire');
  35. // 教材删除路由 - 通过URL参数传递ID,完全绕过Filament的$record传递问题
  36. // 使用GET方法避免CSRF问题
  37. Route::get('/admin/textbooks/{id}/delete', [\App\Http\Controllers\TextbookController::class, 'delete'])
  38. ->name('filament.admin.resources.textbooks.delete');
  39. Route::get('/admin/markdown-imports/stream', [ImportStreamController::class, 'stream'])
  40. ->name('filament.admin.markdown-imports.stream');
  41. // 题目预览验证工具(公开访问,无需登录)
  42. Route::get('/tools/question-preview', [\App\Http\Controllers\QuestionPreviewController::class, 'index'])
  43. ->name('tools.question-preview');
  44. Route::post('/tools/question-preview/pdf', [\App\Http\Controllers\QuestionPreviewController::class, 'generatePdf'])
  45. ->name('tools.question-preview.pdf');