Bladeren bron

代码更新

qymljy 2 jaren geleden
bovenliggende
commit
76d4b125d0

+ 105 - 57
src/Form/publicCustomer/add.vue

@@ -65,6 +65,11 @@
                 <el-button size="mini" type="primary" style="width: 100%" @click="businessSearch" slot="reference" :disabled="form.enterprisename === ''">工商查询</el-button>
               </el-popover>
             </el-col>
+            <el-col :span="24">
+              <el-form-item label="企业简称:" prop="abbreviation">
+                <el-input v-model="form.abbreviation" placeholder="企业简称"></el-input>
+              </el-form-item>
+            </el-col>
             <el-col :span="24">
               <el-form-item label="客户类型:" prop="type">
                 <el-select v-model="form.type" placeholder="请选择客户类型" size="small">
@@ -79,30 +84,55 @@
                 </el-select>
               </el-form-item>
             </el-col>
+
             <el-col :span="24">
-              <el-form-item label="客户来源:" prop="source">
-                <el-input v-model="form.source" placeholder="客户来源"></el-input>
+              <el-form-item label="客户等级:" >
+                <el-select v-model="form.grade" placeholder="请选择客户等级" style="width: 100%">
+                  <el-option
+                      v-for="item in options.customerGrade"
+                      :key="item.rowindex"
+                      :label="item.value "
+                      :value="item.value">
+                  </el-option>
+                </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item label="客户等级:" prop="grade">
-                <el-select v-model="form.customergrade" placeholder="请选择客户等级" size="small">
+              <el-form-item label="客户分类:" >
+                <el-select v-model="form.customergrade" placeholder="请选择客户分类" style="width: 100%">
                   <el-option
-                    v-for="item in customerLead()"
-                    :key="item.value"
-                    :label="item.value"
-                    :value="item.value">
+                      v-for="item in options.customerClassification"
+                      :key="item.rowindex"
+                      :label="item.value "
+                      :value="item.value">
                   </el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item label="企业简称:" prop="abbreviation">
-                <el-input v-model="form.abbreviation" placeholder="企业简称"></el-input>
+              <el-form-item  label="客户行业:" >
+                <el-select
+                    ref="sle"
+                    style="width:100%;"
+                    v-model="form.industry"
+                    multiple
+                    placeholder="请选择所属行业"
+                    size="mini"
+                >
+                  <el-option
+                      v-for="item in options.industryData"
+                      :key="item.value"
+                      :label="item.value"
+                      :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>
             </el-col>
             <el-col :span="24">
-              <el-form-item label="企业税号:" prop="taxno">
+              <el-form-item label="税号:" prop="taxno">
                 <el-input v-model="form.taxno" placeholder="税号"></el-input>
               </el-form-item>
             </el-col>
@@ -112,15 +142,8 @@
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item label="所属行业:" >
-                <el-select v-model="form.industry" placeholder="请选择所属行业" style="width: 100%">
-                  <el-option
-                      v-for="item in options.industryData"
-                      :key="item.value"
-                      :label="item.value"
-                      :value="item.value">
-                  </el-option>
-                </el-select>
+              <el-form-item label="电话:" prop="contact">
+                <el-input v-model="form.telephone" placeholder="请输入电话" style="width: 100%"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="24">
@@ -134,15 +157,10 @@
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item label="企业地址:" prop="address">
+              <el-form-item label="详细地址:" prop="address">
                 <el-input v-model="form.address" placeholder="详细地址"></el-input>
               </el-form-item>
             </el-col>
-<!--            <el-col :span="24">
-              <el-form-item label="联系方式:" prop="phonenumber">
-                <el-input v-model="form.phonenumber" placeholder="请输入联系方式" style="width: 100%"></el-input>
-              </el-form-item>
-            </el-col>-->
             <el-col :span="24">
               <el-form-item label="上级客户:" >
                 <el-popover
@@ -200,18 +218,11 @@
                 </el-popover>
               </el-form-item>
             </el-col>
-
-
-<!--            <el-col :span="24">
-              <el-form-item label="联系人:" prop="contact">
-                <el-input v-model="form.contact" placeholder="联系人"></el-input>
-              </el-form-item>
-            </el-col>
             <el-col :span="24">
-              <el-form-item label="联系电话:" prop="phonenumber">
-                <el-input v-model="form.phonenumber" placeholder="联系电话"></el-input>
+              <el-form-item label="客户来源:" prop="source">
+                <el-input v-model="form.source" placeholder="客户来源"></el-input>
               </el-form-item>
-            </el-col>-->
+            </el-col>
             <el-col :span="24">
               <el-form-item label="公海池:" prop="sa_customerpoolid">
                 <el-select v-model="form.sa_customerpoolid" placeholder="请选择公海池" size="small">
