From 4dab41eef4ffde0c2631fbc7147cd2eee3cd0780 Mon Sep 17 00:00:00 2001
From: jyy <935090232@qq.com>
Date: Thu, 04 Mar 2021 18:57:56 +0800
Subject: [PATCH] 优化订单业绩

---
 zq-erp/src/main/java/com/matrix/system/hive/statistics/AchieveAction.java |   43 +++++++++++++++++--------------------------
 1 files changed, 17 insertions(+), 26 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/hive/statistics/AchieveAction.java b/zq-erp/src/main/java/com/matrix/system/hive/statistics/AchieveAction.java
index 7f452ad..79e9739 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/statistics/AchieveAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/statistics/AchieveAction.java
@@ -12,13 +12,14 @@
 import com.matrix.system.common.tools.ResponseHeadUtil;
 import com.matrix.system.hive.action.util.QueryUtil;
 import com.matrix.system.hive.bean.AchieveNew;
-import com.matrix.system.hive.bean.SysOrder;
-import com.matrix.system.hive.bean.SysOrderItem;
+import com.matrix.system.hive.dao.AchieveNewDao;
+import com.matrix.system.hive.plugin.util.CollectionUtils;
 import com.matrix.system.hive.service.AchieveNewService;
 import com.matrix.system.hive.service.SysOrderItemService;
 import com.matrix.system.hive.service.SysOrderService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
+import org.springframework.transaction.annotation.Transactional;
 import org.springframework.ui.ModelMap;
 import org.springframework.web.bind.annotation.RequestBody;
 import org.springframework.web.bind.annotation.RequestMapping;
@@ -48,6 +49,9 @@
 
     @Autowired
     private SysOrderItemService sysOrderItemService;
+
+    @Autowired
+    private AchieveNewDao achieveNewDao;
 
     /**
      * 门店每日单据明细表
@@ -90,7 +94,7 @@
         String title = "每日单据明细";
         orderSheet.setSheetName(title);
         orderSheet.setTitle(title);
-        String[] header = {"年", "月", "日",   "订单类型", "订单编号", "会员级别", "姓名", "项目名称", "总金额", "卡项", "现金单次", "现金产品", "划扣", "本金消耗", "赠消", "提成", "顾问", "美疗师", "人头", "项目个数", "项目时间", "门店"};
+        String[] header = {"年", "月", "日",   "订单类型", "订单编号", "会员级别", "姓名", "项目名称", "总金额", "现金产品", "划扣", "本金消耗", "赠消", "提成", "顾问", "美疗师", "人头", "项目个数", "项目时间", "门店"};
         orderSheet.setHeaders(header);
         SysUsers sysUsers = (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY);
         if(!AppConstance.ZONGDIAN.equals(sysUsers.getShopName())){
@@ -112,10 +116,7 @@
                 temp.add(item.getVipName());
                 temp.add(item.getProName());
                 temp.add(item.getZkTotal());
-                temp.add(item.getCardCash());
-                temp.add(item.getProjCash());
                 temp.add(item.getGoodsCash());
-                temp.add(item.getConsume());
                 temp.add(item.getHisConsume());
                 temp.add(item.getFreeConsume());
                 temp.add(item.getProjPercentage());
@@ -149,27 +150,17 @@
 
     @RequestMapping(value = "/add")
     @ResponseBody
+    @Transactional
     public AjaxResult add(@RequestBody List<AchieveNew> list) {
-        SysOrder order = sysOrderService.findById(list.get(0).getOrderId());
-        List<SysOrderItem> orderItems = sysOrderItemService.findByOrderId(order.getId());
-        orderItems.forEach(item -> {
-            List<AchieveNew> achieveNewList = new ArrayList<>();
-            for(AchieveNew achieveNew : list) {
-                achieveNewService.removeById(achieveNew.getId());
-                achieveNew.setId(null);
-                achieveNew.setConsume(null);
-                achieveNew.setCardCash(null);
-
-                if (achieveNew.getOrderItemId().equals(item.getId())) {
-                    achieveNewList.add(achieveNew);
-                }
-
-            }
-            item.setAchaeveList(achieveNewList);
-        });
-        order.setItems(orderItems);
-        achieveNewService.addAchaeveByOrder(order);
-        return AjaxResult.buildSuccessInstance("保存成功");
+        if (CollectionUtils.isNotEmpty(list)) {
+            //删除原业绩
+            achieveNewDao.deleteByOrderId(list.get(0).getOrderId());
+            //插入新业绩
+            achieveNewDao.batchInsert(list);
+            return AjaxResult.buildSuccessInstance("保存成功");
+        } else {
+            return AjaxResult.buildFailInstance("未找到业绩数据");
+        }
     }
 
 }

--
Gitblit v1.9.1