From c45db552e4593987248b7833fbe4985b6d80542d Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 16 Mar 2021 17:09:05 +0800
Subject: [PATCH] Merge branch 'score_shop' of http://120.27.238.55:7000/r/beauty-erp into score_shop

---
 zq-erp/src/main/java/com/matrix/system/fenxiao/constant/FenxiaoSettingConstant.java  |   16 +++
 zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderDaoV2.java               |   13 ++
 zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java |   71 +++++++++----
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java      |   14 ++
 zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopOrderDaoV2.xml                  |   12 ++
 zq-erp/src/main/java/com/matrix/biz/action/BizUserAction.java                        |   15 --
 zq-erp/src/main/java/com/matrix/core/pojo/VerificationResult.java                    |   47 +++++++++
 zq-erp/src/main/resources/templates/views/admin/shop/shopUser-list.html              |   60 -----------
 zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java          |   40 -------
 zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderDao.java                 |    2 
 10 files changed, 158 insertions(+), 132 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/biz/action/BizUserAction.java b/zq-erp/src/main/java/com/matrix/biz/action/BizUserAction.java
index daa4513..5b07806 100644
--- a/zq-erp/src/main/java/com/matrix/biz/action/BizUserAction.java
+++ b/zq-erp/src/main/java/com/matrix/biz/action/BizUserAction.java
@@ -5,7 +5,6 @@
 import com.matrix.biz.dao.BizUserDao;
 import com.matrix.core.pojo.AjaxResult;
 import com.matrix.core.pojo.PaginationVO;
-import com.matrix.core.tools.StringUtils;
 import com.matrix.system.hive.action.util.QueryUtil;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -44,18 +43,6 @@
     }
 
 
-    /**
-     * 批量设置为销售员
-     * @param ids
-     * @param status 1=销售员,0=普通用户
-     * @return
-     */
-    @RequestMapping(value = "/setUserSales")
-    @ResponseBody
-    public AjaxResult setUserSales(String ids,Integer status){
-        List<String> userIds = StringUtils.strToCollToString(ids, ",");
-        bizUserDao.updateSalesByIds(userIds,status);
-        return  new AjaxResult(AjaxResult.STATUS_SUCCESS,"修改成功");
-    }
+
 
 }
diff --git a/zq-erp/src/main/java/com/matrix/core/pojo/VerificationResult.java b/zq-erp/src/main/java/com/matrix/core/pojo/VerificationResult.java
new file mode 100644
index 0000000..a1c4c70
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/core/pojo/VerificationResult.java
@@ -0,0 +1,47 @@
+package com.matrix.core.pojo;
+
+import lombok.Data;
+
+/**
+ * 通用的验证返回参数
+ */
+@Data
+public class VerificationResult {
+
+    private boolean result;
+
+    private String  msg;
+
+    private Object  info;
+
+    private VerificationResult(){
+
+    }
+
+    public static VerificationResult buildVerificationResult(boolean result){
+        VerificationResult obj=new VerificationResult();
+        obj.result=result;
+        return obj ;
+    }
+
+
+    public static VerificationResult buildVerificationResult(boolean result,String msg){
+        VerificationResult obj=new VerificationResult();
+        obj.result=result;
+        obj.msg=msg;
+        return obj ;
+    }
+
+
+    public static VerificationResult buildVerificationResult(boolean result,Object  info){
+        VerificationResult obj=new VerificationResult();
+        obj.result=result;
+        obj.info=info;
+        return obj ;
+    }
+
+
+
+
+
+}
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 194c31b..4faf796 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
@@ -22,6 +22,22 @@
      */
     public final static String FX_APPLY_CONDITION = "FX_APPLY_CONDITION";
     /**
+     * 申请条件 1 无条件
+     */
+    public final static String FX_APPLY_CONDITION_WTJ = "1";
+    /**
+     * 申请条件 1 消费任意产品
+     */
+    public final static String FX_APPLY_CONDITION_XFRYCP = "2";
+    /**
+     * 申请条件 1 消费指定产品
+     */
+    public final static String FX_APPLY_CONDITION_XFZDCP = "3";
+    /**
+     * 申请条件 1 消费指定金额
+     */
+    public final static String FX_APPLY_CONDITION_XCZDJE = "4";
+    /**
      * 推广计划
      */
     public final static String FX_TG_PLAN = "FX_TG_PLAN";
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 393ad09..a8ac34d 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
@@ -1,5 +1,7 @@
 package com.matrix.system.fenxiao.service;
 
+import cn.hutool.core.util.ObjectUtil;
+import cn.hutool.core.util.StrUtil;
 import com.baomidou.mybatisplus.core.conditions.Wrapper;
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -8,8 +10,10 @@
 import com.matrix.biz.bean.BizUser;
 import com.matrix.biz.dao.BizUserDao;
 import com.matrix.biz.service.BizUserService;