@@ -262,28 +273,32 @@ export default {
       total:0,
       currentPage:0,
       options:{
-        industryData:[]
+        industryData:[],
+        customerGrade:[],
+        customerClassification:[],
       },
       form:{
-        "sa_customersid": 0,//新增是传0
-        "parentid": 0, //上级客户ID,默认或没有上级的时候传0
-        "sys_enterpriseid": 0, //合作企业档案ID,新增是传0,更新
-        "enterprisename":"",//客户名称(企业名称)
-        "type": "", //客户类型
-        "customergrade":'',//客户等级
-        "sa_customerpoolid": '', //客户池(公海池)ID,默认或没有的时候传0
-        "source": "", //客户来源
-        "province":"",//非必填,可选
-        "city":"",//非必填,可选
-        "county":"",//非必填,可选
-        "address":"",//非必填,可选
-        "abbreviation":"",//非必填,可选
-        "taxno":"",//税号,非必填,可选
-        "grade":'',// 客户等级(商户等级)
-        "industry":"",//非必填,可选,所属行业
-        "contact":"",//非必填,可选
-        "phonenumber":"",//非必填,可选
-        "ispublic":1
+        sa_customersid: 0,//新增是传0
+        parentid: 0, //上级客户ID,默认或没有上级的时候传0
+        sys_enterpriseid: 0, //合作企业档案ID,新增是传0,更新
+        enterprisename:"",//客户名称(企业名称)
+        type: "", //客户类型
+        customergrade:'',//客户等级
+        sa_customerpoolid: '', //客户池(公海池)ID,默认或没有的时候传0
+        source: "", //客户来源
+        province:"",//非必填,可选
+        city:"",//非必填,可选
+        county:"",//非必填,可选
+        address:"",//非必填,可选
+        abbreviation:"",//非必填,可选
+        taxno:"",//税号,非必填,可选
+        grade:'',// 客户等级(商户等级)
+        industry:[],//非必填,可选,所属行业
+        contact:"",//非必填,可选
+        phonenumber:"",//非必填,可选
+        ispublic:1,
+        telephone: "",
+        sa_agentsid: ""
       },
       value:'',
       rules:{
@@ -566,10 +581,43 @@ export default {
         }
       })
       this.options.industryData = res.data
-    }
+    },
+    /*客户分类*/
+    async gradeList(){
+      const res = await this.$api.requested({
+        "classname": "sysmanage.develop.optiontype.optiontype",
+        "method": "optiontypeselect",
+        "content": {
+          "pageNumber": 1,
+          "pageSize": 20,
+          "typename": "customergrade",
+          "parameter": {
+            "siteid": "YOSTEST2"
+          }
+        }
+      })
+      console.log("客户等级",res.data)
+      /*for (var i=0;i<res.data.length; i++){
+        if (res.data[i].remarks !== ''){
+          this.options.gradeData[i] = res.data[i].value + "——" + res.data[i].remarks
+        }else{
+          this.options.gradeData[i] = res.data[i].value
+        }
+      }*/
+      this.options.customerClassification = res.data
+      console.log("处理后客户等级",this.options.customerClassification)
+    },
+    /*客户等级*/
+    queryCustomerGrade(){
+      this.$store.dispatch('optiontypeselect','agentgrade').then(res=>{
+        this.options.customerGrade = res.data
+      })
+    },
   },
   mounted() {
     this.industryList()
+    this.gradeList()
+    this.queryCustomerGrade()
   }
 }
 </script>

+ 114 - 48
src/Form/publicCustomer/edit.vue

@@ -65,42 +65,71 @@
                 <el-button size="mini" type="primary" style="width: 100%" @click="businessSearch" slot="reference" :disabled="form.enterprisename === ''">工商查询</el-button>
               </el-popover>
             </el-col>
+            <el-col :span="24">
+              <el-form-item label="企业简称:" prop="abbreviation">
+                <el-input v-model="form.abbreviation" placeholder="企业简称"></el-input>
+              </el-form-item>
+            </el-col>
             <el-col :span="24">
               <el-form-item label="客户类型:" prop="type">
                 <el-select v-model="form.type" placeholder="请选择客户类型" size="small">
                   <el-option
-                    v-for="item in customerType()"
-                    :key="item.value"
-                    :label="item.value"
-                    :value="item.value">
+                      v-for="item in customerType()"
+                      :key="item.value"
+                      :label="item.value"
+                      :value="item.value">
                   </el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item label="客户来源:" >
-                <el-input v-model="form.source" placeholder="客户来源"></el-input>
+              <el-form-item label="客户等级:" >
+                <el-select v-model="form.grade" placeholder="请选择客户等级" style="width: 100%">
+                  <el-option
+                      v-for="item in options.customerGrade"
+                      :key="item.rowindex"
+                      :label="item.value "
+                      :value="item.value">
+                  </el-option>
+                </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item label="客户等级:" prop="grade">
-                <el-select v-model="form.customergrade" placeholder="请选择客户等级" size="small">
+              <el-form-item label="客户分类:" >
+                <el-select v-model="form.customergrade" placeholder="请选择客户分类" style="width: 100%">
                   <el-option
-                    v-for="item in customerLead()"
-                    :key="item.value"
-                    :label="item.value"
-                    :value="item.value">
+                      v-for="item in options.customerClassification"
+                      :key="item.rowindex"
+                      :label="item.value "
+                      :value="item.value">
                   </el-option>
                 </el-select>
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item label="企业简称:" prop="abbreviation">
-                <el-input v-model="form.abbreviation" placeholder="企业简称"></el-input>
+              <el-form-item  label="客户行业:" >
+                <el-select
+                    ref="sle"
+                    style="width:100%;"
+                    v-model="form.industry"
+                    multiple
+                    placeholder="请选择所属行业"
+                    size="mini"
+                >
+                  <el-option
+                      v-for="item in options.industryData"
+                      :key="item.value"
+                      :label="item.value"
+                      :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>
             </el-col>
             <el-col :span="24">
-              <el-form-item label="企业税号:" prop="taxno">
+              <el-form-item label="税号:" prop="taxno">
                 <el-input v-model="form.taxno" placeholder="税号"></el-input>
               </el-form-item>
             </el-col>
@@ -110,15 +139,8 @@
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item label="所属行业:" >
-                <el-select v-model="form.industry" placeholder="请选择所属行业" style="width: 100%">
-                  <el-option
-                      v-for="item in options.industryData"
-                      :key="item.value"
-                      :label="item.value"
-                      :value="item.value">
-                  </el-option>
-                </el-select>
+              <el-form-item label="电话:" prop="contact">
+                <el-input v-model="form.telephone" placeholder="请输入电话" style="width: 100%"></el-input>
               </el-form-item>
             </el-col>
             <el-col :span="24">
@@ -132,7 +154,7 @@
               </el-form-item>
             </el-col>
             <el-col :span="24">
