From db9a963069c2f541b8308d799f573c5d49aa24fa Mon Sep 17 00:00:00 2001
From: jyy <935090232@qq.com>
Date: Mon, 26 Apr 2021 13:20:15 +0800
Subject: [PATCH] 分佣比例计算

---
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopProduct.java                       |   25 +++++++++++++++++++++++--
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java |    1 -
 zq-erp/src/main/resources/config/application.properties                                            |   12 ++++++------
 zq-erp/src/main/java/com/matrix/system/shopXcx/quartz/ShopActivityTimeOutQuartz.java               |    2 ++
 4 files changed, 31 insertions(+), 9 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopProduct.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopProduct.java
index ac983d3..977b543 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopProduct.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopProduct.java
@@ -1,5 +1,7 @@
 package com.matrix.system.shopXcx.api.action;
 
+import com.matrix.system.fenxiao.dao.ShopSalesmanGradeDao;
+import com.matrix.system.fenxiao.entity.ShopSalesmanGrade;
 import com.matrix.system.hive.bean.SysVipInfo;
 import com.matrix.component.redis.RedisUserLoginUtils;
 import com.matrix.core.pojo.AjaxResult;
@@ -15,9 +17,11 @@
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.*;
 
+import java.math.BigDecimal;
 import java.util.ArrayList;
 import java.util.Collections;
 import java.util.List;
+import java.util.Objects;
 
 /**
  * @author pengliang
@@ -72,6 +76,9 @@
     @Autowired
     private ShopProductCommentDao productCommentDao;
 
+    @Autowired
+    private ShopSalesmanGradeDao shopSalesmanGradeDao;
+
     /**
      * 根据id查询商品信息
      *
@@ -81,15 +88,29 @@
     @RequestMapping(value = "/getProductById/{shopId}/{id}")
     @ResponseBody
     public AjaxResult getProductById(@PathVariable Long shopId, @PathVariable("id") Integer id) {
-
+        SysVipInfo sysVipInfo = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
         ShopProduct shopProduct = shopProductDao.selectById(id);
         if (shopProduct == null) {
             return new AjaxResult(AjaxResult.STATUS_FAIL, "没有查询到商品");
         }
-
         List<ShopProductAttrRef> shopProductAttrRefs = shopProductAttrRefDao.selectByPid(id);
         List<ShopProductImg> shopProductImgs = shopProductImgDao.selectByPid(id);
         List<ShopSku> shopSkus = shopSkuDao.selectByPid(id);
+        if(SysVipInfo.IS_SALES==sysVipInfo.getIsSales()){
+            ShopSalesmanGrade shopSalesmanGrade = shopSalesmanGradeDao.selectById(sysVipInfo.getSalesmanGrade());
+            //计算产品佣金
+            shopSkus.forEach(shopSku -> {
+                if(Objects.isNull(shopSku.getInvitationPrice())){
+                   shopSku.setInvitationPrice(shopSku.getPrice().multiply(BigDecimal.valueOf(shopSalesmanGrade.getInvitationCommission())).divide(BigDecimal.valueOf(100)));
+                }
+                if(Objects.isNull(shopSku.getSealesPrice())){
+                    shopSku.setSealesPrice(shopSku.getPrice().multiply(BigDecimal.valueOf(shopSalesmanGrade.getSealesCommission())).divide(BigDecimal.valueOf(100)));
+                }
+                if(Objects.isNull(shopSku.getSelfPrice())){
+                    shopSku.setSealesPrice(shopSku.getPrice().multiply(BigDecimal.valueOf(shopSalesmanGrade.getSelfCommission())).divide(BigDecimal.valueOf(100)));
+                }
+            });
+        }
         List<ShopProductParamRef> shopProductParamRefs = shopProductParamRefDao.selectByPid(id);
         shopProduct.setAttrRefs(shopProductAttrRefs);
         shopProduct.setProductImgs(shopProductImgs);
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java
index 984fefa..28e33f6 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java
@@ -59,7 +59,6 @@
 
 
     @Override
-    @Transactional
     public Boolean refundToUser(String id, ShopRefundRecord shopRefundRecord) {
         LogUtil.debug("进入退款接口进行退款。。。", id);
         Boolean flag = false;
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/quartz/ShopActivityTimeOutQuartz.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/quartz/ShopActivityTimeOutQuartz.java
index 1075d98..865fb65 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/quartz/ShopActivityTimeOutQuartz.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/quartz/ShopActivityTimeOutQuartz.java
@@ -11,6 +11,7 @@
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Configuration;
 import org.springframework.scheduling.annotation.Scheduled;
+import org.springframework.transaction.annotation.Transactional;
 
 import java.util.ArrayList;
 import java.util.Date;
@@ -98,6 +99,7 @@
      *
      * @param groupJoin
      */
+    @Transactional
     public void doUnVirtualGroup(ShopActivitiesGroupJoin groupJoin) {
         LogUtil.info("#非虚拟拼团逻辑处理#");
         groupJoin.setGjStatus(ShopActivitiesGroupJoin.ACTIVITIES_JOIN_FAIL);
diff --git a/zq-erp/src/main/resources/config/application.properties b/zq-erp/src/main/resources/config/application.properties
index 7436ec0..3480aab 100644
--- a/zq-erp/src/main/resources/config/application.properties
+++ b/zq-erp/src/main/resources/config/application.properties
@@ -4,13 +4,13 @@
 
 #线上测试环境
 
-#spring.datasource.username=ct_test
-#spring.datasource.password=123456
-#spring.datasource.url=jdbc:mysql://120.27.238.55:3306/hive_test?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&allowMultiQueries=true&transformedBitIsBoolean=true&serverTimezone=GMT%2B8
+spring.datasource.username=ct_test
+spring.datasource.password=123456
+spring.datasource.url=jdbc:mysql://120.27.238.55:3306/hive_test?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&allowMultiQueries=true&transformedBitIsBoolean=true&serverTimezone=GMT%2B8
 
-spring.datasource.username=xc_shop
-spring.datasource.password=xc_shop123!@#
-spring.datasource.url=jdbc:mysql://124.70.222.34/xc_shop?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&allowMultiQueries=true&transformedBitIsBoolean=true&serverTimezone=GMT%2B8
+#spring.datasource.username=xc_shop
+#spring.datasource.password=xc_shop123!@#
+#spring.datasource.url=jdbc:mysql://124.70.222.34/xc_shop?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=CONVERT_TO_NULL&allowMultiQueries=true&transformedBitIsBoolean=true&serverTimezone=GMT%2B8
 
 
 #spring.datasource.username=hive

--
Gitblit v1.9.1