Browse Source

前端改版

lh 2 days ago
parent
commit
914fa4bea8
2 changed files with 19 additions and 5 deletions
  1. 18 4
      app/Services/Anime/AnimeService.php
  2. 1 1
      resources/views/animeIndex.blade.php

+ 18 - 4
app/Services/Anime/AnimeService.php

@@ -1264,7 +1264,10 @@ class AnimeService
                             ];
                             if ($pic_prompt) $updateData['pic_prompt'] = $pic_prompt;
                             if ($url) $updateData['url'] = $url;
-                            if ($three_view_image_url) $updateData['three_view_image_url'] = $three_view_image_url;
+                            // 显式传入三视图(含空值)时同步写入,空值表示当前版本没有三视图
+                            if (is_array($target_roles) && array_key_exists('three_view_image_url', $target_roles)) {
+                                $updateData['three_view_image_url'] = trim(getProp($target_roles, 'three_view_image_url', ''));
+                            }
                             
                             // 处理versions字段,显式传入数组(含空数组)时覆盖
                             if (is_array($versions)) {
@@ -1495,7 +1498,10 @@ class AnimeService
                             ];
                             if ($pic_prompt) $updateData['pic_prompt'] = $pic_prompt;
                             if ($url) $updateData['url'] = $url;
-                            if ($three_view_image_url) $updateData['three_view_image_url'] = $three_view_image_url;
+                            // 显式传入三视图(含空值)时同步写入,空值表示当前版本没有三视图
+                            if (is_array($target_scenes) && array_key_exists('three_view_image_url', $target_scenes)) {
+                                $updateData['three_view_image_url'] = trim(getProp($target_scenes, 'three_view_image_url', ''));
+                            }
                             
                             // 处理versions字段,显式传入数组(含空数组)时覆盖
                             if (is_array($versions)) {
@@ -1726,7 +1732,10 @@ class AnimeService
                             ];
                             if ($pic_prompt) $updateData['pic_prompt'] = $pic_prompt;
                             if ($url) $updateData['url'] = $url;
-                            if ($three_view_image_url) $updateData['three_view_image_url'] = $three_view_image_url;
+                            // 显式传入三视图(含空值)时同步写入,空值表示当前版本没有三视图
+                            if (is_array($target_props) && array_key_exists('three_view_image_url', $target_props)) {
+                                $updateData['three_view_image_url'] = trim(getProp($target_props, 'three_view_image_url', ''));
+                            }
                             
                             // 处理versions字段,显式传入数组(含空数组)时覆盖
                             if (is_array($versions)) {
@@ -7557,7 +7566,7 @@ class AnimeService
             $updateData['url'] = $url;
         }
 
-        // 三视图图片地址(选填),格式校验与 url 一致
+        // 三视图图片地址(选填),格式校验与 url 一致;显式传空表示当前版本没有三视图
         $three_view_image_url = trim(getProp($data, 'three_view_image_url', ''));
         if ($three_view_image_url) {
             $threeViewPath = parse_url($three_view_image_url, PHP_URL_PATH);
@@ -7566,7 +7575,10 @@ class AnimeService
             if (!in_array($threeViewExtension, $allowedExtensions)) {
                 Utils::throwError('20003:三视图图片格式不正确,仅支持 jpg、jpeg、png、gif、webp、bmp 格式');
             }
+        }
 
+        // 显式传入三视图(含空值)时同步写入,空值表示当前版本没有三视图
+        if (array_key_exists('three_view_image_url', $data)) {
             $updateData['three_view_image_url'] = $three_view_image_url;
         }
 
@@ -7588,6 +7600,8 @@ class AnimeService
             // }
             
             $updateData['pic_prompt'] = $pic_prompt;
+        }else {
+            Utils::throwError('20003:请输入提示词');
         }
         
         if (empty($updateData) && !$script_id) {

File diff suppressed because it is too large
+ 1 - 1
resources/views/animeIndex.blade.php