Browse Source

合作伙伴档案,项目商机合同调整

qymljy 1 year ago
parent
commit
6f5d36225a

+ 8 - 15
src/Form/marketing2/agent/add.vue

@@ -162,26 +162,17 @@
             <p class="normal-title normal-margin">银行卡信息</p>
           </el-col>
           <el-col :span="12">
-            <el-form-item v-if="isBank" label="银行名称:" prop="bank">
-              <el-input v-model="form.bank" placeholder="请输入银行名称"></el-input>
-            </el-form-item>
-            <el-form-item v-else label="银行名称:">
+            <el-form-item  label="银行名称:">
               <el-input v-model="form.bank" placeholder="请输入银行名称"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item v-if="isBank" label="卡号:" prop="bankcardno">
-              <el-input v-model="form.bankcardno" placeholder="请输入银行卡号"></el-input>
-            </el-form-item>
-            <el-form-item v-else label="卡号:" >
+            <el-form-item  label="卡号:" >
               <el-input v-model="form.bankcardno" placeholder="请输入银行卡号"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item v-if="isBank" label="开户人:" prop="bankname">
-              <el-input v-model="form.bankname" placeholder="请输入开户人"></el-input>
-            </el-form-item>
-            <el-form-item v-else label="开户人:" >
+            <el-form-item  label="开户人:" >
               <el-input v-model="form.bankname" placeholder="请输入开户人"></el-input>
             </el-form-item>
           </el-col>
@@ -189,7 +180,7 @@
       </el-row>
       </div>
       <div class="fixed__btn__panel">
-        <el-button size="small" @click="dialogVisible = false" class="normal-btn-width">取 消</el-button>
+        <el-button size="small" @click="onClose" class="normal-btn-width">取 消</el-button>
         <el-button size="small" :loading="loading" type="warning" @click="onSubmit" class="normal-btn-width btn-warning">确 定</el-button>
       </div>
     </el-drawer>
