From c927b4d36b9e04a8b2ba08c8789f5277aa1c277d Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期四, 27 七月 2023 21:01:15 +0800
Subject: [PATCH] bug
---
ruoyi-modules/ruoyi-member/src/main/java/com/ruoyi/member/service/impl/birthday/BirthdayCardServiceImpl.java | 95 ++++++++++++++++++++++++++++++++++++++---------
1 files changed, 77 insertions(+), 18 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 40fe121..0cbb294 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
@@ -1,23 +1,25 @@
package com.ruoyi.member.service.impl.birthday;
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.utils.bean.BeanUtils;
+import com.ruoyi.common.core.utils.uuid.IdUtils;
import com.ruoyi.member.domain.dto.MerBirthdayEditDto;
import com.ruoyi.member.domain.dto.MgtBirthdayEditDto;
import com.ruoyi.member.domain.dto.MgtBirthdayGetDto;
import com.ruoyi.member.domain.dto.MgtBirthdayGiftDto;
import com.ruoyi.member.domain.pojo.birthday.BirthdayCard;
import com.ruoyi.member.domain.pojo.birthday.BirthdayGift;
-import com.ruoyi.member.domain.pojo.member.MemberGiftRecord;
import com.ruoyi.member.domain.vo.*;
import com.ruoyi.member.mapper.birthday.BirthdayCardMapper;
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.domain.dto.BirthdayGiftSendDto;
-import com.ruoyi.system.api.service.RemoteCouponService;
-import com.ruoyi.system.api.service.RemoteOrderService;
+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 +27,7 @@
import java.math.BigDecimal;
import java.time.LocalDate;
import java.util.*;
+import java.util.function.Function;
import java.util.stream.Collectors;
/**
@@ -50,11 +53,6 @@
@Resource
private MemberGiftRecordService memberGiftRecordService;
- @Resource
- private RemoteCouponService remoteCouponService;
-
- @Resource
- private RemoteOrderService remoteOrderService;
/**
* @description 平台编辑生日卡
@@ -90,7 +88,11 @@
// 创建新的生日卡
BirthdayCard birthdayCard = new BirthdayCard();
birthdayCard.setDelFlag(0);
- birthdayCard.setShopId(0L);
+ if(mgtBirthdayEditDto.getShopId()!=null){
+ birthdayCard.setShopId(mgtBirthdayEditDto.getShopId());
+ }else{
+ birthdayCard.setShopId(0L);
+ }
birthdayCard.setCardStatus(mgtBirthdayEditDto.getCardStatus());
// 根据卡状态设置开启或关闭时间
if(mgtBirthdayEditDto.getCardStatus()==1){
@@ -100,16 +102,16 @@
}
// 设置创建时间
birthdayCard.setCreateTime(new Date());
- // 如果店铺ID不为空,则进行相关设置
- if(mgtBirthdayEditDto.getShopId()!=null){
+ // 如果店铺ID为空,则进行相关设置
+ if(mgtBirthdayEditDto.getShopId()==null){
birthdayCard.setAreaFlag(mgtBirthdayEditDto.getAreaFlag());
- if(mgtBirthdayEditDto.getAreaFlag()==2){
+ if(mgtBirthdayEditDto.getAreaFlag()!=null&&mgtBirthdayEditDto.getAreaFlag()==2){
birthdayCard.setDesignatedArea(mgtBirthdayEditDto.getDesignatedArea());
}else{
birthdayCard.setDesignatedArea(null);
}
birthdayCard.setShopFlag(mgtBirthdayEditDto.getShopFlag());
- if(mgtBirthdayEditDto.getShopFlag()==2){
+ if(mgtBirthdayEditDto.getShopFlag()!=null&&mgtBirthdayEditDto.getShopFlag()==2){
birthdayCard.setApplicableShop(mgtBirthdayEditDto.getApplicableShop());
}else{
birthdayCard.setApplicableShop(null);
@@ -123,7 +125,7 @@
List<MgtBirthdayGiftDto> mgtBirthdayGiftDtoList = mgtBirthdayEditDto.getMgtBirthdayGiftDtoList();
List<BirthdayGift> birthdayGiftList = new ArrayList<>();
// 如果生日礼物列表不为空,则进行相关设置
- if(!mgtBirthdayGiftDtoList.isEmpty()) {
+ if(mgtBirthdayGiftDtoList!=null&&!mgtBirthdayGiftDtoList.isEmpty()) {
mgtBirthdayGiftDtoList.forEach(dto -> {
BirthdayGift birthdayGift = new BirthdayGift();
birthdayGift.setDelFlag(0);
@@ -229,6 +231,7 @@
giftDesc = giftSj.toString();
birthdayGetVo.setGiftDesc(giftDesc);
}
+ birthdayGetVo.setCardStatus(birthdayCard.getCardStatus());
}else{
birthdayGetVo.setCardStatus(2);
}
@@ -345,7 +348,7 @@
// 创建新的生日卡
BirthdayCard birthdayCard = new BirthdayCard();
birthdayCard.setDelFlag(0);
- birthdayCard.setShopId(0L);
+ birthdayCard.setShopId(merBirthdayEditDto.getShopId());
birthdayCard.setCardStatus(merBirthdayEditDto.getCardStatus());
// 根据卡状态设置开启或关闭时间
if(merBirthdayEditDto.getCardStatus()==1){
@@ -482,6 +485,7 @@
BigDecimal winningProbability;
BigDecimal randomProbability;
BirthdayGiftSendDto birthdayGiftSendDto;
+ String prizeId;
String currentYear = String.valueOf(LocalDate.now().getYear());
// 获取平台生日卡信息
BirthdayCard plBirthdayCard = birthdayCardMapper.getPlatformBirthdayCard(shopId);
@@ -499,6 +503,10 @@
memberGiftRecord = new MemberGiftRecord();
birthdayGiftSendDto = new BirthdayGiftSendDto();
BeanUtils.copyProperties(birthdayGift, memberGiftRecord);
+ prizeId = IdUtils.simpleUUID();
+ memberGiftRecord.setPrizeId(prizeId);
+ memberGiftRecord.setDelFlag(0);
+ memberGiftRecord.setVerifyStatus(1);
memberGiftRecord.setGiftFrom(1);
memberGiftRecord.setGiftYear(currentYear);
memberGiftRecord.setCreateTime(new Date());
@@ -514,6 +522,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,即商品
@@ -522,16 +533,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());
+ memberGiftRecord.setGiftName(birthdayGift.getGiftName());
+ memberGiftRecord.setGiftNumber(birthdayGift.getGiftNumber());
break;
default:
break;
@@ -564,6 +581,10 @@
memberGiftRecord = new MemberGiftRecord();
birthdayGiftSendDto = new BirthdayGiftSendDto();
BeanUtils.copyProperties(birthdayGift, memberGiftRecord);
+ prizeId = IdUtils.simpleUUID();
+ memberGiftRecord.setPrizeId(prizeId);
+ memberGiftRecord.setDelFlag(0);
+ memberGiftRecord.setVerifyStatus(1);
memberGiftRecord.setGiftFrom(2);
memberGiftRecord.setShopId(shopId);
memberGiftRecord.setGiftYear(currentYear);
@@ -581,6 +602,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,即商品
@@ -589,16 +613,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());
+ memberGiftRecord.setGiftName(birthdayGift.getGiftName());
+ memberGiftRecord.setGiftNumber(birthdayGift.getGiftNumber());
break;
default:
break;
@@ -610,12 +640,41 @@
}
}
}
- //发放奖品
- remoteOrderService.sendGoodsGift(sendGoodsList);
- remoteCouponService.sendCouponGift(sendCouponList);
//保存用户礼物记录
memberGiftRecordService.saveBatch(memberGiftRecordList);
appBirthdayCardVo.setBirthdayGiftVoList(birthdayGiftVoList);
return appBirthdayCardVo;
}
+
+ /**
+ * @description
+ * @author jqs
+ * @date 2023/7/11 18:02
+ * @param page
+ * @param userId
+ * @return List<AppMemberPrizePageVo>
+ */
+ @Override
+ 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){
+ appMemberPrizePageVo.setVerifyShopName(shopMap.get(appMemberPrizePageVo.getShopId()).getShopName());
+ }
+ }
+ return memberPrizePageVoList;
+ }
}
--
Gitblit v1.7.1