From a25c3ef238596506a984b8bc89d37bc620a293e0 Mon Sep 17 00:00:00 2001
From: jyy <935090232@qq.com>
Date: Wed, 17 Mar 2021 21:00:27 +0800
Subject: [PATCH] 修改bug5

---
 zq-erp/src/main/java/com/matrix/system/fenxiao/constant/FenxiaoSettingConstant.java  |   14 +++++-
 zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java |   74 ++++++++++++++++++++-----------------
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java      |    6 +-
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java          |    6 +-
 4 files changed, 57 insertions(+), 43 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/constant/FenxiaoSettingConstant.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/constant/FenxiaoSettingConstant.java
index 4faf796..de2bc10 100644
--- a/zq-erp/src/main/java/com/matrix/system/fenxiao/constant/FenxiaoSettingConstant.java
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/constant/FenxiaoSettingConstant.java
@@ -14,6 +14,14 @@
      */
     public final static String FX_APPLY_WAY = "FX_APPLY_WAY";
     /**
+     * 申请方式 1自动申请通过
+     */
+    public final static String FX_APPLY_WAY_AUTO = "1";
+    /**
+     * 申请方式 2需要主动申请
+     */
+    public final static String FX_APPLY_WAY_CUSTOMER = "2";
+    /**
      * 审核方式  1系统自动审核,2人工审核
      */
     public final static String FX_AUDIT_METHOD = "FX_AUDIT_METHOD";
