From fd97cde3d994a3aa6898ba862cd20d0c081012c3 Mon Sep 17 00:00:00 2001 From: mitao <2763622819@qq.com> Date: 星期二, 18 六月 2024 18:44:34 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/master' --- ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java | 56 +++++++++++++++++++++++++++++++++++++------------------- 1 files changed, 37 insertions(+), 19 deletions(-) diff --git a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java index 0e7ea2a..bd78592 100644 --- a/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java +++ b/ruoyi-modules/ruoyi-order/src/main/java/com/ruoyi/order/service/impl/OrderServiceImpl.java @@ -52,6 +52,7 @@ import com.ruoyi.system.api.domain.dto.MemberDTO; import com.ruoyi.system.api.domain.dto.MemberOrderDTO; import com.ruoyi.system.api.domain.dto.MemberOrderListDTO; +import com.ruoyi.system.api.domain.dto.MgtAfterSaleSettingDTO; import com.ruoyi.system.api.domain.dto.OrderDTO; import com.ruoyi.system.api.domain.dto.updMembeOneDTO; import com.ruoyi.system.api.domain.vo.Express100VO; @@ -250,6 +251,7 @@ BigDecimal pice=new BigDecimal(0); Order order=new Order(); + order.setMemberId(memberOrderDTO.getMemberId()); if (memberOrderDTO.getOrderFrom()==1){ order.setOrderFrom(OrderFromEnum.COMMODITY_ORDER); order.setOrderNo(OrderUtil.getOrderNoForPrefix("SP")); @@ -416,7 +418,7 @@ order.setOrderRemark(memberOrderDTO.getOrderRemark()); }if (memberOrderDTO.getGoodsQuantity()!=null){ if (order.getOrderFrom().getCode()==1){ - GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(memberOrderDTO.getGoodsSkuId(), SecurityConstants.INNER).getData(); + GoodsSku goodsSku = goodsSkuClient.getGoodsSkuOne(order.getGoodsSkuId(), SecurityConstants.INNER).getData(); if (goodsSku.getStock()<memberOrderDTO.getGoodsQuantity()){ throw new ServiceException("对不起,购买数大于库存"); }else{ @@ -518,25 +520,24 @@ CouponMemberDTO couponMemberDTO=new CouponMemberDTO(); couponMemberDTO.setId(memberOrderDTO.getCouponId()); CouponMember data = promotionClient.getCouponMember(couponMemberDTO, SecurityConstants.INNER).getData(); - - - if (order.getCouponId()!=null){ + if (order.getCouponId()!=0){ CouponMemberDTO couponMemberDTO1=new CouponMemberDTO(); couponMemberDTO1.setId(memberOrderDTO.getCouponId()); - couponMemberDTO1.setCouponStatus(1); + couponMemberDTO1.setCouponStatus(0); promotionClient.updCouponMember(couponMemberDTO1, SecurityConstants.INNER); } + order.setCouponId(data.getId()); if (data.getCouponType().getCode()==1){ if (pice.doubleValue()>=data.getFullReductionAmount().doubleValue()){ - pice.subtract(data.getReductionAmount()); + pice=pice.subtract(data.getReductionAmount()); order.setDiscountMoney(data.getReductionAmount()); } } if (data.getCouponType().getCode()==2){ pice= order.getTotalAmount(); - pice.subtract(data.getVoucherAmount()); + pice=pice.subtract(data.getVoucherAmount()); order.setDiscountMoney(data.getVoucherAmount()); } if (data.getCouponType().getCode()==3){ @@ -557,11 +558,17 @@ order.setCouponId(memberOrderDTO.getCouponId()); CouponMemberDTO couponMemberDTO2=new CouponMemberDTO(); couponMemberDTO2.setId(memberOrderDTO.getCouponId()); - couponMemberDTO2.setCouponStatus(2); + couponMemberDTO2.setCouponStatus(1); promotionClient.updCouponMember(couponMemberDTO2, SecurityConstants.INNER); - - - + }else{ + if (order.getCouponId()!=null&&order.getCouponId()!=0){ + CouponMemberDTO couponMemberDTO1=new CouponMemberDTO(); + couponMemberDTO1.setCouponStatus(0); + couponMemberDTO1.setId(order.getCouponId()); + promotionClient.updCouponMember(couponMemberDTO1, SecurityConstants.INNER); + } + order.setCouponId(0L); + order.setDiscountMoney(new BigDecimal(0)); } order.setTotalAmount(pice); @@ -588,7 +595,7 @@ memberOrderVO.setReceiverCity(order.getReceiverCity()); memberOrderVO.setReceiverDetailAddress(order.getReceiverDetailAddress()); memberOrderVO.setReceiverphone(order.getReceiverPhone()); - memberOrderVO.setYouhiPrice(order.getDiscountMoney()); + memberOrderVO.setDiscountMoney(order.getDiscountMoney()); return memberOrderVO; } @@ -618,8 +625,12 @@ Wrappers.lambdaQuery(OrderReturnRequest.class) .eq(OrderReturnRequest::getOrderId, MemberOrderList.getId()).last("limit 1")); - if (StringUtils.isNotNull(orderReturnRequest)) { + if (StringUtils.isNotNull(orderReturnRequest)&&orderReturnRequest!=null) { MemberOrderList.setStatus(orderReturnRequest.getStatus()); + MemberOrderList.setRequestId(orderReturnRequest.getId()); + MemberOrderList.setIsRequest(2); + }else{ + MemberOrderList.setIsRequest(1); } LambdaQueryWrapper<OrderAuctionBond> wrapper3= Wrappers.lambdaQuery(); wrapper3.eq(OrderAuctionBond::getOrderId,MemberOrderList.getId()); @@ -654,8 +665,12 @@ Wrappers.lambdaQuery(OrderReturnRequest.class) .eq(OrderReturnRequest::getOrderId, orderVO.getId()).last("limit 1")); - if (StringUtils.isNotNull(orderReturnRequest)) { + if (StringUtils.isNotNull(orderReturnRequest)&&orderReturnRequest!=null) { orderVO.setStatus(orderReturnRequest.getStatus()); + orderVO.setRequestId(orderReturnRequest.getId()); + orderVO.setIsRequest(2); + }else{ + orderVO.setIsRequest(1); } LambdaQueryWrapper<OrderAuctionBond> wrapper3= Wrappers.lambdaQuery(); @@ -1051,9 +1066,7 @@ boolean result = handleRefund(paymentMethod, paylog, orderNo); if (result) { paylog.setState(3);// 已退款 - order.setOrderStatus(OrderStatusEnum.REFUNDED); iPaylogService.updateById(paylog); - this.updateById(order); } OrderReturnRequest orderReturnRequest = new OrderReturnRequest(); orderReturnRequest.setOrderId(id); @@ -1096,12 +1109,17 @@ @Override public void refundReturn(Long id) { Order order = getOrder(id); - if (order.getOrderStatus() == OrderStatusEnum.TO_BE_SHIPPED - || order.getOrderStatus() == OrderStatusEnum.GOODS_TO_BE_RECEIVED - || order.getOrderStatus() == OrderStatusEnum.FINISHED) { + if (order.getOrderStatus() == OrderStatusEnum.FINISHED) { OrderReturnRequest orderReturnRequest = new OrderReturnRequest(); order.setOrderStatus(OrderStatusEnum.AFTER_SALE); this.updateById(order); + MgtAfterSaleSettingDTO data = sysUserClient.getAfterSaleSetting().getData(); + if (StringUtils.isNull(data)) { + throw new ServiceException("获取售后退货信息失败"); + } + orderReturnRequest.setRecipientName(data.getReceiverName()); + orderReturnRequest.setRecipientPhone(data.getReceiverPhone()); + orderReturnRequest.setDetailedAddress(data.getReceiverAddress()); orderReturnRequest.setOrderId(id); orderReturnRequest.setRequestTime(LocalDateTime.now()); orderReturnRequest.setRequestType(RequestTypeEnum.REFUNDS_AND_RETURNS); -- Gitblit v1.7.1