From b496da6315314d9bd048ac2214d8bc95d2f1df02 Mon Sep 17 00:00:00 2001
From: MrShi <1878285526@qq.com>
Date: 星期三, 13 十一月 2024 08:59:18 +0800
Subject: [PATCH] 优化

---
 company/src/components/enterprise/OperaInsuranceApplyAddWindow.vue |   83 ++++++++++++++++++++++++++++-------------
 1 files changed, 57 insertions(+), 26 deletions(-)

diff --git a/company/src/components/enterprise/OperaInsuranceApplyAddWindow.vue b/company/src/components/enterprise/OperaInsuranceApplyAddWindow.vue
index 15fb687..4940722 100644
--- a/company/src/components/enterprise/OperaInsuranceApplyAddWindow.vue
+++ b/company/src/components/enterprise/OperaInsuranceApplyAddWindow.vue
@@ -10,7 +10,7 @@
     <div class="list">
       <el-form :inline="true" ref="form" :model="form" :rules="rules" class="demo-form-inline">
         <el-form-item label="淇濋櫓鏂规" prop="solutionId">
-          <el-select v-model="form.solutionId" @change="changeSolution" placeholder="璇烽�夋嫨">
+          <el-select v-model="form.solutionId" filterable @change="changeSolution" placeholder="璇烽�夋嫨">
             <el-option
                 v-for="item in company"
                 :key="item.id"
@@ -83,7 +83,8 @@
         <div style="display: inline-block;margin-right: 30px;font-size: 14px"><span>鍚堣璐圭敤锛�</span>
         <span style="font-weight: bold;color: red">{{sumFee}}</span>鍏�
         </div>
-        <el-button type="primary" @click="sele">閫夊彇娲鹃仯鍗曚綅</el-button>
+        <el-button type="primary" @click="sele(1)" v-if="item && item.hasDispatchUnit !== 1">閫夊彇娲鹃仯鍗曚綅</el-button>
+        <el-button type="primary" @click="sele(2)" v-if="item && item.hasDispatchUnit === 1">閫夊彇宸ョ</el-button>
       </div>
     </div>
 <!--    show-summary
@@ -124,6 +125,7 @@
         </template>
       </u-table-column>
       <u-table-column
+          v-if="item && item.hasDispatchUnit !== 1"
           prop="duName"
           label="娲鹃仯鍗曚綅">
       </u-table-column>
@@ -183,7 +185,7 @@
 import importEmployees from '@/components/enterprise/importEmployees'
 import confirmJobType from '@/components/enterprise/confirmJobType'
 import detailsPolicyholder from '@/components/business/detailsPolicyholder'
-import { all, getNewVersion } from '@/api/business/solutions'
+import { all, getNewVersion, getUseList } from '@/api/business/solutions'
 import { mapState } from 'vuex'
 import { create, getCountCyclePriceVO, getDetail, findList } from '@/api/business/insuranceApply'
 import { UTable, UTableColumn } from 'umy-ui'
@@ -208,7 +210,8 @@
         ID: null,
         solutionId: '',
         applyStartTime: '',
-        applyEndTime: ''
+        applyEndTime: '',
+        companyId: null
       },
       solutionName: '',
       type: '',
@@ -258,6 +261,7 @@
       this.isWorking = true
       // if (!this.form.id) {
       create({
+        companyId: this.form.companyId,
         applyDetailList: arr,
         applyStartTime: this.form.applyStartTime,
         applyEndTime: this.form.applyEndTime,
@@ -305,6 +309,10 @@
       this.form.solutionId = ''
       this.form.applyStartTime = ''
       this.form.applyEndTime = ''
+      if (target.companyId) {
+        this.form.companyId = target.companyId
+        this.form.companyName = target.companyName
+      }
       if (target && target.id) {
         this.$nextTick(() => {
           this.$refs.form.resetFields()
@@ -397,31 +405,50 @@
             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
+          if (this.item.hasDispatchUnit !== 1) {
+            for (let i = 0; i < this.tableData.length; i++) {
+              if (!this.tableData[i].worktypeId || !this.tableData[i].duId) {
+                this.$message.warning('璇峰畬鍠勬淳閬e崟浣嶅拰宸ョ淇℃伅')
+                return
+              }
+            }
+          } else {
+            for (let i = 0; i < this.tableData.length; i++) {
+              if (!this.tableData[i].worktypeId) {
+                this.$message.warning('璇峰畬鍠勬淳宸ョ淇℃伅')
+                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
-          })
+          if (!this.form.companyId) {
+            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
+            })
+          } else {
+            this.$refs.detailsPolicyholder.open('鎶曚繚璇︽儏鍗�', {
+              companyName: this.form.companyName,
+              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
+            })
+          }
         }
       })
     },
@@ -470,14 +497,14 @@
         this.$message.warning('璇峰厛閫夋嫨淇濋櫓鏂规')
         return
       }
-      this.$refs.selectEmployees.open('閫夊彇鍛樺伐', { arr: this.tableData, price: this.price, type: 1 })
+      this.$refs.selectEmployees.open('閫夊彇鍛樺伐', { arr: this.tableData, price: this.price, type: 1, companyId: this.form.companyId })
     },
     addUser () {
       if (!this.form.solutionId) {
         this.$message.warning('璇峰厛閫夋嫨淇濋櫓鏂规')
         return
       }
-      this.$refs.addEmployee.open('娣诲姞鍛樺伐', { arr: this.tableData, price: this.price, solutionId: this.form.solutionId })
+      this.$refs.addEmployee.open('娣诲姞鍛樺伐', { arr: this.tableData, price: this.price, solutionId: this.form.solutionId, companyId: this.form.companyId })
     },
     uploadUser () {
       if (!this.form.solutionId) {
@@ -555,7 +582,7 @@
       this.$refs.multipleTable.clearSelection()
     },
     // 閫夋嫨鍛樺伐
-    sele () {
+    sele (type) {
       if (!this.form.solutionId) {
         this.$message.warning('璇烽�夋嫨淇濋櫓鏂规')
         return
@@ -564,14 +591,18 @@
         this.$message.warning('璇烽�夋嫨鍛樺伐')
         return
       }
-      this.$refs.confirmJobType.open('纭宸ョ', { solutionId: this.form.solutionId })
+      this.$refs.confirmJobType.open('纭宸ョ', { solutionId: this.form.solutionId, type })
     },
     // 鏌ヨ鍏ㄩ儴鏂规
     getCompany () {
-      all({})
+      getUseList(this.form.companyId, 2)
         .then(res => {
           this.company = res
         })
+      // all({ companyId: this.form.companyId })
+      //   .then(res => {
+      //     this.company = res
+      //   })
     },
     getAgeByIdCard (idCard) {
       const sexAndAge = {}

--
Gitblit v1.9.3