-              <el-form-item label="企业地址:" prop="address">
+              <el-form-item label="详细地址:" prop="address">
                 <el-input v-model="form.address" placeholder="详细地址"></el-input>
               </el-form-item>
             </el-col>
@@ -193,8 +215,11 @@
                 </el-popover>
               </el-form-item>
             </el-col>
-
-
+            <el-col :span="24">
+              <el-form-item label="客户来源:" >
+                <el-input v-model="form.source" placeholder="客户来源"></el-input>
+              </el-form-item>
+            </el-col>
             <el-col :span="24">
               <el-form-item label="公海池:" prop="sa_customerpoolid">
                 <el-select v-model="form.sa_customerpoolid" placeholder="请选择公海池" size="small">
@@ -246,28 +271,33 @@ export default {
       currentPage:0,
       value:'',
       options:{
-        industryData:[]
+        industryData:[],
+        customerGrade:[],
+        customerClassification:[],
       },
       form:{
-        "value":[],
-        "sa_customersid": 0,//新增是传0
-        "parentid": 0, //上级客户ID,默认或没有上级的时候传0
-        "sys_enterpriseid": 0, //合作企业档案ID,新增是传0,更新
-        "enterprisename":"",//客户名称(企业名称)
-        "type": "", //客户类型
-        "sa_customerpoolid": 0, //客户池(公海池)ID,默认或没有的时候传0
-        "source": "", //客户来源
-        "province":"",//非必填,可选
-        "city":"",//非必填,可选
-        "county":"",//非必填,可选
-        "address":"",//非必填,可选
-        "abbreviation":"",//非必填,可选
-        "taxno":"",//税号,非必填,可选
-        "grade":'',// 客户等级(商户等级)
-        "industry":"",//非必填,可选,所属行业
-        "contact":"",//非必填,可选
-        "phonenumber":"",//非必填,可选
-        "ispublic":1
+        value:[],
+        sa_customersid: 0,//新增是传0
+        parentid: 0, //上级客户ID,默认或没有上级的时候传0
+        sys_enterpriseid: 0, //合作企业档案ID,新增是传0,更新
+        enterprisename:"",//客户名称(企业名称)
+        type: "", //客户类型
+        customergrade:'',//客户等级
+        sa_customerpoolid: '', //客户池(公海池)ID,默认或没有的时候传0
+        source: "", //客户来源
+        province:"",//非必填,可选
+        city:"",//非必填,可选
+        county:"",//非必填,可选
+        address:"",//非必填,可选
+        abbreviation:"",//非必填,可选
+        taxno:"",//税号,非必填,可选
+        grade:'',// 客户等级(商户等级)
+        industry:[],//非必填,可选,所属行业
+        contact:"",//非必填,可选
+        phonenumber:"",//非必填,可选
+        ispublic:1,
+        telephone: "",
+        sa_agentsid: ""
       },
       rules:{
         enterprisename:[
@@ -316,6 +346,9 @@ export default {
       this.form = Object.assign({},this.form,this.data)
       console.log(this.form)
       this.form.value = [this.form.province,this.form.city,this.form.county]
+      if (this.form.grade === 0){
+        this.form.grade = ''
+      }
 
     },
     /*工商查询*/
@@ -496,10 +529,43 @@ export default {
         }
       })
       this.options.industryData = res.data
-    }
+    },
+    /*客户分类*/
+    async gradeList(){
+      const res = await this.$api.requested({
+        "classname": "sysmanage.develop.optiontype.optiontype",
+        "method": "optiontypeselect",
+        "content": {
+          "pageNumber": 1,
+          "pageSize": 20,
+          "typename": "customergrade",
+          "parameter": {
+            "siteid": "YOSTEST2"
+          }
+        }
+      })
+      console.log("客户等级",res.data)
+      /*for (var i=0;i<res.data.length; i++){
+        if (res.data[i].remarks !== ''){
+          this.options.gradeData[i] = res.data[i].value + "——" + res.data[i].remarks
+        }else{
+          this.options.gradeData[i] = res.data[i].value
+        }
+      }*/
+      this.options.customerClassification = res.data
+      console.log("处理后客户等级",this.options.customerClassification)
+    },
+    /*客户等级*/
+    queryCustomerGrade(){
+      this.$store.dispatch('optiontypeselect','agentgrade').then(res=>{
+        this.options.customerGrade = res.data
+      })
+    },
   },
   mounted() {
     this.industryList()
+    this.gradeList()
+    this.queryCustomerGrade()
   }
 }
 </script>

+ 12 - 0
src/Form/salerPrivatecustomer/add.vue

@@ -225,6 +225,18 @@
                 <el-input v-model="form.source" placeholder="请输入客户来源" style="width: 100%"></el-input>
               </el-form-item>
             </el-col>
+            <el-col :span="24">
+              <el-form-item label="归属经销商:" >
+                <el-select v-model="form.sa_agentsid" placeholder="请选择经销商" style="width: 100%">
+                  <el-option
+                      v-for="item in options.distributor"
+                      :key="item.sa_agentsid"
+                      :label="item.enterprisename "
+                      :value="item.sa_agentsid">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
           </el-form>
         </el-row>
       </div>

+ 15 - 0
src/Form/salerPrivatecustomer/edit.vue

@@ -167,6 +167,18 @@
                 <el-input v-model="form.source" placeholder="请输入客户来源" style="width: 100%"></el-input>
               </el-form-item>
             </el-col>
+            <el-col :span="24">
+              <el-form-item label="归属经销商:" >
+                <el-select v-model="form.sa_agentsid" placeholder="请选择经销商" style="width: 100%">
+                  <el-option
+                      v-for="item in options.distributor"
+                      :key="item.sa_agentsid"
+                      :label="item.enterprisename "
+                      :value="item.sa_agentsid">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+            </el-col>
           </el-form>
         </el-row>
       </div>
