Browse Source

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

qymljy 2 years ago
parent
commit
fb7da7ae7a
24 changed files with 294 additions and 228 deletions
  1. 0 6
      src/Form/publicCustomer/add.vue
  2. 0 6
      src/Form/publicCustomer/edit.vue
  3. 27 3
      src/Form/publicManage/add.vue
  4. 1 1
      src/Form/salerPrivatecustomer/edit.vue
  5. 55 0
      src/HDrpManagement/contractManage/components/TimeSelect.vue
  6. 1 4
      src/HDrpManagement/contractManage/components/addContract.vue
  7. 1 1
      src/HDrpManagement/contractManage/components/contractClause/contractClause.vue
  8. 1 6
      src/HDrpManagement/contractManage/components/editContract.vue
  9. 38 34
      src/HDrpManagement/contractManage/components/productClassList/addProduct.vue
  10. 12 11
      src/HDrpManagement/contractManage/components/productClassList/productClassList.vue
  11. 36 33
      src/HDrpManagement/contractManage/components/productDetailList/addProduct.vue
  12. 3 3
      src/HDrpManagement/contractManage/components/productDetailList/productDetailList.vue
  13. 36 33
      src/HDrpManagement/contractManage/components/productList/addProduct.vue
  14. 3 3
      src/HDrpManagement/contractManage/components/productList/productBillno.vue
  15. 36 33
      src/HDrpManagement/contractManage/components/toolList/addTool.vue
  16. 8 4
      src/HDrpManagement/contractManage/components/toolList/toolList.vue
  17. 3 2
      src/HDrpManagement/contractManage/index.vue
  18. 5 5
      src/HDrpManagement/contractManage/modules/detail.vue
  19. 1 1
      src/HDrpManagement/contractModel/index.vue
  20. 6 9
      src/HDrpManagement/contractModel/modules/detail.vue
  21. 3 2
      src/HDrpManagement/publicManage/components/scopeOfAuthority/modules/dep_auth.vue
  22. 0 17
      src/HManagement/clueManage/clue_public/index.vue
  23. 10 8
      src/HManagement/clueManage/clue_rule/modules/setRule.vue
  24. 8 3
      src/components/import/importFile.vue

+ 0 - 6
src/Form/publicCustomer/add.vue

@@ -143,15 +143,9 @@ export default {
         enterprisename:[
           { required: true, message: '输入客户名称', trigger: 'blur'},
         ],
-        type:[
-          { required: true, message: '请选择客户类型', trigger: 'blur'}
-        ],
         source:[
           { required: false, message: '请填写客户来源', trigger: 'blur'}
         ],
-        grade:[
-          { required: true, message: '请选择客户等级', trigger: 'blur'}
-        ],
         sa_customerpoolid:[
           { required: true, message: '请选择公海池', trigger: 'blur'}
         ]

+ 0 - 6
src/Form/publicCustomer/edit.vue

@@ -140,15 +140,9 @@ export default {
         enterprisename:[
           { required: true, message: '输入客户名称', trigger: 'blur'},
         ],
-        type:[
-          { required: true, message: '请选择客户类型', trigger: 'blur'}
-        ],
         source:[
           { required: true, message: '请填写客户来源', trigger: 'blur'}
         ],
-        grade:[
-          { required: true, message: '请选择客户等级', trigger: 'blur'}
-        ]
       }
     }
   },

+ 27 - 3
src/Form/publicManage/add.vue

@@ -30,14 +30,14 @@
               </el-radio-group>
             </el-form-item>
             </el-col>
-            <el-col :span="24">
+            <!-- <el-col :span="24">
             <el-form-item label="保有规则" prop="isopentenure">
               <el-radio-group v-model="form.isopentenure">
                 <el-radio :label="1">开启</el-radio>
                 <el-radio :label="0">关闭</el-radio>
               </el-radio-group>
             </el-form-item>
-            </el-col>
+            </el-col> -->
             <el-col :span="24">
             <el-form-item label="自动回收规则" prop="datafollowlimit">
               <div>
@@ -51,6 +51,22 @@
                 <div><el-input size="mini" style="width:50px;margin-right:10px" v-model="form.deallimit" />天,未成交,自动回收至公海,负责人清空</div>
               </div>
             </el-form-item>
+            <el-form-item label="是否默认公海" prop="aa">
+              <div>
+                <el-radio-group v-model="form.aa">
+                  <el-radio :label="1">开启</el-radio>
+                  <el-radio :label="0">关闭</el-radio>
+                </el-radio-group>
+              </div>
+            </el-form-item>
+            <el-form-item label="是否启用" prop="bb">
+              <div>
+                <el-radio-group v-model="form.bb">
+                  <el-radio :label="1">开启</el-radio>
+                  <el-radio :label="0">关闭</el-radio>
+                </el-radio-group>
+              </div>
+            </el-form-item>
             </el-col>
           </el-form>
           <el-alert
