From 1e4e6e8aa4b738320bf8b5a0ee43aa62ca2c13e7 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Wed, 14 Apr 2021 14:46:36 +0800
Subject: [PATCH] finish paiban add proj

---
 zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java |   94 ++++++++++++++--------------------------------
 1 files changed, 29 insertions(+), 65 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java b/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
index 68afcae..5e47996 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
@@ -1,5 +1,6 @@
 package com.matrix.system.hive.action;
 
+import cn.hutool.core.collection.CollUtil;
 import com.matrix.component.rabbitmq.RabiitMqTemplate;
 import com.matrix.core.constance.MatrixConstance;
 import com.matrix.core.exception.GlobleException;
@@ -14,12 +15,9 @@
 import com.matrix.system.common.bean.SysUsers;
 import com.matrix.system.common.tools.ResponseHeadUtil;
 import com.matrix.system.constance.Dictionary;
-import com.matrix.system.constance.SystemConstance;
 import com.matrix.system.hive.bean.*;
 import com.matrix.system.hive.dao.*;
 import com.matrix.system.hive.plugin.util.CollectionUtils;
-import com.matrix.system.hive.pojo.ShoppingCarItem;
-import com.matrix.system.hive.pojo.ShoppingCarItemsVo;
 import com.matrix.system.hive.service.*;
 import com.matrix.system.shopXcx.mqTask.MQTaskRouting;
 import com.matrix.system.wechart.templateMsg.UniformMsgParam;
@@ -42,7 +40,6 @@
 import java.net.URLEncoder;
 import java.util.ArrayList;
 import java.util.Arrays;
-import java.util.Date;
 import java.util.List;
 
 /**
@@ -56,6 +53,11 @@
 public class OrderController extends BaseController {
     @Resource
     private SysOrderService orderService;
+    @Autowired
+    ShoppingGoodsDao shoppingGoodsDao;
+
+    @Autowired
+    private CodeService codeService;
 
     @Autowired
     private SysOrderItemDao orderItemDao;
@@ -89,6 +91,10 @@
 
     @Autowired
     RabiitMqTemplate rabiitMqTemplate;
+
+    @Autowired
+    private SysProjServicesDao sysProjServicesDao;
+
     @Value("${evn}")
     private String evn;
 
@@ -125,6 +131,8 @@
     AjaxResult payOrder(@RequestBody SysOrder sysOrder) {
         SysUsers user = getMe();
         sysOrder.setShopId(user.getShopId());
+        sysOrder.setOrderType(SysOrder.ORDER_TYPE_SEAL);
+        sysOrder.setIsHasRefund(SysOrder.IS_HAS_REFUND_N);
         //校验订单是否满足结算调价,新订单则保存订单,已有订单则删除后更新
         sysOrder = orderService.checkAndSaveOrder(sysOrder);
         orderService.updateReceiptMoney(sysOrder);
@@ -148,7 +156,6 @@
      */
     @RequestMapping(value = "/refundOrder")
     @ResponseBody
-    @Transactional(rollbackFor = Exception.class)
     public AjaxResult refundOrder(@RequestBody SysOrder sysOrder) {
         //储值卡订单不能通过退款渠道退款
         if(CollectionUtils.isNotEmpty(sysOrder.getItems())){
@@ -159,17 +166,6 @@
                 }
             }
         }
-
-
-
-        SysUsers user = getMe();
-        sysOrder.setShopId(user.getShopId());
-        sysOrder.setStatu(Dictionary.ORDER_STATU_TK);
-        sysOrder.setOrderTime(new Date());
-
-
-        //校验订单是否满足结算调价,新订单则保存订单,已有订单则删除后更新
-        sysOrder = orderService.checkAndSaveOrder(sysOrder);
         orderService.refundOrderMoney(sysOrder);
         //处理用户购买的产品
         return AjaxResult.buildSuccessInstance(Arrays.asList(sysOrder), "订单退款成功");
@@ -191,49 +187,6 @@
         return AjaxResult.buildSuccessInstance(Arrays.asList(sysOrder), "订单保存成功");
     }
 
-    /**
-     * 新建订单
-     *
-     * @author jiangyouyao
-     */
-    @RequestMapping(value = "/addOrder")
-    public @ResponseBody
-    AjaxResult addOrder(ShoppingCarItemsVo car) {
-
-        List<ShoppingCarItem> sessionCarItems = (List<ShoppingCarItem>) WebUtil.getSession().getAttribute(
-                SystemConstance.SHOPPING_CAR);
-
-        List<ShoppingCarItem> carItems = new ArrayList<>();
-
-        // 设置购车中的具体类型信息,过滤没有被选中的商品
-        for (ShoppingCarItem carItem : car.getCarItems()) {
-
-            for (ShoppingCarItem sessionCar : sessionCarItems) {
-
-                if (carItem.getId().equals(sessionCar.getId())) {
-                    //已最后提交的数量为准
-                    sessionCar.setCount(carItem.getCount());
-                    carItems.add(sessionCar);
-                    break;
-                }
-            }
-        }
-        //设置过滤后的购物车条目
-        car.setCarItems(carItems);
-
-        SysVipInfo info = (SysVipInfo) WebUtil.getSession().getAttribute(SystemConstance.CURRENT_CUSTOMER);
-        car.setVipId(info.getId());
-
-        // 添加新订单
-        int i = orderService.createOrder(WebUtil.getSession(), car);
-
-        if (i > 0) {
-            WebUtil.getSession().removeAttribute(SystemConstance.SHOPPING_CAR);
-            return new AjaxResult(AjaxResult.STATUS_SUCCESS, "下单成功");
-        } else {
-            return new AjaxResult(AjaxResult.STATUS_FAIL, "下单添加失败");
-        }
-    }
 
 
     /**
@@ -448,8 +401,10 @@
 
         if(orderVo.getId()!=null){
             WebUtil.getRequest().setAttribute("orderParam", orderVo.getId());
+            WebUtil.getRequest().setAttribute("orderId", orderVo.getId());
         }else if(StringUtils.isNotBlank(orderVo.getOrderNo())){
             WebUtil.getRequest().setAttribute("orderParam", orderVo.getOrderNo());
+            WebUtil.getRequest().setAttribute("orderNo", orderVo.getOrderNo());
         }
         return "admin/hive/beautySalon/orderXq-form";
     }
@@ -478,13 +433,22 @@
         if (order == null) {
             return new AjaxResult(AjaxResult.STATUS_FAIL, "订单不存在!");
         }
-        orderService.cancelOrder(id);
-        if (del > 0) {
-            orderService.removeById(id);
-            result.setInfo("删除成功!");
-        } else {
-            result.setInfo("取消成功!");
+
+        List<SysOrderItem> items = orderItemDao.selectByOrderId(id);
+        for (SysOrderItem item : items) {
+            List<SysProjServices> sysProjServices = sysProjServicesDao.selectProjServicesByOrderItemId(item.getId());
+            if (CollUtil.isNotEmpty(sysProjServices)) {
+                return new AjaxResult(AjaxResult.STATUS_FAIL, "订单存在进行中的服务单无法取消/删除");
+            }
         }
+
+        orderService.cancelOrder(id);
+//        if (del > 0) {
+//            orderService.removeById(id);
+//            result.setInfo("删除成功!");
+//        } else {
+            result.setInfo("取消成功!");
+//        }
         result.setStatus(AjaxResult.STATUS_SUCCESS);
 
         return result;

--
Gitblit v1.9.1