@@ -288,6 +300,9 @@ export default {
       if (this.form.grade === 0){
         this.form.grade = ''
       }
+      if (this.form.sa_agentsid === 0){
+        this.form.sa_agentsid  = ''
+      }
       /*if (this.form.parentid === 0){
         this.form.parentid = '未选择'
       }*/

+ 37 - 4
src/HDrpManagement/ProductMag/index.vue

@@ -18,9 +18,9 @@
       }"
       >
       <template #titleRight>
-        <to_examine v-if="tool.checkAuth($route.name,'toExamine')" class="inline-16" style="margin-left: 10px" :rowData="rowData" @examineSuccess="onSuccess"></to_examine>
-        <counter_examine v-if="tool.checkAuth($route.name,'reverseReview')" class="inline-16" :rowData="rowData" @examineSuccess="onSuccess"></counter_examine>
-        <priceLevelSetting v-if="tool.checkAuth($route.name,'priceSet')"></priceLevelSetting>
+        <to_examine v-if="tool.checkAuth($route.name,'toExamine')" class="inline-16" style="margin-left: 10px" :rowData="rowData" @examineSuccess="onSuccess" :disabled="rowData.length === 0"></to_examine>
+        <counter_examine v-if="tool.checkAuth($route.name,'reverseReview')" class="inline-16" :rowData="rowData" @examineSuccess="onSuccess" :disabled="rowData.length === 0"></counter_examine>
+        <priceLevelSetting v-if="tool.checkAuth($route.name,'priceSet')" ></priceLevelSetting>
       </template>
       <template #custom>
         <div class="mt-10">
@@ -59,6 +59,39 @@
         <p v-else-if="scope.data.column.columnname === 'cover'">
           <previewImage v-if="scope.data.column.data.attinfos[0]" class="image" :image="scope.data.column.data.attinfos[0]" :list="scope.data.column.data.attinfos" :deletebtn="false"></previewImage>
         </p>
+        <p v-else-if="scope.data.column.columnname === 'tradefield'">
+          <span v-if="JSON.stringify(scope.data.column.data.tradefield) !== '[]' && scope.data.column.data.tradefield">
+            <span v-for="item in scope.data.column.data.tradefield">
+              <el-tag style="margin-right: 10px;margin-top: 5px;margin-bottom: 5px">{{item.tradefield}}</el-tag>
+            </span>
+          </span>
+          <span v-else>
+
+           </span>
+        </p>
+        <p v-else-if="scope.data.column.columnname === 'brand'">
+          <span v-if="JSON.stringify(scope.data.column.data.brand) !== '[]' && scope.data.column.data.brand">
+             <span v-for="item in scope.data.column.data.brand">
+               <el-tag style="margin-right: 10px;margin-top: 5px;margin-bottom: 5px" type="warning">{{item.brandname}}</el-tag>
+            </span>
+          </span>
+         <span v-else>
+
+         </span>
+        </p>
+        <p v-else-if="scope.data.column.columnname === 'itemclass'">
+        <span v-if="JSON.stringify(scope.data.column.data.itemclass) !== '[]' && scope.data.column.data.itemclass">
+           <span v-for="item in scope.data.column.data.itemclass">
+             <el-tag style="margin-right: 10px;margin-top: 5px;margin-bottom: 5px" type="success">{{item.itemclassname}}</el-tag>
+          </span>
+        </span>
+          <span v-else>
+
+       </span>
+        </p>
+        <p v-else-if="scope.data.column.columnname === 'istool'">
+          {{scope.data.column.data[[scope.data.column.columnname]] === 0?'否':'是'}}
+        </p>
         <p v-else-if="scope.data.column.columnname === 'status'">
           <span style="color:#3874f6" v-if="scope.data.column.data[[scope.data.column.columnname]] == '审核'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
           <span style="color:#333333" v-else-if="scope.data.column.data[[scope.data.column.columnname]] == '新建'">{{scope.data.column.data[[scope.data.column.columnname]]}}</span>
@@ -116,7 +149,7 @@ export default {
         isonsale:'',
         status:''
       },
