| | |
| | | <div class="desc_item_label"> |
| | | <div class="desc_item_label_left"> |
| | | <span>投保人:{{ model.companyName }}</span> |
| | | <span>保单状态:<span :class="'union-apply-status'+model.status" >{{ model.statusInfo }}</span></span> |
| | | <span>保单状态: |
| | | <span v-if="model.status === 5 && model.statusInfo === '待审核'" style="color: #216EEE;">{{ model.statusInfo }}</span> |
| | | <span v-else-if="model.status === 3 && model.statusInfo === '已过期'" style="color: #999;">{{ model.statusInfo }}</span> |
| | | <span v-else-if="model.status === 3 && model.statusInfo === '待生效'" style="color: #f95601;">{{ model.statusInfo }}</span> |
| | | <span v-else-if="model.status === 4 && model.statusInfo === '已退回'" style="color: red;">{{ model.statusInfo }}</span> |
| | | <span :class="'union-apply-status'+model.status" v-else>{{ model.statusInfo }}</span> |
| | | </span> |
| | | <span>提交时间:{{ model.createDate }}</span> |
| | | </div> |
| | | <div class="desc_item_label_right"> |
| | | <template v-if="userInfo.type === 2"> |
| | | <el-button type="primary" @click="$refs.InsuranceDetails.open('导出详单',model,0)">导出详单</el-button> |
| | | <el-button type="primary" @click="$refs.InsuranceDetails.open('导出详单',model,0)">导出详单</el-button> |
| | | <el-button v-if="[0].includes(model.status) " type="primary" @click="$refs.OperaUnionApplyCheckWindow.open('上传投保单',model,2)">上传投保单</el-button> |
| | | <el-button v-if="model.status == 1" type="primary" @click="getSignLink(0)">签署投保单</el-button> |
| | | <el-button v-if="[2,3,4].includes(model.status)" type="primary" @click="viewToubaodan">查看投保单</el-button> |
| | | <el-button v-if="[2].includes(model.status) " type="primary" @click="$refs.OperaUnionApplyCheckWindow.open('上传保险单',model,3)">上传保险单</el-button> |
| | | <el-button v-if="model.status == 1" type="primary" :disabled="loading" :loading="loading" @click="getSignLink(0)">{{model.signType === 1 ? '签署申请单' : '签署投保单'}}</el-button> |
| | | <el-button v-if="[2,3,4].includes(model.status)" type="primary" @click="viewToubaodan">{{model.signType === 1 ? '查看申请单' : '查看投保单'}}</el-button> |
| | | <!-- <el-button v-if="[2].includes(model.status) " type="primary" @click="$refs.OperaUnionApplyCheckWindow.open('上传保险单',model,3)">上传保险单</el-button>--> |
| | | <el-button v-if="model.status == 3" type="primary" @click="viewBaoxiandan">查看保险单</el-button> |
| | | <el-button v-if="[0,1,2].includes(model.status) " type="danger" @click="$refs.OperaUnionApplyCheckWindow.open('退回投保',model,1)">退回申请</el-button> |
| | | |
| | | <el-button v-if="[2,3,4,1,5].includes(model.status) && (model.toubaodanFile || model.toubaodanSignedFile)" type="primary" @click="viewToubaodan">{{model.signType === 1 ? '查看申请单' : '查看投保单'}}</el-button> |
| | | <el-button v-if="[0,1,2,5].includes(model.status) " type="danger" @click="$refs.OperaUnionApplyCheckWindow.open('退回申请',model,1)">退回申请</el-button> |
| | | <el-button v-if="[5].includes(model.status)" type="primary" @click="fusheng">投保复审</el-button> |
| | | |
| | | <!-- <el-button v-if="[0,1,2].includes(model.status) " type="danger" @click="$refs.OperaUnionApplyCheckWindow.open('退回申请',model,1)">退回申请</el-button>--> |
| | | </template> |
| | | <template v-if="userInfo.type ===0"> |
| | | <el-button v-if="[2,3,4,1,5].includes(model.status) && (model.toubaodanFile || model.toubaodanSignedFile)" type="primary" @click="viewToubaodan">{{model.signType === 1 ? '查看申请单' : '查看投保单'}}</el-button> |
| | | <el-button v-if="[0].includes(model.status) " type="primary" @click="$refs.OperaUnionApplyCheckWindow.open('上传投保单',model,2)">上传投保单</el-button> |
| | | <el-button v-if="[0, 1].includes(model.status)" type="primary" :disabled="loading" :loading="loading" @click="getSignLink(0)">{{model.signType === 1 ? '签署申请单' : '签署投保单'}}</el-button> |
| | | <el-button v-if="[0,1,2,5].includes(model.status) " type="danger" @click="$refs.OperaUnionApplyCheckWindow.open('退回申请',model,1)">退回申请</el-button> |
| | | <el-button v-if="[2].includes(model.status)" type="primary" @click="$refs.OperaUnionApplyCheckWindow.open('上传保险单',model,3)">上传保险单</el-button> |
| | | <el-button type="primary" @click="$refs.InsuranceDetails.open('导出详单',model,0)">导出详单</el-button> |
| | | <el-button v-if="[2,3,4].includes(model.status)" type="primary" @click="viewToubaodan">查看投保单</el-button> |
| | | <!-- <el-button v-if="[2,3,4].includes(model.status)" type="primary" @click="viewToubaodan">查看投保单</el-button>--> |
| | | <el-button v-if="[4].includes(model.status)" type="primary" @click="viewBaoxiandan">查看保险单</el-button> |
| | | <el-button v-if="[5].includes(model.status)" type="primary" @click="fusheng">投保复审</el-button> |
| | | </template> |
| | | </div> |
| | | </div> |
| | |
| | | <el-table-column |
| | | prop="startTime" |
| | | align="center" |
| | | label="保险生效起期"> |
| | | :label="getUnionApplyTimeTitle(1,model)"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="endTime" |
| | | align="center" |
| | | label="保险生效止期"> |
| | | :label="getUnionApplyTimeTitle(0,model)"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="insureNum" |
| | | align="center" |
| | | label="投保人数"> |
| | | <template slot-scope="{row}"> |
| | | <span>{{row.insureNum||0}} 人</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="guaranteeNum" align="center" label="在保人数" > |
| | | <template slot-scope="{row}"> |
| | | <span>{{row.guaranteeNum||0}} 人</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="serviceDays" |
| | | align="center" |
| | | label="在保时长(天)"> |
| | | label="保单时长"> |
| | | <template slot-scope="{row}"> |
| | | <span>{{row.serviceDays||0}} 天</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="currentFee" |
| | | align="center" |
| | | label="已产生费用(元)"> |
| | | label="已产生费用"> |
| | | <template slot-scope="{row}"> |
| | | <span>{{row.currentFee!=null?row.currentFee+' 元': '-'}}</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | prop="fee" |
| | | align="center" |
| | | label="总费用(元)"> |
| | | label="总费用"> |
| | | <template slot-scope="{row}"> |
| | | <span>{{row.fee!=null?row.fee+' 元': '-'}}</span> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | <div class="desc_item_cate"> |
| | | <el-tabs v-model="activeName" @tab-click="handleClick"> |
| | | <el-tab-pane label="在保人员" name="0" ></el-tab-pane> |
| | | <el-tab-pane label="保单人员" name="0" ></el-tab-pane> |
| | | <el-tab-pane label="加/减保记录" name="1"></el-tab-pane> |
| | | <el-tab-pane label="更换派遣单位记录" name="2"></el-tab-pane> |
| | | <el-tab-pane label="更换工种记录" name="2"></el-tab-pane> |
| | | </el-tabs> |
| | | </div> |
| | | <div class="desc_item_search"> |
| | |
| | | <el-option label="全部" value="0"></el-option> |
| | | <el-option label="保障中" value="1"></el-option> |
| | | <el-option label="不在保" value="2"></el-option> |
| | | <el-option label="待生效" value="3"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="员工姓名" prop="memberName"> |
| | |
| | | label="性别"> |
| | | <template slot-scope="{row}"> |
| | | <span v-if="row.sex === 0">男</span> |
| | | <span v-else>女</span> |
| | | <span v-if="row.sex === 1">女</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | align="center" |
| | | :key="Math.random()" |
| | | label="在保状态"> |
| | | <template slot-scope="{row}"> |
| | | <span v-if="row.applyStatus === 0" style="color: #00BA92;">保障中</span> |
| | | <span v-if="row.applyStatus === 1" style="color: #999;">不在保</span> |
| | | <span v-if="row.applyStatus === 2" style="color: #f95601;">待生效</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | |
| | | label="被保险人"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | v-if="model.hasDispatchUnit !== 1" |
| | | :key="Math.random()" |
| | | prop="duName" |
| | | align="center" |
| | |
| | | :key="Math.random()" |
| | | prop="startTime" |
| | | align="center" |
| | | label="保险生效起期"> |
| | | :label="getUnionApplyTimeTitle(1,model)"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | :key="Math.random()" |
| | | prop="endTime" |
| | | align="center" |
| | | label="保险生效止期"> |
| | | :label="getUnionApplyTimeTitle(0,model)"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | :key="Math.random()" |
| | |
| | | align="center"> |
| | | <template slot-scope="{row}"> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 0">待签署</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 1">待出单</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 2">保障中</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 3">已退回</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 1">待审核</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 2">已生效</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 3 || row.status === 4">申请退回</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 5 || row.status === 8">已退回</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 6">已关闭</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 7">待出单</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 9">批改申请中</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | |
| | | align="center" label="保单状态" :key="Math.random()"> |
| | | <template slot-scope="{row}"> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 0">待签署</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 1">待出单</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 2">保障中</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 3">已退回</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 1">待审核</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 2">已生效</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 3 || row.status === 4">申请退回</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 5 || row.status === 8">已退回</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 6">已关闭</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 7">待出单</span> |
| | | <span :class="'change-status'+row.status" v-if="row.status === 9">批改申请中</span> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | |
| | | :key="Math.random()" |
| | | prop="changeNum" |
| | | align="center" |
| | | label="更换派遣单位人数"> |
| | | label="更换工种人数"> |
| | | </el-table-column> |
| | | <el-table-column |
| | | :key="Math.random()" |
| | |
| | | </div> |
| | | </div> |
| | | <div class="desc_item_review"> |
| | | <div class="desc_item_review_label">审核流程</div> |
| | | <div class="desc_item_review_label">操作记录</div> |
| | | <el-timeline :reverse="reverse"> |
| | | <el-timeline-item |
| | | v-for="(activity, index) in activities" |
| | |
| | | <OperaApplyChangeDetailWindow ref="OperaApplyChangeDetailWindow" @success="successEvent"/> |
| | | <!-- 更换派遣单位详情 --> |
| | | <OperaApplyChangeUnitDetailWindow ref="OperaApplyChangeUnitDetailWindow" @success="successEvent"/> |
| | | <OperaPdfViewerWindow ref="OperaPdfViewerWindow" /> |
| | | <!-- 加减保详情 --> |
| | | <template v-slot:footer> |
| | | <el-button @click="visible=false">返回</el-button> |
| | |
| | | </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-button type="primary" @click="goSignDo()">确 定</el-button> |
| | | <el-button @click="visiblePhone=false">取 消</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | <el-dialog |
| | | :title="fileTitle" |
| | | :visible.sync="visibleFile" |
| | | width="500px" |
| | | :modal="true" |
| | | :show-close="true" |
| | | :close-on-click-modal="false" |
| | | append-to-body |
| | | center> |
| | | :title="fileTitle" |
| | | :visible.sync="visibleFile" |
| | | width="800px" |
| | | :modal="true" |
| | | :show-close="true" |
| | | :close-on-click-modal="false" |
| | | append-to-body |
| | | center> |
| | | <div class="desc_item_from" v-for="(item, index) in fileData" :key="index" style="margin-bottom: 15px"> |
| | | <span v-if="index ==0">{{item.name}}:</span> |
| | | <span v-if="index >0">被保险人({{item.name}}){{fileFlag=== 0?"投保单":"保险单"}}:</span> |
| | | <a style="cursor: pointer;color: #2E68EC" v-if="item.file && item.file.fileurl" @click="openFile(item.file.fileurlFull)">在线预览</a><span v-if="!item.file || !item.file.fileurl">未上传</span> |
| | | <span v-if="index >0">被保险人({{item.name}})服务费:{{item.serverCost || 0}}元/人 {{fileFlag=== 0?"投保单":"保险单"}}:</span> |
| | | <a style="cursor: pointer;color: #2E68EC" v-if="item.file && item.file.fileurl && index ==0" @click="openFile(item.file.fileurlFull,item.name)">在线预览</a> |
| | | <a style="cursor: pointer;color: #2E68EC" v-if="item.file && item.file.fileurl && index !=0 &&fileFlag=== 0" @click="openFile(item.file.fileurlFull,'被保险人('+item.name+')投保单')">在线预览</a> |
| | | <a style="cursor: pointer;color: #2E68EC" v-if="item.file && item.file.fileurl && index !=0 &&fileFlag!= 0" @click="openFile(item.file.fileurlFull,'被保险人('+item.name+')保险单')">在线预览</a> |
| | | <span v-if="!item.file || !item.file.fileurl">未上传</span> |
| | | |
| | | </div> |
| | | <span slot="footer" class="dialog-footer"> |
| | | <el-button @click="visibleFile=false">关 闭</el-button> |
| | | </span> |
| | | <el-button @click="visibleFile=false">关 闭</el-button> |
| | | </span> |
| | | </el-dialog> |
| | | </GlobalWindow> |
| | | </template> |
| | |
| | | import OperaApplyChangeUnitDetailWindow from '@/components/business/OperaApplyChangeUnitDetailWindow' |
| | | |
| | | import OperaUnionApplyCheckWindow from '@/components/business/OperaUnionApplyCheckWindow' |
| | | import { getById, getSignLink } from '@/api/business/unionApply' |
| | | import { getById, getSignLink, reexamineCheck } from '@/api/business/unionApply' |
| | | |
| | | import { |
| | | applyDetailPage, |
| | |
| | | import { mapState } from 'vuex' |
| | | import { sendSms } from '@/api/business/smsEmail' |
| | | |
| | | import OperaPdfViewerWindow from '@/components/business/OperaPdfViewerWindow' |
| | | export default { |
| | | name: 'OperaWtbApplyShopWindow', |
| | | name: 'OperaWtbApplyShopWindow1', |
| | | extends: BaseOpera, |
| | | components: { |
| | | GlobalWindow, |
| | | OperaPdfViewerWindow, |
| | | OperaApplyChangeUnitDetailWindow, |
| | | OperaApplyChangeDetailWindow, |
| | | InsuranceDetailsWtb, |
| | |
| | | gzList: [], |
| | | activeName: '0', |
| | | total: 0, |
| | | currentPage: 1 |
| | | currentPage: 1, |
| | | |
| | | loading: false |
| | | } |
| | | }, |
| | | created () { |
| | |
| | | this.getDW() |
| | | this.getGZ() |
| | | }, |
| | | fusheng() { |
| | | this.$confirm('是否确定复审通过?', '提示', { |
| | | confirmButtonText: '确定', |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | reexamineCheck({ id: this.dataId }) |
| | | .then(res => { |
| | | this.getDetail() |
| | | }) |
| | | }).catch(() => { |
| | | |
| | | }); |
| | | }, |
| | | getSignLink (flag) { |
| | | if (flag === 0) { |
| | | this.signTitle = '签署投保单' |
| | | } |
| | | this.form.type = flag |
| | | this.visiblePhone = true |
| | | this.$nextTick(() => { |
| | | this.$refs.form.resetFields() |
| | | this.loading = true |
| | | getSignLink(this.form).then(res => { |
| | | this.loading = false |
| | | // setTimeout(() => { |
| | | // this.visiblePhone = false |
| | | window.open(res) |
| | | // }, 500) |
| | | }).catch(err => { |
| | | this.loading = false |
| | | this.$tip.apiFailed(err) |
| | | }) |
| | | // this.goSign() |
| | | // this.visiblePhone = true |
| | | // this.$nextTick(() => { |
| | | // this.$refs.form.resetFields() |
| | | // }) |
| | | }, |
| | | goSignDo () { |
| | | this.$refs.form.validate((valid) => { |
| | |
| | | this.num = this.num - 1 |
| | | }, 1000) |
| | | }, |
| | | // 关闭订单 |
| | | // 关闭申请 |
| | | closeOrder () { |
| | | this.$confirm('确认关闭此订单吗?', '提示', { |
| | | confirmButtonText: '确定', |
| | |
| | | exportExcel () { |
| | | if (this.activeName === '0') { |
| | | exportExcel({ |
| | | capacity: 10, |
| | | capacity: 60000, |
| | | page: this.currentPage, |
| | | model: { |
| | | solutionName: this.tableData[0].solutionsName, |
| | |
| | | }) |
| | | } else { |
| | | applyChagneDetailExcel({ |
| | | capacity: 10, |
| | | capacity: 60000, |
| | | page: this.currentPage, |
| | | model: { |
| | | applyId: this.dataId, |
| | |
| | | this.$tip.apiFailed(err) |
| | | }) |
| | | }, |
| | | openFile (url) { |
| | | openFile (url,title) { |
| | | setTimeout(() => { |
| | | window.open(url) |
| | | this.$refs.OperaPdfViewerWindow.open(title ||'在线预览',url) |
| | | // window.open(url) |
| | | }, 500) |
| | | }, |
| | | viewToubaodan () { |
| | | this.fileData = this.taobaodanFileData; |
| | | this.visibleFile=true |
| | | this.fileTitle='查看投保单' |
| | | this.fileFlag = 0 |
| | | if (this.model.toubaodanSignedFile) { |
| | | this.$refs.OperaPdfViewerWindow.open(this.model.toubaodanSignedFile.name, this.model.toubaodanSignedFile.fileurlFull) |
| | | } else if (this.model.toubaodanFile) { |
| | | this.$refs.OperaPdfViewerWindow.open(this.model.toubaodanFile.name, this.model.toubaodanFile.fileurlFull) |
| | | } |
| | | }, |
| | | viewBaoxiandan () { |
| | | this.fileFlag = 1 |
| | | this.fileTitle='查看保险单' |
| | | console.log(this.baoxiandanFileData) |
| | | this.fileData = this.baoxiandanFileData; |
| | | this.visibleFile=true |
| | | /* if (this.model.baoxiandanFile && this.model.baoxiandanFile.fileurlFull) { |
| | |
| | | this.model = res |
| | | this.tableData = new Array() |
| | | this.tableData.push(res) |
| | | console.log(this.tableData) |
| | | this.activities = res.applyLogList |
| | | if (this.model.toubaodanSignedFile && this.model.toubaodanSignedFile.fileurlFull) { |
| | | this.taobaodanFileData.push({ name: '商户投保单', file: this.model.toubaodanSignedFile }) |
| | |
| | | this.taobaodanFileData.push({ name: item.companyName, file: null }) |
| | | } |
| | | if (item.baoxiandanFile) { |
| | | this.baoxiandanFileData.push({ name: item.companyName, file: item.baoxiandanFile }) |
| | | this.baoxiandanFileData.push({ name: item.companyName, serverCost: item.serverCost, file: item.baoxiandanFile }) |
| | | } else { |
| | | this.baoxiandanFileData.push({ name: item.companyName, file: null }) |
| | | this.baoxiandanFileData.push({ name: item.companyName, serverCost: item.serverCost, file: null }) |
| | | } |
| | | }) |
| | | } |