@@ -26,15 +34,15 @@
      */
     public final static String FX_APPLY_CONDITION_WTJ = "1";
     /**
-     * 申请条件 1 消费任意产品
+     * 申请条件 2 消费任意产品
      */
     public final static String FX_APPLY_CONDITION_XFRYCP = "2";
     /**
-     * 申请条件 1 消费指定产品
+     * 申请条件 3 消费指定产品
      */
     public final static String FX_APPLY_CONDITION_XFZDCP = "3";
     /**
-     * 申请条件 1 消费指定金额
+     * 申请条件 4 消费指定金额
      */
     public final static String FX_APPLY_CONDITION_XCZDJE = "4";
     /**
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java
index 3acf923..37e9b50 100644
--- a/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java
@@ -139,41 +139,47 @@
     public VerificationResult isAbleToBeAnSalesman(String openId,Long companyId) {
 
         VerificationResult verificationResult=null;
-        //申请条件
-        BusParameterSettings applyCondition = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_CONDITION, companyId);
-        switch (applyCondition.getParamValue()){
-            case FenxiaoSettingConstant.FX_APPLY_CONDITION_WTJ:
-                verificationResult= VerificationResult.buildVerificationResult(true);
-                break;
-            case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFZDCP:
-                int buyZdcpCount= shopOrderV2Dao.countBuyZdcp(openId,applyCondition.getParamValue1());
-                if(buyZdcpCount>0){
-                    verificationResult= VerificationResult.buildVerificationResult(true);
-                }else{
-                    verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费指定产品后再申请!");
-                }
-                break;
-            case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFRYCP:
-                //判断用户是否有确认收货的产品
-                int receivedOrderCount= shopOrderV2Dao.selectReceivedOrderCount(openId);
-                if(receivedOrderCount>0){
-                    verificationResult= VerificationResult.buildVerificationResult(true);
-                }else{
-                    verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费任意产品后再申请!");
-                }
-                break;
-            case FenxiaoSettingConstant.FX_APPLY_CONDITION_XCZDJE:
-                Double zdje=Double.parseDouble(applyCondition.getParamValue2());
-                Double yxfje=shopOrderV2Dao.countOrderAmount(openId);
-                if(zdje<yxfje){
-                    verificationResult=VerificationResult.buildVerificationResult(true);
-                }else{
-                    verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费满"+zdje+"元后再申请!");
-                }
-                break;
-            default:
-               verificationResult= VerificationResult.buildVerificationResult(true);
 
+        //申请模式
+        BusParameterSettings applyWay = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_WAY, companyId);
+        if (applyWay.getParamValue().equals(FenxiaoSettingConstant.FX_APPLY_WAY_AUTO)) {
+            verificationResult= VerificationResult.buildVerificationResult(true);
+        }else{
+            //申请条件
+            BusParameterSettings applyCondition = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_CONDITION, companyId);
+            switch (applyCondition.getParamValue()){
+                case FenxiaoSettingConstant.FX_APPLY_CONDITION_WTJ:
+                    verificationResult= VerificationResult.buildVerificationResult(true);
+                    break;
+                case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFZDCP:
+                    int buyZdcpCount= shopOrderV2Dao.countBuyZdcp(openId,applyCondition.getParamValue1());
+                    if(buyZdcpCount>0){
+                        verificationResult= VerificationResult.buildVerificationResult(true);
+                    }else{
+                        verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费指定产品后再申请!");
+                    }
+                    break;
+                case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFRYCP:
+                    //判断用户是否有确认收货的产品
+                    int receivedOrderCount= shopOrderV2Dao.selectReceivedOrderCount(openId);
+                    if(receivedOrderCount>0){
+                        verificationResult= VerificationResult.buildVerificationResult(true);
+                    }else{
+                        verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费任意产品后再申请!");
+                    }
+                    break;
+                case FenxiaoSettingConstant.FX_APPLY_CONDITION_XCZDJE:
+                    Double zdje=Double.parseDouble(applyCondition.getParamValue2());
+                    Double yxfje=shopOrderV2Dao.countOrderAmount(openId);
+                    if(zdje<yxfje){
+                        verificationResult=VerificationResult.buildVerificationResult(true);
+                    }else{
+                        verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费满"+zdje+"元后再申请!");
+                    }
+                    break;
+                default:
+                    verificationResult= VerificationResult.buildVerificationResult(true);
+            }
         }
         return verificationResult;
     }
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java
index cf48b9f..d2d94e3 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java
@@ -292,15 +292,15 @@
                 applyConditionInfo.setCondition("您已满足申请条件");
                 break;
             case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFZDCP:
-                applyConditionInfo.setCondition("消费指定产品确认收货");
+                applyConditionInfo.setCondition("消费指定产品并确认收货");
                 List<String> strings = StringUtils.strToColl(applyCondition.getParamValue1(), ",");
                 applyConditionInfo.setProductList(
                         shopProductDao.selectByIds(
-                                strings.stream().map(i -> Integer.parseInt(i + "")).collect(Collectors.toList())));
+                                strings.stream().filter(i->StringUtils.isNotBlank(i)).map(i -> Integer.parseInt(i + "")).distinct().collect(Collectors.toList())));
                 break;
             case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFRYCP:
                 //判断用户是否有确认收货的产品
-                applyConditionInfo.setCondition("消费任意产品确认收货");
+                applyConditionInfo.setCondition("消费任意产品并确认收货");
                 break;
             case FenxiaoSettingConstant.FX_APPLY_CONDITION_XCZDJE:
                 Double zdje=Double.parseDouble(applyCondition.getParamValue2());
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java
index 81a6904..a428860 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java
@@ -171,11 +171,11 @@
 
         //查询是否需要自动成为分销员
         if ((loginUser.getIsSales() == null || loginUser.getIsSales() == 2)
-                && StringUtils.isNotBlank(loginUser.getNickName())) {//目前还不是分销员
+                && StringUtils.isNotBlank(bizUser.getNickName())) {//目前还不是分销员
             BusParameterSettings fxSwith = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_SWITCH, HostInterceptor.getCompanyId());
             if (fxSwith.getParamValue().equals("1")) {//开启分销
-                BusParameterSettings applyCondition = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_CONDITION, loginUser.getCompanyId());
-                if (applyCondition.getParamValue().equals(FenxiaoSettingConstant.FX_APPLY_CONDITION_WTJ)) {//无条件可称为分销员
+                BusParameterSettings applyWay = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_WAY, loginUser.getCompanyId());
+                if (applyWay.getParamValue().equals(FenxiaoSettingConstant.FX_APPLY_WAY_AUTO)) {//自动成为分销员
                     QueryWrapper<ShopSalesmanApply> queryWrapper = new QueryWrapper<>();
                     queryWrapper.eq("user_id", loginUser.getOpenId());
                     queryWrapper.eq("apply_status", ShopSalesmanApply.APPLY_STATUS_DSH);

--
Gitblit v1.9.1