From 31caa96bc740697c01812ec8382b492b309bab93 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 24 Sep 2021 17:10:25 +0800
Subject: [PATCH] fix

---
 src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java |   13 ++++++++++++-
 1 files changed, 12 insertions(+), 1 deletions(-)

diff --git a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
index 5a68f0e..b81522d 100644
--- a/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
+++ b/src/main/java/cc/mrbird/febs/mall/service/impl/ApiMallOrderInfoServiceImpl.java
@@ -113,6 +113,7 @@
             mallOrderItemMapper.insert(orderItem);
 
             sku.setStock(sku.getStock() - item.getCnt());
+            sku.setSkuVolume(sku.getSkuVolume() + item.getCnt());
             mallGoodsSkuMapper.updateById(sku);
 
             if (addOrderDto.getType() == 1) {
@@ -204,8 +205,10 @@
 
     @Override
     public List<OrderListVo> findOrderList(OrderListDto orderListDto) {
+        MallMember member = LoginUserUtil.getLoginUser();
         IPage<MallOrderInfo> page = new Page<>(orderListDto.getPageNum(), orderListDto.getPageSize());
 
+        orderListDto.setMemberId(member.getId());
         IPage<MallOrderInfo> mallOrderInfos = this.baseMapper.selectApiOrderListInPage(page, orderListDto);
         return MallOrderInfoConversion.INSTANCE.entitysToVos(mallOrderInfos.getRecords());
     }
@@ -282,10 +285,11 @@
             throw new FebsException("已提交退款, 请勿重复提交");
         }
 
-        if (orderInfo.getStatus() == OrderStatusEnum.WAIT_PAY.getValue()) {
+        if (orderInfo.getStatus() != OrderStatusEnum.WAIT_SHIPPING.getValue() && orderInfo.getStatus() != OrderStatusEnum.WAIT_FINISH.getValue()) {
             throw new FebsException("该订单不能退款");
         }
 
+        Integer beforeStatus = orderInfo.getStatus();
         MallMember member = LoginUserUtil.getLoginUser();
         orderInfo.setStatus(OrderStatusEnum.REFUNDING.getValue());
         this.baseMapper.updateById(orderInfo);
@@ -297,11 +301,17 @@
             orderRefund.setMemberId(member.getId());
             orderRefund.setDesp(addRefundDto.getDesp());
             orderRefund.setReason(addRefundDto.getReason());
+            orderRefund.setType(addRefundDto.getType());
+            orderRefund.setRefundTime(new Date());
+            orderRefund.setBeforeStatus(beforeStatus);
             orderRefund.setStatus(OrderRefundStatusEnum.REFUND_APPLY.getValue());
             mallOrderRefundMapper.insert(orderRefund);
         } else {
             orderRefund.setDesp(addRefundDto.getDesp());
             orderRefund.setReason(addRefundDto.getReason());
+            orderRefund.setType(addRefundDto.getType());
+            orderRefund.setRefundTime(new Date());
+            orderRefund.setBeforeStatus(beforeStatus);
             orderRefund.setStatus(OrderRefundStatusEnum.REFUND_APPLY.getValue());
             mallOrderRefundMapper.updateById(orderRefund);
         }
@@ -325,6 +335,7 @@
 
         orderRefund.setExpressNo(refundExpressDto.getExpressNo());
         orderRefund.setExpressCom(refundExpressDto.getExpressCom());
+        orderRefund.setStatus(OrderRefundStatusEnum.EXPRESS_SUBMIT.getValue());
         mallOrderRefundMapper.updateById(orderRefund);
 
         MallOrderRefundOperation operation = new MallOrderRefundOperation();

--
Gitblit v1.9.1