Sfoglia il codice sorgente

fix: 获取pdf预览的时候参数问题

过卫栋 2 giorni fa
parent
commit
98a474eff1
1 ha cambiato i file con 13 aggiunte e 10 eliminazioni
  1. 13 10
      app/Http/Controllers/QuestionPreviewController.php

+ 13 - 10
app/Http/Controllers/QuestionPreviewController.php

@@ -4,7 +4,6 @@ namespace App\Http\Controllers;
 
 use App\Services\ExamPdfExportService;
 use Illuminate\Http\Request;
-use Illuminate\Support\Facades\Storage;
 
 class QuestionPreviewController extends Controller
 {
@@ -34,19 +33,23 @@ class QuestionPreviewController extends Controller
             // 过滤空选项
             $options = array_filter($request->input('options', []), fn($v) => !empty($v));
 
-            $pdfPath = $service->generatePreviewPdf(
-                stem: $request->input('stem'),
-                options: $options,
-                answer: $request->input('answer'),
-                solution: $request->input('solution')
-            );
+            // 构建题目数据数组
+            $questionData = [
+                'stem' => $request->input('stem'),
+                'options' => $options,
+                'answer' => $request->input('answer'),
+                'solution' => $request->input('solution'),
+            ];
 
-            // 返回可访问的 URL
-            $url = Storage::disk('public')->url($pdfPath);
+            $result = $service->generatePreviewPdf($questionData);
+
+            if (!$result || empty($result['url'])) {
+                throw new \Exception('PDF 生成失败');
+            }
 
             return response()->json([
                 'success' => true,
-                'url' => $url,
+                'url' => $result['url'],
             ]);
         } catch (\Exception $e) {
             return response()->json([