From 73791a92d3b2d1ab36caeda3a9acea470c8f611d Mon Sep 17 00:00:00 2001 From: Jerry Yan <792602257@qq.com> Date: Thu, 30 Oct 2025 09:47:29 +0800 Subject: [PATCH] =?UTF-8?q?feat(face):=E9=87=8D=E6=96=B0=E5=8C=B9=E9=85=8D?= =?UTF-8?q?=E5=89=8D=E5=88=A0=E9=99=A4=E4=BA=BA=E8=84=B8=E6=97=A7=E5=85=B3?= =?UTF-8?q?=E7=B3=BB=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在重新匹配前删除该人脸的旧数据关系 - 清理 member_source 和 member_video 中的关联记录 - 更新缓存清理逻辑以确保数据一致性 - 添加详细的日志记录以便追踪操作过程 --- .../com/ycwl/basic/service/pc/impl/FaceServiceImpl.java | 7 +++++++ 1 file changed, 7 insertions(+) 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 77c65b8f..679e5211 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 @@ -1143,6 +1143,13 @@ public class FaceServiceImpl implements FaceService { throw new BaseException("人脸不存在"); } + // 在重新匹配前,删除该人脸的旧数据关系(member_source 和 member_video) + log.debug("删除人脸旧关系数据:faceId={}, memberId={}", faceId, face.getMemberId()); + sourceMapper.deleteNotBuyFaceRelation(face.getMemberId(), faceId); + videoMapper.deleteNotBuyFaceRelations(face.getMemberId(), faceId); + memberRelationRepository.clearSCacheByFace(faceId); + log.debug("人脸旧关系数据删除完成:faceId={}", faceId); + List faceSamples = faceSampleMapper.listByIds(faceSampleIds); if (faceSamples.isEmpty()) { log.warn("未找到指定的人脸样本,faceSampleIds: {}", faceSampleIds);