Ver Fonte

新增重置段落音频状态的接口

lh há 2 dias atrás
pai
commit
7397462372

+ 8 - 1
app/Http/Controllers/DeepSeek/DeepSeekController.php

@@ -53,6 +53,13 @@ class DeepSeekController extends BaseController
         return $this->success($result);
     }
 
+    // 重置段落音频状态
+    public function resetParagraphAudio(Request $request) {
+        $data = $request->all();
+        $result = $this->deepseekService->resetParagraphAudio($data);
+        return $this->success(['success'=>$result ? 1 : 0]);
+    }
+
     // 保存段落音频
     public function saveParagraphAudio(Request $request) {
         $data = $request->all();
@@ -153,7 +160,7 @@ class DeepSeekController extends BaseController
                     $paragraph_urls = DB::table('mp_chapter_paragraph_audios')->where('bid', $bid)->where('version_id', $version_id)
                     ->where('cid', $cid)->where(function($query) {
                         return $query->where('generate_status', '!=', '制作中')->orWhere('error_msg', '!=', '');
-                    })->select('id', 'sequence', 'paragraph_audio_url', 'error_msg')
+                    })->select('id', 'sequence', 'generate_status', 'paragraph_audio_url', 'error_msg')
                     ->get()->map(function ($value) {
                         return (array)$value;
                     })->toArray();

+ 12 - 0
app/Services/DeepSeek/DeepSeekService.php

@@ -113,6 +113,18 @@ class DeepSeekService
         return $result;
     }
 
+    public function resetParagraphAudio($data) {
+        $bid = getProp($data, 'bid');
+        $cid = getProp($data, 'cid');
+        $version_id = getProp($data, 'version_id');
+        
+        if (!DB::table('mp_chapter_paragraph_audios')->where('bid', $bid)->where('cid', $cid)->where('version_id', $version_id)->value('id')) return true;
+        return DB::table('mp_chapter_paragraph_audios')->where('bid', $bid)->where('cid', $cid)->where('version_id', $version_id)->update([
+            'generate_status'   => '待制作',
+            'updated_at'        => date('Y-m-d H:i:s')
+        ]);
+    }
+
     public function saveParagraphAudio($data) {
         $bid = getProp($data, 'bid');
         $cid = getProp($data, 'cid');

+ 2 - 1
routes/api.php

@@ -54,7 +54,8 @@ Route::group(['middleware' => ['bindToken', 'bindExportToken', 'checkLogin']], f
         Route::get('timbreList', [DeepSeekController::class, 'timbreList']);
         Route::post('addGenerateTask', [DeepSeekController::class, 'addGenerateTask']);
         Route::get('setStsToken', [DeepSeekController::class, 'setStsToken']);
-        Route::post(('saveParagraphAudio'), [DeepSeekController::class, 'saveParagraphAudio']);
+        Route::get('resetParagraphAudio', [DeepSeekController::class, 'resetParagraphAudio']);
+        Route::post('saveParagraphAudio', [DeepSeekController::class, 'saveParagraphAudio']);
     });
     
 });