From 332270224e9c4b4f634b60db8dceb05a8b4055d5 Mon Sep 17 00:00:00 2001
From: xiaoyong931011 <15274802129@163.com>
Date: Tue, 09 Mar 2021 16:06:08 +0800
Subject: [PATCH] 20210226 分销设置页

---
 zq-erp/src/main/java/com/matrix/system/fenxiao/service/FenXiaoSettingService.java   |   53 +++
 zq-erp/src/main/java/com/matrix/system/fenxiao/constant/FenxiaoSettingConstant.java |   24 +
 zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-setting.html        |  524 ++++++++++++++++++++++++++++++++
 zq-erp/src/main/java/com/matrix/system/fenxiao/entity/FenXiaoSettingEntity.java     |   18 +
 zq-erp/src/main/java/com/matrix/system/fenxiao/vo/FenXiaoSettingVo.java             |  139 ++++++++
 zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoSettingAction.java     |  135 ++++++++
 zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml                  |   10 
 zq-erp/src/main/java/com/matrix/system/hive/dao/ShoppingGoodsDao.java               |    2 
 zq-erp/src/main/java/com/matrix/system/fenxiao/dao/FenXiaoSettingDao.java           |    7 
 9 files changed, 912 insertions(+), 0 deletions(-)

diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoSettingAction.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoSettingAction.java
new file mode 100644
index 0000000..6060596
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoSettingAction.java
@@ -0,0 +1,135 @@
+package com.matrix.system.fenxiao.action;
+
+import com.matrix.core.constance.MatrixConstance;
+import com.matrix.core.pojo.AjaxResult;
+import com.matrix.core.tools.WebUtil;
+import com.matrix.system.common.bean.BusParameterSettings;
+import com.matrix.system.common.bean.SysUsers;
+import com.matrix.system.common.dao.BusParameterSettingsDao;
+import com.matrix.system.fenxiao.constant.FenxiaoSettingConstant;
+import com.matrix.system.fenxiao.service.FenXiaoSettingService;
+import com.matrix.system.fenxiao.vo.FenXiaoSettingVo;
+
+import java.util.ArrayList;
+import java.util.Arrays;
+import java.util.List;
+
+import com.matrix.system.hive.bean.ShoppingGoods;
+import com.matrix.system.hive.dao.ShoppingGoodsDao;
+
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.StrUtil;
+
+import org.apache.commons.collections.CollectionUtils;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+@RequestMapping(value = "/fenXiao/ruleSetting")
+public class FenXiaoSettingAction {
+	
+	@Autowired
+    private FenXiaoSettingService fenXiaoSettingService;
+
+    @Autowired
+    private BusParameterSettingsDao busParameterSettingsDao;
+
+    @Autowired
+    private ShoppingGoodsDao shoppingGoodsDao;
+	
+	/**
+     *查询分销配置
+     */
+    @RequestMapping(value = "/selectFenXiaoSetting")
+    public AjaxResult selectFenXiaoSetting() {
+
+       AjaxResult result= AjaxResult.buildSuccessInstance("查询成功");
+       SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
+       Long companyId = user.getCompanyId();
+       
+       //分销开关
+       String[] FXKGCode={FenxiaoSettingConstant.FX_SWITCH};
+       String[] FXKGName={"分销开关"};
+       List<FenXiaoSettingVo> fxkgRuleSettingsVo = getRuleSettingsVo(FXKGCode,FXKGName,companyId);
+       result.putInMap("fxkg", fxkgRuleSettingsVo);
+       //分销模式
+       String[] FXMSCode={FenxiaoSettingConstant.FX_MODEL};
+       String[] FXMSName={"分销模式"};
+       List<FenXiaoSettingVo> fxmsRuleSettingsVo = getRuleSettingsVo(FXMSCode,FXMSName,companyId);
+       result.putInMap("fxms", fxmsRuleSettingsVo);
+       //申请方式
+       String[] sqfsCode={FenxiaoSettingConstant.FX_APPLY_WAY};
+       String[] sqfsName={"申请方式"};
+       List<FenXiaoSettingVo> sqfsRuleSettingsVo = getRuleSettingsVo(sqfsCode,sqfsName,companyId);
+       result.putInMap("sqfs", sqfsRuleSettingsVo);
+       //审核方式
+       String[] shfsCode={FenxiaoSettingConstant.FX_AUDIT_METHOD};
+       String[] shfsName={"审核方式"};
+       List<FenXiaoSettingVo> shfsRuleSettingsVo = getRuleSettingsVo(shfsCode,shfsName,companyId);
+       result.putInMap("shfs", shfsRuleSettingsVo);
+       //申请条件
+       String[] sqtjCode={FenxiaoSettingConstant.FX_APPLY_CONDITION};
+       String[] sqtjName={"申请条件"};
+       List<FenXiaoSettingVo> sqtjRuleSettingsVo = getRuleSettingsVo(sqtjCode,sqtjName,companyId);
+       result.putInMap("sqtj", sqtjRuleSettingsVo);
+       if(CollUtil.isNotEmpty(sqtjRuleSettingsVo)){
+    	   for(FenXiaoSettingVo fenXiaoSettingVo : sqtjRuleSettingsVo) {
+    		   if("3".equals(fenXiaoSettingVo.getParamValue())) {
+    			   String paramValue1 = fenXiaoSettingVo.getParamValue1();
+    			   if(StrUtil.isNotEmpty(paramValue1)) {
+    				   List<Integer> idsList = new ArrayList<>();
+    				   List<String> idsStringList = Arrays.asList(paramValue1.split(","));
+    				   if(CollUtil.isNotEmpty(idsStringList)){
+    					   for(String string : idsStringList) {
+    						   Integer parseInt = Integer.parseInt(string);
+    						   idsList.add(parseInt);
+    					   }
+    				   }
+    				   List<ShoppingGoods> list = shoppingGoodsDao.selectByIds(idsList);
+    				   result.putInMap("order", list);
+    			   }
+    		   }
+    	   }
+       }
+
+
+
+       return result;
+    }
+    
+    /**
+     *获取对应的规则设置数据
+     * @param ArrayCode
+     * @param ArrayName
+     * @param companyId
+     * @return
+     */
+    private List<FenXiaoSettingVo> getRuleSettingsVo(String[] ArrayCode,String[] ArrayName,Long companyId){
+    	List<BusParameterSettings> dataList = busParameterSettingsDao.selectByCodesAndCompanyId(Arrays.asList(ArrayCode), companyId);
+        List<FenXiaoSettingVo> scoreRuleSettingsVos=new ArrayList<FenXiaoSettingVo>();
+        int index=0;
+        for (BusParameterSettings item:dataList){
+        	FenXiaoSettingVo paramVo=new FenXiaoSettingVo();
+            BeanUtils.copyProperties(item,paramVo);
+            paramVo.setParamName(ArrayName[index]);
+            scoreRuleSettingsVos.add(paramVo);
+            index++;
+        }
+        return scoreRuleSettingsVos;
+    }
+    
+    /**
+     * 修改公司维度的分销规则
+     */
+    @PostMapping(value = "/updateFenXiaoSetting")
+    public @ResponseBody
+    AjaxResult updateFenXiaoSetting(@RequestBody List<BusParameterSettings> busParameterSettings) {
+        return fenXiaoSettingService.updateFenXiaoSettingByCompanyId(busParameterSettings);
+    }
+
+}
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
new file mode 100644
index 0000000..d344932
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/constant/FenxiaoSettingConstant.java
@@ -0,0 +1,24 @@
+package com.matrix.system.fenxiao.constant;
+
+public class FenxiaoSettingConstant {
+    /**
+     * 分销开关
+     */
+    public final static String FX_SWITCH = "FX_SWITCH";
+    /**
+     * 分销模式
+     */
+    public final static String FX_MODEL = "FX_MODEL";
+    /**
+     * 申请方式
+     */
+    public final static String FX_APPLY_WAY = "FX_APPLY_WAY";
+    /**
+     * 审核方式
+     */
+    public final static String FX_AUDIT_METHOD = "FX_AUDIT_METHOD";
+    /**
+     * 申请条件
+     */
+    public final static String FX_APPLY_CONDITION = "FX_APPLY_CONDITION";
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/FenXiaoSettingDao.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/FenXiaoSettingDao.java
new file mode 100644
index 0000000..0bf3029
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/FenXiaoSettingDao.java
@@ -0,0 +1,7 @@
+package com.matrix.system.fenxiao.dao;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.matrix.system.fenxiao.entity.FenXiaoSettingEntity;
+
+public interface FenXiaoSettingDao extends BaseMapper<FenXiaoSettingEntity> {
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/entity/FenXiaoSettingEntity.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/entity/FenXiaoSettingEntity.java
new file mode 100644
index 0000000..7ed7815
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/entity/FenXiaoSettingEntity.java
@@ -0,0 +1,18 @@
+package com.matrix.system.fenxiao.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.matrix.system.score.entity.BaseEntity;
+
+@TableName("score_order")
+public class FenXiaoSettingEntity extends BaseEntity {
+
+	private String orderNo;
+
+    public String getOrderNo() {
+        return orderNo;
+    }
+
+    public void setOrderNo(String orderNo) {
+        this.orderNo = orderNo;
+    }
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/service/FenXiaoSettingService.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/service/FenXiaoSettingService.java
new file mode 100644
index 0000000..270cc56
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/service/FenXiaoSettingService.java
@@ -0,0 +1,53 @@
+package com.matrix.system.fenxiao.service;
+
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.matrix.core.constance.MatrixConstance;
+import com.matrix.core.pojo.AjaxResult;
+import com.matrix.core.tools.StringUtils;
+import com.matrix.core.tools.WebUtil;
+import com.matrix.system.common.bean.BusParameterSettings;
+import com.matrix.system.common.bean.SysUsers;
+import com.matrix.system.common.dao.BusParameterSettingsDao;
+import com.matrix.system.fenxiao.dao.FenXiaoSettingDao;
+import com.matrix.system.fenxiao.entity.FenXiaoSettingEntity;
+import com.matrix.system.hive.bean.ShoppingGoods;
+
+@Service
+public class FenXiaoSettingService extends ServiceImpl<FenXiaoSettingDao, FenXiaoSettingEntity> {
+
+    @Autowired
+    private BusParameterSettingsDao busParameterSettingsDao;
+
+	public AjaxResult updateFenXiaoSettingByCompanyId(List<BusParameterSettings> busParameterSettings) {
+        //获取当前登录人员信息
+        SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
+        for (BusParameterSettings busParameterSetting:busParameterSettings ) {
+            String paramCode = busParameterSetting.getParamCode();
+            if(StringUtils.isNotBlank(paramCode)){
+                //删除原有code
+                BusParameterSettings delParanm=new BusParameterSettings();
+                delParanm.setCompanyId(user.getCompanyId());
+                delParanm.setParamCode(paramCode);
+                busParameterSettingsDao.deleteByModel(delParanm);
+                //添加新的code
+                BusParameterSettings newParam=new BusParameterSettings();
+                newParam.setParamCode(paramCode);
+                newParam.setCompanyId(user.getCompanyId());
+                newParam.setParamValue(busParameterSetting.getParamValue());
+                newParam.setParamValue1(busParameterSetting.getParamValue1());
+                newParam.setParamValue2(busParameterSetting.getParamValue2());
+                busParameterSettingsDao.insert(newParam);
+            }else{
+                return AjaxResult.buildFailInstance("code不能为空");
+            }
+        }
+        AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, "更新成功");
+        return result;
+    }
+
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/FenXiaoSettingVo.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/FenXiaoSettingVo.java
new file mode 100644
index 0000000..838a131
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/FenXiaoSettingVo.java
@@ -0,0 +1,139 @@
+package com.matrix.system.fenxiao.vo;
+
+import com.matrix.core.anotations.Extend;
+
+public class FenXiaoSettingVo {
+	@Extend
+    private static final long serialVersionUID = 1L;
+
+
+    private Long paramId;
+    /**
+     * 参数名称
+     */
+    private String paramName;
+	/**
+     * 参数编码
+     */
+    private String paramCode;
+
+    /**
+     * switch按钮
+     */
+    private Boolean paramSwitch;
+
+
+    /**
+     * 参数值
+     */
+    private String paramValue;
+
+
+    /**
+     * 值1
+     */
+    private String paramValue1;
+
+
+    /**
+     * 值2
+     */
+    private String paramValue2;
+
+
+    /**
+     * 值3
+     */
+    private String paramValue3;
+
+    private Long companyId;
+
+    private Long shopId;
+
+
+    public Long getShopId() {
+        return shopId;
+    }
+
+    public void setShopId(Long shopId) {
+        this.shopId = shopId;
+    }
+
+    public Long getCompanyId() {
+        return companyId;
+    }
+
+    public void setCompanyId(Long companyId) {
+        this.companyId = companyId;
+    }
+
+    public Long getParamId() {
+        return paramId;
+    }
+
+    public void setParamId(Long paramId) {
+        this.paramId = paramId;
+    }
+
+
+    public String getParamCode() {
+        return paramCode;
+    }
+
+    public void setParamCode(String paramCode) {
+        this.paramCode = paramCode;
+    }
+
+
+    public String getParamValue() {
+        return paramValue;
+    }
+
+    public void setParamValue(String paramValue) {
+        this.paramValue = paramValue;
+    }
+
+
+    public String getParamValue1() {
+        return paramValue1;
+    }
+
+    public void setParamValue1(String paramValue1) {
+        this.paramValue1 = paramValue1;
+    }
+
+
+    public String getParamValue2() {
+        return paramValue2;
+    }
+
+    public void setParamValue2(String paramValue2) {
+        this.paramValue2 = paramValue2;
+    }
+
+
+    public String getParamValue3() {
+        return paramValue3;
+    }
+
+    public void setParamValue3(String paramValue3) {
+        this.paramValue3 = paramValue3;
+    }
+
+	public String getParamName() {
+		return paramName;
+	}
+
+	public void setParamName(String paramName) {
+		this.paramName = paramName;
+	}
+
+	public Boolean getParamSwitch() {
+		return paramSwitch;
+	}
+
+	public void setParamSwitch(Boolean paramSwitch) {
+		this.paramSwitch = paramSwitch;
+	}
+
+}
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/dao/ShoppingGoodsDao.java b/zq-erp/src/main/java/com/matrix/system/hive/dao/ShoppingGoodsDao.java
index 895c181..c846f0d 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/dao/ShoppingGoodsDao.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/dao/ShoppingGoodsDao.java
@@ -89,4 +89,6 @@
 	List<ShoppingGoodsListVo> selectShoppingGoodsApiInPage(@Param("record") ShoppingGoodsListDto shoppingGoodsListDto, @Param("pageVo") PaginationVO pageVo);
 
 	int selectShopppingGoodsAipTotal(@Param("record") ShoppingGoodsListDto shoppingGoodsListDto);
+
+	public List<ShoppingGoods> selectByIds(@Param("ids")List<Integer> ids);
 }
\ No newline at end of file
diff --git a/zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml b/zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml
index 5e75ca7..0c6cb3c 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/hive/ShoppingGoodsDao.xml
@@ -1296,4 +1296,14 @@
 			and a.good_type=#{record.goodType}
 		</if>
 	</select>
+
+	<select id="selectByIds" resultMap="ShoppingGoodsSimpleMap">
+		select
+		*
+		from shopping_goods
+		where id in
+		<foreach collection="ids" item="item" separator="," open="(" close=")">
+			#{item}
+		</foreach>
+	</select>
 </mapper>
diff --git a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-setting.html b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-setting.html
new file mode 100644
index 0000000..85ec8de
--- /dev/null
+++ b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-setting.html
@@ -0,0 +1,524 @@
+<!DOCTYPE HTML>
+<html xmlns:th="http://www.thymeleaf.org" xmlns:matrix="http://www.w3.org/1999/xhtml">
+<head>
+    <meta charset="utf-8">
+    <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
+    <meta name="renderer" content="webkit|ie-comp|ie-stand">
+    <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+    <meta name="viewport"
+          content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"/>
+    <meta http-equiv="Cache-Control" content="no-siteapp"/>
+    <!-- 本框架基本脚本和样式 -->
+    <script type="text/javascript" th:src="@{/js/systools/MBaseVue.js}"></script>
+    <link rel="stylesheet" th:href="@{/plugin/element-ui/index.css}">
+    <link rel="stylesheet" th:href="@{/plugin/bootstrap-3.3.5/css/bootstrap.min.css}">
+    <link th:href="@{/css/styleOne/style.min.css}" rel="stylesheet" type="text/css"/>
+</head>
+
+<body>
+<div class="ibox-content" id="app" v-cloak>
+    <el-form label-width="120px" >
+        <el-row>
+            <p class="el-big-title">分享设置</p>
+        </el-row>
+        <el-row style="margin-top: 20px;">
+            <el-col>
+                <template v-for="paramSettingOne in fxkg">
+                    <el-form-item>
+                        <span slot="label">{{paramSettingOne.paramName}}</span>
+                        <el-col >
+                            <el-radio-group v-model="paramSettingOne.paramValue">
+                                <el-radio v-model="paramSettingOne.paramValue" :label="'1'">开启分销</el-radio>
+                                <el-radio v-model="paramSettingOne.paramValue" :label="'2'">关闭分销</el-radio>
+                            </el-radio-group>
+                        </el-col>
+                    </el-form-item >
+                </template>
+            </el-col>
+        </el-row>
+        <el-row style="margin-top: 20px;">
+            <el-col>
+                <template v-for="paramSettingTwo in fxms">
+                    <el-form-item>
+                        <span slot="label">{{paramSettingTwo.paramName}}</span>
+                        <el-col>
+                            <el-radio-group v-model="paramSettingTwo.paramValue">
+                                <el-radio :label="'1'">一级分销</el-radio>
+                                <el-radio :label="'2'">二级分销</el-radio>
+                            </el-radio-group>
+                        </el-col>
+                    </el-form-item >
+                </template>
+            </el-col>
+        </el-row>
+        <el-row style="margin-top: 20px;">
+            <el-col>
+                <template v-for="paramSettingThree in sqfs">
+                    <el-form-item>
+                        <span slot="label">{{paramSettingThree.paramName}}</span>
+                        <el-col>
+                            <el-radio-group v-model="paramSettingThree.paramValue">
+                                <div style="margin-top: 12px;"><el-radio :label="'1'">无需申请满足条件自动成为分销员</el-radio></div>
+                                <div style="margin-top: 20px;"><el-radio :label="'2'">需要客户主动申请</el-radio></div>
+                            </el-radio-group>
+                        </el-col>
+                    </el-form-item >
+                </template>
+            </el-col>
+        </el-row>
+        <el-row style="margin-top: 20px;">
+            <el-col>
+                <template v-for="paramSettingFour in shfs">
+                    <el-form-item>
+                        <span slot="label">{{paramSettingFour.paramName}}</span>
+                        <el-col>
+                            <el-radio-group v-model="paramSettingFour.paramValue">
+                                <div style="margin-top: 12px;"><el-radio :label="'1'">系统自动审核</el-radio></div>
+                                <div style="margin-top: 20px;"><el-radio :label="'2'">人工审核</el-radio></div>
+                            </el-radio-group>
+                        </el-col>
+                    </el-form-item >
+                </template>
+            </el-col>
+        </el-row>
+        <el-row style="margin-top: 20px;">
+            <el-col>
+                <template v-for="paramSettingFive in sqtj">
+                    <el-form-item>
+                        <span slot="label">{{paramSettingFive.paramName}}</span>
+                        <el-col>
+                            <el-radio-group v-model="paramSettingFive.paramValue">
+                                <div style="margin-top: 12px;"><el-radio :label="'1'">无条件注册即可成为分销员</el-radio></div>
+                                <div style="margin-top: 25px;"><el-radio :label="'2'">消费任意产品可成为分销员</el-radio></div>
+                                <div style="margin-top: 25px;display:flex;align-items: center;">
+                                    <el-radio :label="'3'">消费指定产品可成为分销员</el-radio>
+                                    <div style="display:flex;align-items: center;">
+                                        <el-button type="primary" @click="drawer = true">设置产品</el-button>
+                                        <el-input  style="width:100px;" v-model="paramSettingFive.paramValue1"></el-input>
+                                        <el-input  style="width:100px;display: block;" v-model="cpid"></el-input>
+                                    </div>
+                                </div>
+                                <div style="margin-top: 25px;display:flex;align-items: center;">
+                                    <el-radio :label="'4'">消费指定金额可成为分销员</el-radio>
+                                    <div style="display:flex;align-items: center;">
+                                        <el-input style="width:100px;" v-model="paramSettingFive.paramValue2" oninput ="value=value.replace(/[^0-9.]/g,'')"></el-input>
+                                        <div style="font-size: 14px;align-items: center;">元</div>
+                                    </div>
+                                </div>
+                            </el-radio-group>
+                        </el-col>
+                    </el-form-item >
+                </template>
+            </el-col>
+        </el-row>
+        <el-drawer
+                title="业绩设置"
+                :visible.sync="drawer"
+                :direction="direction"
+                size="90%"
+        >
+            <el-row >
+                <el-col :span="24">
+                    <el-row class="vertical  ">
+                        <el-input class="searchInput" @input="searchGoods()" v-model="queryKey"
+                                  placeholder="搜索添加产品"></el-input>
+                        <el-button @click="searchGoods()" type="primary">搜索</el-button>
+                    </el-row>
+
+                    <div class="searchResultTable" style="width: 50%" v-show="showSearchTable">
+                        <!-- 搜索加载数据表格 -->
+                        <el-table
+                                ref="dataTable"
+                                v-loading="loading"
+                                element-loading-text="拼命加载中"
+                                element-loading-spinner="el-icon-loading"
+                                element-loading-background="rgba(0, 0, 0, 0.8)"
+                                @selection-change="handleSelectionChange"
+                                @row-click="handleClickTableRow"
+                                :max-height="400"
+                                :data="searchTableData"
+                                style="width: 100%">
+                            <el-table-column
+                                    type="selection"
+                                    width="50">
+                            </el-table-column>
+                            <el-table-column
+                                    prop="code"
+                                    label="产品编号"
+                                    width="100">
+                            </el-table-column>
+
+                            <el-table-column
+                                    prop="name"
+
+                                    label="产品名称">
+                            </el-table-column>
+
+                            <el-table-column
+                                    prop="sealPice"
+                                    label="售价">
+                            </el-table-column>
+                            <el-table-column
+                                    prop="goodType"
+                                    label="类型">
+                            </el-table-column>
+                            <el-table-column
+                                    prop="cateName"
+                                    label="分类">
+                            </el-table-column>
+                            <el-table-column
+                                    width="150"
+                                    prop="address"
+                                    label="操作">
+                                <template slot-scope="scope">
+                                    <el-button type="primary"
+                                               size="mini"
+                                               @click="handleEdit(scope.$index, scope.row)">选择
+                                    </el-button>
+                                </template>
+                            </el-table-column>
+                        </el-table>
+                        <el-row class="btn-box">
+                            <el-button size="mini" type="danger" @click="closeXm()">关闭</el-button>
+                            <el-button size="mini" type="primary" @click="chouseGoods()">确认</el-button>
+                        </el-row>
+                    </div>
+
+                    <el-row class="mt-10">
+                        <el-table
+                                :stripe="true"
+                                :border="true"
+                                :height="tableHeight"
+                                :data="order.items"
+                                style="width: 100%">
+                            <el-table-column
+                                    type="index"
+                                    width="50">
+                            </el-table-column>
+                            <el-table-column
+                                    prop="shoppingGoods.code"
+                                    label="产品编号"
+                                    width="100">
+                            </el-table-column>
+
+                            <el-table-column
+                                    prop="shoppingGoods.name"
+                                    width="280"
+                                    label="产品名称">
+                            </el-table-column>
+                            <el-table-column
+                                    prop="shoppingGoods.goodType"
+                                    width="80"
+                                    label="产品类型">
+                            </el-table-column>
+                            <el-table-column
+                                    prop="shoppingGoods.sealPice"
+                                    label="单价">
+                            </el-table-column>
+                            <el-table-column
+                                    prop="address"
+                                    label="操作">
+                                <template slot-scope="scope">
+                                    <el-button type="primary" v-if="order.statu!='欠款'"
+                                               size="mini"
+                                               @click="removeItem(scope.$index, scope.row)">删除
+                                    </el-button>
+                                </template>
+                            </el-table-column>
+                        </el-table>
+
+                    </el-row>
+                    <el-row class="mt-20 vertical">
+                        <el-col :span="14" class="btn-box">
+                            <el-button type="primary" @click="submitOrder()">保存</el-button>
+                            <el-button type="danger" @click="drawer = false">取消</el-button>
+                        </el-col>
+                    </el-row>
+                </el-col>
+            </el-row>
+        </el-drawer>
+        <el-row justify="center" type="flex">
+            <el-button type="primary" @click="submit()">保存</el-button>
+        </el-row>
+    </el-form>
+</div>
+</body>
+<script type="text/javascript" th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script>
+<script type="text/javascript" th:src="@{/js/plugin/jquery.query.js}"></script>
+<script type="text/javascript" th:src="@{/plugin/bootstrap-3.3.5/js/bootstrap.min.js}"></script>
+<script type="text/javascript" th:src="@{/js/systools/AjaxProxyVue.js}"></script>
+<script type="text/javascript" th:src="@{/js/plugin/vue.js}"></script>
+<script type="text/javascript" th:src="@{/plugin/element-ui/index.js}"></script>
+<script type="text/javascript" th:src="@{/js/systools/MJsBase.js}"></script>
+
+<script>
+    var app = new Vue({
+        el: '#app',
+        data: {
+            cpid:"",
+            //业绩设置框
+            drawer: false,
+            direction: 'rtl',
+            order: {
+                items: [
+                ],
+            },
+            tableHeight: 500,
+            /*****搜索表格数据*********/
+            //搜索关键词
+            queryKey: '',
+            //是否展示搜索表格
+            showSearchTable: false,
+            //搜索表格数据
+            searchTableData: [],
+            //表格加载效果
+            loading: false,
+            /******搜索表格数据END********/
+            fxkg:[],
+            fxms:[],
+            sqfs:[],
+            shfs:[],
+            sqtj:[],
+        },
+        created: function () {
+            this.loadInfo();
+        },
+        mounted: function () {
+        },
+
+        methods: {
+            //加载分类
+            loadInfo() {
+                let _this = this;
+                _this.loadParamSetting();
+            },
+            loadParamSetting() {
+                let _this = this;
+                //加载配置
+                AjaxProxy.requst({
+                    app: _this,
+                    data: {},
+                    url: basePath + '/fenXiao/ruleSetting/selectFenXiaoSetting',
+                    callback: function (data) {
+                        _this.fxkg = data.mapInfo.fxkg;
+                        _this.fxms = data.mapInfo.fxms;
+                        _this.sqfs = data.mapInfo.sqfs;
+                        _this.shfs = data.mapInfo.shfs;
+                        _this.sqtj = data.mapInfo.sqtj;
+                        //_this.order.items = data.mapInfo.order;
+                        //console.log(_this.order.items);
+                    }
+                });
+            },
+            setSelectGoods(data){
+                console.log(data);
+            },
+
+            //选择产品
+            handleEdit(index, row) {
+                this.pushToSelectGoods(row);
+            },
+            pushToSelectGoods(goods) {
+
+                //判断是否被选中
+                let selected = false;
+                this.order.items.forEach(item => {
+                    if (item.shoppingGoods.id == goods.id) {
+                        selected = true;
+                        return;
+                    }
+                });
+                if (!selected) {
+                    //未选中产品加入列表
+                    let item = {};
+                    item.shoppingGoods = goods;
+                    item.goodsId = goods.id;
+                    item.count = 1;
+                    this.order.items.push(item);
+                }
+
+            },
+
+            /**
+             * 点击多选
+             */
+            handleSelectionChange(val) {
+                this.multipleSelection = val;
+            },
+            /**
+             * 提交表单订单
+             * submitType 1 提交,2保存
+             */
+            submitOrder(submitType) {
+                let _this = this;
+                let submitDate ="";
+                for (let i = 0; i < _this.order.items.length; i++) {
+                    let goods = _this.order.items[i];
+                    let goodsId = goods.goodsId;
+                    submitDate = submitDate +goodsId+",";
+                }
+                _this.cpid = submitDate;
+                _this.drawer = false
+            },
+            /**
+             * 批量选择产品
+             */
+            chouseGoods() {
+                let _this = this;
+                // this.multipleSelection.forEach(item => {
+                //     _this.pushToSelectGoods(item, BUY_TYPE_NOT_FREE);
+                // });
+                this.closeXm();
+            },
+            /**
+             * 行点击事件
+             */
+            handleClickTableRow(row, event, column) {
+                this.$refs.dataTable.toggleRowSelection(row);
+            },
+            /**
+             * 删除组合产品
+             */
+            removeItem(index, row) {
+                this.order.items.splice(index, 1);
+            },
+
+
+            /**
+             * 搜索项目绑定的产品信息
+             */
+            searchGoods() {
+                let _this = this;
+                if (this.queryKey && this.queryKey.trim().length > 0) {
+                    this.showSearchTable = true;
+                    this.loading = true;
+                    AjaxProxy.requst({
+                        app: _this,
+                        contentType: 'application/x-www-form-urlencoded',
+                        //TODO 优化下拉加载
+                        data: {name: _this.queryKey, limit: 10000},
+                        url: basePath + "/admin/shoppinggoods/showList",
+                        callback: function (data) {
+                            _this.searchTableData = data.rows;
+                            _this.loading = false;
+                        }
+                    });
+                } else {
+                    this.showSearchTable = false;
+                }
+            },
+            closeXm() {
+                this.showSearchTable = false;
+            },
+
+            submit() {
+                console.log("提交");
+                let _this = this;
+                let submitDate = [];
+                for (let i = 0; i < _this.fxkg.length; i++) {
+                    let paramSetting = _this.fxkg[i];
+                    let paramCode = paramSetting.paramCode;
+                    let paramValue = paramSetting.paramValue;
+                    let paramValue1 = paramSetting.paramValue1;
+                    let paramValue2 = paramSetting.paramValue2;
+
+                    let obj = {
+                        paramCode: paramCode,
+                        paramValue: paramValue,
+                        paramValue1: paramValue1,
+                        paramValue2: paramValue2,
+                    }
+                    submitDate.push(obj);
+                }
+                for (let i = 0; i < _this.fxms.length; i++) {
+                    let paramSetting = _this.fxms[i];
+                    let paramCode = paramSetting.paramCode;
+                    let paramValue = paramSetting.paramValue;
+                    let paramValue1 = paramSetting.paramValue1;
+                    let paramValue2 = paramSetting.paramValue2;
+
+                    let obj = {
+                        paramCode: paramCode,
+                        paramValue: paramValue,
+                        paramValue1: paramValue1,
+                        paramValue2: paramValue2,
+                    }
+                    submitDate.push(obj);
+                }
+                for (let i = 0; i < _this.sqfs.length; i++) {
+                    let paramSetting = _this.sqfs[i];
+                    let paramCode = paramSetting.paramCode;
+                    let paramValue = paramSetting.paramValue;
+                    let paramValue1 = paramSetting.paramValue1;
+                    let paramValue2 = paramSetting.paramValue2;
+
+                    let obj = {
+                        paramCode: paramCode,
+                        paramValue: paramValue,
+                        paramValue1: paramValue1,
+                        paramValue2: paramValue2,
+                    }
+                    submitDate.push(obj);
+                }
+                for (let i = 0; i < _this.shfs.length; i++) {
+                    let paramSetting = _this.shfs[i];
+                    let paramCode = paramSetting.paramCode;
+                    let paramValue = paramSetting.paramValue;
+                    let paramValue1 = paramSetting.paramValue1;
+                    let paramValue2 = paramSetting.paramValue2;
+
+                    let obj = {
+                        paramCode: paramCode,
+                        paramValue: paramValue,
+                        paramValue1: paramValue1,
+                        paramValue2: paramValue2,
+                    }
+                    submitDate.push(obj);
+                }
+                for (let i = 0; i < _this.sqtj.length; i++) {
+                    let paramSetting = _this.sqtj[i];
+                    let paramCode = paramSetting.paramCode;
+                    let paramValue = paramSetting.paramValue;
+                    let paramValue1;
+                    let paramValue2;
+
+                    alert(paramValue);
+                    if(paramValue === '3'){
+                        paramValue1 = _this.cpid;
+                    }else if(paramValue === '4'){
+                        paramValue2 = paramSetting.paramValue2;
+                    }
+                    alert(paramValue1);
+
+                    alert(paramValue2);
+
+                    let obj = {
+                        paramCode: paramCode,
+                        paramValue: paramValue,
+                        paramValue1: paramValue1,
+                        paramValue2: paramValue2,
+                    }
+                    submitDate.push(obj);
+                }
+
+                AjaxProxy.requst({
+                    app: _this,
+                    data: submitDate,
+                    url: basePath + '/fenXiao/ruleSetting/updateFenXiaoSetting',
+                    callback: function (data) {
+                        _this.$message({
+                            message: data.info,
+                            type: 'success',
+                            onClose: function () {
+                                _this.loadParamSetting();
+                            }
+                        });
+                    }
+                });
+            }
+        }
+    })
+</script>
+
+</body>
+</html>
\ No newline at end of file

--
Gitblit v1.9.1