lh 2 bulan lalu
induk
melakukan
38b904c6b0
1 mengubah file dengan 12 tambahan dan 2 penghapusan
  1. 12 2
      app/Services/Anime/AnimeService.php

+ 12 - 2
app/Services/Anime/AnimeService.php

@@ -841,11 +841,15 @@ class AnimeService
 
         if (!$segment_id) Utils::throwError('20003:请选择分镜!');
 
+        // 获取当前预览视频
+        $preview_video_url = DB::table('mp_episode_segments')->where('segment_id', $segment_id)->value('preview_video_url');
+        if (!$preview_video_url) $preview_video_url = '';
         $query = DB::table('mp_anime_records')->where('segment_id', $segment_id)->select('role', 'content', 'segment_id', 'image_url', 'video_url', 'created_at');
         
-        $chat = $query->orderBy('id')->get()->map(function ($value) {
+        $chat = $query->orderBy('id')->get()->map(function ($value) use ($preview_video_url) {
             $value = (array)$value;
             $value['created_at'] = transDate($value['created_at']);
+            $value['preview_video_url'] = $preview_video_url;
             return $value;
         })->toArray();
 
@@ -1069,6 +1073,8 @@ class AnimeService
 
             if ($video_url) {
                 $update_data['video_url'] = $video_url;
+                $compressed_video_url = compressVideo($video_url);
+                if ($compressed_video_url) $update_data['preview_video_url'] = $compressed_video_url;
 
                 // 同时写入一个简单的视频生成任务
                 $video_task = [
@@ -1697,7 +1703,11 @@ class AnimeService
         ];
 
         if ($img_url) $insert_data['img_url'] = $img_url;
-        if ($video_url) $insert_data['video_url'] = $video_url;
+        if ($video_url) {
+            $insert_data['video_url'] = $video_url;
+            $compressed_video_url = compressVideo($video_url);
+            if ($compressed_video_url) $insert_data['preview_video_url'] = $compressed_video_url;
+        }
 
         try {
             DB::beginTransaction();