From bd159ed37ae8ba5b1fa4af95cdb3b7981768dad9 Mon Sep 17 00:00:00 2001
From: nidapeng <jp@doumee.com>
Date: 星期一, 08 四月 2024 17:26:13 +0800
Subject: [PATCH] 提交一把

---
 company/src/views/business/dispatchUnit.vue                     |   22 +
 company/src/components/business/detailsPolicyholder.vue         |    2 
 company/src/components/enterprise/OperaDispatchUnitWindow.vue   |   11 
 company/src/components/enterprise/OperaInsuranceApplyWindow.vue |  699 +++++++++++++++++++++++++------------------------
 company/src/components/business/OperaInsuranceApplyWindow.vue   |    9 
 company/src/components/enterprise/dispatchUnitDetails.vue       |    4 
 company/src/components/business/OperaCompanyWindow.vue          |   39 +
 company/src/views/business/dispatchUnitReview.vue               |   25 +
 company/src/components/base/BaseTable.vue                       |    1 
 9 files changed, 444 insertions(+), 368 deletions(-)

diff --git a/company/src/components/base/BaseTable.vue b/company/src/components/base/BaseTable.vue
index ccdafc0..751dcde 100644
--- a/company/src/components/base/BaseTable.vue
+++ b/company/src/components/base/BaseTable.vue
@@ -57,7 +57,6 @@
       extParams['field.main'] && (this.configData['field.main'] = extParams['field.main'])
       this.tableData.sorts = extParams.sorts
     },
-    // 鎼滅储
     search () {
       this.handlePageChange(1)
     },
diff --git a/company/src/components/business/OperaCompanyWindow.vue b/company/src/components/business/OperaCompanyWindow.vue
index 00aa20c..f213aa5 100644
--- a/company/src/components/business/OperaCompanyWindow.vue
+++ b/company/src/components/business/OperaCompanyWindow.vue
@@ -86,12 +86,12 @@
                 align="center"
                 label="淇濋櫓鏂规">
                 <template slot-scope="scope">
-                  <el-select  v-model="scope.row.solution"  value-key="id" placeholder="璇烽�夋嫨" change="changeSolution($event,scope.$index)">
+                  <el-select v-model="scope.row.solution.id" @change="changeSolution($event, scope.$index)" placeholder="璇烽�夋嫨">
                     <el-option
                         v-for="item in programme"
                         :key="item.id"
                         :label="item.name"
-                        :value="item">
+                        :value="item.id">
                     </el-option>
                   </el-select>
                 </template>
@@ -100,7 +100,7 @@
                 align="center"
                 label="濮旀墭鍟嗘埛">
                 <template slot-scope="scope">
-                  <el-select  v-model="scope.row.shopId" clearable value-key="id" placeholder="璇烽�夋嫨" >
+                  <el-select  v-model="scope.row.shopId"  :disabled="scope.row.solution.type ==1" clearable value-key="id" placeholder="璇烽�夋嫨" >
                     <el-option
                         v-for="item in shops"
                         :key="item.id"
@@ -114,8 +114,8 @@
                 align="center"
                 label="鍔犲噺淇濆姛鑳�">
                 <template slot-scope="{row}">
-                    <el-checkbox :true-label="1" :false-label="0" v-model="row.canAdd">鍔犱繚</el-checkbox>
-                    <el-checkbox :true-label="1" :false-label="0" v-model="row.canReduce">鍑忎繚</el-checkbox>
+                    <el-checkbox :true-label="1" :false-label="0" disabled v-model="row.canAdd">鍔犱繚</el-checkbox>
+                    <el-checkbox :true-label="1" :false-label="0" disabled v-model="row.canReduce">鍑忎繚</el-checkbox>
                 </template>
             </el-table-column>
             <el-table-column
@@ -170,10 +170,10 @@
         },
         solutionList: [
           {
-            solution: null,
-            shop: null,
-            canAdd: 0,
-            canReduce: 0
+            solution: { id: null, baseId: null,type:0 },
+            canAdd: 1,
+            shopId:null,
+            canReduce: 1
           }
         ],
         type: '0',