-      rowData:{}
+      rowData:[]
     }
   },
   components:{

+ 2 - 2
src/HDrpManagement/ProductMag/modules/counterExamine.vue

@@ -1,12 +1,12 @@
 <template>
   <div>
-    <el-button  size="small" @click="onshow" >反 审</el-button>
+    <el-button :type="disabled?'':'primary'" size="small" @click="onshow" :disabled="disabled">反 审</el-button>
   </div>
 </template>
 
 <script>
 export default {
-  props:["rowData"],
+  props:["rowData","disabled"],
   name: "counterExamine",
   data(){
     return {

+ 2 - 2
src/HDrpManagement/ProductMag/modules/toExamine.vue

@@ -1,12 +1,12 @@
 <template>
   <div >
-    <el-button  size="small"  @click="onshow">审 核</el-button>
+    <el-button :type="disabled?'':'primary'"  size="small"  @click="onshow" :disabled="disabled">审 核</el-button>
   </div>
 </template>
 
 <script>
 export default {
-  props:["rowData"],
+  props:["rowData","disabled"],
   name: "toExamine",
   data(){
     return {

+ 4 - 1
src/HDrpManagement/prodectFileData/modules/edit.vue

@@ -29,7 +29,10 @@
             </el-col>
             <el-col :span="24">
               <el-form-item  label="上传附件:">
-                <uploadFile ref="upload"  :folderid="folderid" accept=".text,.doc,.xls" :bindData="{ownertable:'plm_technicalinfo',ownerid:form.plm_technicalinfoid,usetype:'default'}" @onSuccess="uploadSuccess"></uploadFile>
+<!--                <uploadFile ref="upload"  :folderid="folderid" accept=".text,.doc,.xls" :bindData="{ownertable:'plm_technicalinfo',ownerid:form.plm_technicalinfoid,usetype:'default'}" @onSuccess="uploadSuccess"></uploadFile>-->
+                <uploadFile ref="upload" :folderid="folderid"
+                        :bindData="{ ownertable: 'plm_technicalinfo', ownerid: form.plm_technicalinfoid, usetype: 'default' }"
+                        @onSuccess="uploadSuccess"></uploadFile>
               </el-form-item>
             </el-col>
           </el-form>

+ 12 - 0
src/HDrpManagement/publicCustomer/index.vue

@@ -118,6 +118,18 @@
             </el-tag>
           </div>
         </div>
+        <div v-else-if="scope.data.column.columnname === 'industry'">
+          <span v-if="JSON.stringify(scope.data.column.data.industry) !== '[]' && scope.data.column.data.industry">
+            <div v-for="item in scope.data.column.data.industry" :key="item.index"  style="float: left;margin-left: 5px;margin-bottom: 5px">
+              <el-tag size="mini"  effect="dark">
+                <span>{{item}}</span>
+              </el-tag>
+            </div>
+          </span>
+          <div v-else>
+            {{'--'}}
+          </div>
+        </div>
         <div v-else-if="scope.data.column.columnname === 'contact'">
           <span>{{scope.data.column.data['leader'][0]?scope.data.column.data['leader'][0].name:'--'}}</span>
         </div>

+ 19 - 14
src/HDrpManagement/publicCustomer/modules/detail.vue

@@ -10,7 +10,7 @@
         idname="sa_customersid"
         :tabs="['详细信息','联系人信息','客户地址']"
         @pageChange="pageChange"
-        @onEditSuccess="queryMainData($route.query.id)">
+        @onEditSuccess="onEditSuccess">
       <div slot="tags">
         <tagPanl slot="tags" :data="tagObj" :id="mainData.sa_customersid" @onSuccess="queryMainData"/>
         <!-- 使用此插槽可不传[tags] -->
@@ -163,16 +163,20 @@ export default {
           value:this.mainData.sa_customersid
         },
         {
-          label:'客户等级',
-          value:this.mainData.customergrade
+          label:'客户名称',
+          value:this.mainData.enterprisename
         },
         {
           label:'客户类型',
           value:this.mainData.type
         },
         {
-          label:'上级企业',
-          value:this.mainData.superiorenterprisename
+          label:'客户等级',
+          value:this.mainData.grade === 0?'':this.mainData.grade
+        },
+        {
+          label:'客户分类',
+          value:this.mainData.customergrade
         },
         {
           label:'成交状态',
@@ -227,18 +231,14 @@ export default {
             return style
           }
         },
-        // {
-        //   label:'负责人1',
-        //   value:this.mainData.leader.length === 0?"--":this.mainData.leader[0].name
-        // },
-        {
-          label:'最近跟进时间',
-          value:''
-        },
         {
           label:'所属公海',
           value:this.mainData.poolname
-        }
+        },
+        {
+          label:'负责人',
+          value:this.mainData.leader.length === 0?"--":this.mainData.leader[0].name
+        },
       ]
     },
     onSuccess(){
@@ -274,6 +274,11 @@ export default {
           message: '已取消删除'
         });
       });
+    },
+    onEditSuccess(){
+      this.$refs.detailed.basicData(this.$route.query.id)
+      this.$refs.detailed.systemData(this.$route.query.id)
+      this.queryMainData(this.$route.query.id)
     }
   },
   mounted () {

+ 83 - 18
src/HDrpManagement/publicCustomer/modules/detail/detailedData.vue

@@ -7,17 +7,43 @@
         <el-descriptions-item label="客户编号">{{ basic.sa_customersid?basic.sa_customersid:"--" }}</el-descriptions-item>
         <el-descriptions-item label="企业简称">{{ basic.abbreviation?basic.abbreviation:"--"}}</el-descriptions-item>
         <el-descriptions-item label="客户类型">{{ basic.type?basic.type:"--" }}</el-descriptions-item>
-        <el-descriptions-item label="客户等级">{{ basic.customergrade?basic.customergrade:"--" }}</el-descriptions-item>
-        <el-descriptions-item label="所属行业">{{ basic.industry?basic.industry:"--" }}</el-descriptions-item>
+
+        <el-descriptions-item label-class-name="my-label" label="客户等级">{{ basic.grade?basic.grade:"--" }}</el-descriptions-item>
+        <el-descriptions-item label-class-name="my-label" label="客户分类">{{ basic.customergrade?basic.customergrade:"--" }}</el-descriptions-item>
+
+        <el-descriptions-item label-class-name="my-label" label="客户行业">
+          <div v-if="basic.industry.length === 0">
+            --
+          </div>
+          <div v-else>
+             <span v-for="(item,index) in basic.industry">
+            {{basic.industry.length === 0?item:index === basic.industry.length -1?item:item+','}}
+          </span>
+          </div>
+
+        </el-descriptions-item>
+        <el-descriptions-item label-class-name="my-label" label="税号">{{ basic.taxno?basic.taxno:"--" }}</el-descriptions-item>
+
+        <el-descriptions-item label-class-name="my-label" label="法人">{{ basic.contact?basic.contact:"--" }}</el-descriptions-item>
+        <el-descriptions-item label-class-name="my-label" label="电话">{{ basic.telephone?basic.telephone:"--" }}</el-descriptions-item>
+        <el-descriptions-item label="省市县">{{ basic.province?basic.province + '-' + basic.city + '-' + basic.county:"--" }}</el-descriptions-item>
+        <el-descriptions-item label="详细地址">{{ basic.address?basic.address:"--" }}</el-descriptions-item>
         <el-descriptions-item label="上级企业">{{ basic.superiorenterprisename?basic.superiorenterprisename:"--" }}</el-descriptions-item>
-        <el-descriptions-item label="成交状态">{{ basic.tradingstatus?basic.tradingstatus:"--" }}</el-descriptions-item>
-        <el-descriptions-item label="合作状态">{{ basic.status?basic.status:"--" }}</el-descriptions-item>
-        <!-- <el-descriptions-item label="负责人">{{ basic.leader.length === 0?"--":basic.leader[0].name }}</el-descriptions-item> -->
-        <el-descriptions-item label="来源">{{ basic.source?basic.source:"--" }}</el-descriptions-item>
+        <el-descriptions-item label="客户来源">{{ basic.source?basic.source:"--" }}</el-descriptions-item>
         <el-descriptions-item label="所属公海">{{ basic.poolname?basic.poolname:"--" }}</el-descriptions-item>
-        <el-descriptions-item label="省市县">{{ basic.province?basic.province + '-' + basic.city + '-' + basic.county:"--" }}</el-descriptions-item>
-        <el-descriptions-item label="企业地址">{{ basic.address?basic.address:"--" }}</el-descriptions-item>
-        <el-descriptions-item label="企业税号">{{ basic.taxno?basic.taxno:"--" }}</el-descriptions-item>
+
+
+        <el-descriptions-item label="成交状态">
+          <span :style="tradingstatusStyle">{{ basic.tradingstatus?basic.tradingstatus:"--" }}</span>
+        </el-descriptions-item>
+        <el-descriptions-item label-class-name="my-label" label="成交次数">
+          {{ basic.contact_signnum === 0?0:basic.contact_signnum }}
+        </el-descriptions-item>
+        <el-descriptions-item label="合作状态">
+          <span :style="statusStyle">{{ basic.status?basic.status:"--" }}</span>
+        </el-descriptions-item>
+        <!-- <el-descriptions-item label="负责人">{{ basic.leader.length === 0?"--":basic.leader[0].name }}</el-descriptions-item> -->
+        <el-descriptions-item label-class-name="my-label" label="负责人">{{ length !== 0?data.leader[0].name:"--" }}</el-descriptions-item>
       </el-descriptions>
     </div>
 
@@ -25,17 +51,11 @@
       <el-descriptions :column="2" labelClassName="my-label" contentClassName="my-content" border>
         <div slot="title" class="my-label__title">系统信息</div>
         <el-descriptions-item label="创建人">{{ system.createby?system.createby:"--" }}</el-descriptions-item>
-        <el-descriptions-item label="创建时间">{{ system.createdate?system.createdate:"--" }}</el-descriptions-item>
-        <el-descriptions-item label="最近跟进人">{{ system.followby?system.followby:"--" }}</el-descriptions-item>
-        <el-descriptions-item label="最近跟进时间">{{ system.followdate?system.followdate:"--" }}</el-descriptions-item>
-        <el-descriptions-item label="成交状态">{{ system.tradingstatus?system.tradingstatus:"--" }}</el-descriptions-item>
-        <el-descriptions-item label="锁定状态" v-if="system.datastatus === 0">未锁定</el-descriptions-item>
-        <el-descriptions-item label="锁定状态" v-else-if="system.datastatus === 2">已锁定</el-descriptions-item>
-        <el-descriptions-item label="退回/回收原因">{{ system.returnreson?system.returnreson:"--" }}</el-descriptions-item>
+        <el-descriptions-item label="创建时间">{{ system.createdate?system.createdate:"--" }}</el-descriptions-item>m>
         <el-descriptions-item label="最近编辑人">{{ system.changeby?system.changeby:"--" }}</el-descriptions-item>
         <el-descriptions-item label="最近编辑时间">{{ system.changedate?system.changedate:"--" }}</el-descriptions-item>
+        <el-descriptions-item  label="作废原因">{{ system.returnreson?system.returnreson:"--" }}</el-descriptions-item>
         <el-descriptions-item label="转手次数">{{length !== 0?data.leader[0].leadernum === '0'?'0':data.leader[0].leadernum:'--' }}</el-descriptions-item>
-        <el-descriptions-item label="客户资料完善度">{{ system.percentage?system.percentage:"--" }}</el-descriptions-item>
       </el-descriptions>
     </div>
   </div>
@@ -49,7 +69,13 @@ export default {
     return {
       basic:[],
       system:[],
-      sa_customersid:""
+      sa_customersid:"",
+      tradingstatusStyle:{
+        color:''
+      },
+      statusStyle:{
+        color:''
+      }
     }
   },
   mounted() {
@@ -66,6 +92,45 @@ export default {
         },
       })
       this.basic = res.data
