From 05fcfa75d9bcd29f44c5a28d1a665a496347dce1 Mon Sep 17 00:00:00 2001
From: Helius <wangdoubleone@gmail.com>
Date: Fri, 13 Aug 2021 14:43:16 +0800
Subject: [PATCH] fix

---
 zq-erp/src/main/java/com/matrix/system/hive/service/imp/AchieveNewServiceImpl.java |   29 ++++++++++++++++++++---------
 1 files changed, 20 insertions(+), 9 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/AchieveNewServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/AchieveNewServiceImpl.java
index 6b84084..afec062 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/service/imp/AchieveNewServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/service/imp/AchieveNewServiceImpl.java
@@ -26,6 +26,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.math.BigDecimal;
 import java.util.*;
 
 /**
@@ -172,6 +173,9 @@
         // 下单人是否计算消耗业绩
         boolean flag = projServicesService.skipServiceOrderStep(Dictionary.SALE_MAN_IS_CONSUME_ACHIEVE);
 
+
+
+
         for (SysBeauticianState beauticianState : beauticianStateList) {
             // 是否第一次计算改美疗师
             boolean isFirst = true;
@@ -183,12 +187,14 @@
             achieveNew.setVipId(projServices.getVipId());
             // 是否为赠送业绩
             if (Dictionary.TAOCAN_SOURCE_ZS.equals(projUse.getSource())) {
+
                 achieveNew.setFreeConsume(projUse.getPrice()*beauticianState.getCount());
                 //计算提成
                 achieveNew.setProjPercentage(
                         calculationProjPercentage(AchieveRuleItem.ACHIEVE_TYPE_ZS,achieveNew.getFreeConsume(),beauticianState.getProjId()));
+
             } else {
-                achieveNew.setHisConsume(projUse.getPrice()*beauticianState.getCount());
+                achieveNew.setHisConsume(new BigDecimal(projUse.getPrice()*beauticianState.getCount()).setScale(2, BigDecimal.ROUND_HALF_DOWN).doubleValue());
                 //计算提成
                 achieveNew.setProjPercentage(
                         calculationProjPercentage(AchieveRuleItem.ACHIEVE_TYPE_BJ,achieveNew.getHisConsume(),beauticianState.getProjId()));
@@ -202,14 +208,17 @@
             achieveNew.setCompanyId(projServices.getCompanyId());
             achieveNew.setShoppingGoodsId(projUse.getProjId());
 
+
             if (flag) {
 //                if (!achieveId.equals(beauticianState.getStaffId())) {
-                    AchieveNew saleMan = new AchieveNew();
-                    BeanUtils.copyProperties(achieveNew, saleMan);
-                    saleMan.setBeaultId(achieveId);
+                    AchieveNew saleManAchieve = new AchieveNew();
+                    BeanUtils.copyProperties(achieveNew, saleManAchieve);
+                    saleManAchieve.setBeaultId(achieveId);
 
-                    saleAchieveNumOfPeople(saleMan);
-                    achieveNewList.add(saleMan);
+                    saleAchieveNumOfPeople(saleManAchieve);
+                    //销售人员不计算项目提成
+                    saleManAchieve.setProjPercentage(0D);
+                    achieveNewList.add(saleManAchieve);
 //                }
             }
 
@@ -299,7 +308,6 @@
                     for (AchieveNew achieveNew : orderItem.getAchieveList()) {
                         if (achieveNew !=null   && achieveNew.getGoodsCash()!=null) {
                             buildAchieve(pageOrder,  orderItem, achieveNew);
-                            // 新增美疗师业绩
                             achieveNewList.add(achieveNew);
                         }
                     }
@@ -325,7 +333,10 @@
         }
 
         achieveNew.setVipId(pageOrder.getVipId());
-        achieveNew.setSaleId(pageOrder.getStaffId());
+        if(achieveNew.getSaleId()==null){
+            achieveNew.setSaleId(pageOrder.getStaffId());
+        }
+
 
         if (pageOrder.getPayTime() != null) {
             achieveNew.setDatatime(pageOrder.getPayTime());
@@ -379,7 +390,7 @@
     }
 
     @Override
-    public List<AchieveNew> findVipConsumeStatisticsList(AchieveNew achieveNew, PaginationVO pageVo) {
+    public List<Map<String, Object>> findVipConsumeStatisticsList(AchieveNew achieveNew, PaginationVO pageVo) {
         return achieveNewDao.selectVipConsumeStatisticsList(achieveNew, pageVo);
     }
 

--
Gitblit v1.9.1