Просмотр исходного кода

Merge remote-tracking branch 'origin/mergeBranch' into mergeBranch

qymljy 3 лет назад
Родитель
Сommit
baae3f2fa4
34 измененных файлов с 498 добавлено и 130 удалено
  1. 0 20
      src/Form/marketing2/agent/add.vue
  2. 0 17
      src/Form/marketing2/agent/edit.vue
  3. 1 0
      src/Form/marketing2/salerScope/add.vue
  4. 2 0
      src/HDrpManagement/BrandManage/component/saleclass/components/addTop.vue
  5. 6 0
      src/HDrpManagement/BrandManage/component/saleclass/components/edit.vue
  6. 29 2
      src/HDrpManagement/ProductMag/detail/index.vue
  7. 6 8
      src/HDrpManagement/collectionRule/components/add.vue
  8. 5 3
      src/HDrpManagement/collectionRule/components/edit.vue
  9. 1 1
      src/HDrpManagement/logistics/details/index.vue
  10. 1 1
      src/HDrpManagement/logistics/details/tabs/logisticsBox/logisticsBox.vue
  11. 4 4
      src/HDrpManagement/orderManage/index.vue
  12. 1 0
      src/HDrpManagement/productMoneyOdd/index.vue
  13. 2 2
      src/HDrpManagement/stock/index.vue
  14. 1 1
      src/HDrpManagement/stock/modules/add.vue
  15. 5 1
      src/HDrpManagement/stock/modules/edit.vue
  16. 15 8
      src/HManagement/marketing2/agent/area/list.vue
  17. 6 1
      src/HManagement/marketing2/agent/details/index.vue
  18. 3 3
      src/HManagement/marketing2/agent/details/modules/address/list.vue
  19. 3 3
      src/HManagement/marketing2/agent/details/modules/contact/list.vue
  20. 150 0
      src/HManagement/marketing2/agent/details/modules/field/add.vue
  21. 123 0
      src/HManagement/marketing2/agent/details/modules/field/area.vue
  22. 19 32
      src/HManagement/marketing2/agent/details/modules/field/index.vue
  23. 2 2
      src/HManagement/marketing2/agent/details/modules/saleclass/index.vue
  24. 3 3
      src/HManagement/marketing2/agent/details/modules/salescope/list.vue
  25. 26 9
      src/HManagement/marketing2/agent/index.vue
  26. 54 0
      src/HManagement/marketing2/customerFile/index.vue
  27. 1 1
      src/HManagement/marketing2/saler/area/detail/index.vue
  28. 1 1
      src/SDrpManagement/agentOrder/modules/productlist.vue
  29. 1 1
      src/SDrpManagement/salerToolBorrowing/index.vue
  30. 1 1
      src/SDrpManagement/toolBorrowing/detail/tabs/toolList.vue
  31. 1 1
      src/components/customBtn/index.vue
  32. 1 1
      src/components/financialInfo/index.vue
  33. 3 3
      src/components/financialInfo/modules/edit.vue
  34. 21 0
      src/router/HManagement.js

+ 0 - 20
src/Form/marketing2/agent/add.vue

@@ -90,22 +90,6 @@
               </el-select>
             </el-form-item>
           </el-col>
-          <el-col :span="12">
-            <el-form-item label="营销区域:" prop="sa_saleareaids">
-              <el-cascader
-                style="width:100%"
-                v-model="form.sa_saleareaids"
-                :options="arealist"
-                :props="{
-                  value:'sa_saleareaid',
-                  label:'areaname',
-                  children:'subarea'
-                }"
-                :show-all-levels="false"
-                @change="onCascaderChange">
-              </el-cascader>
-            </el-form-item>
-          </el-col>
           <el-col :span="12">
             <el-form-item label="是否服务经销商:" prop="isservice">
               <el-checkbox v-model="form.isservice" :true-label="1" :false-label="0"></el-checkbox>