+import com.matrix.core.constance.MatrixConstance;
 import com.matrix.core.exception.GlobleException;
 import com.matrix.core.pojo.AjaxResult;
+import com.matrix.core.pojo.VerificationResult;
 import com.matrix.core.tools.StringUtils;
 import com.matrix.system.common.bean.BusParameterSettings;
 import com.matrix.system.common.bean.SysUsers;
@@ -17,31 +21,13 @@
 import com.matrix.system.fenxiao.constant.FenxiaoSettingConstant;
 import com.matrix.system.fenxiao.dao.ShopSalesmanApplyDao;
 import com.matrix.system.fenxiao.dao.ShopSalesmanGradeDao;
-import com.matrix.system.fenxiao.dto.ChangeSaleManGradeDto;
-import com.matrix.system.fenxiao.dto.DelFyfaApplyDto;
-import com.matrix.system.fenxiao.dto.DelSaleManGradeApplyDto;
-import com.matrix.system.fenxiao.dto.FyfaManageDto;
-import com.matrix.system.fenxiao.dto.ShopSalesmanAppliingDto;
-import com.matrix.system.fenxiao.dto.ShopSalesmanApplyDto;
-import com.matrix.system.fenxiao.dto.ShopSalesmanDetailDto;
-import com.matrix.system.fenxiao.dto.UnbundlingSaleManDto;
-import com.matrix.system.fenxiao.dto.UpdateFyfaDto;
-import com.matrix.system.fenxiao.dto.UpdateTgjhDto;
-import com.matrix.system.fenxiao.dto.UpdateTgtpDto;
+import com.matrix.system.fenxiao.dto.*;
 import com.matrix.system.fenxiao.entity.ShopSalesmanApply;
 import com.matrix.system.fenxiao.entity.ShopSalesmanGrade;
-import com.matrix.system.fenxiao.vo.FyfaManageVo;
-import com.matrix.system.fenxiao.vo.SalesmanBasicDetailVo;
-import com.matrix.system.fenxiao.vo.ShopCustomDetailVo;
-import com.matrix.system.fenxiao.vo.ShopOrderDetailVo;
-import com.matrix.system.fenxiao.vo.ShopSalesmanAppliingVo;
-import com.matrix.system.fenxiao.vo.ShopSalesmanApplyVo;
-import com.matrix.system.fenxiao.vo.ShopSalesmanGradeVo;
+import com.matrix.system.fenxiao.vo.*;
 import com.matrix.system.hive.action.util.QueryUtil;
-
-import cn.hutool.core.util.ObjectUtil;
-import cn.hutool.core.util.StrUtil;
-
+import com.matrix.system.shopXcx.dao.ShopOrderDao;
+import com.matrix.system.shopXcx.dao.ShopOrderDaoV2;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
@@ -74,6 +60,9 @@
     @Autowired
     BizUserService bizUserService;
 
+    @Autowired
+    ShopOrderDaoV2 shopOrderDaoV2;
+
     /**
      * 申请成为推广员
      * @param openId
@@ -94,11 +83,11 @@
             ShopSalesmanApply shopSalesmanApply=new ShopSalesmanApply();
             shopSalesmanApply.setUserId(openId);
             
-            shopSalesmanApply.setCreateBy(loginUser.getNickName());
+            shopSalesmanApply.setCreateBy(MatrixConstance.SYSTEM_USER);
             shopSalesmanApply.setApplyWay(ShopSalesmanApply.APPLY_WAY_SELF);
 
             shopSalesmanApply.setCompanyId(loginUser.getCompanyId());
-            shopSalesmanApply.setUpdateBy(loginUser.getNickName());
+            shopSalesmanApply.setUpdateBy(MatrixConstance.SYSTEM_USER);
             Date date = new Date();
             shopSalesmanApply.setCreateTime(date);
             shopSalesmanApply.setUpdateTime(date);
@@ -139,6 +128,40 @@
 
     }
 
+
+    /**
+     * 判断是否满足申请成为分销员的条件
+     */
+    public VerificationResult isAbleToBeAnSalesman(String openId) {
+        BizUser bizUser = bizUserDao.findByOpenId(openId);
+        VerificationResult verificationResult=null;
+        //申请条件
+        BusParameterSettings applyCondition = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_CONDITION, bizUser.getCompanyId());
+        switch (applyCondition.getParamValue()){
+            case FenxiaoSettingConstant.FX_APPLY_CONDITION_WTJ:
+                VerificationResult.buildVerificationResult(true);
+            case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFZDCP:
+                VerificationResult.buildVerificationResult(true);
+            case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFRYCP:
+
+                //判断用户是否有确认收货的产品
+                int receivedOrderCount= shopOrderDaoV2.selectReceivedOrderCount(openId);
+
+                if(receivedOrderCount>0){
+                    verificationResult= VerificationResult.buildVerificationResult(true);
+                }else{
+                    verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费任意产品后再申请!");
+                }
+
+            case FenxiaoSettingConstant.FX_APPLY_CONDITION_XCZDJE:
+                VerificationResult.buildVerificationResult(true);
+            default:
+                VerificationResult.buildVerificationResult(true);
+        }
+        return verificationResult;
+    }
+
+
     public IPage<ShopSalesmanApplyVo> findShopSalesmanApplyList(Page<ShopSalesmanApplyVo> page, ShopSalesmanApplyDto shopSalesmanApplyDto) {
         return shopSalesmanApplyDao.findShopSalesmanApplyList(page,shopSalesmanApplyDto);
     }
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 e94b42d..3e67c28 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
@@ -76,6 +76,20 @@
         return ajaxResult;
     }
 