@@ -255,8 +255,21 @@
     }
   },
   methods: {
-    changeSolution(row,index){
-     this.form.solutionList[index].solution=row
+    changeSolution(e,index){
+      let baseId = ''
+      this.programme.forEach(item => {
+        if (item.id === e) {
+          baseId = item.baseId
+          this.form.solutionList[index].solution.type = item.type
+          if(item.type == 1){
+            this.form.solutionList[index].shopId =item.shopId
+          }
+        }
+      })
+
+      this.form.solutionList[index].solution.baseId = baseId
+
+     // this.form.solutionList[index].solution=row
     },
     send () {
       if (!this.form.phone) {
@@ -322,8 +335,8 @@
         solutionId: null,
         solution: {},
         shopId: null,
-        canAdd: '',
-        canReduce: ''
+        canAdd: 1,
+        canReduce: 1
       })
     },
     handleRemove (file, fileList) {
diff --git a/company/src/components/business/OperaInsuranceApplyWindow.vue b/company/src/components/business/OperaInsuranceApplyWindow.vue
index f12083e..736af21 100644
--- a/company/src/components/business/OperaInsuranceApplyWindow.vue
+++ b/company/src/components/business/OperaInsuranceApplyWindow.vue
@@ -25,13 +25,12 @@
                   <div class="desc_item_label_right">
                       <template v-if="userInfo.type === 1">
                         <el-button type="primary" @click="$refs.InsuranceDetails.open('鎶曚繚璇︽儏鍗�',model,0)">瀵煎嚭璇﹀崟</el-button>
-                        <el-button v-if="[0, 2, 3, 10].includes(model.status)" type="danger" @click="$refs.applyReturn.open('鐢宠閫�鍥�', {id: dataId})">鐢宠閫�鍥�</el-button>
+                        <el-button v-if="[2, 3, 5, 7, 8].includes(model.status)" type="primary" @click="viewToubaodan">鏌ョ湅鎶曚繚鍗�</el-button>
+                        <el-button v-if="model.status == 2" type="primary" @click="$refs.operaverifyPhoneNumberWindew.open('楠岃瘉鎵嬫満鍙�')">绛剧讲鎶曚繚鍗�</el-button>
+                        <el-button v-if="model.status == 5" type="primary" @click="viewBaoxiandan">鏌ョ湅淇濋櫓鍗�</el-button>
                         <el-button v-if="model.status == 4" type="primary" @click="$refs.OperaInsuranceApply.open('鎶曚繚鐢宠', {id: dataId})">鍐嶆鎶曚繚</el-button>
+                        <el-button v-if="[0, 2, 3, 10].includes(model.status)" type="danger" @click="$refs.applyReturn.open('鐢宠閫�鍥�', {id: dataId})">鐢宠閫�鍥�</el-button>
                         <el-button v-if="model.status == 4" type="primary" @click="closeOrder">鍏抽棴璁㈠崟</el-button>
-                          <el-button v-if="[2, 3, 5, 7, 8].includes(model.status)" type="primary" @click="viewToubaodan">鏌ョ湅鎶曚繚鍗�</el-button>
-                          <el-button v-if="model.status == 5" type="primary" @click="viewBaoxiandan">鏌ョ湅淇濋櫓鍗�</el-button>
-<!--                          goSign-->
-                          <el-button v-if="model.status == 2" type="primary" @click="$refs.operaverifyPhoneNumberWindew.open('楠岃瘉鎵嬫満鍙�')">绛剧讲鎶曚繚鍗�</el-button>
                       </template>
                     <template v-else>
                       <el-button type="primary" @click="$refs.InsuranceDetails.open('鎶曚繚璇︽儏鍗�',model,0)">瀵煎嚭璇﹀崟</el-button>
diff --git a/company/src/components/business/detailsPolicyholder.vue b/company/src/components/business/detailsPolicyholder.vue
index 3fe84cd..a2118ae 100644
--- a/company/src/components/business/detailsPolicyholder.vue
+++ b/company/src/components/business/detailsPolicyholder.vue
@@ -25,7 +25,7 @@
                     <div class="box_table_content_item box_table_content_header">{{ model.applyStartTime }}</div>
                     <div class="box_table_content_item box_table_content_header">{{ model.applyEndTime }}</div>
                     <div class="box_table_content_item box_table_content_header">{{ model.insureNum }}</div>
-                    <div class="box_table_content_item box_table_content_header">{{model.totalPrice}}</div>
+                    <div class="box_table_content_item box_table_content_header"  >{{model.solutionType==0?model.totalPrice:'-'}}</div>
                 </div>
             </div>
             <div class="box_table" v-if="model">
diff --git a/company/src/components/enterprise/OperaDispatchUnitWindow.vue b/company/src/components/enterprise/OperaDispatchUnitWindow.vue
index 4d4f3e5..a3d61f4 100644
--- a/company/src/components/enterprise/OperaDispatchUnitWindow.vue
+++ b/company/src/components/enterprise/OperaDispatchUnitWindow.vue
@@ -260,6 +260,17 @@
     },
     // 鍒囨崲鏂规
     changeTypeWork(id, index) {
+      this.form.saveDuSolutionDTOList[index].saveDuWorkTypeDTOList = [
+        {
+          videoUrl: '',
+          workTypeId: '',
+          workTypeName: '',
+          file: {
+            videourl: '',
+            videourlfull: ''
+          }
+        }
+      ]
       findListByDTO({ queryType: 0, id })
         .then(res => {
           this.form.saveDuSolutionDTOList[index].typeWork = res
diff --git a/company/src/components/enterprise/OperaInsuranceApplyWindow.vue b/company/src/components/enterprise/OperaInsuranceApplyWindow.vue
index b6ed940..7fcb3e3 100644
--- a/company/src/components/enterprise/OperaInsuranceApplyWindow.vue
+++ b/company/src/components/enterprise/OperaInsuranceApplyWindow.vue
@@ -51,7 +51,7 @@
                 <el-form-item label="鎶曚繚骞撮緞" v-if="item">
                     <span>{{item.minAge}} 鑷� {{item.maxAge}}</span>
                 </el-form-item>
-                <el-form-item label="璐圭敤" v-if="item">
+                <el-form-item label="璐圭敤" v-if="item && item.type ==0">
                     <span>{{item.price}}鍏�</span>
                     <span v-if="item.timeUnit === 0">/澶�</span>
                     <span v-if="item.timeUnit === 1">/鍗婃湀</span>
@@ -161,11 +161,11 @@
   data () {
     return {
       form: {
-          id: null,
-          ID: null,
-          solutionId: '',
-          applyStartTime: '',
-          applyEndTime: ''
+        id: null,
+        ID: null,
+        solutionId: '',
+        applyStartTime: '',
+        applyEndTime: ''
       },
       solutionName: '',
       type: '',
@@ -176,353 +176,359 @@
       item: null,
       // 楠岃瘉瑙勫垯
       rules: {
-          solutionId: [
-              { required: true, message: '璇烽�夋嫨淇濋櫓鏂规' }
-          ],
-          applyStartTime: [
-              { required: true, message: '璇烽�夋嫨鏈熸湜淇濋櫓鐢熸晥璧锋湡' }
-          ]
+        solutionId: [
+          { required: true, message: '璇烽�夋嫨淇濋櫓鏂规' }
+        ],
+        applyStartTime: [
+          { required: true, message: '璇烽�夋嫨鏈熸湜淇濋櫓鐢熸晥璧锋湡' }
+        ]
       },
       tableData: []
     }
   },
   created () {
-      this.config({
-          api: '/business/insuranceApply',
-          'field.id': 'id'
-      })
+    this.config({
+      api: '/business/insuranceApply',
+      'field.id': 'id'
+    })
   },
-    computed: {
-      ...mapState(['userInfo'])
+  computed: {
+    ...mapState(['userInfo'])
+  },
+  methods: {
+    successEvent () {
+      const arr = JSON.parse(JSON.stringify(this.tableData))
+      arr.forEach(item => {
+        item.idcardNo = item.idCard
+      })
+      this.isWorking = true
+      // if (!this.form.id) {
+      create({
+        applyDetailList: arr,
+        applyStartTime: this.form.applyStartTime,
+        applyEndTime: this.form.applyEndTime,
+        solutionId: this.form.solutionId
+      }).then(() => {
+        this.visible = false
+        this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
+        this.$emit('success')
+      })
+        .catch(e => {
+          this.$tip.apiFailed(e)
+        })
+        .finally(() => {
+          this.isWorking = false
+        })
+      // } else {
+      //     updateData({
+      //         id: this.form.id,
+      //         applyDetailList: arr,
+      //         applyStartTime: this.form.applyStartTime,
+      //         applyEndTime: this.form.applyEndTime,
+      //         solutionId: this.form.solutionId
+      //     }).then(() => {
+      //         this.visible = false
+      //         this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
+      //         this.$emit('success')
+      //     }).catch(e => {
+      //         this.$tip.apiFailed(e)
+      //     })
+      //         .finally(() => {
+      //             this.isWorking = false
+      //         })
+      // }
     },
-    methods: {
-      successEvent() {
-          let arr = JSON.parse(JSON.stringify(this.tableData))
-          arr.forEach(item => {
-              item.idcardNo = item.idCard
-          })
-          this.isWorking = true
-          // if (!this.form.id) {
-              create({
-                  applyDetailList: arr,
-                  applyStartTime: this.form.applyStartTime,
-                  applyEndTime: this.form.applyEndTime,
-                  solutionId: this.form.solutionId
-              }).then(() => {
-                  this.visible = false
-                  this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
-                  this.$emit('success')
-              })
-                  .catch(e => {
-                      this.$tip.apiFailed(e)
-                  })
-                  .finally(() => {
-                      this.isWorking = false
-                  })
-          // } else {
-          //     updateData({
-          //         id: this.form.id,
-          //         applyDetailList: arr,
-          //         applyStartTime: this.form.applyStartTime,
-          //         applyEndTime: this.form.applyEndTime,
-          //         solutionId: this.form.solutionId
-          //     }).then(() => {
-          //         this.visible = false
-          //         this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
-          //         this.$emit('success')
-          //     }).catch(e => {
-          //         this.$tip.apiFailed(e)
-          //     })
-          //         .finally(() => {
-          //             this.isWorking = false
-          //         })
-          // }
-      },
-      open (title, target) {
-          this.title = title
-          this.tableData = []
-          this.form.id = null
-          this.item = null
-          if (target.type) {
-              this.type = target.type
-          }
-          this.form.solutionId = ''
-          this.form.applyStartTime = ''
-          this.form.applyEndTime = ''
-          if (target && target.id) {
-              this.$nextTick(() => {
-                  this.$refs.form.resetFields()
-                  this.form.id = target.id
-                  this.getDetails()
-              })
-          } else {
-              this.$nextTick(() => {
-                  this.$refs.form.resetFields()
-                  this.form[this.configData['field.id']] = null
-              })
-          }
-          this.getCompany()
-          this.visible = true
-          this.updatePickerOptions()
-      },
-        // 鑾峰彇鎶曚繚璇︽儏
-        getDetails() {
-            findList({ applyId: this.form.id })
-                .then(res => {
-                    res.forEach(item => {
-                        console.log(item)
-                        item.idCard = item.idcardNo
-                        item.fee = ''
-                        if (this.type === 1) {
-                            item.duName = ''
-                            item.duId = ''
-                            item.worktypeId = ''
-                            item.workTypeName = ''
-                        }
-                    })
-                    this.tableData = res
-                })
-            getDetail(this.form.id)
-                .then(res => {
-                    // this.form.solutionId = res.solutionId
-                    this.changeSolution1(res.solutionId)
-                })
-        },
-        getSummaries(param) {
-            const { columns, data } = param
-            const sums = []
-            columns.forEach((column, index) => {
-                if (index === 0) {
-                    sums[index] = '鎬讳环'
-                    return
-                } else if (index === 7) {
-                    let total = 0
-                    this.tableData.forEach(item => {
-                        total += item.fee
-                    })
-                    sums[index] = total
-                    return
-                }
-            })
-            return sums
-        },
-        deleItem() {
-            if (this.seleData.length === 0) {
-                this.$message.warning('鑷冲皯閫夋嫨涓�椤瑰唴瀹�')
-                return
-            }
-            this.seleData.forEach(item => {
-                this.tableData.forEach((row, index) => {
-                    if (item === row.idCard) {
-                        this.tableData.splice(index, 1)
-                    }
-                })
-            })
-        },
-        confirm() {
-            this.$refs.form.validate((valid) => {
-                if (valid) {
-                    if (this.tableData.length === 0) {
-                        this.$message.warning('鑷冲皯娣诲姞涓�椤瑰憳宸�')
-                        return
-                    }
-                    for (let i = 0; i < this.tableData.length; i++) {
-                        console.log(this.tableData[i].worktypeId)
-                        console.log(this.tableData[i].duId)
-                        if (!this.tableData[i].worktypeId || !this.tableData[i].duId) {
-                            this.$message.warning('璇峰畬鍠勬淳閬e崟浣嶅拰宸ョ淇℃伅')
-                            return
-                        }
-                    }
-
-                    let price = 0
-                    this.tableData.forEach(item => {
-                        price = price + item.fee
-                    })
-                    this.$refs.detailsPolicyholder.open('鎶曚繚璇︽儏鍗�', {
-                        companyName: this.userInfo.company.name,
-                        solutionName: this.item.name,
-                        applyStartTime: this.form.applyStartTime,
-                        applyEndTime: this.form.applyEndTime,
-                        insureNum: this.tableData.length,
-                        totalPrice: price,
-                        detailList: this.tableData
-                    })
-
-                }
-            })
-        },
-        // 鑾峰彇缁撴潫鏃堕棿鍜屼环鏍�
-        getTimeVal(time) {
-            getCountCyclePriceVO({
-                solutionsId: this.form.solutionId,
-                startDate: time
-            }).then(res => {
-                this.price = res.cyclePrice
-                this.form.applyEndTime = res.endDate
-                this.tableData.forEach(item => {
-                    item.fee = res.cyclePrice
-                })
-                this.$forceUpdate()
-            })
-        },
-        getDate(n) { // n涓哄灏戝ぉ锛�-浠h〃寰�鍓嶏紝+浠h〃寰�鍚�
-            let date1 = new Date(),
-            time1 = date1.getFullYear() + "-" + (date1.getMonth() + 1) + "-" + date1.getDate();//time1琛ㄧず褰撳墠鏃堕棿
-            let date2 = new Date(date1);
-            date2.setDate(date1.getDate() + n);
-            let time2 = date2.getFullYear() + "-" + ("0" + (date2.getMonth() + 1)).slice(-2) + "-" + ("0" + date2.getDate()).slice(-2);
-            return time2
-        },
-        updatePickerOptions() {
-          var that = this;
-            this.pickerOptions = {
-                disabledDate(time) {
-                    if (!that.item) return
-                    if (that.item.validType === 1) {
-                        // 娆℃湀
-                        const currentDate = new Date();
-                        currentDate.setMonth(currentDate.getMonth() + 1);
-                        currentDate.setDate(1);
-                        return time.getTime() <= new Date(currentDate.toLocaleString()).getTime() - 8.64e7;
-                    } else if (that.item.validType === 0) {
-                        // 澶氬皯鏃ュ悗鐢熸晥
-                        return time.getTime() <= new Date(that.getDate(that.item.validTypeNum - 1)).getTime();
-                    }
-                }
-            };
-        },
-        seleUser() {
-            if (!this.form.solutionId) {
-                this.$message.warning('璇峰厛閫夋嫨淇濋櫓鏂规')
-                return
-            }
-            this.$refs.selectEmployees.open('閫夊彇鍛樺伐', { arr: this.tableData, price: this.price, type: 1 })
-        },
-      addUser() {
-          if (!this.form.solutionId) {
-              this.$message.warning('璇峰厛閫夋嫨淇濋櫓鏂规')
-              return
-          }
-          this.$refs.addEmployee.open('娣诲姞鍛樺伐', { arr: this.tableData, price: this.price })
-      },
-      uploadUser() {
-          if (!this.form.solutionId) {
-              this.$message.warning('璇峰厛閫夋嫨淇濋櫓鏂规')
-              return
-          }
-          this.$refs.importEmployees.open('涓婁紶鍚嶅崟', { arr: this.tableData, solutionId: this.form.solutionId, type: 1, price: this.price })
-      },
-      // 鍒囨崲鏂规
-      changeSolution(e) {
-          if (!this.form.id) {
-              this.tableData = []
-          } else {
-              this.price = ''
-              this.form.applyEndTime = ''
-              this.form.applyStartTime = ''
-              this.tableData.forEach(item => {
-                  item.fee = ''
-                  item.duName = ''
-                  item.duId = ''
-                  item.workTypeName = ''
-                  item.workTypeId = ''
-              })
-          }
-          this.company.forEach(item => {
-              if (item.id === e) {
-                  // this.price = item.price
-                  this.item = item
-                  this.updatePickerOptions()
-              }
-          })
-          this.tableData.forEach(item => {
-              item.fee = this.price
-          })
-      },
-        // 鍒囨崲鏂规
-        changeSolution1(e) {
-            getNewVersion(e)
-                .then(res => {
-                    this.form.solutionId = res.id
-                    this.company.forEach(item => {
-                        if (item.id === res.id) {
-                            // this.price = item.price
-                            this.item = item
-                            this.updatePickerOptions()
-                        }
-                    })
-                })
-            this.tableData.forEach(item => {
-                item.fee = this.price
-            })
-        },
-      dele(index) {
-          this.tableData.splice(index, 1)
-      },
-      getUser(obj) {
-          this.seleData.forEach(id => {
-              this.tableData.forEach(row => {
-                   if (id === row.idCard) {
-                       row.workTypeName = obj.workTypeName
-                       row.worktypeId = obj.worktypeId
-                       row.duName = obj.duName
-                       row.duId = obj.duId
-                   }
-              })
-          })
-          this.seleData = []
-          this.$refs.multipleTable.clearSelection();
-      },
-      // 閫夋嫨鍛樺伐
-      sele() {
-          if (!this.form.solutionId) {
-              this.$message.warning('璇烽�夋嫨淇濋櫓鏂规')
-              return
-          }
-          if (this.seleData.length === 0) {
-              this.$message.warning('璇烽�夋嫨鍛樺伐')
-              return
-          }
-          this.$refs.confirmJobType.open('纭宸ョ', { solutionId: this.form.solutionId })
-      },
-      // 鏌ヨ鍏ㄩ儴鏂规
-      getCompany() {
-          all({})
-            .then(res => {
-                this.company = res
-            })
-      },
-      getAgeByIdCard(idCard){
-          const sexAndAge = {}
-          //鑾峰彇鐢ㄦ埛韬唤璇佸彿鐮�
-          const userCard = idCard
-          //濡傛灉鐢ㄦ埛韬唤璇佸彿鐮佷负undefined鍒欒繑鍥炵┖
-          if (!userCard) {
-              return sexAndAge
-          }
-          // 鑾峰彇鍑虹敓鏃ユ湡
-          const yearBirth = userCard.substring(6, 10)
-          const monthBirth = userCard.substring(10, 12)
-          const dayBirth = userCard.substring(12, 14)
-          // 鑾峰彇褰撳墠骞存湀鏃ュ苟璁$畻骞撮緞
-          const myDate = new Date()
-          const monthNow = myDate.getMonth() + 1
-          const dayNow = myDate.getDate()
-          let age = myDate.getFullYear() - yearBirth
-          if (monthNow < monthBirth || (monthNow == monthBirth && dayNow < dayBirth)) {
-              age--
-          }
-          // 寰楀埌骞撮緞
-          sexAndAge.age = age
-          return sexAndAge.age
-      },
-      handleSelectionChange (e) {
-          this.seleData = e.map(item => item.idCard)
-      },
-      getValue(list) {
-          this.tableData.push(...list)
+    open (title, target) {
+      this.title = title
+      this.tableData = []
+      this.form.id = null
+      this.item = null
+      if (target.type) {
+        this.type = target.type
       }
+      this.form.solutionId = ''
+      this.form.applyStartTime = ''
+      this.form.applyEndTime = ''
+      if (target && target.id) {
+        this.$nextTick(() => {
+          this.$refs.form.resetFields()
+          this.form.id = target.id
+          this.getDetails()
+        })
+      } else {
+        this.$nextTick(() => {
+          this.$refs.form.resetFields()
+          this.form[this.configData['field.id']] = null
+        })
+      }
+      this.getCompany()
+      this.visible = true
+      this.updatePickerOptions()
+    },
+    // 鑾峰彇鎶曚繚璇︽儏
+    getDetails () {
+      findList({ applyId: this.form.id })
+        .then(res => {
+          res.forEach(item => {
+            console.log(item)
+            item.idCard = item.idcardNo
+            item.fee = ''
+            if (this.type === 1) {
+              item.duName = ''
+              item.duId = ''
+              item.worktypeId = ''
+              item.workTypeName = ''
+            }
+          })
+          this.tableData = res
+        })
+      getDetail(this.form.id)
+        .then(res => {
+          // this.form.solutionId = res.solutionId
+          this.changeSolution1(res.solutionId)
+        })
+    },
+    getSummaries (param) {
+      const { columns, data } = param
+      const sums = []
+      columns.forEach((column, index) => {
+        if (index === 0) {
+          sums[index] = '鎬讳环'
+        } else if (index === 7) {
+          let total = 0
+          this.tableData.forEach(item => {
+            total += item.fee
+          })
+          sums[index] = total
+        }
+      })
+      return sums
+    },
+    deleItem () {
+      if (this.seleData.length === 0) {
+        this.$message.warning('鑷冲皯閫夋嫨涓�椤瑰唴瀹�')
+        return
+      }
+      this.seleData.forEach(item => {
+        this.tableData.forEach((row, index) => {
+          if (item === row.idCard) {
+            this.tableData.splice(index, 1)
+          }
+        })
+      })
+    },
+    confirm () {
+      this.$refs.form.validate((valid) => {
+        if (valid) {
+          if (this.tableData.length === 0) {
+            this.$message.warning('鑷冲皯娣诲姞涓�椤瑰憳宸�')
+            return
+          }
+          for (let i = 0; i < this.tableData.length; i++) {
+            console.log(this.tableData[i].worktypeId)
+            console.log(this.tableData[i].duId)
+            if (!this.tableData[i].worktypeId || !this.tableData[i].duId) {
+              this.$message.warning('璇峰畬鍠勬淳閬e崟浣嶅拰宸ョ淇℃伅')
+              return
+            }
+          }
+
+          let price = 0
+          if (this.item && this.item.type != 1) {
+            this.tableData.forEach(item => {
+              price = price + item.fee
+            })
+          }
+          this.$refs.detailsPolicyholder.open('鎶曚繚璇︽儏鍗�', {
+            companyName: this.userInfo.company.name,
+            solutionName: this.item.name,
+            solutionType: this.item.type,
+            applyStartTime: this.form.applyStartTime,
+            applyEndTime: this.form.applyEndTime,
+            insureNum: this.tableData.length,
+            totalPrice: price,
+            detailList: this.tableData
+          })
+        }
+      })
+    },
+    // 鑾峰彇缁撴潫鏃堕棿鍜屼环鏍�
+    getTimeVal (time) {
+      getCountCyclePriceVO({
+        solutionsId: this.form.solutionId,
+        startDate: time
+      }).then(res => {
+        this.price = res.cyclePrice
+        this.form.applyEndTime = res.endDate
+        this.tableData.forEach(item => {
+          item.fee = res.cyclePrice
+        })
+        this.$forceUpdate()
+      })
+    },
+    getDate (n) { // n涓哄灏戝ぉ锛�-浠h〃寰�鍓嶏紝+浠h〃寰�鍚�
+      const date1 = new Date()
+      const time1 = date1.getFullYear() + '-' + (date1.getMonth() + 1) + '-' + date1.getDate()// time1琛ㄧず褰撳墠鏃堕棿
+      const date2 = new Date(date1)
+      date2.setDate(date1.getDate() + n)
+      const time2 = date2.getFullYear() + '-' + ('0' + (date2.getMonth() + 1)).slice(-2) + '-' + ('0' + date2.getDate()).slice(-2)
+      return time2
+    },
+    updatePickerOptions () {
+      var that = this
+      this.pickerOptions = {
+        disabledDate (time) {
+          if (!that.item) return
+          if (that.item.validType === 1) {
+            // 娆℃湀
+            const currentDate = new Date()
+            currentDate.setMonth(currentDate.getMonth() + 1)
+            currentDate.setDate(1)
+            return time.getTime() <= new Date(currentDate.toLocaleString()).getTime() - 8.64e7
+          } else if (that.item.validType === 0) {
+            // 澶氬皯鏃ュ悗鐢熸晥
+            return time.getTime() <= new Date(that.getDate(that.item.validTypeNum - 1)).getTime()
+          }
+        }
+      }
+    },
+    seleUser () {
+      if (!this.form.solutionId) {
+        this.$message.warning('璇峰厛閫夋嫨淇濋櫓鏂规')
+        return
+      }
+      this.$refs.selectEmployees.open('閫夊彇鍛樺伐', { arr: this.tableData, price: this.price, type: 1 })
+    },
+    addUser () {
+      if (!this.form.solutionId) {
+        this.$message.warning('璇峰厛閫夋嫨淇濋櫓鏂规')
+        return
+      }
+      this.$refs.addEmployee.open('娣诲姞鍛樺伐', { arr: this.tableData, price: this.price })
+    },
+    uploadUser () {
+      if (!this.form.solutionId) {
+        this.$message.warning('璇峰厛閫夋嫨淇濋櫓鏂规')
+        return
+      }
+      this.$refs.importEmployees.open('涓婁紶鍚嶅崟', { arr: this.tableData, solutionId: this.form.solutionId, type: 1, price: this.price })
+    },
+    // 鍒囨崲鏂规
+    changeSolution (e) {
+      this.form.applyEndTime = ''
+      this.form.applyStartTime = ''
+      if (!this.form.id) {
+        this.tableData = []
+      } else {
+        this.price = ''
+        this.tableData.forEach(item => {
+          item.fee = ''
+          item.duName = ''
+          item.duId = ''
+          item.workTypeName = ''
+          item.workTypeId = ''
+        })
+      }
+      this.company.forEach(item => {
+        if (item.id === e) {
+          // this.price = item.price
+          this.item = item
+          if(this.item && this.item.type==1){
+            this.item.fee=0
+          }
+          this.updatePickerOptions()
+        }
+      })
+      this.tableData.forEach(item => {
+        item.fee = this.price
+      })
+    },
+    // 鍒囨崲鏂规
+    changeSolution1 (e) {
+      getNewVersion(e)
+        .then(res => {
+          this.form.solutionId = res.id
+          this.company.forEach(item => {
+            if (item.id === res.id) {
+              // this.price = item.price
+              this.item = item
+              if(this.item && this.item.type==1){
+                this.item.fee=0
+              }
+              this.updatePickerOptions()
+            }
+          })
+        })
+      this.tableData.forEach(item => {
+        item.fee = this.price
+      })
+    },
+    dele (index) {
+      this.tableData.splice(index, 1)
+    },
+    getUser (obj) {
+      this.seleData.forEach(id => {
+        this.tableData.forEach(row => {
+          if (id === row.idCard) {
+            row.workTypeName = obj.workTypeName
+            row.worktypeId = obj.worktypeId
+            row.duName = obj.duName
+            row.duId = obj.duId
+          }
+        })
+      })
+      this.seleData = []
+      this.$refs.multipleTable.clearSelection()
+    },
+    // 閫夋嫨鍛樺伐
+    sele () {
+      if (!this.form.solutionId) {
+        this.$message.warning('璇烽�夋嫨淇濋櫓鏂规')
+        return
+      }
+      if (this.seleData.length === 0) {
+        this.$message.warning('璇烽�夋嫨鍛樺伐')
+        return
+      }
+      this.$refs.confirmJobType.open('纭宸ョ', { solutionId: this.form.solutionId })
+    },
+    // 鏌ヨ鍏ㄩ儴鏂规
+    getCompany () {
+      all({})
+        .then(res => {
+          this.company = res
+        })
+    },
+    getAgeByIdCard (idCard) {
+      const sexAndAge = {}
+      // 鑾峰彇鐢ㄦ埛韬唤璇佸彿鐮�
+      const userCard = idCard
+      // 濡傛灉鐢ㄦ埛韬唤璇佸彿鐮佷负undefined鍒欒繑鍥炵┖
+      if (!userCard) {
+        return sexAndAge
+      }
+      // 鑾峰彇鍑虹敓鏃ユ湡
+      const yearBirth = userCard.substring(6, 10)
+      const monthBirth = userCard.substring(10, 12)
+      const dayBirth = userCard.substring(12, 14)
+      // 鑾峰彇褰撳墠骞存湀鏃ュ苟璁$畻骞撮緞
+      const myDate = new Date()
+      const monthNow = myDate.getMonth() + 1
+      const dayNow = myDate.getDate()
+      let age = myDate.getFullYear() - yearBirth
+      if (monthNow < monthBirth || (monthNow == monthBirth && dayNow < dayBirth)) {
+        age--
+      }
+      // 寰楀埌骞撮緞
+      sexAndAge.age = age
+      return sexAndAge.age
+    },
+    handleSelectionChange (e) {
+      this.seleData = e.map(item => item.idCard)
+    },
+    getValue (list) {
+      this.tableData.push(...list)
+    }
   }
 }
 </script>
@@ -559,5 +565,8 @@
         width: 100%;
         font-size: 14px;
         color: black;
+      span{
+        display: block;
+      }
     }
 </style>
diff --git a/company/src/components/enterprise/dispatchUnitDetails.vue b/company/src/components/enterprise/dispatchUnitDetails.vue
index d3b84e6..664e047 100644
--- a/company/src/components/enterprise/dispatchUnitDetails.vue
+++ b/company/src/components/enterprise/dispatchUnitDetails.vue
@@ -112,6 +112,10 @@
         <addJobType ref="addJobType" @success="callback" />
         <!-- 缂栬緫 -->
         <OperaDispatchUnitWindow ref="OperaDispatchUnitWindow" @success="callback" />
+
+      <template  v-slot:footer>
+        <el-button @click="visible=false">杩斿洖</el-button>
+      </template>
     </GlobalWindow>
 </template>
 
diff --git a/company/src/views/business/dispatchUnit.vue b/company/src/views/business/dispatchUnit.vue
index cf32e52..75a7f80 100644
--- a/company/src/views/business/dispatchUnit.vue
+++ b/company/src/views/business/dispatchUnit.vue
@@ -12,6 +12,20 @@
           </el-option>
         </el-select>
       </el-form-item>
+      <el-form-item label="瀹℃牳鐘舵��" prop="status">
+        <el-select v-model="searchForm.unitStatus"  clearable @change=" search1" placeholder="璇烽�夋嫨"  >
+          <el-option label="寰呭鏍�" value="0"></el-option>
+          <el-option label="瀹℃牳閫氳繃" value="1"></el-option>
+          <el-option label="瀹℃牳涓嶉�氳繃" value="2"></el-option>
+        </el-select>
+      </el-form-item>
+      <el-form-item label="宸ョ瀹℃牳鐘舵��" prop="status">
+        <el-select v-model="searchForm.worktypeStatus"  clearable placeholder="璇烽�夋嫨"  >
+          <el-option label="宸ョ寰呭" value="0"></el-option>
+          <el-option label="瀹℃牳閫氳繃" value="1"></el-option>
+          <el-option label="瀹℃牳涓嶉�氳繃" value="2"></el-option>
+        </el-select>
+      </el-form-item>
       <el-form-item label="娲鹃仯鍗曚綅" prop="name">
         <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ユ淳閬e崟浣�" @keypress.enter.native="search"></el-input>
       </el-form-item>
@@ -84,7 +98,9 @@
       // 鎼滅储
       searchForm: {
         name: '',
-        companyId: ''
+        companyId: '',
+        unitStatus:null,
+        worktypeStatus:null,
       },
       companyList:[]
     }
@@ -103,6 +119,10 @@
     // handlePageChange() {
     //   this.search()
     // },
+    search1 () {
+      this.searchForm.worktypeStatus=null
+      this.search()
+    },
     loadSelectList() {
       companyAll({}).then(res => {
         this.companyList = res
diff --git a/company/src/views/business/dispatchUnitReview.vue b/company/src/views/business/dispatchUnitReview.vue
index 1fc83ac..8e0e362 100644
--- a/company/src/views/business/dispatchUnitReview.vue
+++ b/company/src/views/business/dispatchUnitReview.vue
@@ -3,13 +3,27 @@
         <!-- 鎼滅储琛ㄥ崟 -->
         <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
           <el-form-item label="鎵�灞炰紒涓�" prop="companyId">
-            <el-select v-model="searchForm.companyId" placeholder="璇烽�夋嫨" @change="search">
+            <el-select v-model="searchForm.companyId"  placeholder="璇烽�夋嫨" @change="search">
               <el-option
                   v-for="item in companyList"
                   :key="item.id"
                   :label="item.name"
                   :value="item.id">
               </el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="瀹℃牳鐘舵��" prop="status">
+            <el-select v-model="searchForm.unitStatus"  clearable @change=" search1" placeholder="璇烽�夋嫨"  >
+              <el-option label="寰呭鏍�" value="0"></el-option>
+              <el-option label="瀹℃牳閫氳繃" value="1"></el-option>
+              <el-option label="瀹℃牳涓嶉�氳繃" value="2"></el-option>
+            </el-select>
+          </el-form-item>
+          <el-form-item label="宸ョ瀹℃牳鐘舵��" prop="status">
+            <el-select v-model="searchForm.worktypeStatus"  clearable placeholder="璇烽�夋嫨"  >
+              <el-option label="宸ョ寰呭" value="0"></el-option>
+              <el-option label="瀹℃牳閫氳繃" value="1"></el-option>
+              <el-option label="瀹℃牳涓嶉�氳繃" value="2"></el-option>
             </el-select>
           </el-form-item>
           <el-form-item label="娲鹃仯鍗曚綅" prop="name">
@@ -84,7 +98,9 @@
                 // 鎼滅储
                 searchForm: {
                     name: '',
-                    companyId: ''
+                    companyId: '',
+                    unitStatus:null,
+                    worktypeStatus:null,
                 },
               companyList:[]
             }
@@ -103,6 +119,11 @@
         // handlePageChange() {
         //   this.search()
         // },
+        // 鎼滅储
+        search1 () {
+          this.searchForm.worktypeStatus=null
+          this.search()
+        },
         loadSelectList() {
           companyAll({}).then(res => {
             this.companyList = res

--
Gitblit v1.9.3