From 3adbcc42d5f84c3c83d220543189361add81e04d Mon Sep 17 00:00:00 2001
From: jiangqs <jiangqs>
Date: 星期一, 11 九月 2023 15:22:19 +0800
Subject: [PATCH] bug

---
 ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java |   34 ++++++++++++++++++++++++++--------
 1 files changed, 26 insertions(+), 8 deletions(-)

diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
index 58c6aa5..29ba1ef 100644
--- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
+++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java
@@ -18,17 +18,19 @@
 import com.ruoyi.order.service.order.ConsumerGoodsService;
 import com.ruoyi.order.service.order.ServiceRecordDetailService;
 import com.ruoyi.order.service.order.UserServiceRecordService;
+import com.ruoyi.order.util.MsgUtils;
 import com.ruoyi.system.api.constant.AppErrorConstant;
 import com.ruoyi.system.api.domain.dto.AppShopGoodsGetDto;
 import com.ruoyi.system.api.domain.dto.BirthdayGiftSendDto;
 import com.ruoyi.system.api.domain.dto.MemberTotalChangeDto;
-import com.ruoyi.system.api.domain.dto.ShopTotalChangeDto;
 import com.ruoyi.system.api.domain.poji.goods.Goods;
 import com.ruoyi.system.api.domain.poji.goods.GoodsFile;
 import com.ruoyi.system.api.domain.poji.goods.ShopGoods;
+import com.ruoyi.system.api.domain.poji.member.Member;
 import com.ruoyi.system.api.service.RemoteGoodsService;
 import com.ruoyi.system.api.service.RemoteMemberService;
 import com.ruoyi.system.api.service.RemoteShopService;
+import io.seata.spring.annotation.GlobalTransactional;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
@@ -99,7 +101,7 @@
      * @param merSureConsumerGoodsDto
      */
     @Override
-    @Transactional
+        @Transactional
     public void sureMerConsumerGoods(MerSureConsumerGoodsDto merSureConsumerGoodsDto){
         ConsumerGoods oldConsumerGoods = this.getById(merSureConsumerGoodsDto.getConsumerGoodsId());
         if(oldConsumerGoods.getSureNum()==null||oldConsumerGoods.getSureNum()<1){
@@ -142,6 +144,7 @@
                         consumerGoods.setUsedNum(0);
                         consumerGoods.setCreateTime(new Date());
                         consumerGoods.setGoodsType(goods.getGoodsType());
+                        consumerGoods.setGoodsTag(goods.getGoodsTags());
                         consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction());
                         consumerGoods.setGoodsPicture(goodsFile.getFileUrl());
                         consumerGoods.setGoodsNurses(goods.getGoodsNurses());
@@ -194,7 +197,7 @@
             memberTotalChangeDto.setTypeService(1);
             memberTotalChangeDto.setServiceCount(serviceCount);
             remoteMemberService.changeMemberTotal(memberTotalChangeDto);
-            ShopTotalChangeDto shopTotalChangeDto = new ShopTotalChangeDto();
+            /*ShopTotalChangeDto shopTotalChangeDto = new ShopTotalChangeDto();
             shopTotalChangeDto.setShopId(merSureConsumerGoodsDto.getShopId());
             shopTotalChangeDto.setTypeCycleService(1);
             shopTotalChangeDto.setCycleService(cycleService);
@@ -205,7 +208,7 @@
             shopTotalChangeDto.setTypeExperienceService(1);
             shopTotalChangeDto.setExperienceService(experienceService);
             shopTotalChangeDto.setExperiencePerson(experiencePerson);
-            remoteShopService.changeShopTotal(shopTotalChangeDto);
+            remoteShopService.changeShopTotal(shopTotalChangeDto);*/
         }
     }
 
@@ -215,6 +218,7 @@
      */
     @Override
     @Transactional
