From ec87cf1ee2b9382bf9d089711f0ff82ae8e7077c Mon Sep 17 00:00:00 2001
From: jyy <jyy>
Date: Wed, 09 Jun 2021 20:44:16 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/api_score_meger' into api_score_meger

---
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopProduct.java |   33 +++++++++++++++++++++++++++------
 1 files changed, 27 insertions(+), 6 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 8b408f8..5eb9595 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,6 +1,8 @@
 package com.matrix.system.shopXcx.api.action;
 
-import com.matrix.biz.bean.BizUser;
+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;
 import com.matrix.core.tools.StringUtils;
@@ -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.setSelfPrice(shopSku.getPrice().multiply(BigDecimal.valueOf(shopSalesmanGrade.getSelfCommission())).divide(BigDecimal.valueOf(100)));
+                }
+            });
+        }
         List<ShopProductParamRef> shopProductParamRefs = shopProductParamRefDao.selectByPid(id);
         shopProduct.setAttrRefs(shopProductAttrRefs);
         shopProduct.setProductImgs(shopProductImgs);
@@ -111,7 +132,7 @@
             //查询产品适配的优惠券
             result.putInMap("couponList", shopCouponService.getCouponListByProductId(id));
             //查询产品是否被用户收藏
-            result.putInMap("checkCollect", CollectionUtils.isNotEmpty(collectionDao.selectByUserIdAndProid(id, redisUserLoginUtils.getLoginUser(BizUser.class).getOpenId())));
+            result.putInMap("checkCollect", CollectionUtils.isNotEmpty(collectionDao.selectByUserIdAndProid(id, redisUserLoginUtils.getLoginUser(SysVipInfo.class).getOpenId())));
         } else {
             result.putInMap("checkCollect", false);
         }
@@ -209,13 +230,13 @@
      * @param shopProduct
      */
     private void saveSearchHistroy(@RequestBody ShopProduct shopProduct) {
-        BizUser bigUser = redisUserLoginUtils.getLoginUser(BizUser.class);
+        SysVipInfo bigUser = redisUserLoginUtils.getLoginUser(SysVipInfo.class);
         ShopSearchRecord searchBean = new ShopSearchRecord();
         if (StringUtils.isNotBlank(shopProduct.getTitle())) {
             searchBean.setSearchType(AppConstance.SEARCH_TYPE);
             searchBean.setSearchContent(shopProduct.getTitle());
         }
-        searchBean.setUserId(bigUser.getOpenId());
+        searchBean.setUserId(bigUser.getId());
         searchBean.setSearchPriceStart(shopProduct.getStartPrice());
         searchBean.setSearchPriceEnd(shopProduct.getEndPrice());
         searchBean.setSearchDel(AppConstance.DATA_USEABLE);

--
Gitblit v1.9.1