fix: 完结任务必须先配置并启用第三方素材API
This commit is contained in:
parent
724c1b8b8f
commit
a520890284
@ -288,39 +288,36 @@ public class TaskItemService {
|
||||
throw new BusinessException(ResultCode.TASK_STATUS_ERROR, "只能完结进行中的子任务");
|
||||
}
|
||||
|
||||
// 4. 检查是否启用第三方素材API验证
|
||||
// 4. 检查第三方素材API配置并验证
|
||||
String downloadUrl = null;
|
||||
boolean externalApiEnabled = "true".equalsIgnoreCase(
|
||||
systemConfigService.getConfigValue("external_asset_api_enabled", "false"));
|
||||
|
||||
if (externalApiEnabled) {
|
||||
// 调用第三方素材API验证任务完成状态
|
||||
String taskNo = item.getItemNo(); // 使用子任务编号作为任务号
|
||||
|
||||
try {
|
||||
downloadUrl = externalAssetService.checkTaskCompletion(taskNo);
|
||||
} catch (Exception e) {
|
||||
log.warn("调用第三方素材API失败: {}", e.getMessage());
|
||||
// API调用失败时,提示用户
|
||||
throw new BusinessException(ResultCode.ERROR,
|
||||
"素材API验证失败,请稍后重试或联系管理员");
|
||||
}
|
||||
|
||||
if (downloadUrl == null) {
|
||||
// 如果第三方API未返回下载链接,提示用户去上传素材
|
||||
throw new BusinessException(ResultCode.ERROR,
|
||||
"素材未提交,请先前往 3D.YYDD.AI 提交任务素材后再完结任务");
|
||||
}
|
||||
|
||||
log.info("第三方素材API返回下载链接: {}", downloadUrl);
|
||||
} else {
|
||||
// 未启用第三方API,允许直接完结任务
|
||||
log.info("第三方素材API未启用,直接完结任务: itemId={}", itemId);
|
||||
// 如果有传入deliveryPath,则使用它
|
||||
if (deliveryPath != null && !deliveryPath.trim().isEmpty()) {
|
||||
downloadUrl = deliveryPath;
|
||||
}
|
||||
if (!externalApiEnabled) {
|
||||
// 未启用第三方API,不允许完结任务
|
||||
throw new BusinessException(ResultCode.ERROR,
|
||||
"请先在系统设置中启用并配置第三方素材API后才能完结任务");
|
||||
}
|
||||
|
||||
// 调用第三方素材API验证任务完成状态
|
||||
String taskNo = item.getItemNo(); // 使用子任务编号作为任务号
|
||||
|
||||
try {
|
||||
downloadUrl = externalAssetService.checkTaskCompletion(taskNo);
|
||||
} catch (Exception e) {
|
||||
log.warn("调用第三方素材API失败: {}", e.getMessage());
|
||||
// API调用失败时,提示用户
|
||||
throw new BusinessException(ResultCode.ERROR,
|
||||
"素材API验证失败: " + e.getMessage());
|
||||
}
|
||||
|
||||
if (downloadUrl == null || downloadUrl.trim().isEmpty()) {
|
||||
// 如果第三方API未返回下载链接,提示用户去上传素材
|
||||
throw new BusinessException(ResultCode.ERROR,
|
||||
"素材未提交,请先前往 3D.YYDD.AI 提交任务素材后再完结任务");
|
||||
}
|
||||
|
||||
log.info("第三方素材API返回下载链接: {}", downloadUrl);
|
||||
|
||||
// 5. 更新子任务状态
|
||||
item.setStatus("completed");
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user