+    @GlobalTransactional(rollbackFor = Exception.class)
     public void useMerConsumerGoods(MerSureConsumerGoodsDto merSureConsumerGoodsDto){
         List<MerSureConsumerGoodsListDto> goodsList = merSureConsumerGoodsDto.getMerSureConsumerGoodsListDtoList();
         if (goodsList != null && !goodsList.isEmpty()) {
@@ -239,6 +243,7 @@
             List<ServiceRecordDetail> serviceRecordDetailList = new ArrayList<>();
             ServiceRecordDetail serviceRecordDetail;
             MerMemberConsumerGoodsTotalVo memberGoodsTotal = this.getMemberConsumerGoodsTotalVo(merSureConsumerGoodsDto.getMemberUserId(), merSureConsumerGoodsDto.getShopId());
+            List<String> consumerGoodsList = new ArrayList<>();
             for (MerSureConsumerGoodsListDto goodsDto : goodsList) {
                 consumerGoods = this.getById(goodsDto.getConsumerGoodsId());
                 serviceRecordDetail = new ServiceRecordDetail();
@@ -292,8 +297,12 @@
                 serviceRecordDetail.setConsumerGoodsName(consumerGoods.getGoodsName());
                 serviceRecordDetail.setServiceNum(consumerGoods.getServiceNum());
                 serviceRecordDetail.setSurpNum(consumerGoods.getServiceNum()-consumerGoods.getUsedNum());
+                if(serviceRecordDetail.getSurpNum()==0){
+                    consumerGoodsList.add(consumerGoods.getGoodsName());
+                }
                 serviceRecordDetailList.add(serviceRecordDetail);
             }
+
             //判断是否减人
             if (cycleService > 0 && memberGoodsTotal.getCycleOrder() - cycleService < 1) {
                 cyclePerson = 1;
@@ -324,7 +333,7 @@
             memberTotalChange.setTypeService(2);
             memberTotalChange.setServiceCount(serviceCount);
             remoteMemberService.changeMemberTotal(memberTotalChange);
-            ShopTotalChangeDto shopTotalChange = new ShopTotalChangeDto();
+            /*ShopTotalChangeDto shopTotalChange = new ShopTotalChangeDto();
             shopTotalChange.setShopId(merSureConsumerGoodsDto.getShopId());
             shopTotalChange.setTypeCycleService(2);
             shopTotalChange.setCycleService(cycleService);
@@ -335,7 +344,15 @@
             shopTotalChange.setTypeExperienceService(2);
             shopTotalChange.setExperienceService(experienceService);
             shopTotalChange.setExperiencePerson(experiencePerson);
-            remoteShopService.changeShopTotal(shopTotalChange);
+            remoteShopService.changeShopTotal(shopTotalChange);*/
+            if(!consumerGoodsList.isEmpty()){
+                Member member = remoteMemberService.getMember(userId).getData();
+                try {
+                    MsgUtils.sendMsg(member.getMobile(),null,null);
+                } catch (Exception e) {
+                    throw new RuntimeException(e);
+                }
+            }
         }
     }
 
@@ -420,6 +437,7 @@
                 consumerGoods.setUsedNum(0);
                 consumerGoods.setCreateTime(new Date());
                 consumerGoods.setGoodsType(goods.getGoodsType());
+                consumerGoods.setGoodsTag(goods.getGoodsTags());
                 consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction());
                 consumerGoods.setGoodsPicture(goodsFile.getFileUrl());
                 consumerGoods.setGoodsNurses(goods.getGoodsNurses());
@@ -494,7 +512,7 @@
         memberTotalChangeDto.setTypeService(1);
         memberTotalChangeDto.setServiceCount(serviceCount);
         remoteMemberService.changeMemberTotal(memberTotalChangeDto);
-        ShopTotalChangeDto shopTotalChangeDto = new ShopTotalChangeDto();
+        /*ShopTotalChangeDto shopTotalChangeDto = new ShopTotalChangeDto();
         shopTotalChangeDto.setShopId(shopId);
         shopTotalChangeDto.setOrderType(1);
         shopTotalChangeDto.setTypeCycleService(1);
@@ -506,7 +524,7 @@
         shopTotalChangeDto.setTypeExperienceService(1);
         shopTotalChangeDto.setExperienceService(experienceService);
         shopTotalChangeDto.setExperiencePerson(experiencePerson);
-        remoteShopService.changeShopTotal(shopTotalChangeDto);
+        remoteShopService.changeShopTotal(shopTotalChangeDto);*/
         return this.saveBatch(consumerGoodsList);
     }
 }

--
Gitblit v1.7.1