From 6ab383249b70a9646ffde1474b59dcc7d0b97df6 Mon Sep 17 00:00:00 2001 From: jiangqs <343695869@qq.com> Date: 星期日, 06 八月 2023 15:05:15 +0800 Subject: [PATCH] bug --- ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java | 98 +++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 90 insertions(+), 8 deletions(-) diff --git a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java index 77d975e..f5ccdf4 100644 --- a/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java +++ b/ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java @@ -3,6 +3,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; +import com.ruoyi.common.core.exception.ServiceException; +import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.utils.bean.BeanUtils; import com.ruoyi.common.core.utils.uuid.IdUtils; import com.ruoyi.member.domain.dto.MerBirthdayEditDto; @@ -16,8 +18,11 @@ import com.ruoyi.member.service.birthday.BirthdayCardService; import com.ruoyi.member.service.birthday.BirthdayGiftService; import com.ruoyi.member.service.member.MemberGiftRecordService; +import com.ruoyi.system.api.constant.AppErrorConstant; import com.ruoyi.system.api.domain.dto.BirthdayGiftSendDto; +import com.ruoyi.system.api.domain.dto.MgtBaseBathDto; import com.ruoyi.system.api.domain.poji.member.MemberGiftRecord; +import com.ruoyi.system.api.domain.vo.MgtSimpleShopVo; import com.ruoyi.system.api.service.RemoteShopService; import org.springframework.stereotype.Service; @@ -25,6 +30,7 @@ import java.math.BigDecimal; import java.time.LocalDate; import java.util.*; +import java.util.function.Function; import java.util.stream.Collectors; /** @@ -378,7 +384,7 @@ birthdayGift.setGiftName(dto.getGiftName()); birthdayGift.setGiftNumber(dto.getGiftNumber()); birthdayGift.setMoney(dto.getMoney()); - birthdayGift.setWinningProbability(dto.getWinningProbability()); + birthdayGift.setWinningProbability(new BigDecimal("100.00")); birthdayGiftList.add(birthdayGift); }); // 批量保存生日礼物 @@ -409,6 +415,12 @@ } birthdayCard.setCardStatus(merBirthdayEditDto.getCardStatus()); this.saveOrUpdate(birthdayCard); + List<BirthdayGift> birthdayGiftList = birthdayGiftService.listByCardId(birthdayCard.getCardId()); + if(merBirthdayEditDto.getCardStatus()==1){ + if(birthdayGiftList==null||birthdayGiftList.isEmpty()){ + throw new ServiceException(AppErrorConstant.BIRTHDAYCARD_NO_GIFT); + } + } } /** @@ -445,8 +457,8 @@ break; case 4: // 礼物类型为4,即礼品 - appBirthdayGiftVo.setGiftName(memberGiftRecord.getCouponName()); - appBirthdayGiftVo.setGiftNumber(memberGiftRecord.getCouponNumber()); + appBirthdayGiftVo.setGiftName(memberGiftRecord.getGiftName()); + appBirthdayGiftVo.setGiftNumber(memberGiftRecord.getGiftNumber()); break; default: break; @@ -490,7 +502,7 @@ if (plBirthdayCard != null && plBirthdayCard.getCardStatus()==1) { // 获取生日卡对应的生日礼物列表 List<BirthdayGift> birthdayGiftList = birthdayGiftService.listByCardId(plBirthdayCard.getCardId()); - if(!birthdayGiftList.isEmpty()){ + if(birthdayGiftList!=null&&!birthdayGiftList.isEmpty()){ // 遍历生日礼物列表 for (BirthdayGift birthdayGift : birthdayGiftList) { winningProbability = birthdayGift.getWinningProbability(); @@ -519,6 +531,9 @@ birthdayGiftSendDto.setCouponId(birthdayGift.getCouponId()); birthdayGiftSendDto.setCouponNumber(birthdayGift.getCouponNumber()); sendGoodsList.add(birthdayGiftSendDto); + memberGiftRecord.setCouponId(birthdayGift.getCouponId()); + memberGiftRecord.setCouponName(birthdayGift.getCouponName()); + memberGiftRecord.setCouponNumber(birthdayGift.getCouponNumber()); break; case 2: // 礼物类型为2,即商品 @@ -527,16 +542,22 @@ birthdayGiftSendDto.setGoodsId(birthdayGift.getGoodsId()); birthdayGiftSendDto.setCouponNumber(birthdayGift.getGoodsNumber()); sendCouponList.add(birthdayGiftSendDto); + memberGiftRecord.setGoodsId(birthdayGift.getGoodsId()); + memberGiftRecord.setGoodsName(birthdayGift.getGoodsName()); + memberGiftRecord.setGoodsNumber(birthdayGift.getGoodsNumber()); break; case 3: // 礼物类型为3,即现金 appBirthdayGiftVo.setGiftName("现金"); appBirthdayGiftVo.setGiftNumber(memberGiftRecord.getMoney().doubleValue()); + memberGiftRecord.setMoney(birthdayGift.getMoney()); break; case 4: // 礼物类型为4,即礼品 - appBirthdayGiftVo.setGiftName(birthdayGift.getCouponName()); - appBirthdayGiftVo.setGiftNumber(birthdayGift.getCouponNumber()); + appBirthdayGiftVo.setGiftName(birthdayGift.getGiftName()); + appBirthdayGiftVo.setGiftNumber(birthdayGift.getGiftNumber()); + memberGiftRecord.setGiftName(birthdayGift.getGiftName()); + memberGiftRecord.setGiftNumber(birthdayGift.getGiftNumber()); break; default: break; @@ -590,6 +611,9 @@ birthdayGiftSendDto.setCouponId(birthdayGift.getCouponId()); birthdayGiftSendDto.setCouponNumber(birthdayGift.getCouponNumber()); sendGoodsList.add(birthdayGiftSendDto); + memberGiftRecord.setCouponId(birthdayGift.getCouponId()); + memberGiftRecord.setCouponName(birthdayGift.getCouponName()); + memberGiftRecord.setCouponNumber(birthdayGift.getCouponNumber()); break; case 2: // 礼物类型为2,即商品 @@ -598,16 +622,22 @@ birthdayGiftSendDto.setGoodsId(birthdayGift.getGoodsId()); birthdayGiftSendDto.setCouponNumber(birthdayGift.getGoodsNumber()); sendCouponList.add(birthdayGiftSendDto); + memberGiftRecord.setGoodsId(birthdayGift.getGoodsId()); + memberGiftRecord.setGoodsName(birthdayGift.getGoodsName()); + memberGiftRecord.setGoodsNumber(birthdayGift.getGoodsNumber()); break; case 3: // 礼物类型为3,即现金 appBirthdayGiftVo.setGiftName("现金"); appBirthdayGiftVo.setGiftNumber(memberGiftRecord.getMoney().doubleValue()); + memberGiftRecord.setMoney(birthdayGift.getMoney()); break; case 4: // 礼物类型为4,即礼品 - appBirthdayGiftVo.setGiftName(birthdayGift.getCouponName()); - appBirthdayGiftVo.setGiftNumber(birthdayGift.getCouponNumber()); + appBirthdayGiftVo.setGiftName(birthdayGift.getGiftName()); + appBirthdayGiftVo.setGiftNumber(birthdayGift.getGiftNumber()); + memberGiftRecord.setGiftName(birthdayGift.getGiftName()); + memberGiftRecord.setGiftNumber(birthdayGift.getGiftNumber()); break; default: break; @@ -637,10 +667,62 @@ public List<AppMemberPrizePageVo> pageAppMemberPrize(Page page, Long userId){ List<AppMemberPrizePageVo> memberPrizePageVoList = birthdayCardMapper.pageAppMemberPrize(page, userId); if(memberPrizePageVoList!=null&&!memberPrizePageVoList.isEmpty()){ + HashSet<Long> shopIdSet = new HashSet<>(); for(AppMemberPrizePageVo appMemberPrizePageVo : memberPrizePageVoList){ appMemberPrizePageVo.setVerifyCode("3-"+appMemberPrizePageVo.getPrizeId()); + if(appMemberPrizePageVo.getShopId()!=null){ + shopIdSet.add(appMemberPrizePageVo.getShopId()); + } + } + String shopJoinedString = String.join(",", shopIdSet.stream().map(Object::toString).collect(Collectors.toList())); + MgtBaseBathDto mgtBaseBathDto = new MgtBaseBathDto(); + mgtBaseBathDto.setIds(shopJoinedString); + List<MgtSimpleShopVo> simpleShopVoList = remoteShopService.listShopSimpleVoByIds(mgtBaseBathDto).getData(); + Map<Long, MgtSimpleShopVo> shopMap = simpleShopVoList.stream() + .collect(Collectors.toMap(MgtSimpleShopVo::getShopId, Function.identity())); + for(AppMemberPrizePageVo appMemberPrizePageVo : memberPrizePageVoList){ + if(appMemberPrizePageVo.getShopId()!=null){ + appMemberPrizePageVo.setVerifyShopName(shopMap.get(appMemberPrizePageVo.getShopId()).getShopName()); + } } } return memberPrizePageVoList; } + + + /** + * @description 判断生日卡开启状态 + * @author jqs + * @date 2023/8/1 15:43 + * @param + * @return void + */ + @Override + public Integer checkBirthdayCard(Long shopId){ + // 获取平台生日卡信息 + Boolean platformBirthdayCardOpen = true; + BirthdayCard plBirthdayCard = birthdayCardMapper.getMerShopBirthdayCard(0L); + if (plBirthdayCard == null || plBirthdayCard.getCardStatus()!=1) { + platformBirthdayCardOpen = false; + }else{ + if(plBirthdayCard.getAreaFlag()==2&&!StringUtils.checkString(plBirthdayCard.getApplicableShop(),shopId.toString())){ + platformBirthdayCardOpen = false; + } + } + BirthdayCard shopBirthdayCard = birthdayCardMapper.getMerShopBirthdayCard(shopId); + // 如果生日卡存在 + Boolean shopBirthdayCardOpen = true; + if (shopBirthdayCard == null || shopBirthdayCard.getCardStatus()!=1) { + shopBirthdayCardOpen = false; + } + Integer marketingStatus = remoteShopService.getShopMarketingStatus(shopId).getData(); + if(marketingStatus<=1){ + shopBirthdayCardOpen = false; + } + if(!platformBirthdayCardOpen||!shopBirthdayCardOpen){ + return 1; + }else{ + return 0; + } + } } -- Gitblit v1.7.1