From a016ab9f97b76c3b4905b890662d344d47f24005 Mon Sep 17 00:00:00 2001 From: jiangqs <jiangqs> Date: 星期三, 28 六月 2023 18:25:14 +0800 Subject: [PATCH] 联调bug和统计完善 --- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java | 111 +++++++++++++++++++++++++++++++++++++++++++++++++++---- 1 files changed, 102 insertions(+), 9 deletions(-) diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java index 243592f..c9a3204 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java @@ -8,29 +8,29 @@ import com.ruoyi.common.core.exception.ServiceException; import com.ruoyi.common.core.utils.StringUtils; import com.ruoyi.common.core.utils.uuid.IdUtils; +import com.ruoyi.common.security.utils.CodeFactoryUtil; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.order.domain.dto.*; import com.ruoyi.order.domain.pojo.order.ConsumerGoods; import com.ruoyi.order.domain.pojo.order.Order; import com.ruoyi.order.domain.pojo.order.OrderGoods; import com.ruoyi.order.domain.vo.*; +import com.ruoyi.order.mapper.order.OrderMapper; import com.ruoyi.order.service.order.ConsumerGoodsService; import com.ruoyi.order.service.order.OrderGoodsService; -import com.ruoyi.common.security.utils.CodeFactoryUtil; +import com.ruoyi.order.service.order.OrderService; import com.ruoyi.order.service.order.UserServiceRecordService; -import com.ruoyi.system.api.domain.dto.*; -import com.ruoyi.system.api.domain.vo.*; -import com.ruoyi.system.api.domain.vo.MgtMapTotalVo; -import com.ruoyi.system.api.service.*; import com.ruoyi.system.api.constant.AppErrorConstant; +import com.ruoyi.system.api.domain.dto.*; 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.domain.poji.member.MemberCoupon; import com.ruoyi.system.api.domain.poji.shop.Shop; import com.ruoyi.system.api.domain.poji.sys.SysUser; -import com.ruoyi.order.mapper.order.OrderMapper; -import com.ruoyi.order.service.order.OrderService; +import com.ruoyi.system.api.domain.vo.*; +import com.ruoyi.system.api.service.*; import org.springframework.stereotype.Service; import javax.annotation.Resource; @@ -577,12 +577,20 @@ this.saveOrUpdate(order); //创建服务商品 List<AppUserOrderGoodsPageVo> appUserOrderGoodsPageVoList = orderGoodsService.listAppVoByOrderId(orderId); + StringJoiner goodsIdSj = new StringJoiner(","); + for (AppUserOrderGoodsPageVo appUserOrderGoodsPageVo : appUserOrderGoodsPageVoList) { + goodsIdSj.add(appUserOrderGoodsPageVo.getGoodsId()); + } + String goodsIds = goodsIdSj.toString(); + List<Goods> goodsList = remoteGoodsService.listGoodsByGoodsId(goodsIds).getData(); + Map<String,Goods> goodsMap = goodsList.stream() + .collect(Collectors.toMap(Goods::getGoodsId, Function.identity())); ConsumerGoods consumerGoods; String consumerGoodsId; Goods goods; for (AppUserOrderGoodsPageVo appUserOrderGoodsPageVo : appUserOrderGoodsPageVoList) { consumerGoods = new ConsumerGoods(); - goods = remoteGoodsService.getGoods(appUserOrderGoodsPageVo.getGoodsId()).getData(); + goods = goodsMap.get(appUserOrderGoodsPageVo.getGoodsId()); consumerGoodsId = IdUtils.simpleUUID(); consumerGoods.setConsumerGoodsId(consumerGoodsId); consumerGoods.setDelFlag(0); @@ -601,6 +609,7 @@ consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction()); consumerGoods.setGoodsPicture(appUserOrderGoodsPageVo.getGoodsPicture()); consumerGoods.setGoodsNurses(goods.getGoodsNurses()); + consumerGoods.setSourceFrom(1); consumerGoodsService.save(consumerGoods); } //生成返回 @@ -623,6 +632,70 @@ merVerifyOrderVo.setUserName(sysUser.getNickName()); merVerifyOrderVo.setUserMobile(sysUser.getPhonenumber()); return merVerifyOrderVo; + } + + /** + * @description 确认核销优惠券 + * @author jqs + * @date 2023/6/28 11:26 + * @param merVerifyCouponDto + * @return MerVerifyCouponVo + */ + @Override + public MerVerifyCouponVo sureVerifyCoupon(MerVerifyCouponDto merVerifyCouponDto){ + MerVerifyCouponGetVo verifyCouponGetVo = remoteCouponService.getVerifyCoupon(merVerifyCouponDto.getMemberCouponId()).getData(); + // 创建MerVerifyCouponVo对象 + MerVerifyCouponVo merVerifyCouponVo = new MerVerifyCouponVo(); + // 调用remoteCouponService的getVerifyCoupon方法获取MerVerifyCouponGetVo对象 + List<Goods> goodsList = verifyCouponGetVo.getGoodsList(); + Long userId = verifyCouponGetVo.getUserId(); + // 调用remoteMemberService的getMember方法获取Member对象 + Member member = remoteMemberService.getMember(userId).getData(); + merVerifyCouponVo.setUserName(member.getNickName()); + merVerifyCouponVo.setUserMobile(member.getMobile()); + merVerifyCouponVo.setCouponFrom(verifyCouponGetVo.getCouponFrom()); + // 将goodsList转换为MerCouponGoodsListVo列表,并设置相应属性 + List<MerCouponGoodsListVo> merCouponGoodsList = goodsList.stream() + .map(goods -> { + MerCouponGoodsListVo merCouponGoods = new MerCouponGoodsListVo(); + merCouponGoods.setGoodsId(goods.getGoodsId()); + merCouponGoods.setGoodsName(goods.getGoodsName()); + // 设置其他属性 + return merCouponGoods; + }) + .collect(Collectors.toList()); + // 设置merVerifyCouponVo的goodsList属性为merCouponGoodsList + merVerifyCouponVo.setGoodsList(merCouponGoodsList); + MemberCoupon memberCoupon = verifyCouponGetVo.getMemberCoupon(); + //生成服务 + ConsumerGoods consumerGoods; + String consumerGoodsId; + GoodsFile goodsFile; + for (Goods goods : goodsList) { + consumerGoods = new ConsumerGoods(); + consumerGoodsId = IdUtils.simpleUUID(); + consumerGoods.setConsumerGoodsId(consumerGoodsId); + consumerGoods.setDelFlag(0); + consumerGoods.setServiceStatus(1); + consumerGoods.setShopId(memberCoupon.getShopId()); + consumerGoods.setUserId(memberCoupon.getUserId()); + consumerGoods.setSourceFrom(2); + consumerGoods.setMemberCouponId(memberCoupon.getId()); + consumerGoods.setGoodsId(goods.getGoodsId()); + consumerGoods.setGoodsName(goods.getGoodsName()); + consumerGoods.setCycleNumFlag(goods.getCycleNumFlag()); + consumerGoods.setServiceNum(goods.getServiceNum()); + consumerGoods.setUsedNum(0); + consumerGoods.setGoodsType(goods.getGoodsType()); + consumerGoods.setCreateTime(new Date()); + consumerGoods.setGoodsIntroduction(goods.getGoodsIntroduction()); + goodsFile = remoteGoodsService.getGoodsFile(goods.getGoodsId()).getData(); + consumerGoods.setGoodsPicture(goodsFile.getFileUrl()); + consumerGoods.setGoodsNurses(goods.getGoodsNurses()); + consumerGoods.setSourceFrom(1); + consumerGoodsService.save(consumerGoods); + } + return merVerifyCouponVo; } /** @@ -1843,9 +1916,29 @@ */ @Override public MerVerifyCouponVo verifyCoupon(String verifyCode) { + // 创建MerVerifyCouponVo对象 MerVerifyCouponVo merVerifyCouponVo = new MerVerifyCouponVo(); + // 调用remoteCouponService的getVerifyCoupon方法获取MerVerifyCouponGetVo对象 MerVerifyCouponGetVo verifyCouponGetVo = remoteCouponService.getVerifyCoupon(verifyCode).getData(); - + List<Goods> goodsList = verifyCouponGetVo.getGoodsList(); + Long userId = verifyCouponGetVo.getUserId(); + // 调用remoteMemberService的getMember方法获取Member对象 + Member member = remoteMemberService.getMember(userId).getData(); + merVerifyCouponVo.setUserName(member.getNickName()); + merVerifyCouponVo.setUserMobile(member.getMobile()); + merVerifyCouponVo.setCouponFrom(verifyCouponGetVo.getCouponFrom()); + // 将goodsList转换为MerCouponGoodsListVo列表,并设置相应属性 + List<MerCouponGoodsListVo> merCouponGoodsList = goodsList.stream() + .map(goods -> { + MerCouponGoodsListVo merCouponGoods = new MerCouponGoodsListVo(); + merCouponGoods.setGoodsId(goods.getGoodsId()); + merCouponGoods.setGoodsName(goods.getGoodsName()); + // 设置其他属性 + return merCouponGoods; + }) + .collect(Collectors.toList()); + // 设置merVerifyCouponVo的goodsList属性为merCouponGoodsList + merVerifyCouponVo.setGoodsList(merCouponGoodsList); return merVerifyCouponVo; } } -- Gitblit v1.7.1