@@ -138,9 +122,6 @@ export default {
         agentnum: [
           { required: true, message: '请输入经销商编号', trigger: 'blur' },
         ],
-        sa_saleareaids: [
-          { required: true, message: '请选择营销区域', trigger: 'change' },
-        ],
         type: [
           { required: true, message: '请选择经销商类型', trigger: 'change' },
         ],
@@ -157,7 +138,6 @@ export default {
         "agentnum": "",
         "signdate": "",
         "grade": "",
-        "sa_saleareaid": '',
         "sys_enterpriseid": '',
         "sa_saleareaids": [
 

+ 0 - 17
src/Form/marketing2/agent/edit.vue

@@ -103,22 +103,6 @@
                 </el-select>
               </el-form-item>
             </el-col> -->
-            <el-col :span="12">
-              <el-form-item label="营销区域" prop="sa_saleareaids">
-                <el-cascader
-                  style="width:100%"
-                  v-model="form.sa_saleareaids"
-                  :options="arealist"
-                  :props="{
-                    value:'sa_saleareaid',
-                    label:'areaname',
-                    children:'subarea'
-                  }"
-                  :show-all-levels="false"
-                  @change="onCascaderChange">
-                </el-cascader>
-              </el-form-item>
-            </el-col>
             <el-col :span="12">
             <el-form-item label="是否服务经销商:" prop="isservice">
                 <el-checkbox v-model="form.isservice" :true-label="1" :false-label="0"></el-checkbox>
@@ -168,7 +152,6 @@ export default {
         "agentnum": "",
         "signdate": "",
         "grade": "",
-        "sa_saleareaid": '',
         "sys_enterpriseid": '',
         "sa_saleareaids": [
 

+ 1 - 0
src/Form/marketing2/salerScope/add.vue

@@ -66,6 +66,7 @@ export default {
       
       this.tool.showMessage(res,()=>{
         this.dialogVisible = false
+        this.value = ''
         this.$emit('onSuccess')
       })
     }

+ 2 - 0
src/HDrpManagement/BrandManage/component/saleclass/components/addTop.vue

@@ -45,6 +45,8 @@ export default {
       ruleForm: {
         "itemclassnum":'',
         "itemclassname":'',
+        "istool":'',
+        "ishide":''
       },
       rules:{
         itemclassname: [

+ 6 - 0
src/HDrpManagement/BrandManage/component/saleclass/components/edit.vue

@@ -20,6 +20,10 @@
         <el-form-item label="营销类别编号" prop="itemclassnum">
           <el-input v-model="ruleForm.itemclassnum" :disabled="type!='add'" size="small" placeholder="请输入营销类别编号"></el-input>
         </el-form-item>
+        <el-form-item>
+          <el-checkbox v-model="ruleForm.istool" :true-label="1" :false-label="0">是否工具</el-checkbox>
+          <el-checkbox v-model="ruleForm.ishide" :true-label="1" :false-label="0">是否隐藏</el-checkbox>
+        </el-form-item>
       </el-form>
       <span slot="footer" class="dialog-footer">
         <div>
@@ -42,6 +46,8 @@ export default {
       ruleForm: {
         "itemclassnum":'',
         "itemclassname":'',
+        "istool":'',
+        "ishide":''
         // "itemclassfullname":'',
       },
       rules:{

+ 29 - 2
src/HDrpManagement/ProductMag/detail/index.vue

@@ -17,12 +17,38 @@
       <div slot="tags">
       </div>
       <div slot="customOperation" >
+        <customBtn 
+          btnName="审核"
+          message="确认审核当前商品吗?"
+          idName="20220923153902"
+          keyName="itemids"
+          :id="[+$route.query.id]"
+          :paramData="[{key:'status',value:1}]"
+          @onSuccess="queryMainData($route.query.id)"
+          class="inline-16"
+          v-if="tool.checkAuth($route.name,'toExamine') && mainData.status == '新建'"
+        />
+        <customBtn 
+          btnName="反审"
+          message="确认反审当前商品吗?"
+          idName="20220923153902"
+          keyName="itemids"
+          :id="[+$route.query.id]"
+          :paramData="[{key:'status',value:0}]"
+          @onSuccess="queryMainData($route.query.id)"
+          class="inline-16"
+          v-if="tool.checkAuth($route.name,'toExamine') && mainData.status == '审核'"
+        />
       </div>
       <div slot="slot0" >
         <detail_data :basic="mainData"></detail_data>
       </div>
       <div slot="slot1">
-        <saleClass :data="mainData"></saleClass>
+        <saleClass ref="saleClass" :data="mainData">
+          <template v-slot:addClass="scope">
+            <addClass v-if="tool.checkAuth($route.name,'salerClass')" :data="scope.data" @onSuccess="$refs.saleClass.listData()"/>
+          </template>
+        </saleClass>
       </div>
       <div slot="slot2">
         <productPrice ></productPrice>
@@ -35,6 +61,7 @@
 import detail_data from './modules/detailedData'
 import saleClass from '../modules/saleClass.vue'
 import productPrice from '../modules/productPrice'
+import addClass from '../modules/addClass'
 export default {
   name: "index",
   data() {
@@ -43,7 +70,7 @@ export default {
       mainAreaData:{}
     }
   },
-  components:{detail_data,saleClass,productPrice},
+  components:{detail_data,saleClass,productPrice,addClass},
   methods: {
     async queryMainData(id) {
       const res = await this.$api.requested({

+ 6 - 8
src/HDrpManagement/collectionRule/components/add.vue

@@ -3,7 +3,7 @@
     <el-button size="mini" type="primary" @click="dialogFormVisible = true">新 建</el-button>
     <el-dialog title="新建收款条件" append-to-body :visible.sync="dialogFormVisible" width="40%" @close="onClose">
       <el-row :gutter="20">
-        <el-form :model="form" :rules="rules" ref="form" label-width="110px" label-position="right" size="mini">
+        <el-form :model="form" :rules="rules" ref="form" label-width="140px" label-position="right" size="mini">
           <el-col :span="24">
             <el-form-item label="账期依据" prop="point">
               <el-select class="width-240" v-model="form.point" placeholder="请选择账期依据">
@@ -14,8 +14,8 @@
             </el-form-item>
           </el-col>
           <el-col :span="24" v-if="form.point == '订单审核'">
-            <el-form-item label="立账额度比例" prop="amountrate">
-              <el-input v-model="form.amountrate" placeholder="请输入立账额度比例" @change="amountrateChange(form.amountrate)"></el-input>
+            <el-form-item label="立账额度比例(%)" prop="amountrate">
+              <el-input v-model="form.amountrate" placeholder="请输入立账额度比例(%)"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="24">
@@ -48,10 +48,10 @@ export default {
   name: "add",
   data(){
     var NumberSize = (rule, value, callback) => {
-      if (+value >= 0 && +value <= 1) {
+      if (+value >= 0 && +value <= 100) {
         callback()
       } else {
-        return callback(new Error('额度比率范围(0-1)'));
+        return callback(new Error('额度比率范围(0-100)'));
       }
     }
     return {
@@ -89,6 +89,7 @@ export default {
       console.log(this.form)
       this.$refs['form'].validate(async (valid) => {
         if (!valid) return false
+        this.form.amountrate = (this.form.amountrate /100).toFixed(4)
         const res = await this.$api.requested({
           "id": "20230110095903",
           "version":1,
@@ -101,9 +102,6 @@ export default {
         })
       })
     },
-    amountrateChange(val){
-      this.form.amountrate = Math.round(val *100)/100
-    },
     onClose(){
       this.$refs['form'].resetFields();
       this.dialogFormVisible = false

+ 5 - 3
src/HDrpManagement/collectionRule/components/edit.vue

@@ -3,7 +3,7 @@
     <el-button size="mini" type="primary" @click="editBtn">编 辑</el-button>
     <el-dialog title="编辑收款条件" append-to-body :visible.sync="dialogFormVisible" width="40%">
       <el-row :gutter="20">
-        <el-form :model="form" :rules="rules" ref="form" label-width="110px" label-position="right" size="mini">
+        <el-form :model="form" :rules="rules" ref="form" label-width="140px" label-position="right" size="mini">
           <el-col :span="24">
             <el-form-item label="账期依据" prop="point">
               <el-select class="width-240" v-model="form.point" placeholder="请选择账期依据">
@@ -49,10 +49,10 @@ export default {
   props:['data'],
   data(){
     var NumberSize = (rule, value, callback) => {
-      if (+value >= 0.1 && +value <= 1) {
+      if (+value >= 0 && +value <= 100) {
         callback()
       } else {
-        return callback(new Error('额度比率范围(0.1-1)'));
+        return callback(new Error('额度比率范围(0-100)'));
       }
     }
     return {
@@ -89,11 +89,13 @@ export default {
     editBtn () {
       this.dialogFormVisible = true
       this.form = Object.assign({},this.form,this.data)
+      this.form.amountrate = this.form.amountrate * 100
     },
     onSubmit(){
       console.log(this.form)
       this.$refs['form'].validate(async (valid) => {
         if (!valid) return false
+        this.form.amountrate = (this.form.amountrate /100).toFixed(4)
         const res = await this.$api.requested({
           "id": "20230110095903",
           "version":1,

+ 1 - 1
src/HDrpManagement/logistics/details/index.vue

@@ -28,7 +28,7 @@
           <dismx ref="dismx"></dismx>
         </div>
         <div  slot="slot2">
-          <addBox class="mt-10" @onSuccess="onBoxSuccess"></addBox>
+          <addBox v-if="tool.checkAuth($route.name,'boxInfo')" class="mt-10" @onSuccess="onBoxSuccess"></addBox>
           <boxlist ref="boxlist"></boxlist>
         </div>
         <div  slot="slot3">

+ 1 - 1
src/HDrpManagement/logistics/details/tabs/logisticsBox/logisticsBox.vue

@@ -26,7 +26,7 @@
               title="确定删除吗?"
               @confirm="deleteRow(scope.row)"
             >
-              <el-button type="text" size="small" slot="reference">删 除</el-button>
+              <el-button v-if="tool.checkAuth($route.name,'boxInfo')"  type="text" size="small" slot="reference">删 除</el-button>
             </el-popconfirm>
           </template>
         </el-table-column>

+ 4 - 4
src/HDrpManagement/orderManage/index.vue

@@ -47,7 +47,7 @@
         </div>
         <div class="label_center mt-10">
           <p class="search__label">核销状态:</p>
-          <el-select v-model="type" clearable style="margin-right:10px" size="small" placeholder="请选择核销状态" @change="$refs.basicLayout.param.content.pageNumber = 1 ;$refs.basicLayout.param.content.where.status = status;$refs.basicLayout.listData()">
+          <el-select v-model="hexiaostatus" clearable style="margin-right:10px" size="small" placeholder="请选择核销状态" @change="$refs.basicLayout.param.content.pageNumber = 1 ;$refs.basicLayout.param.content.where.status = status;$refs.basicLayout.listData()">
             <el-option label="已核销" value="已核销"></el-option>
             <el-option label="部分核销" value="部分核销"></el-option>
             <el-option label="未核销" value="未核销"></el-option>
@@ -55,7 +55,7 @@
         </div>
         <div class="label_center mt-10">
           <p class="search__label">开票状态:</p>
-          <el-select v-model="type" clearable style="margin-right:10px" size="small" placeholder="请选择状态" @change="$refs.basicLayout.param.content.pageNumber = 1 ;$refs.basicLayout.param.content.where.status = status;$refs.basicLayout.listData()">
+          <el-select v-model="kaipiaostatus" clearable style="margin-right:10px" size="small" placeholder="请选择状态" @change="$refs.basicLayout.param.content.pageNumber = 1 ;$refs.basicLayout.param.content.where.status = status;$refs.basicLayout.listData()">
             <el-option label="已开票" value="已开票"></el-option>
             <el-option label="部分开票" value="部分开票"></el-option>
             <el-option label="未开票" value="未开票"></el-option>
@@ -63,14 +63,14 @@
         </div>
         <div class="label_center">
           <p class="search__label">是否退货:</p>
-          <el-select v-model="type" clearable style="margin-right:10px" size="small" placeholder="请选择退货状态" @change="$refs.basicLayout.param.content.pageNumber = 1 ;$refs.basicLayout.param.content.where.status = status;$refs.basicLayout.listData()">
+          <el-select v-model="isback" clearable style="margin-right:10px" size="small" placeholder="请选择退货状态" @change="$refs.basicLayout.param.content.pageNumber = 1 ;$refs.basicLayout.param.content.where.status = status;$refs.basicLayout.listData()">
             <el-option label="是" value="1"></el-option>
             <el-option label="否" value="0"></el-option>
           </el-select>
         </div>
         <div class="label_center">
           <p class="search__label">是否变更:</p>
-          <el-select v-model="type" clearable style="margin-right:10px" size="small" placeholder="请选择变更状态" @change="$refs.basicLayout.param.content.pageNumber = 1 ;$refs.basicLayout.param.content.where.status = status;$refs.basicLayout.listData()">
+          <el-select v-model="ischange" clearable style="margin-right:10px" size="small" placeholder="请选择变更状态" @change="$refs.basicLayout.param.content.pageNumber = 1 ;$refs.basicLayout.param.content.where.status = status;$refs.basicLayout.listData()">
             <el-option label="未变更" value="未变更"></el-option>
             <el-option label="已变更" value="已变更"></el-option>
           </el-select>

+ 1 - 0
src/HDrpManagement/productMoneyOdd/index.vue

@@ -87,6 +87,7 @@ export default {
         }
       })     
       this.tool.showMessage(res,() => {
+        this.$refs.basicLayout.listData()
         this.$refs.import.dialogUploadVisible = false
       })
     }

+ 2 - 2
src/HDrpManagement/stock/index.vue

@@ -7,7 +7,7 @@
         add:'HDrpManagement/stock/modules'
       }"
       tableName="stockTable" 
-      idName="stockids" 
+      idName="stockid" 
       :apiId="{query:20230104094604,del:20230104095004}"
       :detailPath="null">
       <div slot="custom"></div>
@@ -19,7 +19,7 @@
         </div>
       </template>
       <template v-slot:tbOpreation="scope">
-        <edit :data="scope.data.data"></edit>
+        <edit :data="scope.data.data" @onSuccess="$refs.basicLayout.listData()"></edit>
       </template>
     </basicLayout>
   </div>

+ 1 - 1
src/HDrpManagement/stock/modules/add.vue

@@ -65,7 +65,7 @@ export default {
             "id": 20230104094704,
             "content": this.form
           })
-          this.tool.showMessage(()=>{
+          this.tool.showMessage(res,()=>{
             this.drawer = false
             this.$emit('onSuccess')
           })

+ 5 - 1
src/HDrpManagement/stock/modules/edit.vue

@@ -69,8 +69,12 @@ export default {
             "id": 20230104094704,
             "content": this.form
           })
-          this.tool.showMessage(()=>{
+          console.log(res);
+          
+          this.tool.showMessage(res,()=>{
             this.drawer = false
+            console.log('触发');
+            
             this.$emit('onSuccess')
           })
         } else {

+ 15 - 8
src/HManagement/marketing2/agent/area/list.vue

@@ -1,5 +1,8 @@
 <template>
   <div class="tree-panel">
+    <div style="margin-bottom:10px;text-align:left">
+      <el-button :type="btnType" size="mini" @click="$emit('onClick','isAll')">全部区域</el-button>
+    </div>
     <el-tree
       ref="treeRef"
       :data="arealist"
@@ -29,7 +32,9 @@ export default {
   data () {
     return {
       arealist:[],
-      currentKey:null
+      currentKey:null,
+      btnType:'primary',
+      currentData:''
     }
   },
   methods:{
@@ -42,7 +47,6 @@ export default {
       })
       // 数据格式转换成elementui-tree所需的格式
       this.arealist = this.createMenu(res.data)
-      callback()
     },
     createMenu (array) {
       var that = this
@@ -73,6 +77,7 @@ export default {
       return arr
     },
     handleClick (row,node,VueComponent) {
+      this.currentData = node.data
       this.$emit('onClick',node.data)
     },
     setCurrentKey (id) {
@@ -83,12 +88,14 @@ export default {
     },
   },
   mounted () {
-    this.query_arealist(()=>{
-      if (this.noDefaultData === undefined) {
-        this.$emit('onClick',this.arealist[0])
-        this.setCurrentKey(this.arealist[0].sa_saleareaid)
-      }
-    })
+    // this.query_arealist(()=>{
+    //   if (this.noDefaultData === undefined) {
+    //     this.$emit('onClick',this.arealist[0])
+    //     this.setCurrentKey(this.arealist[0].sa_saleareaid)
+    //   }
+    // })
+    this.$emit('onClick','isAll')
+    this.query_arealist()
   }
 }
 

+ 6 - 1
src/HManagement/marketing2/agent/details/index.vue

@@ -43,7 +43,7 @@
         />
     </div>
     <div slot="slot0">
-      <el-button size="small" type="primary" @click="createAgentAccount" class="normal-margin">创建团队账号</el-button>
+      <el-button v-if="tool.checkAuth($route.name,'agentTeamTable')" size="small" type="primary" @click="createAgentAccount" class="normal-margin">创建团队账号</el-button>
       <tableLayout :layout="tablecols" :data="mainData.hrs" :custom="true" height="calc(100vh - 425px)">
         <template v-slot:customcol="scope">
           <div v-if="scope.column.columnname === 'name'">
@@ -108,6 +108,11 @@ export default {
       tablecols:[]
     }
   },
+  provide () {
+    return {
+      detailInfo: () => this.mainData
+    }
+  },
   components:{
     salescope,
     SaleClass,

+ 3 - 3
src/HManagement/marketing2/agent/details/modules/address/list.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <addContact @onAddSuccess="listData" :mainData="mainData"></addContact>
+    <addContact v-if="tool.checkAuth($route.name,'addressMag')" @onAddSuccess="listData" :mainData="mainData"></addContact>
     <tableLayout :layout="tablecols" :data="list" :custom="true" height="calc(100vh - 455px)" fixedName="operation">
       <template v-slot:customcol="scope">
         <p v-if="scope.column.columnname === 'province'">
@@ -9,11 +9,11 @@
         <p v-else>{{scope.column.data[scope.column.columnname]}}</p>
       </template>
        <template v-slot:opreation="scope">
-        <edit-contact :mainData="mainData" :row="scope.data" @onAddSuccess="listData" class="inline-16"></edit-contact>
+        <edit-contact v-if="tool.checkAuth($route.name,'addressMag')" :mainData="mainData" :row="scope.data" @onAddSuccess="listData" class="inline-16"></edit-contact>
         <el-popconfirm
           title="确定删除吗?"
           @confirm="deleteContacts(scope.data)">
-          <el-button size="small" type="text" slot="reference">删 除</el-button>
+          <el-button v-if="tool.checkAuth($route.name,'addressMag')" size="small" type="text" slot="reference">删 除</el-button>
         </el-popconfirm>
       </template>
     </tableLayout>

+ 3 - 3
src/HManagement/marketing2/agent/details/modules/contact/list.vue

@@ -1,6 +1,6 @@
 <template>
   <div>
-    <addContact @onAddSuccess="listData" :mainData="mainData"></addContact>
+    <addContact v-if="tool.checkAuth($route.name,'contactMag')" @onAddSuccess="listData" :mainData="mainData"></addContact>
     <tableLayout :layout="tablecols" :data="list" :custom="true" height="calc(100vh - 455px)" fixedName="operation">
       <template v-slot:customcol="scope">
         <p v-if="scope.column.columnname === 'province'">
@@ -9,11 +9,11 @@
         <p v-else>{{scope.column.data[scope.column.columnname]}}</p>
       </template>
        <template v-slot:opreation="scope">
-        <edit-contact class="inline-16" :mainData="mainData" :row="scope.data" @onAddSuccess="listData"></edit-contact>
+        <edit-contact v-if="tool.checkAuth($route.name,'contactMag')" class="inline-16" :mainData="mainData" :row="scope.data" @onAddSuccess="listData"></edit-contact>
         <el-popconfirm
           title="确定删除吗?"
           @confirm="deleteContacts(scope.data)">
-          <el-button size="small" type="text" slot="reference">删 除</el-button>
+          <el-button size="small" v-if="tool.checkAuth($route.name,'contactMag')" type="text" slot="reference">删 除</el-button>
         </el-popconfirm>
       </template>
     </tableLayout>

+ 150 - 0
src/HManagement/marketing2/agent/details/modules/field/add.vue

@@ -0,0 +1,150 @@
+<template>
+  <div>
+    <el-button size="mini" type="primary" @click="dialogFormVisible = true">授 权</el-button>
+    <el-dialog append-to-body :visible.sync="dialogFormVisible" width="500px">
+      <div slot="title" style="font-size: 15px">
+        授权领域
+      </div>
+      <el-row :gutter="20">
+        <el-form :model="form" :rules="rules" ref="form" label-width="90px" label-position="right" size="mini">
+          <el-col :span="24">
+            <el-form-item label="营销区域" prop="label">
+              <Tree ref="tree" @onClick="onClick">
+                <el-input slot="input" type="text" placeholder="请选择营销区域" v-model="form.label" @focus="$refs.tree.dialogFormVisible=true"></el-input>
+              </Tree>
+            </el-form-item>
+          </el-col>
+          <el-col :span="24" v-show="form.label">
+            <el-form-item label="业务员" prop="name">
+              <selectSaler :customParam="salerParam" ref="saler" @selectRow="selectRow">
+                <el-input slot="input" type="text" placeholder="请选择业务员" v-model="form.name" @focus="$refs.saler.visible=true"></el-input>
+              </selectSaler>
+            </el-form-item>
+          </el-col>
+          <el-col :span="24">
+            <el-form-item label="领域" prop="tradefield">
+              <el-select placeholder="请选择领域" v-model="form.tradefield" @change="tradefieldChange">
+                <el-option v-for="item in field" :key="item.rowindex" :value="item.value" :label="item.value"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :span="24">
+            <el-form-item label="领域明细" prop="tradefieldmx">
+              <el-select :disabled="field.fieldmx > 0" placeholder="请选择领域明细" v-model="form.tradefieldmx">
+                <el-option v-for="item in fieldmx" :key="item" :value="item" :label="item"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+        </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" type="warning" @click="onSubmit" class="normal-btn-width btn-warning">确 定</el-button>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import Tree from './area'
+import selectSaler from '@/template/selectSaler/index'
+export default {
+  name: "add",
+  components:{Tree,selectSaler},
+  inject:['detailInfo'],
+  data(){
+    return {
+      dialogFormVisible:false,
+      field:[],
+      fieldmx:[],
+      form:{
+        "sys_enterprise_tradefieldid": 0,//0新增,大于0更新
+        "sys_enterpriseid": '',
+        "tradefield": "",
+        "sa_saleareaid": '',
+        "sa_agentsid":'',
+        "label":'',
+        "hrid": '',
+        "name":'',
+        "tradefieldmx": ""
+      },
+      rules:{
+        label:[
+          { required: true, message: '请选择营销区域', trigger: 'change'},
+        ],
+        name:[
+          { required: true, message: '请选择业务员', trigger: 'change'}
+        ],
+        tradefield:[
+          { required: true, message: '请选择领域', trigger: 'change'}
+        ]
+      },
+      salerParam: {
+        "id":20221011144603,
+        "content": {
+          sa_saleareaid:''
+        }
+      }
+    }
+  },
+  created () {
+    this.fieldList()
+  },
+  methods:{
+    onClick (data) {
+      this.form.sa_saleareaid = data.sa_saleareaid
+      this.form.label = data.label
+      this.salerParam.content.sa_saleareaid = data.sa_saleareaid
+      console.log(data);
+      
+      this.$nextTick(() => {
+        this.$refs.saler.listData()
+      })
+    },
+    selectRow (data) {
+      this.form.name = data.name
+      this.form.hrid = data.hrid
+      this.$refs.saler.visible = false
+      console.log(data);
+      
+    },
+    async fieldList () {
+      const res = await this.$store.dispatch('optiontypeselect','tradefield')
+      this.field = res.data
+      console.log(this.field);
+    },
+    tradefieldChange (data) {
+      this.form.tradefieldmx = ''
+      this.fieldmx = this.field.filter(item => item.value == data)[0].subvalues
+      console.log(this.fieldmx);
+      
+    },
+    onSubmit(){
+      this.$refs['form'].validate(async (valid) => {
+        if (!valid) return false
+        this.form.sa_agentsid = this.$route.query.id
+        this.form.sys_enterpriseid = this.detailInfo().sys_enterpriseid
+        const res = await this.$api.requested({
+          "id": "20221223141602",
+          "version":1,
+          "content": this.form
+        })
+        this.tool.showMessage(res,()=>{
+          this.$emit('onSuccess')
+          this.$refs['form'].resetFields();
+          this.dialogFormVisible = false
+        })
+      })
+    }
+  }
+}
+</script>
+
+<style scoped>
+.dialog-footer {
+  margin-top: 0;
+}
+.el-select {
+  width: 100% !important;
+}
+</style>

+ 123 - 0
src/HManagement/marketing2/agent/details/modules/field/area.vue

@@ -0,0 +1,123 @@
+<template>
+  <div class="tree-panel">
+    <el-dialog append-to-body :visible.sync="dialogFormVisible" width="500px">
+      <div slot="title" style="font-size: 15px">
+        选择营销区域
+      </div>
+      <el-tree
+        ref="treeRef"
+        :data="arealist"
+        node-key="sa_saleareaid"
+        :current-node-key="currentKey"
+        default-expand-all
+        highlight-current
+        :expand-on-click-node="false"
+        @node-click="handleClick">
+        <span class="custom-tree-node" slot-scope="{ node, data }">
+          <span>{{ node.label }}</span>
+          <span>
+            <slot name="operation" :data="data"></slot>
+          </span>
+        </span>
+      </el-tree>
+    </el-dialog>
+    <slot name="input" />
+  </div>
+</template>
+
+<script>
+
+
+export default {
+  props:['noDefaultData'],
+  components:{
+  },
+  data () {
+    return {
+      arealist:[],
+      currentKey:null,
+      dialogFormVisible:false
+    }
+  },
+  methods:{
+    onSubmit () {
+
+    },
+    async query_arealist (callback) {
+      const res = await this.$api.requested({
+        "classname": "webmanage.sale.salearea.salearea",
+        "method": "query_area",
+        "content": {
+        }
+      })
+      // 数据格式转换成elementui-tree所需的格式
+      this.arealist = this.createMenu(res.data)
+      callback()
+    },
+    createMenu (array) {
+      var that = this
+      let arr = []
+      function convertToElementTree(node) {
+        // 新节点
+        var elNode = {
+          label: node["areaname"],
+          remarks:node["remarks"],
+          isused:node["isused"],
+          sa_saleareaid:node['sa_saleareaid'],
+          parentid:node['parentid'],
+          children: []
+        }
+          
+        if (node.subarea && node.subarea.length > 0) {
+          // 如果存在子节点
+          for (var index = 0; index < node.subarea.length; index++) {
+          // 遍历子节点, 把每个子节点看做一颗独立的树, 传入递归构造子树, 并把结果放回到新node的children中
+          elNode.children.push(convertToElementTree(node.subarea[index]));
+          }
+        }
+        return elNode;
+      }
+      array.forEach((element) => {
+        arr.push(convertToElementTree(element))
+      });
+      return arr
+    },
+    handleClick (row,node,VueComponent) {
+      this.$emit('onClick',node.data)
+      this.dialogFormVisible = false
+    },
+    setCurrentKey (id) {
+      this.currentKey = id
+      this.$nextTick(() => {
+        this.$refs['treeRef'].setCurrentKey(this.currentKey)
+      })
+    },
+  },
+  mounted () {
+    this.query_arealist(()=>{
+      if (this.noDefaultData === undefined) {
+        // this.$emit('onClick',this.arealist[0])
+        // this.setCurrentKey(this.arealist[0].sa_saleareaid)
+      }
+    })
+  }
+}
+
+</script>
+<style>
+.tree-panel .el-tree {
+}
+.custom-tree-node {
+  flex: 1;
+  display: flex;
+  align-items: center;
+  justify-content: space-between;
+  font-size: 14px;
+  padding-right: 8px;
+}
+</style>
+<style scoped>
+.tree-panel{
+  font-size: 14px;
+}
+</style>

+ 19 - 32
src/HManagement/marketing2/agent/details/modules/field/index.vue

@@ -1,28 +1,6 @@
 <template>
     <div>
-      <el-button class="normal-margin" size="small" type="primary" @click="fieldList">授权领域</el-button>
-      <el-dialog
-        title="授权领域"
-        :visible.sync="dialogVisible"
-        width="400px"
-        append-to-body>
-        <el-table
-          :data="field"
-          style="width: 100%"
-          size="small">
-          <el-table-column
-            prop="value"
-            label="领域">
-          </el-table-column>
-          <el-table-column
-            label="操作"
-            width="90">
-            <template slot-scope="scope">
-              <el-button type="text" size="mini" @click="authField(scope.row)">授权</el-button>
-            </template>
-          </el-table-column>
-        </el-table>
-      </el-dialog>
+      <add v-if="tool.checkAuth($route.name,'areaAuth')" @onSuccess="alreadyAuthField" class="mt-10" />
       <el-table
         :data="alfield"
         style="width: 100%"
@@ -30,8 +8,19 @@
         border>
         <el-table-column
           prop="tradefield"
-          label="已授权领域"
-          width="120">
+          label="授权领域">
+        </el-table-column>
+        <el-table-column
+          prop="tradefieldmx"
+          label="领域明细">
+        </el-table-column>
+        <el-table-column
+          prop="name"
+          label="业务员">
+        </el-table-column>
+        <el-table-column
+          prop="areaname"
+          label="营销区域">
         </el-table-column>
         <el-table-column
           label="操作">
@@ -39,7 +28,7 @@
             <el-popconfirm
               title="确定删除吗?"
               @confirm="deleteField(scope.row)">
-              <el-button slot="reference" type="text" size="mini">删除</el-button>
+              <el-button v-if="tool.checkAuth($route.name,'areaAuth')" slot="reference" type="text" size="mini">删除</el-button>
             </el-popconfirm>
           </template>
         </el-table-column>
@@ -47,11 +36,12 @@
     </div>
 </template>
 <script>
+import add from './add'
   export default {
+    components: {add},
     props:['data'],
     data () {
       return {
-        field:[],
         alfield:[],
         dialogVisible:false,
         param:{
@@ -68,11 +58,6 @@
       }
     },
     methods:{
-      async fieldList () {
-        this.dialogVisible = true
-        const res = await this.$store.dispatch('optiontypeselect','tradefield')
-        this.field = res.data
-      },
       async authField (row) {
         const res = await this.$api.requested({
           "id":20221223141602,
@@ -90,6 +75,8 @@
         this.param.content.sys_enterpriseid = this.data.sys_enterpriseid
         const res = await this.$api.requested(this.param)
         this.alfield = res.data
+        console.log(res.data);
+        
       },
       async deleteField (row) {
         const res = await this.$api.requested({

+ 2 - 2
src/HManagement/marketing2/agent/details/modules/saleclass/index.vue

@@ -1,9 +1,9 @@
 <template>
   <div>
-    <add-sale-class class="normal-margin" :data="data" @addSuccess="getClassList" v-if="tool.checkAuth($route.name,'add_saleClass') "/>
+    <add-sale-class class="normal-margin" :data="data" @addSuccess="getClassList" v-if="tool.checkAuth($route.name,'salerClass') "/>
     <tableLayout  :layout="tablecols" :data="saleClassList" :custom="false" height="calc(100vh - 405px)" fixedName="operation">
       <template v-slot:opreation="scope">
-        <Del v-if="tool.checkAuth($route.name,'delete')" :id="scope.data.sys_enterprise_saleclassid" @onSuccess="getClassList"/>
+        <Del v-if="tool.checkAuth($route.name,'salerClass')" :id="scope.data.sys_enterprise_saleclassid" @onSuccess="getClassList"/>
       </template>
     </tableLayout>
   </div>

+ 3 - 3
src/HManagement/marketing2/agent/details/modules/salescope/list.vue

@@ -1,13 +1,13 @@
 <template>
   <div>
-    <add v-if="tool.checkAuth($route.name,'update') && !detail" class="normal-margin" @onSuccess="onSuccess"></add>
+    <add v-if="tool.checkAuth($route.name,'salerArea') && !detail" class="normal-margin" @onSuccess="onSuccess"></add>
     <tableLayout :layout="tablecols" :data="list" :custom="true" height="calc(100vh - 455px)">
       <template v-slot:customcol="scope">
         <p>{{scope.column.data[scope.column.columnname]}}</p>
       </template>
       <template v-slot:opreation="scope">
-        <edit v-if="tool.checkAuth($route.name,'update')" :data="scope.data" @onSuccess="onSuccess"></edit>
-        <ondel v-if="tool.checkAuth($route.name,'update')" :data="scope.data" @onSuccess="onSuccess"></ondel>
+        <edit v-if="tool.checkAuth($route.name,'salerArea')" :data="scope.data" @onSuccess="onSuccess"></edit>
+        <ondel v-if="tool.checkAuth($route.name,'salerArea')" :data="scope.data" @onSuccess="onSuccess"></ondel>
       </template>
     </tableLayout>
   </div>

+ 26 - 9
src/HManagement/marketing2/agent/index.vue

@@ -13,7 +13,7 @@
         :apiId="{query:20221011144903,del:20221011145003}"
         :autoQuery="false"
         :options="options"
-        @listData="list">
+        @listCreate="list">
         <div slot="custom">
           <div class="label_center">
             <span class="search_label">状态: </span>
@@ -55,6 +55,7 @@ import addArea from './area/modules/add_area'
 import editArea from './area/modules/edit_area'
 import startArea from './area/modules/start_area'
 import delArea from './area/modules/del_area'
+import { log } from '@antv/g2plot/lib/utils'
 
 export default {
   components:{
@@ -72,6 +73,11 @@ export default {
       statusList:[]
     }
   },
+  provide () {
+    return {
+      areaInfo:() => this.areaInfo
+    }
+  },
   created () {
     this.userstatus()
   },
@@ -96,11 +102,23 @@ export default {
       this.$refs['basicLayout'].listData()
     },
     onClick (data) {
-      this.areaInfo = data
-      this.$refs['basicLayout'].param.content.sa_saleareaids = [data.sa_saleareaid]
-      this.$refs['basicLayout'].param.content.containssub = 1
-      this.$refs['basicLayout'].listData()
-      this.$store.dispatch('sendDataToForm',data)
+      if (typeof data == 'string') {
+        this.$refs.arealist.btnType = 'primary'
+        this.$refs.arealist.$refs.treeRef.setCurrentKey(null)
+        this.$refs['basicLayout'].param.content.isAll = 1
+        this.$refs['basicLayout'].param.content.sa_saleareaids = []
+        this.$refs['basicLayout'].param.content.containssub = 1
+        this.$refs['basicLayout'].listData()
+      } else {
+        this.areaInfo = data
+        this.$refs.arealist.btnType = 'info'
+        this.$refs['basicLayout'].param.content.sa_saleareaids = [data.sa_saleareaid]
+        this.$refs['basicLayout'].param.content.containssub = 1
+        this.$refs['basicLayout'].param.content.isAll = 0
+        this.$refs['basicLayout'].listData()
+        this.$store.dispatch('sendDataToForm',data)
+      }
+      
     },
     onSuccess () {
       this.$refs.arealist.query_arealist()
@@ -118,9 +136,8 @@ export default {
     onStartArea (status) {
       status === 1?this.areaInfo.isused = 0:this.areaInfo.isused = 1
     },
-    list(data) {
-      console.log(data);
-      
+    list(param) {
+      param.content.isAll = 0
     }
   }
 }

+ 54 - 0
src/HManagement/marketing2/customerFile/index.vue

@@ -0,0 +1,54 @@
+
+<template>
+      <!-- :oldFormPath="{
+        add:'HDrpManagement/serveBill/components'
+      }" -->
+  <div>
+    <basicLayout 
+      ref="list" 
+      tableName="customerTable" 
+      idName="sa_customersid" 
+      :apiId="{query:20221012164402,del:''}"
+      :options="options"
+      :detailPath="{
+      }"
+      @listCreate="list">
+      <div slot="custom" style="display:flex">
+      </div>
+      <template v-slot:tbList="scope">
+        <div v-if="scope.data.column.columnname == 'province'">
+          {{ `${scope.data.column.data.province}-${scope.data.column.data.city}-${scope.data.column.data.county}` }}
+        </div>
+        <div v-else>
+          {{scope.data.column.data[[scope.data.column.columnname]]?scope.data.column.data[[scope.data.column.columnname]]:'--'}}
+        </div>
+      </template>
+      <template v-slot:tbOpreation="scope">
+      </template>
+    </basicLayout>
+  </div>
+</template>
+
+<script>
+export default {
+  data () {
+    return {
+      options:[],
+      where: {
+        status:'',
+        date: ''
+      }
+    }
+  },
+  methods:{
+    list (param) {
+      param.content.isend = 1
+      param.content.type = 0
+      param.content.isExport = 0
+    }
+  }
+}
+
+</script>
+<style>
+</style>

+ 1 - 1
src/HManagement/marketing2/saler/area/detail/index.vue

@@ -11,7 +11,7 @@
         idname="sa_salearea_hrid"
         ownertable="sa_salearea_hr"
         tags=""
-        :tabs="['详细信息','业绩目标']"
+        :tabs="['详细信息']"
         @pageChange="pageChange"
         @onEditSuccess="queryMainData($route.query.id)">
       <div slot="tags">

+ 1 - 1
src/SDrpManagement/agentOrder/modules/productlist.vue

@@ -106,7 +106,7 @@
       </el-table-column>
       <el-table-column v-if="type === 'edit'" width="90" fixed="right">
         <template slot-scope="scope">
-          <el-button type="text" size="mini" @click="deleteOrderProduct(scope.row)">删 除</el-button>
+          <el-button v-if="tool.checkAuth($route.name,'orderDetail')" type="text" size="mini" @click="deleteOrderProduct(scope.row)">删 除</el-button>
         </template>
       </el-table-column>
     </el-table>

+ 1 - 1
src/SDrpManagement/salerToolBorrowing/index.vue

@@ -6,7 +6,7 @@
       :oldFormPath="{
         add:'SDrpManagement/salerToolBorrowing/modules'
       }"
-      tableName="toolBorrowing_saler" 
+      tableName="toolBorrowingTable" 
       idName="sa_orderid" 
       :apiId="{query:20230114105002,del:20230116100002}"
       :autoQuery="false"

+ 1 - 1
src/SDrpManagement/toolBorrowing/detail/tabs/toolList.vue

@@ -144,7 +144,7 @@
       </el-table-column>
       <el-table-column v-if="type === 'edit' && !data.sa_contractid" width="90" fixed="right">
         <template slot-scope="scope">
-          <el-button type="text" size="mini" @click="deleteOrderProduct(scope.row)">删 除</el-button>
+          <el-button v-if="tool.checkAuth($route.name,'billDetail')" type="text" size="mini" @click="deleteOrderProduct(scope.row)">删 除</el-button>
         </template>
       </el-table-column>
     </el-table>

+ 1 - 1
src/components/customBtn/index.vue

@@ -13,7 +13,7 @@ export default {
     message: String,
     idName: String,
     keyName: String,
-    id: [String,Number],
+    id: [String,Number,Array],
     disabled: Boolean,
     idIsArr: Boolean,
     paramData: {

+ 1 - 1
src/components/financialInfo/index.vue

@@ -32,7 +32,7 @@
       </el-table-column>
       <el-table-column
         prop="taxno"
-        label="统一社会信用代码">
+        label="税号">
       </el-table-column>
       <el-table-column
         prop="bank"

+ 3 - 3
src/components/financialInfo/modules/edit.vue

@@ -2,7 +2,7 @@
   <div>
     <el-button type="text" size="mini" @click="onShow(drawer = true)">编 辑</el-button>
     <el-drawer
-      title="新建"
+      title="编辑"
       :visible.sync="drawer"
       direction="rtl"
       append-to-body
@@ -16,10 +16,10 @@
             <el-input v-model="form.address" placeholder="开票地址"></el-input>
           </el-form-item>
           <el-form-item label="税号" prop="taxno">
-            <el-input v-model="form.taxno" placeholder="统一社会信用代码"></el-input>
+            <el-input v-model="form.taxno" placeholder="税号"></el-input>
           </el-form-item>
           <el-form-item label="开户行" prop="bank">
-            <el-input v-model="form.bank" placeholder="统一社会信用代码"></el-input>
+            <el-input v-model="form.bank" placeholder="开户行"></el-input>
           </el-form-item>
           <el-form-item label="开户账号" prop="bankcardno">
             <el-input v-model="form.bankcardno" placeholder="开户账号"></el-input>

+ 21 - 0
src/router/HManagement.js

@@ -164,6 +164,27 @@ const HManagement = [
         component: () => import(/* webpackChunkName: "about" */ '@/HManagement/marketing2/saler/area/detail/index')
       }
     ]
+  }, {
+    path: '/customerFile',
+    name: 'customerFile',
+    meta: {
+      title: '终端客户档案',
+      ast_nav: true,
+      keeproute:true
+    },
+    component: () => import(/* webpackChunkName: "about" */ '@/HManagement/marketing2/customerFile/index.vue'),
+    // children:[
+    //   {
+    //     path: '/agent_detail',
+    //     name: 'agentManage',
+    //     meta: {
+    //       title: '经销商详情',
+    //       ast_nav: true,
+    //       keeproute: true
+    //     },
+    //     component: () => import(/* webpackChunkName: "about" */ '@/HManagement/marketing2/agent/details/index.vue')
+    //   }
+    // ]
   },
   {
     path: '/EnterpriseArchives',