From 882edc4b8ac7cb11ec9d536b5573df2c7ed512ef Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期四, 20 七月 2023 20:22:12 +0800 Subject: [PATCH] bug --- ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java | 52 ++++++++++++++++++++++++++++++++++++++++------------ 1 files changed, 40 insertions(+), 12 deletions(-) diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java index 2dbd752..f6a8349 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/member/MemberServiceImpl.java @@ -220,6 +220,7 @@ sysUser.setUserName(memberId); sysUser.setUserType("03"); sysUser.setNickName("鸿瑞堂用户"); + sysUser.setPhonenumber(mobile); sysUser.setAvatar("https://hongruitang.oss-cn-beijing.aliyuncs.com/default.png"); String password = "hongruitang"; sysUser.setPassword(SecurityUtils.encryptPassword(password)); @@ -701,24 +702,51 @@ */ @Override public void updateMemberGoodsType(AppMemberGoodsTypeDto appMemberGoodsTypeDto) { + // 根据用户ID获取会员信息 Member member = this.getByUserId(appMemberGoodsTypeDto.getUserId()); + // 获取商品类型集合和商品护理集合 HashSet<String> goodsTypeSet = appMemberGoodsTypeDto.getGoodsTypeSet(); + HashSet<String> goodsNurseSet = appMemberGoodsTypeDto.getGoodsNurseSet(); + // 如果会员存在 if (member != null) { - String goodsType = member.getGoodsType(); + // 标识是否有变化 Boolean change = false; - for (String str : goodsTypeSet) { - if (goodsType != null) { - if (!goodsType.contains(str)) { - goodsType = goodsType + "," + str; + // 更新商品类型 + if (goodsTypeSet != null && goodsTypeSet.size() > 0) { + String goodsType = member.getGoodsType(); + HashSet<String> goodsTypeOldSet = new HashSet<>(); + // 如果商品类型不为空 + if (StringUtils.isNotBlank(goodsType)) { + goodsTypeOldSet = new HashSet<>(Arrays.asList(goodsType.split(","))); + // 如果商品类型集合相等 + if (!goodsTypeSet.equals(goodsTypeOldSet)) { change = true; } } else { - goodsType = str; change = true; } + goodsTypeOldSet.addAll(goodsTypeSet); + member.setGoodsType(String.join(",", goodsTypeOldSet)); } + // 更新商品护理 + if (goodsNurseSet != null && goodsNurseSet.size() > 0) { + String memberNurse = member.getMemberNurse(); + HashSet<String> memberNurseOldSet = new HashSet<>(); + // 如果会员护理不为空 + if (StringUtils.isNotBlank(memberNurse)) { + memberNurseOldSet = new HashSet<>(Arrays.asList(memberNurse.split(","))); + // 如果商品护理集合相等 + if (!goodsNurseSet.equals(memberNurseOldSet)) { + change = true; + } + } else { + change = true; + } + memberNurseOldSet.addAll(goodsNurseSet); + member.setMemberNurse(String.join(",", memberNurseOldSet)); + } + // 如果有变化,则保存或更新会员信息 if (change) { - member.setGoodsType(goodsType); this.saveOrUpdate(member); } } @@ -1776,7 +1804,7 @@ case 1: changeIntegral = appOtherConfigGetVo.getShareIntegral(); integralRecord.setChangeIntegral(changeIntegral); - integralRecord.setSurpIntegral(integralRecord.getSurpIntegral()+changeIntegral); + integralRecord.setSurpIntegral(memberTotal.getUseableIntegral()+changeIntegral); integralRecord.setChangeReason("每日任务【分享小程序】获得积分"); memberTotal.setTotalIntegral(memberTotal.getTotalIntegral()+changeIntegral); memberTotal.setUseableIntegral(memberTotal.getUseableIntegral()+changeIntegral); @@ -1785,7 +1813,7 @@ case 2: changeIntegral = appOtherConfigGetVo.getSuggestPlatformIntegral(); integralRecord.setChangeIntegral(changeIntegral); - integralRecord.setSurpIntegral(integralRecord.getSurpIntegral()+changeIntegral); + integralRecord.setSurpIntegral(memberTotal.getUseableIntegral()+changeIntegral); integralRecord.setChangeReason("每日任务【提交平台建议】获得积分"); memberTotal.setTotalIntegral(memberTotal.getTotalIntegral()+changeIntegral); memberTotal.setUseableIntegral(memberTotal.getUseableIntegral()+changeIntegral); @@ -1794,7 +1822,7 @@ case 3: changeIntegral = appOtherConfigGetVo.getSuggestShopIntegral(); integralRecord.setChangeIntegral(changeIntegral); - integralRecord.setSurpIntegral(integralRecord.getSurpIntegral()+changeIntegral); + integralRecord.setSurpIntegral(memberTotal.getUseableIntegral()+changeIntegral); integralRecord.setChangeReason("每日任务【提交门店建议】获得积分"); memberTotal.setTotalIntegral(memberTotal.getTotalIntegral()+changeIntegral); memberTotal.setUseableIntegral(memberTotal.getUseableIntegral()+changeIntegral); @@ -1803,7 +1831,7 @@ case 4: changeIntegral = appOtherConfigGetVo.getSignInIntegral(); integralRecord.setChangeIntegral(changeIntegral); - integralRecord.setSurpIntegral(integralRecord.getSurpIntegral()+changeIntegral); + integralRecord.setSurpIntegral(memberTotal.getUseableIntegral()+changeIntegral); integralRecord.setChangeReason("每日任务【签到】获得积分"); memberTotal.setTotalIntegral(memberTotal.getTotalIntegral()+changeIntegral); memberTotal.setUseableIntegral(memberTotal.getUseableIntegral()+changeIntegral); @@ -1811,7 +1839,7 @@ break; case 5: integralRecord.setChangeIntegral(changeIntegral); - integralRecord.setSurpIntegral(integralRecord.getSurpIntegral()+changeIntegral); + integralRecord.setSurpIntegral(memberTotal.getUseableIntegral()+changeIntegral); integralRecord.setChangeReason("订单【"+integralChangeDto.getOrderNo()+"】获得积分"); integralRecord.setOrderId(integralChangeDto.getOrderId()); integralRecord.setOrderNo(integralChangeDto.getOrderNo()); -- Gitblit v1.7.1