|
|
@@ -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) {
|