@@ -292,8 +283,6 @@ export default {
     onShow () {
       this.dialogVisible = true
       this.cooperationstatus === '正式' ? this.fill = true : this.fill = false
-      this.$refs.ent.params.content.where.condition = ''
-      this.$refs.ent.params.content.pageNumber = 1
       this.query_sysoptions()
       this.query_arealist()
     },
@@ -342,6 +331,7 @@ export default {
       this.agent_level = res.data
       const res1 = await this.$store.dispatch('optiontypeselect','agenttypemx')
       this.agent_type = res1.data
+      console.log(this.agent_type,'type')
     },
     onSubmit () {
       this.$refs['form'].validate(async (valid) => {
@@ -433,6 +423,7 @@ export default {
       this.form.parentid = data.sa_agentsid
     },
     onClose () {
+      this.dialogVisible = false
       this.$refs['ent'].form = {}
       this.form = {
         "enterprisename": "",
@@ -459,6 +450,8 @@ export default {
       }
       this.enterprise = {}
       this.$refs.agent.enterprisename = ''
+      this.$refs.ent.params.content.where.condition = ''
+      this.$refs.ent.params.content.pageNumber = 1
     },
     cooperationstatusChange(){
       if (this.form.cooperationstatus === '正式'){

+ 171 - 59
src/Form/marketing2/agent/addCopy.vue

@@ -3,8 +3,8 @@
     <el-button type="primary" size="small" @click="onShow">新 建</el-button>
     <el-drawer title="创建合作伙伴" direction="rtl" size="900px" append-to-body :visible.sync="dialogVisible" @close="onClose" :show-close="false">
       <div class="drawer__panel">
-      <el-row :gutter="20">
-        <el-form :model="form" ref="form" :rules="rules" :status-icon="false"	 size="small" label-position="right" label-width="120px" >
+      <el-row :gutter="20"  >
+        <el-form :model="form" ref="form" :rules="rules" 	 size="small" label-position="right" label-width="109px" >
           <el-col :span="24">
             <p class="normal-title normal-margin">企业信息</p>
           </el-col>
@@ -41,42 +41,43 @@
             <p class="normal-title normal-margin">合作伙伴信息</p>
           </el-col>
           <el-col :span="12">
-            <el-form-item v-if="form.cooperationstatus === '正式'" label="合作伙伴编号:" prop="agentnum" :rules="{required:true,message:'请输入合作伙伴编号',trigger:'blur'}">
+            <el-form-item label="合作状态:" prop="cooperationstatus">
+              <el-select v-model="form.cooperationstatus" placeholder="请选择" style="width: 100%"  @change="cooperationstatusChange">
+                <el-option
+                    v-for="item in cooperationstatus"
+                    :key="item.label"
+                    :label="item.label"
+                    :value="item.label">
+                </el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item v-if="form.cooperationstatus === '正式'" label-width="110px" label="合作伙伴编号:" prop="agentnum" :rules="{required:true,message:'请输入合作伙伴编号',trigger:'blur'}">
               <el-input v-model="form.agentnum" placeholder="输入合作伙伴编号"
               ></el-input>
             </el-form-item>
-            <el-form-item v-else label="合作伙伴编号:" prop="agentnum" :rules="{required:false,message:'请输入合作伙伴编号',trigger:'blur'}">
+            <el-form-item v-else label="合作伙伴编号:" prop="agentnum" label-width="110px" :rules="{required:false,message:'请输入合作伙伴编号',trigger:'blur'}">
               <el-input v-model="form.agentnum" placeholder="输入合作伙伴编号"
               ></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item v-if="form.cooperationstatus === '正式'" label="erp编号:" prop="erpagentnum" :rules="{required:true,message:'请输入erp编号',trigger:'blur'}">
+            <el-form-item  style="height:51px" v-if="form.cooperationstatus === '正式'"  label="erp编号:" prop="erpagentnum" :rules="{required:true,message:'请输入erp编号',trigger:'blur'}">
               <el-input v-model="form.erpagentnum" placeholder="输入erp编号"></el-input>
             </el-form-item>
-            <el-form-item v-else label="erp编号:" prop="erpagentnum" :rules="{required:false,message:'请输入erp编号',trigger:'blur'}">
+            <el-form-item v-else style="height:51px" label="erp编号:" prop="erpagentnum"  :rules="{required:false,message:'请输入erp编号',trigger:'blur'}">
               <el-input v-model="form.erpagentnum" placeholder="输入erp编号"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="12">
-            <el-form-item label="签约日期:">
-              <el-date-picker
-                style="width:100%"
-                v-model="form.signdate"
-                type="date"
-                value-format="yyyy-MM-dd"
-                placeholder="选择日期">
-              </el-date-picker>
-            </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="合作伙伴类型:" prop="type">
+            <el-form-item label="合作伙伴类型:" label-width="110px" prop="type">
               <el-select
                   ref="sle"
                   style="width:100%;"
                   v-model="form.type"
                   multiple
-                  placeholder="请选择合作伙伴类"
+                  placeholder="请选择合作伙伴类型"
                   size="mini"
               >
                 <el-option
@@ -84,21 +85,33 @@
                     :key="item.value"
                     :label="item.value"
                     :value="item.value"
+                    :disabled="hasDisabledTag(item)"
                 >
-<!--                  <span style="float: left">{{ item.tag }}</span>-->
-<!--                  <span style="float: right; color: #8492a6; font-size: 12px">{{ item.helptips?item.helptips:'暂无描述' }}</span>-->
                 </el-option>
               </el-select>
             </el-form-item>
           </el-col>
+          <el-col :span="12" >
+            <el-form-item label="签约日期:">
+              <el-date-picker
+                  style="width:100%"
+                  v-model="form.signdate"
+                  type="date"
+                  value-format="yyyy-MM-dd"
+                  placeholder="选择日期">
+              </el-date-picker>
+            </el-form-item>
+          </el-col>
           <el-col :span="12">
-            <el-form-item label="合作状态:" prop="cooperationstatus">
-              <el-select v-model="form.cooperationstatus" placeholder="请选择" style="width: 100%" @change="cooperationstatusChange">
+            <el-form-item label="企业等级:">
+              <el-select size="small" style="width:100%" v-model="form.grade" placeholder="请选择">
                 <el-option
-                    v-for="item in cooperationstatus"
-                    :key="item.label"
-                    :label="item.label"
-                    :value="item.label">
+                    v-for="item in agent_level"
+                    :key="item.value"
+                    :label="item.remarks"
+                    :value="item.value">
+                  <span style="float: left">{{ item.value }}</span>
+                  <span style="float: right; color: #8492a6; font-size: 12px">{{ item.remarks?item.remarks:'暂无描述' }}</span>
                 </el-option>
               </el-select>
             </el-form-item>
@@ -109,42 +122,28 @@
             </el-form-item>
           </el-col>
           <el-col :span="12">
-          <el-form-item label="上级合作伙伴:">
-            <selectAgent ref="agent" @selectAgent="selectAgent" :title="title"></selectAgent>
-          </el-form-item>
-          </el-col>
-          <el-col :span="12">
-            <el-form-item label="企业等级">
-              <el-select size="small" style="width:100%" v-model="form.grade" placeholder="请选择">
-                <el-option
-                  v-for="item in agent_level"
-                  :key="item.value"
-                  :label="item.remarks"
-                  :value="item.value">
-                  <span style="float: left">{{ item.value }}</span>
-                  <span style="float: right; color: #8492a6; font-size: 12px">{{ item.remarks?item.remarks:'暂无描述' }}</span>
-                </el-option>
-              </el-select>
+            <el-form-item label="上级合作伙伴:">
+              <selectAgent ref="agent" @selectAgent="selectAgent" :title="title"></selectAgent>
             </el-form-item>
           </el-col>
           <el-col :span="12" style="height:51px">
-            <el-form-item label="开票节点" prop="invoicingpoint">
+            <el-form-item label="开票节点:" prop="invoicingpoint">
               <el-radio-group v-model="form.invoicingpoint">
                 <el-radio :label="1">订单审核</el-radio>
                 <el-radio :label="2">发货</el-radio>
               </el-radio-group>
             </el-form-item>
           </el-col>
-<!--          <el-col :span="12">-->
-<!--            <el-form-item label="是否服务合作伙伴:" prop="isservice" label-width="200px">-->
-<!--              <el-checkbox v-model="form.isservice" :true-label="1" :false-label="0"></el-checkbox>-->
-<!--            </el-form-item>-->
-<!--          </el-col>-->
           <el-col :span="12">
-            <el-form-item label="是否授权所有营销类别:" prop="saleclassauth" label-width="160px">
+            <el-form-item label="是否授权所有营销类别:" style="height:51px" prop="saleclassauth" label-width="160px">
               <el-checkbox v-model="form.saleclassauth" :true-label="0" :false-label="1"></el-checkbox>
             </el-form-item>
           </el-col>
+          <el-col :span="12">
+            <el-form-item label="是否授权所有标准:" style="height:51px" prop="standardsauth" label-width="160px">
+              <el-checkbox v-model="form.standardsauth" :true-label="0" :false-label="1"></el-checkbox>
+            </el-form-item>
+          </el-col>
           <el-col :span="12">
             <el-form-item label="是否免运费">
               <el-radio-group v-model="radio" @change="radioChange">
@@ -159,12 +158,39 @@
               <el-input v-model.number="form.freefreightamount" placeholder="请输入免运费额度"></el-input>
             </el-form-item>
           </el-col>
+          <el-col :span="24">
+            <p class="normal-title normal-margin">银行卡信息</p>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item v-if="isBank" label="银行名称:" prop="bank">
+              <el-input v-model="form.bank" placeholder="请输入银行名称"></el-input>
+            </el-form-item>
+            <el-form-item v-else label="银行名称:">
+              <el-input v-model="form.bank" placeholder="请输入银行名称"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item v-if="isBank" label="卡号:" prop="bankcardno">
+              <el-input v-model="form.bankcardno" placeholder="请输入银行卡号"></el-input>
+            </el-form-item>
+            <el-form-item v-else label="卡号:" >
+              <el-input v-model="form.bankcardno" placeholder="请输入银行卡号"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item v-if="isBank" label="开户人:" prop="bankname">
+              <el-input v-model="form.bankname" placeholder="请输入开户人"></el-input>
+            </el-form-item>
+            <el-form-item v-else label="开户人:" >
+              <el-input v-model="form.bankname" placeholder="请输入开户人"></el-input>
+            </el-form-item>
+          </el-col>
         </el-form>
       </el-row>
       </div>
       <div class="fixed__btn__panel">
         <el-button size="small" @click="dialogVisible = false" class="normal-btn-width">取 消</el-button>
-        <el-button size="small" type="warning" @click="onSubmit" class="normal-btn-width btn-warning">确 定</el-button>
+        <el-button size="small" :loading="loading" type="warning" @click="onSubmit" class="normal-btn-width btn-warning">确 定</el-button>
       </div>
     </el-drawer>
   </div>
@@ -173,10 +199,13 @@
 <script>
 import enterprise from '@/template/enterprise/index.vue'
 import selectAgent from '@/components/selectAgent/index.vue'
+import {mapGetters} from 'vuex'
+
 export default {
   data () {
     return {
       radio:-1,
+      isBank:false,
       title:'选择上级合作伙伴',
       rules: {
         enterprisename: [
@@ -194,6 +223,15 @@ export default {
         // erpagentnum: [
         //   { required: true, message: '请输入erp经销商编号', trigger: 'change' },
         // ],
+        bank: [
+          { required: true, message: '请输入银行名称', trigger: 'blur' },
+        ],
+        bankcardno: [
+          { required: true, message: '请输入银行卡号', trigger: 'blur' },
+        ],
+        bankname: [
+          { required: true, message: '请输入开户人', trigger: 'blur' },
+        ],
       },
       fill:true,
       cooperationstatus:[
@@ -212,7 +250,6 @@ export default {
         "parentid": "",
         "agentnum": "",
         "signdate": "",
-        "grade": "",
         "sys_enterpriseid": '',
         "sa_saleareaids": [
 
@@ -227,7 +264,12 @@ export default {
         "longitude": "", //经度
         "invoicingpoint": 1, //开票节点(1:订单审核:2:发货)
         "saleclassauth": 1, //是否需要经营授权,默认1
-        "grade":''
+        "grade":'',
+        "standardsauth":0,
+        "bank": "", //银行名称
+        "bankcardno": "", //银行卡号
+        "bankname": "", //开户人
+        "sys_enterprise_bankid":''
       },
       ENlist:[],
       agent_level:[],
@@ -241,10 +283,17 @@ export default {
     enterprise,
     selectAgent
   },
+  computed:{
+    ...mapGetters({
+      loading:'loading'
+    })
+  },
   methods:{
     onShow () {
       this.dialogVisible = true
       this.cooperationstatus === '正式' ? this.fill = true : this.fill = false
+      this.$refs.ent.params.content.where.condition = ''
+      this.$refs.ent.params.content.pageNumber = 1
       this.query_sysoptions()
       this.query_arealist()
     },
@@ -296,7 +345,32 @@ export default {
     },
     onSubmit () {
       this.$refs['form'].validate(async (valid) => {
-          if (!valid) return false
+        if (!valid) return false
+        if (this.form.bankcardno || this.form.bank || this.form.bankname){
+          if (this.form.bankcardno && this.form.bank && this.form.bankname){
+            this.isBank = false
+            const res = await this.$api.requested({
+              "classname": "webmanage.sale.agents.agents",
+              "method": "insertormodify_agent",
+              "content": this.form
+            })
+            this.tool.showMessage(res,()=>{
+              this.$emit('onSuccess')
+              // this.$refs['form'].resetFields();
+              this.dialogVisible = false
+              this.onClose()
+            })
+          }else {
+            this.isBank = true
+            this.$alert('请完善银行卡', '提示', {
+              showClose:false,
+              confirmButtonText: '确定',
+              callback: action => {
+              }
+            });
+          }
+        }else {
+          this.isBank = false
           const res = await this.$api.requested({
             "classname": "webmanage.sale.agents.agents",
             "method": "insertormodify_agent",
@@ -306,7 +380,9 @@ export default {
             this.$emit('onSuccess')
             // this.$refs['form'].resetFields();
             this.dialogVisible = false
+            this.onClose()
           })
+        }
       })
     },
     radioChange (val) {
@@ -336,11 +412,22 @@ export default {
       }
     },
     chooseEnterprise (item) {
+      this.form.erpagentnum = item.erpagentnum
+      this.form.grade = item.grade
+      this.form.limitreturnday = item.limitreturnday
+      this.form.invoicingpoint = item.invoicingpoint
+      this.form.saleclassauth = item.saleclassauth
+      this.radio = item.freefreightamount
       this.visible = false
       this.form.enterprisename = item.enterprisename
       this.form.sys_enterpriseid = item.sys_enterpriseid
       item.province = `${item.province}-${item.city}-${item.county}`
       this.enterprise = item
+      this.form.sys_enterprise_bankid = item.bankinfo.sys_enterprise_bankid
+      this.form.bank = item.bankinfo.bank
+      this.form.bankcardno = item.bankinfo.bankcardno
+      this.form.bankname = item.bankinfo.name
+
     },
     selectAgent (data) {
       this.form.parentid = data.sa_agentsid
@@ -368,9 +455,10 @@ export default {
         "longitude": "", //经度
         "invoicingpoint": 1, //开票节点(1:订单审核:2:发货)
         "saleclassauth": 1, //是否需要经营授权,默认1
-        "grade":''
-      },
+        "standardsauth":0
+      }
       this.enterprise = {}
+      this.$refs.agent.enterprisename = ''
     },
     cooperationstatusChange(){
       if (this.form.cooperationstatus === '正式'){
@@ -378,9 +466,30 @@ export default {
       }else {
         this.fill = false
       }
-    }
+    },
+    hasDisabledTag (item) {
+      let arr = []
+      let arr2 = []
+      arr = this.agent_type.filter(item=>{
+        return this.form.type.includes(item.value)
+      })
+
+      arr.forEach(e=>{
+        if (e.value === '经销商'){
+          arr2 = ['直销客户']
+        }else if (e.value === '直销客户'){
+          arr2 = ['经销商']
+        }
+
+      })
+      arr2 = this.form.type.length === 0?[]:arr2
+
+      let _isSame = arr2.some(tag =>item.value == tag)
+
+      return _isSame
+    },
   },
-  
+
 }
 
 </script>
@@ -407,4 +516,7 @@ export default {
   line-height: 34px;
   /* font-weight: 500; */
 }
-</style>
+/deep/ .el-input__validateIcon {
+  display: none;
+}
+</style>

+ 5 - 3
src/HDrpManagement/projectChange/modules/modules/contract/components/add.vue

@@ -86,7 +86,7 @@
             <el-col :span="24">
               <el-form-item label="合同有效期:" prop="begdate">
                 <input type="text" style="display:none" v-model="form.begdate">
-                <time-select ref="timeSelect" class="inline-16" @clearSelect="clearTime" @timeChange="timeChange"></time-select>
+                <time-select ref="timeSelect" class="inline-16" @clearSelect="clearTime" @timeChange="timeChange" style="width: 100%"></time-select>
               </el-form-item>
             </el-col>
             <el-col :span="24">
@@ -206,13 +206,14 @@
             <el-col :span="24">
               <el-form-item label="合同有效期:" prop="begdate">
                 <input type="text" style="display:none" v-model="form.begdate">
-                <time-select ref="timeSelect" class="inline-16" @clearSelect="clearTime" @timeChange="timeChange"></time-select>
+                <time-select ref="timeSelect" class="inline-16" @clearSelect="clearTime" @timeChange="timeChange" style="width: 100%"></time-select>
               </el-form-item>
             </el-col>
             <el-col :span="24">
               <el-form-item label="签约日期:" prop="signdate">
                 <el-date-picker
                     v-model="form.signdate"
+                    style="width: 100%"
                     value-format="yyyy-MM-dd"
                     type="date"
                     placeholder="选择日期">
@@ -287,6 +288,7 @@
               <el-form-item label="签约日期:" prop="signdate">
                 <el-date-picker
                     v-model="form.signdate"
+                    style="width: 100%"
                     value-format="yyyy-MM-dd"
                     type="date"
                     placeholder="选择日期">
@@ -314,7 +316,7 @@
             <el-col :span="24">
               <el-form-item label="合同有效期:" prop="begdate">
                 <input type="text" style="display:none" v-model="form.begdate">
-                <time-select ref="timeSelect" class="inline-16" @clearSelect="clearTime" @timeChange="timeChange"></time-select>
+                <time-select ref="timeSelect" class="inline-16" @clearSelect="clearTime" @timeChange="timeChange" style="width: 100%"></time-select>
               </el-form-item>
             </el-col>