+      this.style(this.basic.tradingstatus)
+      this.styleStatus(this.basic.status)
+    },
+    style(val) {
+      let style = {}
+      switch (val) {
+        case '已成交':
+          style = {color:'#fa8c16'}
+          break;
+        case '未成交':
+          style = {color:'#3874f6'}
+          break;
+        case '多次成交':
+          style = {color:'#333333'}
+          break;
+        default:
+          break;
+      }
+      this.tradingstatusStyle.color = style.color
+      return style
+
+    },
+    styleStatus(val) {
+      let style = {}
+      switch (val) {
+        case '潜在':
+          style = {color:'#3874f6'}
+          break;
+        case '合作中':
+          style = {color:'#52c41a'}
+          break;
+        case '已终止':
+          style = {color:'#999999'}
+          break;
+        default:
+          break;
+      }
+      this.statusStyle.color = style.color
+      return style
 
     },
     /*系统信息*/

+ 0 - 4
src/HManagement/marketing2/agent/details/index.vue

@@ -195,10 +195,6 @@ export default {
           label:'经销商等级',
           value: this.mainData.grade
         },
-        {
-          label:'营销区域',
-          value: this.mainData.areaname
-        },
         {
           label:'企业名称',
           value: this.mainData.enterprisename

+ 6 - 3
src/HManagement/marketing2/agent/details/modules/field/add.vue

@@ -1,7 +1,7 @@
 <template>
   <div>
     <el-button size="mini" type="primary" @click="dialogFormVisible = true">授 权</el-button>
-    <el-dialog append-to-body :visible.sync="dialogFormVisible" width="500px">
+    <el-dialog append-to-body :visible.sync="dialogFormVisible" width="500px" @close="dialogFormVisible = false;$refs.form.resetFields()">
       <div slot="title" style="font-size: 15px">
         授权领域
       </div>
@@ -38,7 +38,7 @@
         </el-form>
       </el-row>
       <div class="dialog-footer">
-        <el-button size="small" @click="dialogFormVisible = false" class="normal-btn-width">取 消</el-button>
+        <el-button size="small" @click="dialogFormVisible = false;$refs.form.resetFields()" class="normal-btn-width">取 消</el-button>
         <el-button size="small" type="warning" @click="onSubmit" class="normal-btn-width btn-warning">确 定</el-button>
       </div>
     </el-dialog>
@@ -82,7 +82,10 @@ export default {
       salerParam: {
         "id":20221011144603,
         "content": {
-          sa_saleareaid:''
+          sa_saleareaid:'',
+          "where": {
+            "condition": ""
+          }
         }
       }
     }

+ 16 - 2
src/SDrpManagement/salerPrivatecustomer/detail/customerDetail.vue

@@ -9,7 +9,7 @@
         turnPageId="20221012164402"
         idname="sa_customersid"
         tags=""
-        :tabs="['详细信息','联系人信息','客户地址','开票信息','项目商机','报价单','线索']"
+        :tabs="['详细信息','联系人信息','客户地址','开票信息','项目商机','报价单','关联合同','账户余额','线索']"
         @pageChange="pageChange"
         @onEditSuccess="onEditSuccess">
       <div slot="tags">
@@ -44,6 +44,12 @@
         <quotedPrice :data="mainData"  v-if="flag"></quotedPrice>
       </div>
       <div slot="slot6" class="normal-panel">
+        <contract :data="mainData"  v-if="flag"></contract>
+      </div>
+      <div slot="slot7" class="normal-panel">
+        <accountMoney :data="mainData"  v-if="flag"></accountMoney>
+      </div>
+      <div slot="slot8" class="normal-panel">
         <followLeads :data="mainData"  v-if="flag"></followLeads>
       </div>
     </basicDetails>
@@ -68,6 +74,8 @@ import projectChange from './modules/projectChange/list'
 import quotedPrice from './modules/quotedPrice/list'
 import followLeads from './modules/followLeads/index'
 import toBack from "@/SDrpManagement/salerPrivatecustomer/detail/modules/operation/toBack";
+import contract from './modules/contract/index'
+import accountMoney from './modules/accountMoney/index'
 export default {
   name: "detail",
   data() {
@@ -107,7 +115,9 @@ export default {
     quotedPrice,
     followLeads,
     statusChange,
-    toBack
+    toBack,
+    contract,
+    accountMoney
   },
   watch:{
     mainData(val) {
@@ -217,6 +227,10 @@ export default {
           label:'负责人',
           value:this.mainData.leader.length === 0?"--":this.mainData.leader[0].name
         },
+        {
+          label:'归属经销商',
+          value:this.mainData.agentname
+        },
       ]
     },
     // 监听切换数据,上一页,下一页

+ 53 - 0
src/SDrpManagement/salerPrivatecustomer/detail/modules/accountMoney/index.vue

@@ -0,0 +1,53 @@
+<template>
+  <div>
+    <tableLayout :layout="tablecols" :data="list" :custom="true" height="calc(100vh - 405px)">
+      <template v-slot:customcol="scope">
+        <p>{{scope.column.data[scope.column.columnname]}}</p>
+      </template>
+    </tableLayout>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "index",
+  props:["data"],
+  data () {
+    return {
+      list:[],
+      param:{}
+    }
+  },
+  components:{
+  },
+  methods:{
+    async query_areascope () {
+      const res = await this.$api.requested({
+        "id": "20221009160003",
+        "version":1,
+        "content": {
+          "sys_enterpriseid":this.data.sys_enterpriseid
+        }
+      })
+      this.list = res.data
+    },
+  },
+  mounted () {
+    this.query_areascope()
+  },
+  watch:{
+    mainData (val) {
+      this.param = val
+      // this.query_areascope()
+    }
+  },
+  created () {
+    // 获取角色表结构
+    this.tablecols = this.tool.tabelCol(this.$route.name)['accountMoneyTable'].tablecols
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 121 - 0
src/SDrpManagement/salerPrivatecustomer/detail/modules/contract/index.vue

@@ -0,0 +1,121 @@
+<template>
+  <div>
+    <div>
+      <el-input style="width:200px;" placeholder="搜索" :suffix-icon="params.content.where.condition?params.content.where.condition.length > 0?'':'':'el-icon-search'" v-model="params.content.where.condition" @keyup.native.enter="listData(params.content.pageNumber = 1)" @clear="clearSearchValue" size="small" class="input-with-select inline-16 layout_search__panel" clearable>
+      </el-input>
+    </div>
+    <div style="margin-top: 15px">
+      <tableLayout :layout="tablecols" :data="list" :opwidth="200" :custom="true"  fixedName="operation" :height="tableHieght">
+        <template v-slot:customcol="scope">
+          <div v-if="scope.column.columnname === 'status'">
+            <span style="color:#3874f6" v-if="scope.column.data[[scope.column.columnname]] == '新建'">{{scope.column.data[[scope.column.columnname]]}}</span>
+            <span style="color:#52c41a" v-else-if="scope.column.data[[scope.column.columnname]] == '已提交'">{{scope.column.data[[scope.column.columnname]]}}</span>
+            <span style="color:#333333" v-else-if="scope.column.data[[scope.column.columnname]] == '审核'">{{scope.column.data[[scope.column.columnname]]}}</span>
+            <span style="color:#000000" v-else>{{scope.column.data[[scope.column.columnname]]}}</span>
+          </div>
+          <div v-else-if="scope.column.columnname === 'operation'">
+            <span>{{scope.column.data[scope.column.columnname]}}</span>
+          </div>
+          <p v-else>{{scope.column.data[scope.column.columnname]?scope.column.data[scope.column.columnname]:'--'}}</p>
+        </template>
+        <template v-slot:opreation="scope">
+          <!-- <edit :data="scope.data" class="inline-16" @editSuccess="onSuccess"></edit>
+           <delContact :data="scope.data" @delSuccess="onSuccess" class="inline-16"></delContact> -->
+          <el-button   type="text" size="mini" @click="goDetail(scope.data)">详 情</el-button>
+        </template>
+      </tableLayout>
+    </div>
+    <div style="margin-top:16px;text-align:right">
+      <el-pagination
+          background
+          small
+          @size-change="handleSizeChange"
+          @current-change="handleCurrentChange"
+          :current-page="currentPage"
+          :page-size="params.content.pageSize"
+          layout="total, prev, pager, next, jumper"
+          :total="total">
+      </el-pagination>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  name: "index",
+  props:["data"],
+  data(){
+    return {
+      tablecols:[],
+      tableHieght:600,
+      list:[],
+      total:0,
+      currentPage:0,
+      params:{
+        "content": {
+          "sys_enterpriseid": '',
+          "pageNumber": 1,
+          "pageSize": 20,
+          "where": {
+            "condition": "",
+            "tablefilter": {}
+          }
+        },
+        "id": 20230214163402,
+      }
+    }
+  },
+  methods:{
+    async listData(){
+      this.params.content.sys_enterpriseid = this.data.sys_enterpriseid
+      const res = await this.$api.requested(this.params)
+      this.list = res.data
+      this.total = res.total
+    },
+    handleSizeChange(val) {
+      // console.log(`每页 ${val} 条`);
+      this.params.content.pageSize = val
+      this.listData()
+    },
+    handleCurrentChange(val) {
+      // console.log(`当前页: ${val}`);
+      this.params.content.pageNumber = val
+      this.listData()
+    },
+    goDetail (data) {
+      let type
+      data.type == '项目'
+          ? data.typemx == '直销'
+              ? type = '直销项目' : type = '经销项目'
+          : type = data.type
+      JSON.parse(sessionStorage.getItem('module_info')).forEach(item1 => {
+        item1.modules.forEach(item2 => {
+          if(item2.systemmodulename == "合同管理") {
+            let route = this.$route
+            if (route.path !== '/contractDetail') {
+              this.oldRoute = {path:route.path,query:route.query}
+              this.$store.dispatch('setHistoryRouter',this.oldRoute)
+            }
+            sessionStorage.setItem('active_modules',JSON.stringify(item2))
+            this.$router.push({path:'/contractDetail',query:{id:data.sa_contractid,type:type}})
+            return
+          }
+        })
+      })
+    },
+    clearSearchValue(){
+      this.listData(this.params.content.pageNumber = 1)
+    }
+  },
+  mounted() {
+    this.listData()
+  },
+  created() {
+    this.tablecols = this.tool.tabelCol(this.$route.name).contractTable.tablecols
+  }
+}
+</script>
+
+<style scoped>
+
+</style>

+ 3 - 3
src/SDrpManagement/salerPrivatecustomer/index.vue

@@ -110,15 +110,15 @@
           </div>
         </div>
         <div v-else-if="scope.data.column.columnname === 'industry'">
-          <div v-if="scope.data.column.data.industry !== [] && scope.data.column.data.industry !== ''">
+          <span v-if="JSON.stringify(scope.data.column.data.industry) !== '[]' && scope.data.column.data.industry">
             <div v-for="item in scope.data.column.data.industry" :key="item.index"  style="float: left;margin-left: 5px;margin-bottom: 5px">
               <el-tag size="mini"  effect="dark">
                 <span>{{item}}</span>
               </el-tag>
             </div>
-          </div>
+          </span>
           <div v-else>
-           --
+            {{'--'}}
           </div>
         </div>
         <div v-else-if="scope.data.column.columnname === 'tradingstatus'">

+ 18 - 2
src/template/selectSaler/index.vue

@@ -2,7 +2,13 @@
   <div> 
     <el-dialog :visible.sync="visible" append-to-body width="50%">
       <div class="flex-align-center flex-between mt-10">
-        <el-input style="width:200px" size="small"  suffix-icon="el-icon-search" v-model="param.content.where.condition" placeholder="搜索" @keyup.enter.native="listData(param.content.pageNumber = 1)" @clear="listData(param.content.pageNumber = 1)" clearable></el-input>
+        <el-input style="width:200px;" placeholder="搜索"
+                  :suffix-icon="search?search.length > 0?'':'':'el-icon-search'"
+                  v-model="search"
+                  @keyup.native.enter="searchQuery"
+                  @clear="searchQuery"
+                  size="small" class="input-with-select inline-16 layout_search__panel" clearable>
+        </el-input>
       </div>
       <div>
         <el-table
@@ -22,6 +28,11 @@
             label="职位"
             width="180">
           </el-table-column>
+          <el-table-column
+              prop="areaname"
+              label="负责区域"
+              width="180">
+          </el-table-column>
           <el-table-column
             prop="phonenumber"
             label="手机号码">
@@ -69,7 +80,8 @@ export default {
       },
       tableData: [],
       total:0,
-      currentPage:0
+      currentPage:0,
+      search:''
     }
   },
   methods:{
@@ -93,6 +105,10 @@ export default {
     },
     selectRow (row) {
       this.$emit('selectRow',row)
+    },
+    searchQuery(){
+      this.customParam.content.where.condition = this.search
+      this.listData()
     }
   },
   created () {