From 5bef712b1ccafbb29e6705342bd8af861c1b6bb9 Mon Sep 17 00:00:00 2001 From: Jerry Yan <792602257@qq.com> Date: Mon, 15 Dec 2025 08:34:11 +0800 Subject: [PATCH] =?UTF-8?q?feat(face):=20=E4=BC=98=E5=8C=96=E4=BA=BA?= =?UTF-8?q?=E8=84=B8=E5=86=85=E5=AE=B9=E8=B4=AD=E4=B9=B0=E9=80=BB=E8=BE=91?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 引入OrderRepository依赖以查询用户购买状态 - 修改内容购买检查逻辑,优先检查人脸项目购买情况 - 添加模板购买状态的二次校验机制 - 移除冗余的订单业务层调用逻辑 - 简化购买状态判断流程,提高代码可读性 --- .../ycwl/basic/service/pc/impl/FaceServiceImpl.java | 12 ++++++++---- 1 file changed, 8 insertions(+), 4 deletions(-) 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 47a2c607..712561d5 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 @@ -56,6 +56,7 @@ import com.ycwl.basic.puzzle.mapper.PuzzleTemplateMapper; import com.ycwl.basic.repository.DeviceRepository; import com.ycwl.basic.repository.FaceRepository; import com.ycwl.basic.repository.MemberRelationRepository; +import com.ycwl.basic.repository.OrderRepository; import com.ycwl.basic.repository.ScenicRepository; import com.ycwl.basic.repository.TemplateRepository; import com.ycwl.basic.repository.VideoRepository; @@ -195,6 +196,8 @@ public class FaceServiceImpl implements FaceService { private PuzzleTemplateMapper puzzleTemplateMapper; @Autowired private FaceDetectLogAiCamService faceDetectLogAiCamService; + @Autowired + private OrderRepository orderRepository; @Override public ApiResponse> pageQuery(FaceReqQuery faceReqQuery) { @@ -444,7 +447,11 @@ public class FaceServiceImpl implements FaceService { contentPageVO.setContentType(1); contentPageVO.setSort(contentPageVO.getSort()); if (!memberVideoEntityList.isEmpty()) { - contentPageVO.setIsBuy(memberVideoEntityList.getFirst().getIsBuy()); + boolean isBuy = orderRepository.checkUserBuyFaceItem(userId, faceId, 0, contentPageVO.getContentId()); + if (!isBuy) { + isBuy = orderRepository.checkUserBuyFaceItem(userId, faceId, -1, contentPageVO.getTemplateId()); // 购买模板 + } + contentPageVO.setIsBuy(isBuy ? 1 : 0); contentPageVO.setContentId(memberVideoEntityList.getFirst().getVideoId()); VideoEntity video = videoRepository.getVideo(contentPageVO.getContentId()); if (video != null) { @@ -474,9 +481,6 @@ public class FaceServiceImpl implements FaceService { } } boolean buy = orderBiz.checkUserBuyFaceItem(userId, faceId, contentPageVO.getGoodsType(), contentPageVO.getContentId()); - if (!buy) { - buy = orderBiz.checkUserBuyFaceItem(userId, faceId, -1, contentPageVO.getTemplateId()); - } if (buy) { contentPageVO.setIsBuy(1); } else {