@@ -94,7 +110,9 @@ export default {
         "countlimit": 0, //成员最大保有客户数(0表示不设限)
         "datafollowlimit": 0, //跟进天数限制(超过天数后自动退回,0表示不设限)
         "deallimit": 0, //成交天数限制(超过天数后自动退回,0表示不限制)
-        "isdefault": 1 //是否默认
+        "isdefault": 1, //是否默认
+        "aa":0,
+        "bb":0
       },
       rules: {
         poolname: [
@@ -103,6 +121,12 @@ export default {
         freeget: [
           { required: true, message: '请选择领取规则', trigger: 'blur' }
         ],
+        aa: [
+          { required: true, message: '请选择', trigger: 'blur' }
+        ],
+        bb: [
+          { required: true, message: '请选择', trigger: 'blur' }
+        ],
         datafollowlimit: [
           { required: true, message: '请输入数据', trigger: 'blur' }
         ],

+ 1 - 1
src/Form/salerPrivatecustomer/edit.vue

@@ -232,7 +232,7 @@ export default {
         enterprisename:'',
         type:'',
         source:'',
-        parentid:'',
+        parentid:0,
         abbreviation:'',
         taxno:'',
         grade:'',

+ 55 - 0
src/HDrpManagement/contractManage/components/TimeSelect.vue

@@ -0,0 +1,55 @@
+<template>
+  <div>
+    <span style="font-size:14px;">{{title && title}}</span>
+    <el-date-picker
+      v-model="time"
+      type="daterange"
+      unlink-panels
+      range-separator="至"
+      start-placeholder="开始日期"
+      end-placeholder="结束日期"
+      @change="timeChange"
+    >
+    </el-date-picker>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'TimeSelect',
+  data() {
+    return {
+      start:'',
+      over:'',
+      time:''
+    };
+  },
+  props: ['title'],
+  computed:{
+  },
+  watch:{
+  },
+  methods: {
+    timeChange(e) {
+      if(!e) {
+        this.$emit('clearSelect')
+        return
+      } 
+      let result = e.map(item => {
+        return this.changeTimeFormat(item.getTime())
+      })   
+      this.$emit('timeChange',result)
+    },
+    changeTimeFormat(time) {
+      var date = new Date(time);
+      var month = date.getMonth() + 1 < 10 ? "0" + (date.getMonth() + 1) : date.getMonth() + 1;
+      var currentDate = date.getDate() < 10 ? "0" + date.getDate() : date.getDate();
+      return date.getFullYear() + "-" + month + "-" + currentDate
+    }
+  },
+}
+</script>
+
+<style scoped>
+
+</style>

+ 1 - 4
src/HDrpManagement/contractManage/components/addContract.vue

@@ -345,7 +345,7 @@ import {mapGetters} from 'vuex'
 import selectPople from './selectSaler'
 import selectAgent from './selectAgent'
 import seleteProject from './seleteProject'
-import TimeSelect from '@/HDrpManagement/projectChange/components/TimeSelect'
+import TimeSelect from './TimeSelect'
 import selectModel from './seleteModel'
 export default {
   name: '',
@@ -417,9 +417,6 @@ export default {
         salername: [
           { required: true, message: '请选择经销商', trigger: 'change' },
         ],
-        title: [
-          { required: true, message: '请输入合同标题', trigger: 'blur' },
-        ],
         discountrate: [
           { validator: checkNumber, trigger: 'blur'},
           { validator: NumberSize, trigger: 'blur'}

+ 1 - 1
src/HDrpManagement/contractManage/components/contractClause/contractClause.vue

@@ -9,7 +9,7 @@
       <tableLayout :layout="tablecols" :data="list" :opwidth="200" :width="false" height="calc(100vh - 550px)" :custom="true" fixedName="operation" >
         <template v-slot:customcol="scope">
           <div v-if="scope.column.columnname == 'content'">
-            <el-input v-if="editIndex==scope.column.data.sa_contract_clauseid" v-model="form.content" size="small" placeholder="请输入条款"></el-input>
+            <el-input v-if="editIndex==scope.column.data.sa_contract_clauseid" type="textarea" v-model="form.content" size="small" placeholder="请输入条款"></el-input>
             <span v-else>{{scope.column.data[scope.column.columnname]}}</span>
           </div>
           <p v-else>{{scope.column.data[scope.column.columnname]}}</p>

+ 1 - 6
src/HDrpManagement/contractManage/components/editContract.vue

@@ -344,9 +344,7 @@ import selectPople from './selectSaler'
 import selectAgent from './selectAgent'
 import seleteProject from './seleteProject'
 import selectModel from './seleteModel'
-import TimeSelect from '@/HDrpManagement/projectChange/components/TimeSelect'
-import { log } from '@antv/g2plot/lib/utils'
-
+import TimeSelect from './TimeSelect'
 export default {
   props:['data','disabled'],
   name: '',
@@ -421,9 +419,6 @@ export default {
         enterprisename: [
           { required: true, message: '请选择经销商', trigger: 'change' },
         ],
-        title: [
-          { required: true, message: '请填写合同标题', trigger: 'blur' },
-        ],
         discountrate: [
           { validator: checkNumber, trigger: 'blur'},
           { validator: NumberSize, trigger: 'blur'}

+ 38 - 34
src/HDrpManagement/contractManage/components/productClassList/addProduct.vue

@@ -1,40 +1,44 @@
 <template>
   <div>
     <el-button type="primary" size="small" :disabled="disabled" @click="addBtn">添 加</el-button>
-    <el-drawer append-to-body size="80%" title="产品清单" :visible.sync="drawer">
-      <el-input size="small" style="width:200px;margin-bottom:10px;margin-left:10px" v-model="params.content.where.condition" placeholder="输入搜索内容" @clear="getProductList(params.content.pageNumber = 1)" @keyup.native.enter="getProductList(params.content.pageNumber = 1)" clearable></el-input>
-      <Table ref="table" id="itemclassid" v-model="itemno" :layout="tablecols" :data="productList" :custom="true" height="500px"  @upDateData="upDateData">
-        <template v-slot:customcol="scope">
-          <div v-if="scope.column.columnname == 'attinfos'">
-            <previewImage 
-              v-if="scope.column.data.attinfos[0]" 
-              style="width:80px;height:80px;margin-top:0px" 
-              class="image" 
-              :image="scope.column.data.attinfos[0]" 
-              :list="scope.column.data.attinfos" 
-              :deletebtn="false"
-            ></previewImage>
+    <el-drawer append-to-body size="80%" :with-header="false" :visible.sync="drawer">
+      <div class="container">
+        <p class="normal-title normal-margin">产品类别</p>
+        <el-input size="small" style="width:200px;margin-bottom:10px" v-model="params.content.where.condition" placeholder="输入搜索内容" @clear="getProductList(params.content.pageNumber = 1)" @keyup.native.enter="getProductList(params.content.pageNumber = 1)" clearable></el-input>
+          <Table ref="table" id="itemclassid" v-model="itemno" :layout="tablecols" :data="productList" :custom="true" height="500px"  @upDateData="upDateData">
+            <template v-slot:customcol="scope">
+              <div v-if="scope.column.columnname == 'attinfos'">
+                <previewImage 
+                  v-if="scope.column.data.attinfos[0]" 
+                  style="width:38px;height:38px;margin:0px" 
+                  class="image" 
+                  :image="scope.column.data.attinfos[0]" 
+                  :list="scope.column.data.attinfos" 
+                  :deletebtn="false"
+                ></previewImage>
+              </div>
+              <div v-else-if="scope.column.columnname == 'brand'">
+                {{scope.column.data[scope.column.columnname][0] ? scope.column.data[scope.column.columnname][0].brandname : '--'}}
+              </div>
+              <div v-else>{{scope.column.data[scope.column.columnname]}}</div>
+              <span v-if="!scope.column.data[scope.column.columnname]">--</span>
+            </template>
+          </Table>
+          <div class="container normal-panel" style="text-align:right">
+            <el-pagination
+                style="text-align:right"
+                background
+                small
+                @size-change="handleSizeChange"
+                @current-change="handleCurrentChange"
+                :current-page="params.content.pageNumber"
+                :page-sizes="[20, 50, 100, 200]"
+                layout="total,sizes, prev, pager, next, jumper"
+                :total="total">
+            </el-pagination>
           </div>
-          <div v-else-if="scope.column.columnname == 'brand'">
-            {{scope.column.data[scope.column.columnname][0] ? scope.column.data[scope.column.columnname][0].brandname : '--'}}
-          </div>
-          <div v-else>{{scope.column.data[scope.column.columnname]}}</div>
-          <span v-if="!scope.column.data[scope.column.columnname]">--</span>
-        </template>
-      </Table>
-      <div class="container normal-panel" style="text-align:right">
-        <el-pagination
-            style="text-align:right"
-            background
-            small
-            @size-change="handleSizeChange"
-            @current-change="handleCurrentChange"
-            :current-page="params.content.pageNumber"
-            :page-sizes="[20, 50, 100, 200]"
-            layout="total,sizes, prev, pager, next, jumper"
-            :total="total">
-        </el-pagination>
       </div>
+      
       <div class="fixed__btn__panel">
         <el-button size="small" @click="drawer = false">取 消</el-button>
         <el-button type="primary" size="small" @click="onSumit">确 定</el-button>
@@ -81,7 +85,7 @@ export default {
   watch:{
   },
   created () {
-    this.tablecols = this.tool.tabelCol(this.$route.name)['productClassTable'].tablecols
+    this.tablecols = this.tool.tabelCol(this.$route.name)['productClassTable'].tablecols.splice(0,2)
   },
   methods: {
     addBtn () {
@@ -101,7 +105,7 @@ export default {
         return {
           "sa_contract_itemsaleclassid": 0,
           "itemclassid": item.itemclassid,
-          "discountrate": '1'
+          "discountrate": '100'
         }
       })
       

+ 12 - 11
src/HDrpManagement/contractManage/components/productClassList/productClassList.vue

@@ -8,7 +8,7 @@
       <tableLayout :layout="tablecols" :data="list" :opwidth="200" :width="false" height="calc(100vh - 550px)" :custom="true" fixedName="operation discountrate" >
         <template v-slot:customcol="scope">
           <div v-if="scope.column.columnname == 'discountrate'">
-            <el-input size="mini" v-if="editIndex == scope.column.data.sa_contract_itemsid" v-model="form.discountrate" @input="discountrateChange($event,scope.column.data)"></el-input>
+            <el-input size="mini" v-if="currentEdit.sa_contract_itemsaleclassid == scope.column.data.sa_contract_itemsaleclassid" v-model="scope.column.data.discountrate" @input="discountrateChange($event,scope.column.data)"></el-input>
             <p v-else>{{scope.column.data[scope.column.columnname]}}</p>
           </div>
           <div v-else-if="scope.column.columnname == 'brand'">
@@ -17,7 +17,7 @@
           <p v-else>{{scope.column.data[scope.column.columnname]}}</p>
         </template>
         <template v-slot:opreation="scope">
-          <el-button v-if="editIndex == scope.data.sa_contract_itemsid" type="text" size="mini" @click="save(scope.data)" class="inline-16">保 存</el-button>
+          <el-button v-if="currentEdit.sa_contract_itemsaleclassid == scope.data.sa_contract_itemsaleclassid" type="text" size="mini" @click="save(scope.data)" class="inline-16">保 存</el-button>
           <slot name="edit" :data="scope.data" v-else></slot>
           <slot name="del" :data="scope.data"></slot>
           <!-- <edit :data="scope.data"></edit> -->
@@ -65,7 +65,7 @@ export default {
       },
       tablecols:[],
       total:0,
-      editIndex:'',
+      currentEdit:'',
       itemclassid:''
     };
   },
@@ -88,7 +88,6 @@ export default {
     qtyChange (num) {
       this.form.qty = num
       console.log(num);
-      
     },
     handleChange(num) {
       console.log(num);
@@ -105,19 +104,21 @@ export default {
       
     },
     async save (data) {
-      return console.log(data);
-      
       let res = await this.$api.requested({
         "id":20221124110202,
         "content": {
-          "sa_contract_itemsaleclassid": data.sa_contract_itemsaleclassid,
-          "sa_contractid": this.$route.query.id,
-          "itemclassid": data.itemclassid,
-          "discountrate": this.form.discountrate
+         "sa_contractid": data.sa_contractid,
+          "items": [
+              {
+                  "sa_contract_itemsaleclassid": data.sa_contract_itemsaleclassid,
+                  "itemclassid": data.itemclassid,
+                  "discountrate": data.discountrate
+              }
+          ]
         }
       })
       this.tool.showMessage(res,() => {
-        this.editIndex = ''
+        this.currentEdit = ''
         this.listData()
         this.$emit('editSuccess',res.data.signamount)
       })

+ 36 - 33
src/HDrpManagement/contractManage/components/productDetailList/addProduct.vue

@@ -1,39 +1,42 @@
 <template>
   <div>
     <el-button type="primary" size="small" :disabled="disabled" @click="addBtn">添 加</el-button>
-    <el-drawer append-to-body size="80%" title="产品清单" :visible.sync="drawer">
-      <el-input size="small" style="width:200px;margin-bottom:10px;margin-left:10px" v-model="params.content.where.condition" placeholder="输入搜索内容" @clear="getProductList(params.content.pageNumber = 1)" @keyup.native.enter="getProductList(params.content.pageNumber = 1)" clearable></el-input>
-      <Table ref="table" v-model="itemno" :layout="tablecols" :data="productList" :custom="true" height="500px"  @upDateData="upDateData">
-        <template v-slot:customcol="scope">
-          <div v-if="scope.column.columnname == 'attinfos'">
-            <previewImage 
-              v-if="scope.column.data.attinfos[0]" 
-              style="width:80px;height:80px;margin-top:0px" 
-              class="image" 
-              :image="scope.column.data.attinfos[0]" 
-              :list="scope.column.data.attinfos" 
-              :deletebtn="false"
-            ></previewImage>
-          </div>
-          <div v-else-if="scope.column.columnname == 'brand'">
-            {{scope.column.data[scope.column.columnname][0] ? scope.column.data[scope.column.columnname][0].brandname : '--'}}
-          </div>
-          <div v-else>{{scope.column.data[scope.column.columnname]}}</div>
-          <span v-if="!scope.column.data[scope.column.columnname]">--</span>
-        </template>
-      </Table>
-      <div class="container normal-panel" style="text-align:right">
-        <el-pagination
-            style="text-align:right"
-            background
-            small
-            @size-change="handleSizeChange"
-            @current-change="handleCurrentChange"
-            :current-page="params.content.pageNumber"
-            :page-sizes="[20, 50, 100, 200]"
-            layout="total,sizes, prev, pager, next, jumper"
-            :total="total">
-        </el-pagination>
+    <el-drawer append-to-body size="80%" :with-header="false" :visible.sync="drawer">
+      <div class="container">
+        <p class="normal-title normal-margin">产品清单</p>
+        <el-input size="small" style="width:200px;margin-bottom:10px" v-model="params.content.where.condition" placeholder="输入搜索内容" @clear="getProductList(params.content.pageNumber = 1)" @keyup.native.enter="getProductList(params.content.pageNumber = 1)" clearable></el-input>
+        <Table ref="table" v-model="itemno" :layout="tablecols" :data="productList" :custom="true" height="500px"  @upDateData="upDateData">
+          <template v-slot:customcol="scope">
+            <div v-if="scope.column.columnname == 'attinfos'">
+              <previewImage 
+                v-if="scope.column.data.attinfos[0]" 
+                style="width:38px;height:38px;margin:0px" 
+                class="image" 
+                :image="scope.column.data.attinfos[0]" 
+                :list="scope.column.data.attinfos" 
+                :deletebtn="false"
+              ></previewImage>
+            </div>
+            <div v-else-if="scope.column.columnname == 'brand'">
+              {{scope.column.data[scope.column.columnname][0] ? scope.column.data[scope.column.columnname][0].brandname : '--'}}
+            </div>
+            <div v-else>{{scope.column.data[scope.column.columnname]}}</div>
+            <span v-if="!scope.column.data[scope.column.columnname]">--</span>
+          </template>
+        </Table>
+        <div class="container normal-panel" style="text-align:right">
+          <el-pagination
+              style="text-align:right"
+              background
+              small
+              @size-change="handleSizeChange"
+              @current-change="handleCurrentChange"
+              :current-page="params.content.pageNumber"
+              :page-sizes="[20, 50, 100, 200]"
+              layout="total,sizes, prev, pager, next, jumper"
+              :total="total">
+          </el-pagination>
+        </div>
       </div>
       <div class="fixed__btn__panel">
         <el-button size="small" @click="drawer = false">取 消</el-button>

+ 3 - 3
src/HDrpManagement/contractManage/components/productDetailList/productDetailList.vue

@@ -8,13 +8,13 @@
       <tableLayout :layout="tablecols" :data="list" :opwidth="200" height="calc(100vh - 550px)" :width="true" :custom="true" fixedName="operation qty marketprice discountrate price countPrice" >
         <template v-slot:customcol="scope">
           <div v-if="scope.column.columnname == 'qty'">
-            <el-input-number size="mini" v-if="editIndex == scope.column.data.sa_contract_itemsid" v-model="form.qty" @change="qtyChange" :min="1" :max="10" label="描述文字"></el-input-number>
-            <span v-else>{{scope.column.data.qty}}</span>
+            <el-input-number size="mini" v-if="editIndex == scope.column.data.sa_contract_itemsid" v-model="scope.column.data.qty" @change="qtyChange" :min="1" label="描述文字"></el-input-number>
+            <el-input-number size="mini" v-else disabled v-model="scope.column.data.qty" @change="qtyChange" :min="1" label="描述文字"></el-input-number>
           </div>
           <div v-else-if="scope.column.columnname == 'attinfos'">
             <previewImage 
               v-if="scope.column.data.attinfos[0]" 
-              style="width:80px;height:80px;margin-top:0px" 
+              style="width:38px;height:38px;margin:0px" 
               class="image" 
               :image="scope.column.data.attinfos[0]" 
               :list="scope.column.data.attinfos" 

+ 36 - 33
src/HDrpManagement/contractManage/components/productList/addProduct.vue

@@ -1,39 +1,42 @@
 <template>
   <div>
     <el-button type="primary" size="small" :disabled="disabled" @click="addBtn">添 加</el-button>
-    <el-drawer append-to-body size="80%" title="产品清单" :visible.sync="drawer">
-      <el-input size="small" style="width:200px;margin-bottom:10px;margin-left:10px" v-model="params.content.where.condition" placeholder="输入搜索内容" @clear="getProductList(params.content.pageNumber = 1)" @keyup.native.enter="getProductList(params.content.pageNumber = 1)" clearable></el-input>
-      <Table ref="table" v-model="itemno" :layout="tablecols" :data="productList" :custom="true" height="500px"  @upDateData="upDateData">
-        <template v-slot:customcol="scope">
-          <div v-if="scope.column.columnname == 'attinfos'">
-            <previewImage 
-              v-if="scope.column.data.attinfos[0]" 
-              style="width:80px;height:80px;margin-top:0px" 
-              class="image" 
-              :image="scope.column.data.attinfos[0]" 
-              :list="scope.column.data.attinfos" 
-              :deletebtn="false"
-            ></previewImage>
-          </div>
-          <div v-else-if="scope.column.columnname == 'brand'">
-            {{scope.column.data[scope.column.columnname][0].brandname}}
-          </div>
-          <div v-else>{{scope.column.data[scope.column.columnname]}}</div>
-          <span v-if="!scope.column.data[scope.column.columnname]">--</span>
-        </template>
-      </Table>
-      <div class="container normal-panel" style="text-align:right">
-        <el-pagination
-            style="text-align:right"
-            background
-            small
-            @size-change="handleSizeChange"
-            @current-change="handleCurrentChange"
-            :current-page="params.content.pageNumber"
-            :page-sizes="[20, 50, 100, 200]"
-            layout="total,sizes, prev, pager, next, jumper"
-            :total="total">
-        </el-pagination>
+    <el-drawer append-to-body size="80%" :with-header="false" :visible.sync="drawer">
+      <div class="container">
+        <p class="normal-title normal-margin">产品清单</p>
+        <el-input size="small" style="width:200px;margin-bottom:10px" v-model="params.content.where.condition" placeholder="输入搜索内容" @clear="getProductList(params.content.pageNumber = 1)" @keyup.native.enter="getProductList(params.content.pageNumber = 1)" clearable></el-input>
+        <Table ref="table" v-model="itemno" :layout="tablecols" :data="productList" :custom="true" height="500px"  @upDateData="upDateData">
+          <template v-slot:customcol="scope">
+            <div v-if="scope.column.columnname == 'attinfos'">
+              <previewImage 
+                v-if="scope.column.data.attinfos[0]" 
+                style="width:38px;height:38px;margin:0px" 
+                class="image" 
+                :image="scope.column.data.attinfos[0]" 
+                :list="scope.column.data.attinfos" 
+                :deletebtn="false"
+              ></previewImage>
+            </div>
+            <div v-else-if="scope.column.columnname == 'brand'">
+              {{scope.column.data[scope.column.columnname][0].brandname}}
+            </div>
+            <div v-else>{{scope.column.data[scope.column.columnname]}}</div>
+            <span v-if="!scope.column.data[scope.column.columnname]">--</span>
+          </template>
+        </Table>
+        <div class="container normal-panel" style="text-align:right">
+          <el-pagination
+              style="text-align:right"
+              background
+              small
+              @size-change="handleSizeChange"
+              @current-change="handleCurrentChange"
+              :current-page="params.content.pageNumber"
+              :page-sizes="[20, 50, 100, 200]"
+              layout="total,sizes, prev, pager, next, jumper"
+              :total="total">
+          </el-pagination>
+        </div>
       </div>
       <div class="fixed__btn__panel">
         <el-button size="small" @click="drawer = false">取 消</el-button>

+ 3 - 3
src/HDrpManagement/contractManage/components/productList/productBillno.vue

@@ -8,13 +8,13 @@
       <tableLayout :layout="tablecols" :data="list" :width="true" :opwidth="200" height="calc(100vh - 550px)" :custom="true" fixedName="operation qty marketprice discountrate price countPrice" >
         <template v-slot:customcol="scope">
           <div v-if="scope.column.columnname == 'qty'">
-            <el-input-number size="mini" v-if="editIndex == scope.column.data.sa_contract_itemsid" v-model="form.qty" @change="qtyChange" :min="1" :max="10" label="描述文字"></el-input-number>
-            <span v-else>{{scope.column.data.qty}}</span>
+            <el-input-number size="mini" v-if="editIndex == scope.column.data.sa_contract_itemsid" v-model="scope.column.data.qty" @change="qtyChange" :min="1" label="描述文字"></el-input-number>
+            <el-input-number size="mini" v-else disabled v-model="scope.column.data.qty" @change="qtyChange" :min="1" label="描述文字"></el-input-number>
           </div>
           <div v-else-if="scope.column.columnname == 'attinfos'">
             <previewImage 
               v-if="scope.column.data.attinfos[0]" 
-              style="width:80px;height:80px;margin-top:0px" 
+              style="width:38px;height:38px;margin:0px" 
               class="image" 
               :image="scope.column.data.attinfos[0]" 
               :list="scope.column.data.attinfos" 

+ 36 - 33
src/HDrpManagement/contractManage/components/toolList/addTool.vue

@@ -1,39 +1,42 @@
 <template>
   <div>
     <el-button type="primary" size="small" :disabled="disabled" @click="addBtn">添 加</el-button>
-    <el-drawer append-to-body size="80%" title="产品清单" :visible.sync="drawer">
-      <el-input size="small" style="width:200px;margin-bottom:10px;margin-left:10px" v-model="params.content.where.condition" placeholder="输入搜索内容" @clear="getProductList(params.content.pageNumber = 1)" @keyup.native.enter="getProductList(params.content.pageNumber = 1)" clearable></el-input>
-      <Table ref="table" v-model="itemno" :layout="tablecols" :data="productList" :custom="true" height="500px"  @upDateData="upDateData">
-        <template v-slot:customcol="scope">
-          <div v-if="scope.column.columnname == 'attinfos'">
-            <previewImage 
-              v-if="scope.column.data.attinfos[0]" 
-              style="width:80px;height:80px;margin-top:0px" 
-              class="image" 
-              :image="scope.column.data.attinfos[0]" 
-              :list="scope.column.data.attinfos" 
-              :deletebtn="false"
-            ></previewImage>
-          </div>
-          <div v-else-if="scope.column.columnname == 'brand'">
-            {{scope.column.data[scope.column.columnname][0] ? scope.column.data[scope.column.columnname][0].brandname : '--'}}
-          </div>
-          <div v-else>{{scope.column.data[scope.column.columnname]}}</div>
-          <span v-if="!scope.column.data[scope.column.columnname]">--</span>
-        </template>
-      </Table>
-      <div class="container normal-panel" style="text-align:right">
-        <el-pagination
-            style="text-align:right"
-            background
-            small
-            @size-change="handleSizeChange"
-            @current-change="handleCurrentChange"
-            :current-page="params.content.pageNumber"
-            :page-sizes="[20, 50, 100, 200]"
-            layout="total,sizes, prev, pager, next, jumper"
-            :total="total">
-        </el-pagination>
+    <el-drawer append-to-body size="80%" :with-header="false" :visible.sync="drawer">
+      <div class="container">
+        <p class="normal-title normal-margin">工具清单</p>
+        <el-input size="small" style="width:200px;margin-bottom:10px" v-model="params.content.where.condition" placeholder="输入搜索内容" @clear="getProductList(params.content.pageNumber = 1)" @keyup.native.enter="getProductList(params.content.pageNumber = 1)" clearable></el-input>
+        <Table ref="table" v-model="itemno" :layout="tablecols" :data="productList" :custom="true" height="500px"  @upDateData="upDateData">
+          <template v-slot:customcol="scope">
+            <div v-if="scope.column.columnname == 'attinfos'">
+              <previewImage 
+                v-if="scope.column.data.attinfos[0]" 
+                style="width:38px;height:38px;margin:0px" 
+                class="image" 
+                :image="scope.column.data.attinfos[0]" 
+                :list="scope.column.data.attinfos" 
+                :deletebtn="false"
+              ></previewImage>
+            </div>
+            <div v-else-if="scope.column.columnname == 'brand'">
+              {{scope.column.data[scope.column.columnname][0] ? scope.column.data[scope.column.columnname][0].brandname : '--'}}
+            </div>
+            <div v-else>{{scope.column.data[scope.column.columnname]}}</div>
+            <span v-if="!scope.column.data[scope.column.columnname]">--</span>
+          </template>
+        </Table>
+        <div class="container normal-panel" style="text-align:right">
+          <el-pagination
+              style="text-align:right"
+              background
+              small
+              @size-change="handleSizeChange"
+              @current-change="handleCurrentChange"
+              :current-page="params.content.pageNumber"
+              :page-sizes="[20, 50, 100, 200]"
+              layout="total,sizes, prev, pager, next, jumper"
+              :total="total">
+          </el-pagination>
+        </div>
       </div>
       <div class="fixed__btn__panel">
         <el-button size="small" @click="drawer = false">取 消</el-button>

+ 8 - 4
src/HDrpManagement/contractManage/components/toolList/toolList.vue

@@ -8,13 +8,13 @@
       <tableLayout :layout="tablecols" :data="list" :opwidth="200" :width="true" height="calc(100vh - 550px)" :custom="true" fixedName="operation qty marketprice discountrate price countPrice" >
         <template v-slot:customcol="scope">
           <div v-if="scope.column.columnname == 'qty'">
-            <el-input-number size="mini" v-if="editIndex == scope.column.data.sa_contract_itemsid" v-model="form.qty" @change="qtyChange" :min="1" :max="10" label="描述文字"></el-input-number>
-            <span v-else>{{scope.column.data.qty}}</span>
+            <el-input-number size="mini" v-if="editIndex == scope.column.data.sa_contract_itemsid" v-model="scope.column.data.qty" @change="qtyChange" :min="1" label="描述文字"></el-input-number>
+            <el-input-number size="mini" v-else disabled v-model="scope.column.data.qty" @change="qtyChange" :min="1" label="描述文字"></el-input-number>
           </div>
           <div v-else-if="scope.column.columnname == 'attinfos'">
             <previewImage 
               v-if="scope.column.data.attinfos[0]" 
-              style="width:80px;height:80px;margin-top:0px" 
+              style="margin-top:0px" 
               class="image" 
               :image="scope.column.data.attinfos[0]" 
               :list="scope.column.data.attinfos" 
@@ -153,5 +153,9 @@ export default {
 </script>
 
 <style scoped>
-
+  .image {
+    width: 38px;
+    height: 38px;
+    margin: 0;
+  }
 </style>

+ 3 - 2
src/HDrpManagement/contractManage/index.vue

@@ -21,7 +21,6 @@
             size="small"
             v-model="area"
             placeholder="请选择范围"
-            clearable
             @change="$refs.list.param.content.type=area;$refs.list.listData()"
           >
             <el-option
@@ -98,7 +97,7 @@ export default {
       options:[],
       areaList:[],
       typeList:[],
-      area:'',
+      area:'0',
       type:'',
       condition:'',
       status:''
@@ -112,6 +111,8 @@ export default {
     async getSystemList () {
       const res = await this.$store.dispatch('optiontypeselect','dataarea')
       this.areaList = res.data
+      console.log(this.areaList);
+      
       const res2 = await this.$store.dispatch('optiontypeselect','contracttype')
       this.typeList = res2.data
     },

+ 5 - 5
src/HDrpManagement/contractManage/modules/detail.vue

@@ -1,7 +1,7 @@
 <template>
   <div>
     <basicDetails
-        v-if="Object.keys(mainData)"
+        v-if="Object.keys(mainData).length > 0"
         ref="details"
         :titleText="mainData.billno"
         :editData="mainData"
@@ -83,7 +83,7 @@
               class="inline-16" 
               :disabled="mainData.status != '新建' || !isLeader" 
               type="text" size="mini" slot="edit" 
-              @click="$refs.classList.editIndex = scope.data.sa_contract_itemsid;$refs.classList.form = Object.assign({},$refs.classList.form,scope.data)"
+              @click="$refs.classList.currentEdit = scope.data;$refs.classList.form = Object.assign({},$refs.classList.form,scope.data)"
             >编 辑</el-button>
           </template>
           <template v-slot:del="scope">
@@ -100,7 +100,7 @@
             @click="$refs.Claus.list.unshift({content:'',sa_contract_clauseid:0}),$refs.Claus.editIndex=0,$refs.Claus.form.sa_contract_clauseid=0"
             :disabled="mainData.status != '新建' || !isLeader" 
           >添 加</el-button>
-
+          
           <el-button size="small" slot="reset" class="inline-16" :disabled="mainData.status != '新建' || !isLeader"  @click="reset" v-if="tool.checkAuth($route.name,'resetClause')">重 置</el-button>
 
           <template v-slot:edit="scope">
@@ -116,9 +116,9 @@
           <template v-slot:del="scope">
             <delete-btn
              :nameId="20221128160302" 
-             :disabled="mainData.status != '新建' || !isLeader" nameKey="sa_contract_clauseids" 
+             nameKey="sa_contract_clauseids" 
              :id="scope.data.sa_contract_clauseid" @deleteSuccess="$refs.Claus.listData()"
-             v-if="tool.checkAuth($route.name,'delete')"
+             v-if="scope.data.sa_contract_clauseid == 0"
             ></delete-btn>
           </template>
         </contractClause>

+ 1 - 1
src/HDrpManagement/contractModel/index.vue

@@ -60,7 +60,7 @@
       :visible.sync="drawer"
       :with-header="false"
       direction="rtl"
-      size="50%"
+      size="80%"
       append-to-body
       @close="closeDrawer">
       <div class="detail__panel">

+ 6 - 9
src/HDrpManagement/contractModel/modules/detail.vue

@@ -14,16 +14,15 @@
                 v-if="scope.column.data.sa_contract_template_clauseid == 0 || scope.column.data.sa_contract_template_clauseid == currentEdit.sa_contract_template_clauseid" 
                 v-model="scope.column.data.content" size="small" 
                 placeholder="请输入条款"
+                type="textarea"
               ></el-input>
               <span v-else>{{scope.column.data[scope.column.columnname]}}</span>
             </div>
             <div v-else-if="scope.column.columnname == 'editable'">
               <el-switch
-                v-if="currentEdit.sa_contract_template_clauseid!=scope.column.data.sa_contract_template_clauseid"
+                v-if="currentEdit.sa_contract_template_clauseid!=scope.column.data.sa_contract_template_clauseid && scope.column.data.sa_contract_template_clauseid != 0"
                 :disabled="true"
                 :value="scope.column.data.editable"
-                active-color="#13ce66"
-                inactive-color="#ff4949"
                 :active-value="1"
                 :inactive-value="0"
                 size="mini">
@@ -31,8 +30,6 @@
               <el-switch
                 v-else
                 v-model="currentEdit.editable"
-                active-color="#13ce66"
-                inactive-color="#ff4949"
                 :active-value="1"
                 :inactive-value="0"
                 size="mini">
@@ -76,11 +73,11 @@ export default {
   data() {
     return {
       type:{
-        1:'直销项目',
-        2:'经销项目',
+        1:'直销项目协议',
+        2:'经销项目协议',
         3:'经销商合作协议',
-        4:'居间',
-        5:'工具借用',
+        4:'居间协议',
+        5:'工具借用协议',
       },
       params: {
         "id": 20221125200102,

+ 3 - 2
src/HDrpManagement/publicManage/components/scopeOfAuthority/modules/dep_auth.vue

@@ -93,8 +93,7 @@ export default {
       checkAll:false,
       isIndeterminate:false,
       param: {
-        "classname": "webmanage.hr.hr",
-        "method": "query_hrList",
+        "id":20221102090303,
         "content": {
             "nocahe":true,
             "pageNumber": 1,
@@ -184,6 +183,8 @@ export default {
       this.param.content.departmentids = [val]
       const res = await this.$api.requested(this.param)
       this.menberData = res.data      
+      console.log(this.menberData);
+      
       this.loading = false
       if(this.allDataLength == '') this.allDataLength = this.menberData.length
       // this.allDataLength = this.menberData.length

+ 0 - 17
src/HManagement/clueManage/clue_public/index.vue

@@ -15,23 +15,6 @@
       @listCreate="list"
     >
     <div slot="custom" style="display:flex">
-      <div class="label_center">
-        <p class="search__label">范围:</p>
-        <el-select
-          class="inline-16"
-          size="small"
-          v-model="area"
-          placeholder="请选择范围"
-          @change="$refs.basicLayout.param.content.type=area;$refs.basicLayout.listData()"
-        >
-          <el-option
-            v-for="item in areaList2"
-            :key="item.remarks"
-            :label="item.value"
-            :value="item.remarks"
-          ></el-option>
-        </el-select>
-      </div>
       <div class="label_center">
         <p class="search__label">跟进状态:</p>
         <el-select v-model="status" clearable style="margin-right:10px" size="small" placeholder="请选择线索状态" @change="$refs.basicLayout.param.content.where.status = status;$refs.basicLayout.listData()">

+ 10 - 8
src/HManagement/clueManage/clue_rule/modules/setRule.vue

@@ -10,14 +10,16 @@
             <div slot="header" class="clearfix">
               <p class="font-16">分配规则</p>
             </div>
-            <div class="flex-align-center normal-margin">
-              <p class="font-16" style="font-size:14px">自动分配:&emsp;</p>
-              <el-switch
-                v-model="form.autodistribution"
-                :active-value="1"
-                :inactive-value="0"
-                @change="updateOrderclueruleMain">
-              </el-switch>
+            <div class="normal-margin">
+              <div class="switch" style="display:flex">
+                <p class="font-16" style="font-size:14px">自动分配:&emsp;</p>
+                <el-switch
+                  v-model="form.autodistribution"
+                  :active-value="1"
+                  :inactive-value="0"
+                  @change="updateOrderclueruleMain">
+                </el-switch>
+              </div>
               <div style="margin-top:10px">
                 <el-radio class="normal-margin" :disabled="!form.autodistribution">默认按业务员指定负责省市县分配</el-radio>
                 <el-radio-group v-model="radio" :disabled="!form.autodistribution" @change="radioChange">

+ 8 - 3
src/components/import/importFile.vue

@@ -54,7 +54,7 @@
         <p class="tips">• 为保证数据导入顺利,推荐您下载并使用<a :href="modelurl">《Excel标准模板》</a></p>
         <p class="tips">• 文件中数据不能超过5000行</p>
         <div class="dialog-footer">
-          <el-button size="small" @click="dialogUploadVisible = false" class="normal-btn-width">取 消</el-button>
+          <el-button size="small" @click="cancel" class="normal-btn-width">取 消</el-button>
           <el-button size="small" type="warning" @click="dialogUploadVisible = false" class="normal-btn-width btn-warning">确 定</el-button>
         </div>
       </div>
@@ -99,6 +99,12 @@ export default {
     this.listData()
   },
   methods: {
+    cancel () {
+      this.dialogUploadVisible = false
+      this.campaignid = ''
+      this.$refs['my-upload'].clearFiles()
+      this.filelist = []
+    },
     handleChange (file, filelist) {
       this.filelist = filelist
       var index = file.raw.name.lastIndexOf(".");
@@ -173,8 +179,7 @@ export default {
     },
     async listData() {
       const res = await this.$api.requested({
-        "classname":"webmanage.saletool.orderclue.ordercluecampaign",
-        "method": "queryCampaignList",
+        'id':20221101095102,
         "content": {
           "isAll":true,
           "where": {