From 841f1631b790d2c4caf24a40eb4830f57a9bafa5 Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Wed, 17 Sep 2025 17:21:07 +0800 Subject: [PATCH] feat(ai): 添加知识点推荐功能- 新增 AiProductPointService接口的 recommend 方法 - 实现 AiProductPointServiceImpl 中的 recommend 方法逻辑 - 添加 ApiProductPointController 中的 recommend 接口 - 创建 ApiProductPointRecommendDto 和 ApiProductPointRecommendVo 类 --- src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) diff --git a/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java b/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java index d4b1453..e82887b 100644 --- a/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java +++ b/src/main/java/cc/mrbird/febs/vip/service/impl/MallVipBenefitsServiceImpl.java @@ -276,6 +276,7 @@ mallMemberCouponMapper.insert(memberCoupon); record.setReceiveName(coupon.getName()); + record.setStatus(1); } mallVipBenefitsRecordMapper.insert(record); @@ -320,7 +321,8 @@ }); LambdaQueryWrapper<MallVipBenefitsRecord> recordQuery = new LambdaQueryWrapper<>(); - recordQuery.eq(MallVipBenefitsRecord::getReceiveId, ids) + recordQuery.in(MallVipBenefitsRecord::getReceiveId, ids) + .eq(MallVipBenefitsRecord::getMemberId, member.getId()) .ge(MallVipBenefitsRecord::getReceiveTime, DateUtil.beginOfDay(new Date())) .le(MallVipBenefitsRecord::getReceiveTime, DateUtil.endOfDay(new Date())); List<MallVipBenefitsRecord> hasRecieveList = mallVipBenefitsRecordMapper.selectList(recordQuery); @@ -333,7 +335,7 @@ List<Long> hasIds = hasRecieveList.stream().map(MallVipBenefitsRecord::getReceiveId).collect(Collectors.toList()); List<MallVipBenefits> collect1 = benefits.stream().peek(item -> { - List<MallVipBenefitsDetails> collect = item.getDetails().stream().filter(detail -> hasIds.contains(Long.parseLong(detail.getContent()))).collect(Collectors.toList()); + List<MallVipBenefitsDetails> collect = item.getDetails().stream().filter(detail -> (detail.getLinkType() == 2 || detail.getLinkType() == 3) && !hasIds.contains(Long.parseLong(detail.getContent()))).collect(Collectors.toList()); item.setDetails(collect); }).filter(item -> CollUtil.isNotEmpty(item.getDetails())).collect(Collectors.toList()); -- Gitblit v1.9.1