From a8fb0a175ff61c82819e7da191030c2f5e90ae98 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Wed, 18 Aug 2021 17:10:22 +0800
Subject: [PATCH] 20210818

---
 gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminOrderController.java |   25 +++++++++++++++++++++----
 1 files changed, 21 insertions(+), 4 deletions(-)

diff --git a/gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminOrderController.java b/gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminOrderController.java
index ef2cf6b..1c6c463 100644
--- a/gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminOrderController.java
+++ b/gc-shop/src/main/java/com/xzx/gc/shop/controller/AdminOrderController.java
@@ -7,9 +7,11 @@
 import com.xzx.gc.common.constant.Constants;
 import com.xzx.gc.common.dto.log.OperationAppLog;
 import com.xzx.gc.common.request.BaseController;
+import com.xzx.gc.entity.ScoreDetails;
 import com.xzx.gc.entity.ScoreOrder;
 import com.xzx.gc.model.JsonResult;
 import com.xzx.gc.shop.dto.*;
+import com.xzx.gc.shop.mapper.ScoreDetailsMapper;
 import com.xzx.gc.shop.mapper.ScoreOrderMapper;
 import com.xzx.gc.shop.service.OrderService;
 import com.xzx.gc.shop.vo.QueryOrderListVo;
@@ -19,9 +21,11 @@
 import io.swagger.annotations.ApiResponse;
 import io.swagger.annotations.ApiResponses;
 import lombok.extern.slf4j.Slf4j;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RestController;
+import tk.mybatis.mapper.entity.Example;
 
 import javax.annotation.Resource;
 import javax.servlet.http.HttpServletRequest;
@@ -37,6 +41,8 @@
     private OrderService orderService;
     @Resource
     private ScoreOrderMapper scoreOrderMapper;
+    @Resource
+    private ScoreDetailsMapper scoreDetailsMapper;
 
     /**
      * 查询订单列表
@@ -111,10 +117,10 @@
         if(ObjectUtil.isEmpty(scoreOrder)){
             return JsonResult.failMessage("订单不存在!");
         }
-        Integer status = scoreOrder.getStatus();
-        if(ScoreOrder.STATUS_DOING != status){
-            return JsonResult.failMessage("当前订单不是已收货状态!");
-        }
+//        Integer status = scoreOrder.getStatus();
+//        if(ScoreOrder.STATUS_DOING != status){
+//            return JsonResult.failMessage("当前订单不是已收货状态!");
+//        }
         List<String> voucherImgs = model.getVoucherImgs();
         if(CollUtil.isEmpty(voucherImgs)){
             return JsonResult.failMessage("凭证不能为空!");
@@ -145,6 +151,17 @@
         if(ScoreOrder.STATUS_READY != status){
             return JsonResult.failMessage("当前订单不是待发货状态!");
         }
+        ScoreOrder order = scoreOrderMapper.selectByPrimaryKey(model.getId());
+        Example exampleDetails = new Example(ScoreDetails.class);
+        Example.Criteria criteriaDetails = exampleDetails.createCriteria();
+        criteriaDetails.andEqualTo("orderNo",order.getOrderNo());
+        criteriaDetails.andEqualTo("userId",order.getUserId());
+        criteriaDetails.andEqualTo("type",ScoreDetails.SCORE_TYPE_SHOPPING_RETURN);
+
+        List<ScoreDetails> scoreDetails = scoreDetailsMapper.selectByExample(exampleDetails);
+        if(CollUtil.isNotEmpty(scoreDetails)){
+            return JsonResult.failMessage("当前订单已经取消过了!");
+        }
         Long aLong = orderService.cancelOrder(model);
         if(aLong > 0){
             OperationAppLog build = OperationAppLog.builder().appPrograme(CommonEnum.后台.getValue()).opreateName(getAdminName(request))

--
Gitblit v1.9.1