From d25d09cb668d4766bc264a22d3a12f2cf7341f70 Mon Sep 17 00:00:00 2001 From: Jerry Yan <792602257@qq.com> Date: Fri, 23 Jan 2026 20:57:29 +0800 Subject: [PATCH] =?UTF-8?q?feat(task):=20=E6=B7=BB=E5=8A=A0=E8=87=AA?= =?UTF-8?q?=E5=8A=A8=E6=9B=BF=E6=8D=A2vlog=E9=85=8D=E7=BD=AE=E6=8E=A7?= =?UTF-8?q?=E5=88=B6=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 实现scenicConfig管理器获取景区配置 - 添加auto_replace_vlog配置项,默认值为true - 当auto_replace_vlog为false时跳过自动创建任务 - 添加视频存在检查避免重复处理 - 记录跳过任务的详细日志信息 --- .../service/task/impl/TaskTaskServiceImpl.java | 14 ++++++++++++++ 1 file changed, 14 insertions(+) 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());