From 3d3960a3b3d1057db9d2f4016512915e7a5c517d Mon Sep 17 00:00:00 2001 From: Administrator <15274802129@163.com> Date: Thu, 25 Sep 2025 09:56:21 +0800 Subject: [PATCH] feat(ai): 集成百炼工作流实现AI流式对话功能 - 新增百炼工作流SDK相关依赖和工具类 - 实现llmInvokeStreamingWithThink方法用于流式调用 - 配置API Key和应用ID以连接百炼平台 - 启用思考模式(enableThinking)和思维输出(hasThoughts) - 处理流式响应并封装为FebsResponse返回 - 添加异常处理机制捕获API调用错误 - 移除原有的静态提示词配置逻辑 -重构answerStreamV3接口直接调用新实现 --- 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