+    @ApiOperation(value = "查询分销商城开关", notes = "1开启分销,2关闭分销")
+    @GetMapping(value = "/getSalesMallSetting")
+    public AjaxResult getSalesMallSwith() {
+        BusParameterSettings fxSwith = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_SWITCH, HostInterceptor.getCompanyId());
+        BusParameterSettings fxModel = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_MODEL, HostInterceptor.getCompanyId());
+        AjaxResult ajaxResult = AjaxResult.buildSuccessInstance("查询成功");
+        ajaxResult.putInMap("fxSwith",fxSwith.getParamValue());
+        ajaxResult.putInMap("fxModel",fxModel.getParamValue());
+        return ajaxResult;
+    }
+
+
+
+
 
     @ApiOperation(value = "申请成为推广员", notes = "传入参数invitationId 邀请人openId ,非必填 例: {invitationId:openId}")
     @ApiResponses({
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/WxUserAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java
similarity index 81%
rename from zq-erp/src/main/java/com/matrix/system/shopXcx/api/WxUserAction.java
rename to zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java
index 5c927d6..7a523f3 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/WxUserAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java
@@ -1,7 +1,6 @@
-package com.matrix.system.shopXcx.api;
+package com.matrix.system.shopXcx.api.action;
 
 import com.matrix.biz.bean.BizUser;
-import com.matrix.biz.dao.BizUserDao;
 import com.matrix.biz.service.BizUserService;
 import com.matrix.component.redis.RedisUserLoginUtils;
 import com.matrix.component.tools.HttpCurlUtil;
@@ -12,6 +11,7 @@
 import com.matrix.core.web.BaseAction;
 import com.matrix.system.common.constance.AppConstance;
 import com.matrix.system.common.interceptor.HostInterceptor;
+import com.matrix.system.shopXcx.api.WeChatApiTools;
 import net.sf.json.JSONObject;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
@@ -39,8 +39,7 @@
 
 	@Autowired
 	private RedisUserLoginUtils redisUserLoginUtils;
-	@Autowired
-	private BizUserDao bizUserDao;
+
 
 	@Autowired
 	WeChatApiTools weChatApiTools;
@@ -128,43 +127,12 @@
 		BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
 		String openId = loginUser.getOpenId();
 		BizUser bizUser = bizUserService.findByOpenId(openId);
-		
-		//处理用户当前所在店铺
-		/*
-		if(bizUser.getStaff()!=null){
-			//当前用户是员工账号
-			bizUser.setBusiness(bussinesssDao.selectById(bizUser.getStaff().getBusinessId()));
-			bizUser.setRole(bizUser.getStaff().getRole());
-		}else{
-			//当前用户是boss账号
-			bizUser.setBusiness(bussinesssDao.findByUserOpenId(bizUser.getOpenId()));
-			bizUser.setRole(AppConstance.User_ROLE_BOSS);
-		}*/
-		
 		AjaxResult res = new AjaxResult();
 		res.putInMap("userInfo", bizUser);
 		res.setStatus(AjaxResult.STATUS_SUCCESS);
 		return res;
 	}
-	
-	/**
-	 * 获取其他用户简化信息
-	 * @author JIANGYOUYAO
-	 * @email 935090232@qq.com
-	 * @date 2018年9月5日
-	 * @param openId
-	 * @return
-	 */
-	@RequestMapping(value = "/getOtherUserInfo/{openId}")
-	public @ResponseBody
-    AjaxResult getOtherUserInfo(@PathVariable String openId) {
-		BizUser bizUser = bizUserService.findByOpenId(openId);
-		AjaxResult res = new AjaxResult();
-		res.putInMap("userInfo", bizUser);
-		res.setStatus(AjaxResult.STATUS_SUCCESS);
-		return res;
-	}
-	
+
 
 	/**
 	 * 接收用户信息
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderDao.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderDao.java
index 5b4c41c..5a9729d 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderDao.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderDao.java
@@ -78,4 +78,6 @@
 	public List<Map<String,Object>>  selectOrderStatusCount(String openId);
 
 	public int batchUpdateOrderStatus(@Param("list") List<ShopOrder> list);
+
+
 }
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderDaoV2.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderDaoV2.java
new file mode 100644
index 0000000..79cdd46
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderDaoV2.java
@@ -0,0 +1,13 @@
+package com.matrix.system.shopXcx.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.matrix.system.shopXcx.bean.ShopOrder;
+
+/**
+ * @description 订单表
+ */
+public interface ShopOrderDaoV2 extends BaseMapper<ShopOrder> {
+
+	/** 统计已收货订单数 */
+	int selectReceivedOrderCount(String openId);
+}
\ No newline at end of file
diff --git a/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopOrderDaoV2.xml b/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopOrderDaoV2.xml
new file mode 100644
index 0000000..427ae0a
--- /dev/null
+++ b/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopOrderDaoV2.xml
@@ -0,0 +1,12 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" 
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+
+<mapper namespace="com.matrix.system.shopXcx.dao.ShopOrderDaoV2">
+
+	<select id="selectReceivedOrderCount" resultType="java.lang.Integer">
+		select count(*)  from shop_order where user_id = #{openId} and order_status in (4,5)
+	</select>
+
+
+</mapper>
\ No newline at end of file
diff --git a/zq-erp/src/main/resources/templates/views/admin/shop/shopUser-list.html b/zq-erp/src/main/resources/templates/views/admin/shop/shopUser-list.html
index 04342bd..b0d1f09 100644
--- a/zq-erp/src/main/resources/templates/views/admin/shop/shopUser-list.html
+++ b/zq-erp/src/main/resources/templates/views/admin/shop/shopUser-list.html
@@ -21,14 +21,7 @@
             <div class="col-md-2 col-xs-12">
                 <!-- 功能按钮部分 -->
                 <div class="">
-                    <button onclick="setUserSales('1')" type="button"
-                            class="btn btn-success btn-sm" matrix:btn="shopUser-exchangeScore">
-                        <i class="fa fa-plus"></i>设为销售员
-                    </button>
-                    <button onclick="setUserSales('0')" type="button"
-                            class="btn btn-success btn-sm" matrix:btn="shopUser-exchangeScore">
-                        <i class="fa fa-minus-square"></i> 解除销售员
-                    </button>
+
                 </div>
             </div>
             <div class="col-md-10 col-xs-12">
@@ -199,63 +192,14 @@
     function buildOperate(value, row, index){
         var html = "";
         html += '<div class="btn-group">'
-        if (row.userVip == 1) {
-            html += btns[0].replace('VALUE',value)
-            html += btns[1].replace('VALUE',value)
-        }
         html += '</div>';
         return html;
     }
 
-    function exchangeScore(_userId) {
-        layer.open({
-            type : 2,
-            title : "兑换积分",
-            area : [ MUI.SIZE_L, '400px' ],
-            maxmin : true,
-            content : [ basePath+'/admin/bizUserScore/intoExchangePage?userId=' + _userId]
-        })
-    }
 
-    function getScoreFlow(_userId) {
-        layer.open({
-            type : 2,
-            title : "积分流水",
-            area : [ MUI.SIZE_L, '400px' ],
-            maxmin : true,
-            content : [ basePath+'/admin/redirect/shop/user-score-flow?userId=' + _userId]
-        })
-    }
 
-    //设置用户销售员身份
-    function setUserSales(_status) {
 
-        var ids = myGrid.getSelectItemsIds("userId");
-        if(ids.length < 1){
-            layer.msg("请选择要操作的数据", {
-                icon : 5
-            });
-            return false;
-        }
-        var url = basePath + "/admin/bizUser/setUserSales?ids=" + ids + "&status=" + _status;
-
-        if(_status == '1'){
-            MTools.handleItem(url,"确认要将这" + ids.split(",").length + "个用户设置为销售员吗?",function(){
-                myGrid.serchData(1)
-            });
-        } else {
-            MTools.handleItem(url,"确认要取消这" + ids.split(",").length + "个用户的销售员身份吗?",function(){
-                myGrid.serchData(1)
-            });
-        }
-    }
 </script>
-<!--权限按钮-->
-<script matrix:btn="shopUser-exchangeScore">
-    btns[0] = '<button  type="button" class="btn btn-info mr10" onClick="exchangeScore(\'VALUE\')">兑换积分</button>'
-</script>
-<script matrix:btn="shopUser-scoreFlow">
-    btns[1] = '<button type="button" class="btn btn-primary ml10" onClick="getScoreFlow(\'VALUE\')">查看流水</button>'
-</script>
+
 </body>
 </html>

--
Gitblit v1.9.1