From 768a9ef990c196e06f85d4a770a274470d7e57df Mon Sep 17 00:00:00 2001 From: zhanglin8526 <852614290@qq.com> Date: 星期四, 11 五月 2023 22:49:03 +0800 Subject: [PATCH] 修改订单报错 --- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/order/OrderServiceImpl.java | 60 +++++++++++++++++++++++++++++++++++++++++++++++++++++------- 1 files changed, 53 insertions(+), 7 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 d8319b0..2d143b0 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 @@ -315,7 +315,9 @@ orderGoods.setOrderId(orderId); orderGoods.setGoodsId(goodsId); orderGoods.setBuyNum(buyNum); - orderGoods.setCouponId(userCouponId.toString()); + if(userCouponId!=null){ + orderGoods.setCouponId(userCouponId.toString()); + } orderGoods.setGoodsPrice(goodsPrice); orderGoods.setGoodsTotalMoney(orderGoodsMoney); orderGoods.setGoodsReceivableMoney(goodsRealPrice); @@ -327,7 +329,8 @@ Order order = new Order(); order.setOrderId(orderId); order.setDelFlag(0); - order.setOrderStatus(1); + //为对接支付 直接付款成功 + order.setOrderStatus(2); order.setOrderNo(orderNo); order.setOrderFrom(1); order.setShopId(appPlaceOrderDto.getShopId()); @@ -341,11 +344,13 @@ order.setPayMoney(orderPayMoney); order.setOnlinePayMoney(orderPayMoney); appPlaceOrderVo.setPayMoney(orderPayMoney); + appPlaceOrderVo.setUnpaidMoney(order.getReceivableMoney().subtract(order.getPayMoney())); order.setCloseFlag(1); }else if(order.getPayType()==2){ order.setPayMoney(orderPayDeposit); order.setOnlinePayMoney(orderPayDeposit); appPlaceOrderVo.setPayMoney(orderPayDeposit); + appPlaceOrderVo.setUnpaidMoney(order.getReceivableMoney().subtract(order.getPayMoney())); order.setCloseFlag(0); } order.setOrderRemark(appPlaceOrderDto.getOrderRemark()); @@ -391,6 +396,7 @@ }else{ appUserOrderPageVo.setSameShop(0); } + appUserOrderPageVo.setVerifyCode("1-"+appUserOrderPageVo.getOrderId()); } } return appUserOrderPageVoList; @@ -422,6 +428,7 @@ Shop shop = remoteShopService.getShop(order.getShopId()).getData(); appUserOrderGetVo.setShopName(shop.getShopName()); appUserOrderGetVo.setAppUserOrderGoodsPageVoList(appUserOrderGoodsPageVoList); + appUserOrderGetVo.setVerifyCode("1-"+orderId); return appUserOrderGetVo; } @@ -517,14 +524,15 @@ public MerVerifyOrderVo sureVerifyOrder(MerVerifyOrderDto merVerifyOrderDto){ String orderId = merVerifyOrderDto.getOrderId(); BigDecimal relReceiveMoney = merVerifyOrderDto.getRelReceiveMoney(); + BigDecimal relPayMoney = merVerifyOrderDto.getRelPayMoney(); Date nowTime = new Date(); //更新订单信息 Order order = this.getById(orderId); order.setOrderStatus(3); order.setUseTime(nowTime); order.setUseUserId(merVerifyOrderDto.getUserId()); - order.setOfflinePayMoney(relReceiveMoney); - order.setPayMoney(order.getPayMoney().add(relReceiveMoney)); + order.setOfflinePayMoney(relPayMoney); + order.setPayMoney(relReceiveMoney.add(relPayMoney)); order.setCloseFlag(1); this.saveOrUpdate(order); //创建服务商品 @@ -619,7 +627,11 @@ BigDecimal goodsTotalPrice; BigDecimal goodsRealPrice; List<AppUserCouponVo> appUserCouponVoList = remoteMemberService.listVoUserCouponByUserId(userId).getData(); - Map<Long,AppUserCouponVo> appUserCouponVoMap = appUserCouponVoList.stream().collect(Collectors.toMap(AppUserCouponVo::getUserCouponId, Function.identity())); + Map<Long,AppUserCouponVo> appUserCouponVoMap = new HashMap<>(); + if(null != appUserCouponVoList){ + appUserCouponVoMap = appUserCouponVoList.stream().collect(Collectors.toMap(AppUserCouponVo::getUserCouponId, Function.identity())); + } + AppUserCouponVo appUserCouponVo; Integer couponType; BigDecimal moneyThreshold; @@ -652,7 +664,7 @@ goodsRealPrice = goodsTotalPrice; if(userCouponId!=null){ appUserCouponVo = appUserCouponVoMap.get(userCouponId); - if(StringUtils.isBlank(appUserCouponVo.getRelGoodsIds()) || appUserCouponVo.getRelGoodsIds().contains(goodsId)){ + if(null != appUserCouponVo && (StringUtils.isBlank(appUserCouponVo.getRelGoodsIds()) || appUserCouponVo.getRelGoodsIds().contains(goodsId))){ couponType = appUserCouponVo.getCouponType(); if(couponType == 1 && appUserCouponVo.getMoneyThreshold()!=null && appUserCouponVo.getDiscountMoney()!=null){ moneyThreshold = appUserCouponVo.getMoneyThreshold(); @@ -688,7 +700,9 @@ orderGoods.setOrderId(orderId); orderGoods.setGoodsId(goodsId); orderGoods.setBuyNum(buyNum); - orderGoods.setCouponId(userCouponId.toString()); + if(null != userCouponId){ + orderGoods.setCouponId(userCouponId.toString()); + } orderGoods.setGoodsPrice(goodsPrice); orderGoods.setGoodsTotalMoney(orderGoodsMoney); orderGoods.setGoodsReceivableMoney(goodsRealPrice); @@ -773,6 +787,38 @@ @Override public List<MerOrderPageVo> pageMerOrder(Page page, MerOrderPageDto merOrderPageDto){ List<MerOrderPageVo> merOrderPageVoList = orderMapper.pageMerOrder(page, merOrderPageDto); + if(merOrderPageVoList!=null&&!merOrderPageVoList.isEmpty()){ + Long userId; + Member member; + Integer orderFrom; + String orderFromDesc; + for(MerOrderPageVo merOrderPageVo : merOrderPageVoList){ + userId = merOrderPageVo.getUserId(); + member = remoteMemberService.getMember(userId).getData(); + merOrderPageVo.setUserName(member.getNickName()); + merOrderPageVo.setUserMobile(member.getMobile()); + orderFrom = merOrderPageVo.getOrderFrom(); + orderFromDesc = "商城订单"; + merOrderPageVo.setOrderFromDesc(orderFromDesc); + } + } return merOrderPageVoList; } + + /** + * + * @param page + * @param merMemberNoClearOrderDto + * @return + */ + @Override + public List<MerMemberNoClearOrderVo> pageMerMemberOrder(Page page, MerMemberNoClearOrderDto merMemberNoClearOrderDto){ + List<MerMemberNoClearOrderVo> merMemberNoClearOrderVoList = orderMapper.pageMerMemberOrder(page,merMemberNoClearOrderDto.getMemberUserId()); + if(merMemberNoClearOrderVoList!=null&&!merMemberNoClearOrderVoList.isEmpty()){ + for(MerMemberNoClearOrderVo merMemberNoClearOrderVo : merMemberNoClearOrderVoList){ + merMemberNoClearOrderVo.setUnPaidMoney(merMemberNoClearOrderVo.getReceivableMoney().subtract(merMemberNoClearOrderVo.getPayMoney())); + } + } + return merMemberNoClearOrderVoList; + } } -- Gitblit v1.7.1