diff --git a/src/main/java/com/ycwl/basic/service/task/impl/TaskTaskServiceImpl.java b/src/main/java/com/ycwl/basic/service/task/impl/TaskTaskServiceImpl.java index 55870976..9f8b2c17 100644 --- a/src/main/java/com/ycwl/basic/service/task/impl/TaskTaskServiceImpl.java +++ b/src/main/java/com/ycwl/basic/service/task/impl/TaskTaskServiceImpl.java @@ -438,6 +438,18 @@ public class TaskTaskServiceImpl implements TaskService { if (!templateTaskList.isEmpty()) { taskEntity = templateTaskList.getFirst(); isReuseOldTask = true; + if (automatic && !forceCreate) { + boolean autoReplaceVlog = scenicConfig.getBoolean("auto_replace_vlog", true); + + if (!autoReplaceVlog) { + VideoEntity video = videoRepository.getVideoByTaskId(taskEntity.getId()); + if (video != null) { + log.info("自动创建任务:跳过(auto_replace_vlog=false), faceId:{}, templateId:{}, existingTaskId:{}, videoId:{}", + faceId, templateId, taskEntity.getId(), video.getId()); + return; + } + } + } log.info("已有旧生成的视频:{}", taskEntity); MemberVideoEntity taskVideoRelation = videoMapper.queryRelationByMemberTask(face.getMemberId(), taskEntity.getId()); if (taskVideoRelation != null) { @@ -469,6 +481,8 @@ public class TaskTaskServiceImpl implements TaskService { memberVideoEntity.setTaskId(taskEntity.getId()); } else { TaskRespVO existingTask = list.getFirst(); + + log.info("重复task! faceId:{},templateId:{},taskId:{}", faceId, templateId, existingTask.getId()); videoTaskRepository.clearTaskCache(existingTask.getId());