From f63e0073e96abe1e52d74749f408e3f542600a09 Mon Sep 17 00:00:00 2001 From: nidapeng <jp@doumee.com> Date: 星期三, 03 四月 2024 13:27:12 +0800 Subject: [PATCH] 提交一把 --- company/src/components/business/OperaApplyChangeUnitDetailWindow.vue | 326 ++++++++++++++++++++++++++++++++++------------------- 1 files changed, 208 insertions(+), 118 deletions(-) diff --git a/company/src/components/business/OperaApplyChangeUnitDetailWindow.vue b/company/src/components/business/OperaApplyChangeUnitDetailWindow.vue index 13e9d0e..3231746 100644 --- a/company/src/components/business/OperaApplyChangeUnitDetailWindow.vue +++ b/company/src/components/business/OperaApplyChangeUnitDetailWindow.vue @@ -14,32 +14,44 @@ <span v-if="model.status === 0">淇濆崟鐘舵�侊細<span :class="'change-status'+model.status" >寰呯缃�</span></span> <span v-if="model.status === 1">淇濆崟鐘舵�侊細<span :class="'change-status'+model.status" >寰呭鏍�</span></span> <span v-if="model.status === 2">淇濆崟鐘舵�侊細<span :class="'change-status'+model.status" >宸茬敓鏁�</span></span> + <span v-if="model.status === 7">淇濆崟鐘舵�侊細<span :class="'change-status'+model.status" >寰呭嚭鍗�</span></span> + <span v-if="model.status === 9">淇濆崟鐘舵�侊細<span :class="'change-status'+model.status" >鎶曚繚涓�</span></span> <span v-if="model.status === 3 || model.status === 4">淇濆崟鐘舵�侊細<span :class="'change-status'+model.status" >閫�鍥炵敵璇�</span></span> <span v-if="model.status === 5 || model.status === 8">淇濆崟鐘舵�侊細<span :class="'change-status'+model.status" >宸查��鍥�</span></span> - <span v-if="model.status === 7 || model.status === 6">淇濆崟鐘舵�侊細<span :class="'change-status'+model.status" >宸插叧闂�</span></span> + <span v-if=" model.status === 6">淇濆崟鐘舵�侊細<span :class="'change-status'+model.status" >宸插叧闂�</span></span> <span>鎻愪氦鏃堕棿锛歿{ model.createDate }}</span> </div> <div class="desc_item_label_right"> - <template v-if="userInfo.type === 1"> - <el-button type="primary" @click="$refs.ApplyChangeDetails.open('鏇存崲娲鹃仯鍗曚綅鐢宠璇﹀崟',apply,model)">瀵煎嚭璇﹀崟</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="[5, 8].includes(model.status)" type="primary" @click="$refs.editFactoryChange.open('鏇存崲娲鹃仯鍗曚綅鐢宠', {id: dataId, applyChangId: modelId})">鍐嶆鎶曚繚</el-button> - <el-button type="primary" v-if="model.status == 0" @click="goSign">绛剧讲鐢宠鍗�</el-button> - <el-button v-if="[0, 1, 3, 7].includes(model.status)" type="primary" @click="$refs.add_subtract_return.open('鐢宠閫�鍥�', { id: modelId })">鐢宠閫�鍥�</el-button> - <el-button v-if="model.status == 5" type="primary" @click="viewApplyFile">鏌ョ湅鐢宠鍗�</el-button> - <el-button v-if="model.status == 5 || model.status == 2" type="primary" @click="viewPidan">鏌ョ湅鎵瑰崟</el-button> - <el-button v-if="[5, 8].includes(model.status)" type="primary" @click="closeOrder">鍏抽棴璁㈠崟</el-button> - </template> - <template v-else> - <el-button type="primary" @click="$refs.ApplyChangeDetails.open('鏇存崲娲鹃仯鍗曚綅鐢宠璇﹀崟',apply,model)">瀵煎嚭璇﹀崟</el-button> - <el-button type="primary" v-if="model.status == 0" @click="goSign">绛剧讲鐢宠鍗�</el-button> - <el-button v-if="[1,2,4].includes(model.status)" type="primary" @click="viewApplyFile">鏌ョ湅鐢宠鍗�</el-button> - <el-button v-if="[2].includes(model.status)" type="primary" @click="viewPidan">鏌ョ湅鎵瑰崟</el-button> - <el-button v-if="model.solutionType == 0 &&[1].includes(model.status)" type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('涓婁紶鎵瑰崟',model,3)">涓婁紶鎵瑰崟</el-button> - <el-button v-if="model.solutionType == 0 &&[3,4].includes(model.status)" type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('椹冲洖閫�鍥炵敵璇�',model,5)">椹冲洖閫�鍥炵敵璇�</el-button> - <el-button v-if="model.solutionType == 0 &&[0,1,3,4].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('閫�鍥炴姇淇�',model,1)">閫�鍥炴姇淇�</el-button> - <el-button v-if="model.solutionType == 0 &&[2].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('淇敼鎵瑰崟',model,4)">淇敼鎵瑰崟</el-button> - </template> + <template v-if="userInfo.type === 1"> + <el-button type="primary" v-if="[5,8,6].includes(model.status)" @click="$refs.reinsurance.open('鏇存崲娲鹃仯鍗曚綅鐢宠', {id: dataId, applyChangId: modelId})">鍐嶆鎶曚繚</el-button> + <el-button type="primary" @click="$refs.ApplyChangeDetails.open('鏇存崲娲鹃仯鍗曚綅璇︽儏',apply,model,0)">瀵煎嚭璇﹀崟</el-button> + <el-button type="primary" v-if="model.status == 0" @click="getSignLink(0)">绛剧讲鐢宠鍗�</el-button> + <el-button v-if="[0, 1, 3, 7].includes(model.status) && model.solutionType == 0" type="danger" @click="$refs.add_subtract_return.open('鐢宠閫�鍥�', { id: modelId })">鐢宠閫�鍥�</el-button> + <el-button v-if="[1,2,4,7,9].includes(model.status)" type="primary" @click="viewApplyFile">鏌ョ湅鐢宠鍗�</el-button> + <el-button v-if="model.status == 2" type="primary" @click="viewPidan">鏌ョ湅鎵瑰崟</el-button> + <el-button v-if="[5,8].includes(model.status)" type="primary" @click="closeOrder">鍏抽棴璁㈠崟</el-button> + </template> + <template v-if="userInfo.type === 2"> + <el-button type="primary" @click="$refs.ApplyChangeDetails.open('鏇存崲娲鹃仯鍗曚綅璇﹀崟',apply,model,0)">瀵煎嚭璇﹀崟</el-button> + <el-button v-if="[1,2,4,7,9].includes(model.status)" type="primary" @click="viewApplyFile">鏌ョ湅鐢宠鍗�</el-button> + <el-button v-if="[2].includes(model.status)" type="primary" @click="viewPidan">鏌ョ湅鎵瑰崟</el-button> + <el-button v-if=" model.solutionType == 1 && [1].includes(model.status)" type="primary" @click="$refs.ApplyChangeDetails.open('鎶曚繚瀹℃牳',apply,model,1)">鎶曚繚瀹℃牳</el-button> + <el-button v-if=" model.solutionType == 1 && [0,1].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('閫�鍥炵敵璇�',model,1)">閫�鍥炵敵璇�</el-button> + <el-button v-if=" model.solutionType == 1 && [7].includes(model.status)" type="danger" @click="closeOrder">鍏抽棴璁㈠崟</el-button> + <el-button v-if=" model.solutionType == 0 && [1].includes(model.status)" type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('涓婁紶鎵瑰崟',model,3)">涓婁紶鎵瑰崟</el-button> + <el-button v-if="model.solutionType == 0 &&[3,4].includes(model.status)" type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('椹冲洖閫�鍥炵敵璇�',model,5)">椹冲洖閫�鍥炵敵璇�</el-button> + <el-button v-if="model.solutionType == 0 &&[0,1].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('閫�鍥炴姇淇�',model,1)">閫�鍥炴姇淇�</el-button> + <el-button v-if="model.solutionType == 0 &&[2].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('淇敼鎵瑰崟',model,4)">淇敼鎵瑰崟</el-button> + </template> + <template v-if="userInfo.type === 0"> + <el-button type="primary" @click="$refs.ApplyChangeDetails.open('鏇存崲娲鹃仯鍗曚綅璇﹀崟',apply,model,0)">瀵煎嚭璇﹀崟</el-button> + <el-button v-if="[1,2,4,7,9].includes(model.status)" type="primary" @click="viewApplyFile">鏌ョ湅鐢宠鍗�</el-button> + <el-button v-if="[2].includes(model.status)" type="primary" @click="viewPidan">鏌ョ湅鎵瑰崟</el-button> + <el-button v-if=" model.solutionType == 0 && [1].includes(model.status)" type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('涓婁紶鎵瑰崟',model,3)">涓婁紶鎵瑰崟</el-button> + <el-button v-if="model.solutionType == 0 &&[3,4].includes(model.status)" type="primary" @click="$refs.OperaApplyChangeCheckWindow.open('椹冲洖閫�鍥炵敵璇�',model,5)">椹冲洖閫�鍥炵敵璇�</el-button> + <el-button v-if="model.solutionType == 0 &&[0,1].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('閫�鍥炴姇淇�',model,1)">閫�鍥炴姇淇�</el-button> + <el-button v-if="model.solutionType == 0 &&[2].includes(model.status)" type="danger" @click="$refs.OperaApplyChangeCheckWindow.open('淇敼鎵瑰崟',model,4)">淇敼鎵瑰崟</el-button> + </template> </div> </div> <div class="desc_item_from"> @@ -170,6 +182,31 @@ </div> </div> </div> + <el-dialog + :title="signTitle" + :visible.sync="visiblePhone" + width="500px" + :modal="false" + :show-close="false" + :close-on-click-modal="false" + center> + <el-form :model="form" ref="form" :rules="rules"> + <el-form-item label="鎵嬫満鍙�" prop="phone"> + <el-input v-model="form.phone" placeholder="璇疯緭鍏�" disabled v-trim/> + </el-form-item> + <el-form-item label="楠岃瘉鐮�" prop="code"> + <div style="width: 100%; display: flex; align-items: center;"> + <el-input v-model="form.code" placeholder="璇疯緭鍏�" v-trim/> + <el-button type="primary" style="margin-left: 15px;" @click="send" v-if="num === 0">鍙戦�侀獙璇佺爜</el-button> + <el-button type="primary" style="margin-left: 15px;" v-else>{{num}}s</el-button> + </div> + </el-form-item> + </el-form> + <span slot="footer" class="dialog-footer"> + <el-button type="primary" @click="goSignDo()">纭� 瀹�</el-button> + <el-button @click="visiblePhone=false">鍙� 娑�</el-button> + </span> + </el-dialog> <ApplyChangeUnitDetails ref="ApplyChangeDetails" @success="successEvent" /> <OperaApplyChangeUnitCheckWindow ref="OperaApplyChangeCheckWindow" @success="successEvent" /> <!-- 浼佷笟鐢宠閫�鍥� --> @@ -177,7 +214,7 @@ <add_subtract_return ref="add_subtract_return" @success="successEvent" /> <!-- 鏂板鎶曚繚 --> <OperaInsuranceApply ref="OperaInsuranceApply" @success="successEvent" /> - <!-- 鍔犲噺淇濈敵璇� --> + <!-- 鏇存崲娲鹃仯鍗曚綅鐢宠 --> <additionSubtractionApplication ref="additionSubtractionApplication" @success="successEvent" /> <!-- 鏇存崲娲鹃仯鍗曚綅鐢宠 --> <factoryChange ref="factoryChange" @success="successEvent" /> @@ -207,147 +244,200 @@ applyChagneDetailPage, getChangeUnitSignLink } from '@/api/business/insuranceApply' -import { applyChangeOpt } from '@/api/business/applyChange' +import { applyChangeOpt, getChangeMemberListOnlineSignLink } from '@/api/business/applyChange' import OperaInsuranceApply from '@/components/enterprise/OperaInsuranceApplyWindow' import { mapState } from 'vuex' +import { sendSms } from '@/api/business/smsEmail' export default { name: 'OperaApplyChangeDetailWindow', extends: BaseOpera, components: { - GlobalWindow, + GlobalWindow, ApplyChangeUnitDetails, OperaApplyChangeUnitCheckWindow, - applyReturn, - OperaInsuranceApply, - additionSubtractionApplication, - factoryChange, - add_subtract_return, - editFactoryChange, - insuranceApplyDetails: () => import ('@/components/business/OperaInsuranceApplyWindow') + applyReturn, + OperaInsuranceApply, + additionSubtractionApplication, + factoryChange, + add_subtract_return, + editFactoryChange, + insuranceApplyDetails: () => import('@/components/business/OperaInsuranceApplyWindow') }, data () { return { // 琛ㄥ崟鏁版嵁 - dataId:null, - modelId:null, - apply:{}, + dataId: null, + modelId: null, + apply: {}, + num: 0, + timer: null, + signTitle: '鎵嬫満鍙烽獙璇�', model: {}, + visiblePhone: false, form: { - id: null, - editDate: '' + businessId: null, + phone: this.$store.state.userInfo.company.phone, + id: null, + editDate: '', + code: null }, // 楠岃瘉瑙勫垯 rules: { }, formInline: { - applyStatus: '', - duId: '', - workTypeId: '', - memberName: '', - types: '' + applyStatus: '', + duId: '', + workTypeId: '', + memberName: '', + types: '' }, reverse: false, radio: 0, activities: [], tableData: [], - list: [], + list: [], activeName: '0', - total: 0, + total: 0, currentPage: 1 } }, created () { - this.config({ - api: '/business/insuranceApply', - 'field.id': 'id' - }) + this.config({ + api: '/business/insuranceApply', + 'field.id': 'id' + }) }, - computed: { - ...mapState(['userInfo']) - }, + computed: { + ...mapState(['userInfo']) + }, methods: { - open(title,target){ - this.visible = true; - this.title = title - this.dataId = target.applyId - this.modelId = target.id - this.getDetail() - this.getList() - }, - closeOrder() { - this.$confirm('纭鍏抽棴姝よ鍗曞悧?', '鎻愮ず', { - confirmButtonText: '纭畾', - cancelButtonText: '鍙栨秷', - type: 'warning' - }).then(() => { - applyChangeOpt({ - optType: 6, - applyId: this.model.id - }).then(res => { - this.getDetail() - }).catch(e => { - this.$message.error(e) - }) - }).catch(() => { + open (title, target) { + this.visible = true + this.title = title + this.dataId = target.applyId + this.modelId = target.id + this.form.businessId = target.id + this.num=0 + this.timer=null + this.getDetail() + this.getList() + }, + send () { + sendSms({ + phone: this.form.phone + }).then(res => { + this.num = 60 + this.setTime() + }) + }, + setTime () { + this.timer = setInterval(() => { + if (this.num === 0) { + clearInterval(this.timer) + this.timer = null + return + } + this.num = this.num - 1 + }, 1000) + }, + getSignLink (flag) { + this.signTitle = '绛剧讲鐢宠鍗�' + this.form.type = flag + this.visiblePhone = true + this.$nextTick(() => { + this.$refs.form.resetFields() + }) + }, + goSignDo () { + this.$refs.form.validate((valid) => { + if (!valid) { + return + } + this.isWorking = true + getChangeMemberListOnlineSignLink(this.form).then(res => { + setTimeout(() => { + this.visiblePhone = false + window.open(res) + }, 500) + }).catch(err => { + this.$tip.apiFailed(err) + }) + }) + }, + closeOrder () { + this.$confirm('纭鍏抽棴姝よ鍗曞悧?', '鎻愮ず', { + confirmButtonText: '纭畾', + cancelButtonText: '鍙栨秷', + type: 'warning' + }).then(() => { + applyChangeOpt({ + optType: 6, + applyId: this.model.id + }).then(res => { + this.getDetail() + }).catch(e => { + this.$message.error(e) + }) + }).catch(() => { - }); - }, - resetting() { - this.search() - }, - search() { - this.currentPage = 1 - this.getList() - }, - getList() { - applyChagneDetailPage({ - capacity: 10, - page: this.currentPage, - model: { - applyChangeId: this.modelId, - types:[2] - } - }).then(res => { - this.list = res.records - this.total = res.total - }) - }, - handleClick(e) { - this.activeName = e.index - this.resetting() - }, - goSign(){ - getChangeUnitSignLink({id:this.modelId}).then(res => { + }) + }, + resetting () { + this.search() + }, + search () { + this.currentPage = 1 + this.getList() + }, + getList () { + applyChagneDetailPage({ + capacity: 10, + page: this.currentPage, + model: { + applyChangeId: this.modelId, + types: [2] + } + }).then(res => { + this.list = res.records + this.total = res.total + }) + }, + handleClick (e) { + this.activeName = e.index + this.resetting() + }, + goSign () { + getChangeUnitSignLink({ id: this.modelId }).then(res => { setTimeout(() => { window.open(res) - }, 500); + }, 500) }).catch(err => { - this.$tip.apiFailed(err) + this.$tip.apiFailed(err) }) }, - viewApplyFile(){ - if(this.model.applyUnitFile && this.model.applyUnitFile.fileurlFull){ + viewApplyFile () { + if (this.model.applyUnitFile && this.model.applyUnitFile.fileurlFull) { window.open(this.model.applyUnitFile.fileurlFull) - } + } }, - viewPidan(){ - if(this.model.pidanFile && this.model.pidanFile.fileurlFull){ + viewPidan () { + if (this.model.pidanFile && this.model.pidanFile.fileurlFull) { window.open(this.model.pidanFile.fileurlFull) } }, - handleSizeChange(val){ - console.log(val) + handleSizeChange (val) { + console.log(val) }, - handleCurrentChange(val){ - console.log(val) - this.page = val - this.getList() + handleCurrentChange (val) { + console.log(val) + this.page = val + this.getList() }, - onSubmit(){ + onSubmit () { }, - getDetail(){ + getDetail () { getDetail(this.dataId).then(res => { this.apply = res console.log(this.tableData) @@ -362,8 +452,8 @@ }).catch(err => { }) }, - successEvent(){ - // this.visible=false + successEvent () { + // this.visible=false this.getDetail() this.$emit('success') } -- Gitblit v1.9.3