From f2f07f9c707dc4793c42c90c4039b41a59c3d0f2 Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期一, 26 六月 2023 19:51:23 +0800 Subject: [PATCH] 商户端和管理台联调bug --- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/ConsumerGoodsServiceImpl.java | 119 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 118 insertions(+), 1 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 355537a..003aa9c 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 @@ -3,14 +3,22 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; -import com.ruoyi.order.domain.dto.AppConsumerPageDto; +import com.ruoyi.common.core.exception.ServiceException; +import com.ruoyi.common.core.utils.StringUtils; +import com.ruoyi.order.domain.dto.*; import com.ruoyi.order.domain.pojo.order.ConsumerGoods; +import com.ruoyi.order.domain.pojo.order.UserServiceRecord; import com.ruoyi.order.domain.vo.AppConsumerPageVo; +import com.ruoyi.order.domain.vo.MerConsumerGoodsListVo; +import com.ruoyi.order.domain.vo.MerConsumerGoodsVo; import com.ruoyi.order.mapper.order.ConsumerGoodsMapper; import com.ruoyi.order.service.order.ConsumerGoodsService; +import com.ruoyi.order.service.order.UserServiceRecordService; +import com.ruoyi.system.api.constant.AppErrorConstant; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.util.Date; import java.util.List; /** @@ -27,6 +35,8 @@ @Resource private ConsumerGoodsMapper consumerGoodsMapper; + @Resource + private UserServiceRecordService userServiceRecordService; /** * 获取用户服务 * @param page @@ -37,4 +47,111 @@ public List<AppConsumerPageVo> pageUserConsumerGoods(Page page, AppConsumerPageDto appConsumerPageDto){ return consumerGoodsMapper.pageUserConsumerGoods(page, appConsumerPageDto); } + + /** + * 获取会员服务商品 + * @param merConsumerGoodsDto + * @return + */ + @Override + public MerConsumerGoodsVo listMerConsumerGoods(MerConsumerGoodsDto merConsumerGoodsDto){ + MerConsumerGoodsVo merConsumerGoodsVo = new MerConsumerGoodsVo(); + if(merConsumerGoodsDto.getGoodsType()==1){ + List<MerConsumerGoodsListVo> noSureList = consumerGoodsMapper.listMerNoSureConsumerGoods(merConsumerGoodsDto); + merConsumerGoodsVo.setNoSureList(noSureList); + } + List<MerConsumerGoodsListVo> sureList = consumerGoodsMapper.listMerConsumerGoods(merConsumerGoodsDto); + merConsumerGoodsVo.setSureList(sureList); + return merConsumerGoodsVo; + } + + /** + * 确认商品次数 + * @param merSureConsumerGoodsDto + */ + @Override + public void sureMerConsumerGoods(MerSureConsumerGoodsDto merSureConsumerGoodsDto){ + List<MerSureConsumerGoodsListDto> merSureConsumerGoodsListDtoList = merSureConsumerGoodsDto.getMerSureConsumerGoodsListDtoList(); + if(merSureConsumerGoodsListDtoList!=null && !merSureConsumerGoodsListDtoList.isEmpty()){ + ConsumerGoods consumerGoods; + for(MerSureConsumerGoodsListDto merSureConsumerGoodsListDto : merSureConsumerGoodsListDtoList){ + consumerGoods = this.getById(merSureConsumerGoodsListDto.getConsumerGoodsId()); + consumerGoods.setCycleNumFlag(1); + consumerGoods.setServiceNum(merSureConsumerGoodsListDto.getServiceNum()); + this.saveOrUpdate(consumerGoods); + } + } + } + + /** + * 确认商品次数 + * @param merSureConsumerGoodsDto + */ + @Override + public void useMerConsumerGoods(MerSureConsumerGoodsDto merSureConsumerGoodsDto){ + List<MerSureConsumerGoodsListDto> merSureConsumerGoodsListDtoList = merSureConsumerGoodsDto.getMerSureConsumerGoodsListDtoList(); + if(merSureConsumerGoodsListDtoList!=null && !merSureConsumerGoodsListDtoList.isEmpty()){ + ConsumerGoods consumerGoods; + Integer serviceNum; + Integer usedNum; + Integer useNum; + Integer surpNum; + Long shopId = null; + Long userId = null; + String consumerGoodsNames = ""; + String consumerGoodsIds = ""; + Integer serviceType = 1; + for(MerSureConsumerGoodsListDto merSureConsumerGoodsListDto : merSureConsumerGoodsListDtoList){ + consumerGoods = this.getById(merSureConsumerGoodsListDto.getConsumerGoodsId()); + serviceNum = consumerGoods.getServiceNum(); + usedNum = consumerGoods.getUsedNum(); + surpNum = serviceNum - usedNum; + useNum = merSureConsumerGoodsListDto.getServiceNum(); + if(useNum>surpNum){ + throw new ServiceException(AppErrorConstant.BEYOND_SURP_NUM); + } + consumerGoods.setUsedNum(usedNum+useNum); + consumerGoods.setUseTime(new Date()); + if(consumerGoods.getUsedNum().equals(serviceNum)){ + consumerGoods.setServiceStatus(2); + consumerGoods.setCompleteTime(new Date()); + } + this.saveOrUpdate(consumerGoods); + shopId = consumerGoods.getShopId(); + userId= consumerGoods.getUserId(); + serviceType = consumerGoods.getGoodsType(); + if(StringUtils.isBlank(consumerGoodsIds)){ + consumerGoodsIds = consumerGoods.getConsumerGoodsId(); + }else{ + consumerGoodsIds = consumerGoodsIds + "," + consumerGoods.getConsumerGoodsId(); + } + if(StringUtils.isBlank(consumerGoodsNames)){ + consumerGoodsNames = consumerGoods.getGoodsName(); + }else{ + consumerGoodsNames = consumerGoodsNames + "、" + consumerGoods.getGoodsName(); + } + } + UserServiceRecord userServiceRecord = new UserServiceRecord(); + userServiceRecord.setCreateTime(new Date()); + userServiceRecord.setServiceType(serviceType); + userServiceRecord.setDelFlag(0); + userServiceRecord.setShopId(shopId); + userServiceRecord.setUserId(userId); + userServiceRecord.setConsumerGoodsIds(consumerGoodsIds); + userServiceRecord.setConsumerGoodsNames(consumerGoodsNames); + userServiceRecordService.saveOrUpdate(userServiceRecord); + } + } + + /** + * + * @param page + * @param merConsumerGoodsPageDto + * @return + */ + @Override + public List<MerConsumerGoodsListVo> pageMerConsumerGoodsNum(Page page, MerConsumerGoodsPageDto merConsumerGoodsPageDto){ + List<MerConsumerGoodsListVo> merConsumerGoodsListVos = consumerGoodsMapper.pageMerConsumerGoodsNum(page, merConsumerGoodsPageDto); + return merConsumerGoodsListVos; + } } -- Gitblit v1.7.1