ExamAnalysisPdfController.php 1.0 KB

123456789101112131415161718192021222324252627282930313233
  1. <?php
  2. namespace App\Http\Controllers;
  3. use App\Services\ExamPdfExportService;
  4. use Illuminate\Http\Request;
  5. use Illuminate\Support\Facades\Log;
  6. class ExamAnalysisPdfController extends Controller
  7. {
  8. public function show(Request $request, ExamPdfExportService $pdfExportService)
  9. {
  10. $paperId = $request->query('paperId');
  11. $studentId = $request->query('studentId');
  12. $recordId = $request->query('recordId'); // 可选的OCR记录ID
  13. if (!$paperId || !$studentId) {
  14. return response('paperId 和 studentId 不能为空', 400);
  15. }
  16. $pdfUrl = $pdfExportService->generateAnalysisReportPdf($paperId, $studentId, $recordId);
  17. if (!$pdfUrl) {
  18. Log::error('ExamAnalysisPdfController: 学情报告生成失败', [
  19. 'paper_id' => $paperId,
  20. 'student_id' => $studentId,
  21. 'record_id' => $recordId,
  22. ]);
  23. return response('生成学情报告失败,请稍后重试', 500);
  24. }
  25. return redirect($pdfUrl);
  26. }
  27. }