From cead7b98d5cebc0825b919799e23732877361de0 Mon Sep 17 00:00:00 2001 From: Pu Zhibing <393733352@qq.com> Date: 星期五, 20 六月 2025 18:39:58 +0800 Subject: [PATCH] 修改bug --- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java | 109 ++++++++++++++++++------------------------------------ 1 files changed, 36 insertions(+), 73 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 eb7cee9..b5a1724 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 @@ -1,6 +1,7 @@ package com.ruoyi.order.service.impl.order; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.ruoyi.common.core.domain.R; @@ -33,6 +34,8 @@ import com.ruoyi.system.api.service.RemoteMemberService; import com.ruoyi.system.api.service.RemoteShopService; import io.seata.spring.annotation.GlobalTransactional; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -51,6 +54,8 @@ */ @Service public class ConsumerGoodsServiceImpl extends ServiceImpl<ConsumerGoodsMapper, ConsumerGoods> implements ConsumerGoodsService { + + private Logger log = LoggerFactory.getLogger(ConsumerGoodsServiceImpl.class); @Resource private ConsumerGoodsMapper consumerGoodsMapper; @@ -83,20 +88,29 @@ public List<AppConsumerPageVo> pageUserConsumerGoods(Page page, AppConsumerPageDto appConsumerPageDto){ return consumerGoodsMapper.pageUserConsumerGoods(page, appConsumerPageDto); } - + /** * 获取会员服务商品 + * * @param merConsumerGoodsDto * @return */ @Override - public MerConsumerGoodsVo listMerConsumerGoods(MerConsumerGoodsDto merConsumerGoodsDto){ + public MerConsumerGoodsVo listMerConsumerGoods(MerConsumerGoodsDto merConsumerGoodsDto) { MerConsumerGoodsVo merConsumerGoodsVo = new MerConsumerGoodsVo(); - if(merConsumerGoodsDto.getGoodsType()==1){ + if (merConsumerGoodsDto.getGoodsType() == 1) { List<MerConsumerGoodsListVo> noSureList = consumerGoodsMapper.listMerNoSureConsumerGoods(merConsumerGoodsDto); merConsumerGoodsVo.setNoSureList(noSureList); } List<MerConsumerGoodsListVo> sureList = consumerGoodsMapper.listMerConsumerGoods(merConsumerGoodsDto); + Member member = remoteMemberService.getMember(merConsumerGoodsDto.getUserId()).getData(); + String lastServiceId = member.getLastServiceId(); + if (StringUtils.isNotEmpty(lastServiceId)) { + List<String> list = JSON.parseArray(lastServiceId, String.class); + sureList.forEach(s -> { + s.setOptionFlag(list.contains(s.getConsumerGoodsId())); + }); + } merConsumerGoodsVo.setSureList(sureList); return merConsumerGoodsVo; } @@ -117,17 +131,12 @@ ConsumerGoods consumerGoods; Integer serviceCount = 0; Integer cycleService = 0; - //Integer cyclePerson = 0; Integer serviceService = 0; - //Integer servicePerson = 0; Integer experienceService = 0; - //Integer experiencePerson = 0; Goods goods; GoodsFile goodsFile; String consumerGoodsId; List<ConsumerGoods> consumerGoodsList = new ArrayList<>(); - //获取用户各类型订单数 - //MerMemberConsumerGoodsTotalVo memberConsumerGoodsTotalVo = this.getMemberConsumerGoodsTotalVo(merSureConsumerGoodsDto.getUserId(), merSureConsumerGoodsDto.getShopId()); int sureNum = 0; for(MerSureConsumerGoodsListDto merSureConsumerGoodsListDto : merSureConsumerGoodsListDtoList){ goods = remoteGoodsService.getGoods(merSureConsumerGoodsListDto.getGoodsId()).getData(); @@ -175,47 +184,26 @@ } } //判断商品确认次数 - if(sureNum>oldConsumerGoods.getSureNum()){ + if (sureNum > oldConsumerGoods.getSureNum()) { throw new ServiceException(AppErrorConstant.GOODS_SURE_FAILED); - }else{ + } else { int surpNum = oldConsumerGoods.getSureNum(); surpNum = surpNum - sureNum; oldConsumerGoods.setSureNum(surpNum); - if(surpNum==0){ + if (surpNum == 0) { oldConsumerGoods.setDelFlag(1); } this.saveOrUpdate(oldConsumerGoods); } this.saveBatch(consumerGoodsList); - //判断是否加人 - /*if (cycleService > 0 && memberConsumerGoodsTotalVo.getCycleOrder() == 0) { - cyclePerson = 1; - } - if (serviceService > 0 && memberConsumerGoodsTotalVo.getServiceOrder() == 0) { - servicePerson = 1; - } - if (experienceService > 0 && memberConsumerGoodsTotalVo.getExperienceOrder() == 0) { - experiencePerson = 1; - }*/ serviceCount = cycleService + serviceService + experienceService; //更新商户和会员服务统计 MemberTotalChangeDto memberTotalChangeDto = new MemberTotalChangeDto(); - memberTotalChangeDto.setUserId(merSureConsumerGoodsDto.getUserId()); + memberTotalChangeDto.setUserId(merSureConsumerGoodsDto.getMemberUserId()); memberTotalChangeDto.setTypeService(1); memberTotalChangeDto.setServiceCount(serviceCount); + log.info("更新商户和会员服务统计---》" + memberTotalChangeDto.toString()); remoteMemberService.changeMemberTotal(memberTotalChangeDto); - /*ShopTotalChangeDto shopTotalChangeDto = new ShopTotalChangeDto(); - shopTotalChangeDto.setShopId(merSureConsumerGoodsDto.getShopId()); - shopTotalChangeDto.setTypeCycleService(1); - shopTotalChangeDto.setCycleService(cycleService); - shopTotalChangeDto.setCyclePerson(cyclePerson); - shopTotalChangeDto.setTypeServiceService(1); - shopTotalChangeDto.setServiceService(serviceService); - shopTotalChangeDto.setServicePerson(servicePerson); - shopTotalChangeDto.setTypeExperienceService(1); - shopTotalChangeDto.setExperienceService(experienceService); - shopTotalChangeDto.setExperiencePerson(experiencePerson); - remoteShopService.changeShopTotal(shopTotalChangeDto);*/ } } @@ -241,11 +229,8 @@ Integer serviceType = 1; Integer serviceCount = 0; Integer cycleService = 0; - //Integer cyclePerson = 0; Integer serviceService = 0; - //Integer servicePerson = 0; Integer experienceService = 0; - //Integer experiencePerson = 0; //获取会员商品总数 List<ServiceRecordDetail> serviceRecordDetailList = new ArrayList<>(); ServiceRecordDetail serviceRecordDetail; @@ -329,20 +314,26 @@ serviceRecord.setConsumerGoodsNames(goodsNames); userServiceRecordService.saveOrUpdate(serviceRecord); //服务记录详情 - for(ServiceRecordDetail serviceRecordDetail1 : serviceRecordDetailList){ + for (ServiceRecordDetail serviceRecordDetail1 : serviceRecordDetailList) { serviceRecordDetail1.setRecordId(serviceRecord.getId()); } serviceRecordDetailService.saveBatch(serviceRecordDetailList); + + //保存本次确认的服务商品id,用于下次进入页面后默认勾选上 + List<String> collect = goodsList.stream().map(MerSureConsumerGoodsListDto::getConsumerGoodsId).collect(Collectors.toList()); + Member member = remoteMemberService.getMember(merSureConsumerGoodsDto.getUserId()).getData(); + member.setLastServiceId(JSON.toJSONString(collect)); + remoteMemberService.editMember(member); + //更新商户和会员服务统计 MemberTotalChangeDto memberTotalChange = new MemberTotalChangeDto(); memberTotalChange.setUserId(merSureConsumerGoodsDto.getMemberUserId()); memberTotalChange.setTypeService(2); memberTotalChange.setServiceCount(serviceCount); remoteMemberService.changeMemberTotal(memberTotalChange); - if(!sendData.isEmpty()){ - Member member = remoteMemberService.getMember(userId).getData(); + if (!sendData.isEmpty()) { R<Shop> r = remoteShopService.getShop(shopId); - if(r.getCode() != 200){ + if (r.getCode() != 200) { throw new ServiceException(r.getMsg()); } Shop shop = r.getData(); @@ -352,11 +343,10 @@ Integer number = Integer.valueOf(sendDatum.get("number").toString()); String msg = "{\"name\":\"" + (StringUtils.isEmpty(member.getRealName()) ? member.getNickName() : member.getRealName()) + "\"," + "\"store\":\"" + shop.getShopName() + "\",\"product\":\"" + product + "\"}"; - if(number == 2){ - MsgUtils.sendMsg(member.getMobile(),"SMS_464376210",msg); - } - if(number == 0){ - MsgUtils.sendMsg(member.getMobile(),"SMS_464321234",msg); + if (number == 0) { + MsgUtils.sendMsg(member.getMobile(), "SMS_464321234", msg); + } else { + MsgUtils.sendMsg(member.getMobile(), "SMS_464376210", msg); } } @@ -476,14 +466,10 @@ public boolean saveBatchConsumerGoods(List<ConsumerGoods> consumerGoodsList){ Integer serviceCount = 0; Integer cycleService = 0; - //Integer cyclePerson = 0; Integer serviceService = 0; - //Integer servicePerson = 0; Integer experienceService = 0; - //Integer experiencePerson = 0; Long shopId = consumerGoodsList.get(0).getShopId(); Long userId = consumerGoodsList.get(0).getUserId(); - //MerMemberConsumerGoodsTotalVo memberConsumerGoodsTotalVo = this.getMemberConsumerGoodsTotalVo(userId, shopId); for(ConsumerGoods consumerGoods : consumerGoodsList){ //处理商品服务次数 switch (consumerGoods.getGoodsType()) { @@ -506,16 +492,6 @@ break; } } - //判断是否加人 - /*if (cycleService > 0 && memberConsumerGoodsTotalVo.getCycleOrder() == 0) { - cyclePerson = 1; - } - if (serviceService > 0 && memberConsumerGoodsTotalVo.getServiceOrder() == 0) { - servicePerson = 1; - } - if (experienceService > 0 && memberConsumerGoodsTotalVo.getExperienceOrder() == 0) { - experiencePerson = 1; - }*/ serviceCount = cycleService + serviceService + experienceService; //更新商户和会员服务统计 MemberTotalChangeDto memberTotalChangeDto = new MemberTotalChangeDto(); @@ -523,19 +499,6 @@ memberTotalChangeDto.setTypeService(1); memberTotalChangeDto.setServiceCount(serviceCount); remoteMemberService.changeMemberTotal(memberTotalChangeDto); - /*ShopTotalChangeDto shopTotalChangeDto = new ShopTotalChangeDto(); - shopTotalChangeDto.setShopId(shopId); - shopTotalChangeDto.setOrderType(1); - shopTotalChangeDto.setTypeCycleService(1); - shopTotalChangeDto.setCycleService(cycleService); - shopTotalChangeDto.setCyclePerson(cyclePerson); - shopTotalChangeDto.setTypeServiceService(1); - shopTotalChangeDto.setServiceService(serviceService); - shopTotalChangeDto.setServicePerson(servicePerson); - shopTotalChangeDto.setTypeExperienceService(1); - shopTotalChangeDto.setExperienceService(experienceService); - shopTotalChangeDto.setExperiencePerson(experiencePerson); - remoteShopService.changeShopTotal(shopTotalChangeDto);*/ return this.saveBatch(consumerGoodsList); } } -- Gitblit v1.7.1