From 663dbe4ddca1fa409e6acbc1f77d924c161b0c39 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 09 六月 2025 17:04:50 +0800
Subject: [PATCH] 提交一把订单
---
company/src/components/enterprise/OperaInsuranceApplyAddWindow.vue | 179 +++++++++++++++++++++++++++++++++++++++++------------------
1 files changed, 123 insertions(+), 56 deletions(-)
diff --git a/company/src/components/enterprise/OperaInsuranceApplyAddWindow.vue b/company/src/components/enterprise/OperaInsuranceApplyAddWindow.vue
index 7e8a4ab..2b3f5b0 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>
@@ -168,10 +170,10 @@
<confirmJobType ref="confirmJobType" @result="getUser" />
<!-- 鏌ョ湅璇﹀崟 -->
<detailsPolicyholder ref="detailsPolicyholder" @success="successEvent" />
- <!-- 鐩翠繚鎶曚繚璇︽儏 -->
+<!-- <!– 鐩翠繚鎶曚繚璇︽儏 –>
<OperaInsuranceApplyDetails ref="OperaInsuranceApplyDetails" />
- <!-- 濮旀墭鎶曚繚璇︽儏 -->
- <OperaWtbApplyShopWindow ref="OperaWtbApplyShopWindow" />
+ <!– 濮旀墭鎶曚繚璇︽儏 –>
+ <OperaWtbApplyShopWindow ref="OperaWtbApplyShopWindow" />-->
</GlobalWindow>
</template>
@@ -179,34 +181,37 @@
import BaseOpera from '@/components/base/BaseOpera'
import GlobalWindow from '@/components/common/GlobalWindow'
import selectEmployees from '@/components/enterprise/selectEmployees'
-import addEmployee from '@/components/enterprise/addEmployee'
+import addEmployee from '@/components/enterprise/addEmployeeWithDu'
import importEmployees from '@/components/enterprise/importEmployees'
import confirmJobType from '@/components/enterprise/confirmJobType'
import detailsPolicyholder from '@/components/business/detailsPolicyholder'
-import OperaInsuranceApplyDetails from '@/components/business/OperaInsuranceApplyWindow'
-import OperaWtbApplyShopWindow from '@/components/business/OperaWtbApplyShopWindow'
-import { all, getNewVersion } from '@/api/business/solutions'
+import { all, getNewVersion, getUseList } from '@/api/business/solutions'
import { mapState } from 'vuex'
-import { create, getCountCyclePriceVO, getDetail, findList, updateData } from '@/api/business/insuranceApply'
+import { create, getCountCyclePriceVO, getDetail, findList } from '@/api/business/insuranceApply'
import { UTable, UTableColumn } from 'umy-ui'
-// Vue.component(UTable.name, UTable);
-// Vue.component(UTableColumn.name, UTableColumn);
export default {
name: 'OperaInsuranceApplyAddWindowNew',
extends: BaseOpera,
components: {
- GlobalWindow, selectEmployees, addEmployee, importEmployees, confirmJobType, detailsPolicyholder, UTable, UTableColumn
- , OperaWtbApplyShopWindow, OperaInsuranceApplyDetails
+ GlobalWindow,
+ selectEmployees,
+ addEmployee,
+ importEmployees,
+ confirmJobType,
+ detailsPolicyholder,
+ UTable,
+ UTableColumn
},
data () {
return {
- sumFee:0,
+ sumFee: 0,
form: {
id: null,
ID: null,
solutionId: '',
applyStartTime: '',
- applyEndTime: ''
+ applyEndTime: '',
+ companyId: null
},
solutionName: '',
type: '',
@@ -240,7 +245,7 @@
// 鐩戝惉tableData鐨勫彉鍖�
tableData: {
deep: true,
- handler(newVal, oldVal) {
+ handler (newVal, oldVal) {
// 鏁版嵁鍙樺寲鏃剁殑澶勭悊閫昏緫
this.getSummaries2()
console.log(this.tableData.length)
@@ -256,21 +261,16 @@
this.isWorking = true
// if (!this.form.id) {
create({
+ companyId: this.form.companyId,
applyDetailList: arr,
applyStartTime: this.form.applyStartTime,
applyEndTime: this.form.applyEndTime,
solutionId: this.form.solutionId
}).then(res => {
console.log(res)
- this.visible = false
- if (this.item.type == 1) {
- this.$emit('success', 1, { id: res })
- this.$refs.OperaWtbApplyShopWindow.open('濮旀墭鎶曚繚璇︽儏', { id: res })
- } else {
- this.$emit('success', 1, { id: res })
- this.$refs.OperaInsuranceApplyDetails.open('鎶曚繚璇︽儏', { id: res })
- }
+ this.$emit('success', 1, { id: res,godetail:true,type:this.item.type})
this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
+ this.visible = false
// this.$emit('success','濮旀墭鎶曚繚璇︽儏', { id: res })
})
.catch(e => {
@@ -309,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()
@@ -364,7 +368,7 @@
})
sums[index] = total.toFixed(2)
// }
- }else {
+ } else {
sums[index] = ''
}
})
@@ -372,8 +376,8 @@
return sums
},
getSummaries2 () {
- this.sumFee = 0;
- if(this.tableData&&this.tableData.length){
+ this.sumFee = 0
+ if (this.tableData && this.tableData.length) {
this.tableData.forEach((column, index) => {
this.sumFee = parseFloat(this.sumFee) + parseFloat(column.fee)
})
@@ -401,31 +405,90 @@
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
+ this.tableData.forEach(item => {
+ price = price + item.fee
})
+ // }
+ const endTime = Number(this.item.correctWarnTime.split(':')[0] + this.item.correctWarnTime.split(':')[1])
+ const now = new Date();
+ const hours = now.getHours();
+ const minutes = now.getMinutes();
+ const date = `${hours.toString().padStart(2, '0')}:${minutes.toString().padStart(2, '0')}`;
+ const startTime = Number(date.split(':')[0] + date.split(':')[1])
+ if (startTime > endTime) {
+ this.$confirm('鎮ㄥ凡瓒呰繃褰撳ぉ鏈�鏅氭壒鏀规椂闂达紝淇濆崟瀹為檯鐢熸晥鏃堕棿浠ヤ繚闄╁叕鍙稿鏍镐负鍑嗭紒', '鎻愮ず', {
+ confirmButtonText: '纭畾',
+ cancelButtonText: '鍙栨秷',
+ type: 'warning'
+ }).then(() => {
+ 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
+ })
+ }
+ }).catch(() => {
+
+ });
+ } else {
+ 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
+ })
+ }
+ }
}
})
},
@@ -474,25 +537,25 @@
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 })
+ this.$refs.addEmployee.open('娣诲姞鍛樺伐', { arr: this.tableData, price: this.price, solutionId: this.form.solutionId, hasDispatchUnit: this.item.hasDispatchUnit, companyId: this.userInfo.type === 1 ? this.userInfo.companyId : this.form.companyId })
},
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 })
+ this.$refs.importEmployees.open('涓婁紶鍚嶅崟', { arr: this.tableData, solutionId: this.form.solutionId, type: 1, hasDispatchUnit: this.item.hasDispatchUnit, price: this.price })
},
// 鍒囨崲鏂规
changeSolution (e) {
- this.sumFee =0;
+ this.sumFee = 0
this.form.applyEndTime = ''
this.form.applyStartTime = ''
if (!this.form.id) {
@@ -536,7 +599,7 @@
})
this.tableData.forEach(item => {
// if (this.item.type != 0) {
- item.fee = this.price
+ item.fee = this.price
// }
})
},
@@ -559,7 +622,7 @@
this.$refs.multipleTable.clearSelection()
},
// 閫夋嫨鍛樺伐
- sele () {
+ sele (type) {
if (!this.form.solutionId) {
this.$message.warning('璇烽�夋嫨淇濋櫓鏂规')
return
@@ -568,14 +631,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 ? this.form.companyId : this.userInfo.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