diff --git a/src/main/java/com/ycwl/basic/service/pc/orchestrator/FaceMatchingOrchestrator.java b/src/main/java/com/ycwl/basic/service/pc/orchestrator/FaceMatchingOrchestrator.java index c4204319..b8903ecb 100644 --- a/src/main/java/com/ycwl/basic/service/pc/orchestrator/FaceMatchingOrchestrator.java +++ b/src/main/java/com/ycwl/basic/service/pc/orchestrator/FaceMatchingOrchestrator.java @@ -1,5 +1,6 @@ package com.ycwl.basic.service.pc.orchestrator; import cn.hutool.core.date.DateUtil; +import com.ycwl.basic.biz.TaskStatusBiz; import com.ycwl.basic.integration.scenic.dto.scenic.ScenicV2DTO; import com.ycwl.basic.puzzle.dto.PuzzleGenerateRequest; import com.ycwl.basic.puzzle.dto.PuzzleGenerateResponse; @@ -97,6 +98,8 @@ public class FaceMatchingOrchestrator { private IPuzzleGenerateService puzzleGenerateService; @Autowired private PuzzleGenerationRecordMapper puzzleGenerationRecordMapper; + @Autowired + private TaskStatusBiz taskStatusBiz; /** * 编排人脸匹配的完整流程 @@ -110,6 +113,11 @@ public class FaceMatchingOrchestrator { throw new IllegalArgumentException("faceId 不能为空"); } + if (isNew) { + // 新用户,设置任务状态为待处理 + taskStatusBiz.setFaceCutStatus(faceId, 0); + } + // 步骤1: 数据准备 MatchingContext context = prepareMatchingContext(faceId, isNew); if (context == null) { @@ -339,6 +347,7 @@ public class FaceMatchingOrchestrator { taskService.autoCreateTaskByFaceId(faceId); } else { log.debug("景区配置 face_select_first=true,跳过自动创建任务:faceId={}", faceId); + taskStatusBiz.setFaceCutStatus(faceId, 2); } }