diff --git a/src/main/java/com/ycwl/basic/controller/printer/PrinterTvController.java b/src/main/java/com/ycwl/basic/controller/printer/PrinterTvController.java index fdb02a00..c6f72298 100644 --- a/src/main/java/com/ycwl/basic/controller/printer/PrinterTvController.java +++ b/src/main/java/com/ycwl/basic/controller/printer/PrinterTvController.java @@ -195,7 +195,7 @@ public class PrinterTvController { @PathVariable Long scenicId) { // 复用 faceUpload 方法的去重逻辑 // memberId=0L 表示打印机大屏用户,scene="print" 会触发自动添加打印逻辑并等待完成 - FaceRecognizeResp resp = pcFaceService.faceUpload(file, scenicId, 0L, "print"); + FaceRecognizeResp resp = pcFaceService.faceUpload(file, scenicId, 0L, "tv"); return ApiResponse.success(resp); } diff --git a/src/main/java/com/ycwl/basic/service/pc/FaceService.java b/src/main/java/com/ycwl/basic/service/pc/FaceService.java index ca1f3719..90b2b802 100644 --- a/src/main/java/com/ycwl/basic/service/pc/FaceService.java +++ b/src/main/java/com/ycwl/basic/service/pc/FaceService.java @@ -34,6 +34,7 @@ public interface FaceService { SearchFaceRespVo matchFaceId(Long faceId); SearchFaceRespVo matchFaceId(Long faceId, boolean isNew); + SearchFaceRespVo matchFaceId(Long faceId, boolean isNew, String scene); ApiResponse deleteFace(Long faceId); diff --git a/src/main/java/com/ycwl/basic/service/pc/impl/FaceServiceImpl.java b/src/main/java/com/ycwl/basic/service/pc/impl/FaceServiceImpl.java index 13bc7173..63146772 100644 --- a/src/main/java/com/ycwl/basic/service/pc/impl/FaceServiceImpl.java +++ b/src/main/java/com/ycwl/basic/service/pc/impl/FaceServiceImpl.java @@ -354,7 +354,7 @@ public class FaceServiceImpl implements FaceService { } // 正常执行人脸匹配 - SearchFaceRespVo result = faceMatchingOrchestrator.orchestrateMatching(faceId, false); + SearchFaceRespVo result = faceMatchingOrchestrator.orchestrateMatching(faceId, false, null); // 执行完成后标记,防止2秒内重复调用 faceMatchDedupService.markMatched(face.getMemberId(), face.getScenicId()); @@ -364,7 +364,11 @@ public class FaceServiceImpl implements FaceService { @Override public SearchFaceRespVo matchFaceId(Long faceId, boolean isNew) { - return faceMatchingOrchestrator.orchestrateMatching(faceId, isNew); + return matchFaceId(faceId, isNew, null); + } + @Override + public SearchFaceRespVo matchFaceId(Long faceId, boolean isNew, String scene) { + return faceMatchingOrchestrator.orchestrateMatching(faceId, isNew, scene); } /** 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 35e990ed..7a19c704 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 @@ -108,7 +108,7 @@ public class FaceMatchingOrchestrator { * @param isNew 是否新用户 * @return 人脸搜索结果 */ - public SearchFaceRespVo orchestrateMatching(Long faceId, boolean isNew) { + public SearchFaceRespVo orchestrateMatching(Long faceId, boolean isNew, String scene) { if (faceId == null) { throw new IllegalArgumentException("faceId 不能为空"); } diff --git a/src/main/java/com/ycwl/basic/task/VideoTaskGenerator.java b/src/main/java/com/ycwl/basic/task/VideoTaskGenerator.java index 2658e96d..d710443b 100644 --- a/src/main/java/com/ycwl/basic/task/VideoTaskGenerator.java +++ b/src/main/java/com/ycwl/basic/task/VideoTaskGenerator.java @@ -82,7 +82,7 @@ public class VideoTaskGenerator { faceReqQuery.setEndTime(DateUtil.endOfDay(new Date())); List list = faceMapper.list(faceReqQuery); list.forEach(face -> { - faceService.matchFaceId(face.getId(), false); + faceService.matchFaceId(face.getId(), false, null); if (Integer.valueOf(3).equals(scenicConfig.getBookRoutine())) { // 全部生成 templateList.forEach(content -> {