<template>
|
<GlobalWindow
|
:title="title"
|
width="100%"
|
:visible.sync="visible"
|
:confirm-working="isWorking"
|
@confirm="confirm"
|
>
|
<div class="desc" v-loading="loading">
|
<div class="desc_label">
|
<div class="desc_label_left">
|
<span class="desc_label_left_title">
|
报案详情
|
</span>
|
<span class="desc_label_left_time" :style="contrast(model.createDate, model.baoxianEndTime) ? 'color: rgba(249, 86, 1, 0.996)' : 'color: black'">
|
报案日期:{{ model.createDate }}
|
</span>
|
<span class="desc_label_left_code">
|
报案号:{{ model.reportNum || '-' }}
|
</span>
|
<span class="desc_label_left_code">
|
状态:
|
<span :class="'settle-status'+model.status" v-if="model.status==0 || model.status==2|| model.status==3">处理中 </span>
|
<span :class="'settle-status'+model.status" v-if="model.status==1">已撤案 </span>
|
<span :class="'settle-status'+model.status" v-if="model.status==4">已结案 </span>
|
</span>
|
</div>
|
<div class="desc_label_right">
|
<template v-if="userInfo.type === 0">
|
<el-button type="primary" v-if="model.status !=1 && model.status !=4" @click="$refs.operaInsuranceApplyCheckWindow.open('添加报案号',model,remarkLogList,1)">添加报案号</el-button>
|
<el-button type="primary" v-if="model.status !=1 && model.status !=4" @click="$refs.operaInsuranceApplyCheckWindow.open('理赔处理',model,remarkLogList,2)">理赔处理</el-button>
|
<el-button type="primary" v-if="model.status !=1 && model.status !=4" @click="$refs.operaInsuranceApplyCheckWindow.open('结案提交',model,remarkLogList,4)">结案提交</el-button>
|
<el-button type="danger" v-if="model.status !=1 && model.status !=4" @click="$refs.operaInsuranceApplyCheckWindow.open('撤销申请',model,remarkLogList,3)">撤销申请</el-button>
|
</template>
|
<template v-else>
|
<el-button type="primary" @click="edit" v-if="model.status === 0 || model.status === 2 || model.status === 3">修改信息</el-button>
|
<el-button type="primary" @click="$refs.supplementaryExplanation.open('补充说明', model.id)" v-if="model.status === 0 || model.status === 2 || model.status === 3">补充说明</el-button>
|
</template>
|
</div>
|
</div>
|
<div class="desc_list">
|
<div class="desc_list_item">
|
<div class="desc_list_item_label">
|
出险人姓名:
|
</div>
|
<div class="desc_list_item_val">
|
{{model.memberName}}
|
</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label">
|
出险人身份证号:
|
</div>
|
<div class="desc_list_item_val">
|
{{ model.memberIdcardNo }}
|
</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label" >
|
事故发生时间:
|
</div>
|
<div class="desc_list_item_val" :style="contrast24(model.baoxianStartTime, model.happenTime) ? 'color: rgba(249, 86, 1, 0.996)' : 'color: black'">
|
{{ model.happenTime }}
|
</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label">
|
所属保单号:
|
</div>
|
<div class="desc_list_item_val" style="cursor: pointer; color: rgba(39, 157, 255, 0.968627450980392);" @click="$refs.OperaInsuranceApplyDetails.open('投保详情', { id: model.insuranceApplyId })">
|
{{ model.applyCode || '-' }}
|
<el-button v-if="model.baoxiandanFile && model.baoxiandanFile.fileurlFull" type="primary" style="margin-left: 10px;" @click.stop="openBaoxiandan">查看保险单</el-button>
|
</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label">
|
保险生效起期:
|
</div>
|
<div class="desc_list_item_val">
|
{{ model.baoxianStartTime }}
|
</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label">
|
保险生效止期:
|
</div>
|
<div class="desc_list_item_val">
|
{{ model.baoxianEndTime }}
|
</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label">
|
派遣单位:
|
</div>
|
<div class="desc_list_item_val">
|
{{ model.duName }}
|
</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label">
|
所属工种:
|
</div>
|
<div class="desc_list_item_val">
|
{{ model.worktypeName }}
|
</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label">
|
就诊医疗机构:
|
</div>
|
<div class="desc_list_item_val">
|
{{ model.hospital }}
|
</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label">
|
事故类型:
|
</div>
|
<div class="desc_list_item_val" v-if="model.type ===1">上下班途中受伤</div>
|
<div class="desc_list_item_val" v-else-if="model.type ===2">非工作时间受伤</div>
|
<div class="desc_list_item_val" v-else-if="model.type ===3">意外受伤</div>
|
<div class="desc_list_item_val" v-else>工作期间受伤</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label">
|
是否住院:
|
</div>
|
<div class="desc_list_item_val">
|
<div class="desc_list_item_val" v-if="model.inHospital === 0">是</div>
|
<div class="desc_list_item_val" v-else>否</div>
|
</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label">
|
是否有医疗保险:
|
</div>
|
<div class="desc_list_item_val">{{ model.medicalInsurance ===0?"是":"否" }}</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label">
|
出险地区:
|
</div>
|
<div class="desc_list_item_val">
|
{{model.areaInfo}}
|
</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label">
|
报案人姓名:
|
</div>
|
<div class="desc_list_item_val">
|
{{model.informantName}}
|
</div>
|
</div>
|
<div class="desc_list_item">
|
<div class="desc_list_item_label"> 报案人联系方式: </div>
|
<div class="desc_list_item_val"> {{model.informantPhone}} </div>
|
</div>
|
<div class="desc_list_item" style="width: 100%;">
|
<div class="desc_list_item_label"> 事故描述: </div>
|
<div class="desc_list_item_val">{{model.content}}</div>
|
</div>
|
<div class="desc_list_item" style="width: 100%;">
|
<div class="desc_list_item_label">
|
报案视频:
|
</div>
|
<div class="desc_list_item_videos" v-if="model.reportFileList && model.reportFileList.length > 0">
|
<div class="desc_list_item_imgs_video" v-for="(item, index) in model.reportFileList" :key="index">
|
<img :src="item.fileurlFull" v-if="item.type === 0" />
|
<video controls :src="item.fileurlFull" v-if="item.type === 1"></video>
|
</div>
|
</div>
|
<div v-else class="desc_list_item_videos">-</div>
|
</div>
|
</div>
|
<div class="desc_xian"></div>
|
<div class="desc_label">
|
<div class="desc_label_left">
|
<span class="desc_label_left_title">
|
理赔资料
|
</span>
|
<span v-if="model.finishDate!=null" class="desc_label_left_time" style="color: black">
|
资料完成日期:{{model.finishDate}}
|
</span>
|
</div>
|
<div class="desc_label_right">
|
<template v-if="userInfo.type === 0">
|
<el-button type="primary" v-if="model.status !=1 && model.status !=4" @click="$refs.operaInsuranceApplyCheckWindow.open('备注标签',model,remarkLogList,5)">备注标签</el-button>
|
<el-button type="primary" v-if="model.status !=1 && model.status !=4" @click="submit(0)">资料确认</el-button>
|
</template>
|
<el-button type="primary" @click="submit(1)">资料下载</el-button>
|
</div>
|
</div>
|
<div class="desc_data">
|
<div class="desc_data_label">1. 员工关系证明资料</div>
|
<div class="desc_data_list">
|
<template v-if="model.relationFileList && model.relationFileList.length > 0">
|
<div class="desc_data_list_item" v-for="(item, index) in model.relationFileList" :key="index">
|
<div class="desc_data_list_item_dele" @click="delFile(item.id)">删除</div>
|
<div class="desc_data_list_item_img" v-if="item.type == 0 && item.fileurlFull != null">
|
<img :src="item.fileurlFull" />
|
</div>
|
<div class="desc_data_list_item_img" v-if="item.type == 1 && item.fileurlFull != null">
|
<video controls :src="item.fileurlFull" />
|
</div>
|
<div class="desc_data_list_item_info">
|
<span>{{ item.name }}</span>
|
<span>操作员-{{ item.creatorName }}</span>
|
<span>{{ item.createDate }}</span>
|
</div>
|
</div>
|
</template>
|
<template v-if="(model.relationFileList==null|| model.relationFileList.length==0) && (model.status ==1 || model.status ==4)">
|
<span style="height: 40px; width:100%;text-align:center;color: #8c939d;font-size: 12px">暂无相关材料</span>
|
</template>
|
<upload v-if="model.status !=1 && model.status !=4" width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @loading="loading = true" @success="claimsUploadFile($event, 2)" />
|
<!-- <div class="desc_data_list_item">-->
|
<!-- <UploadFileCommon :uploadData="{ folder: 'settle' }" />-->
|
<!-- <div class="desc_data_list_item_upload">-->
|
<!-- <el-button type="primary">上传</el-button>-->
|
<!-- <el-button>取消</el-button>-->
|
<!-- </div>-->
|
<!-- </div>-->
|
<!-- <div class="desc_data_list_item1"></div>-->
|
<!-- <div class="desc_data_list_item1"></div>-->
|
</div>
|
</div>
|
<div class="desc_data">
|
<div class="desc_data_label">2. 医疗资料</div>
|
<div class="desc_data_cate">
|
<el-tabs v-model="activeName" @tab-click="handleClick">
|
<el-tab-pane label="门诊" name="first"></el-tab-pane>
|
<el-tab-pane label="住院资料" name="second"></el-tab-pane>
|
<el-tab-pane label="伤残" name="third"></el-tab-pane>
|
</el-tabs>
|
</div>
|
<div class="desc_data_list" v-if="activeName === 'first'">
|
<template v-if="model.outpatientFileList && model.outpatientFileList">
|
<div class="desc_data_list_item" v-for="(item, index) in model.outpatientFileList" :key="index">
|
<div class="desc_data_list_item_dele" @click="delFile(item.id)">删除</div>
|
<div class="desc_data_list_item_img" v-if="item.type == 0 && item.fileurlFull != null">
|
<img :src="item.fileurlFull" />
|
</div>
|
<div class="desc_data_list_item_img" v-if="item.type == 1 && item.fileurlFull != null">
|
<video controls :src="item.fileurlFull" />
|
</div>
|
<div class="desc_data_list_item_info">
|
<span>{{ item.name }}</span>
|
<span>操作员-{{ item.creatorName }}</span>
|
<span>{{ item.createDate }}</span>
|
</div>
|
</div>
|
</template>
|
<template v-if="(model.outpatientFileList==null|| model.outpatientFileList.length==0) && (model.status ==2 || model.status ==4)">
|
<span style="height: 40px; width:100%;text-align:center;color: #8c939d;font-size: 12px">暂无相关材料</span>
|
</template>
|
<upload v-if="model.status !=1 && model.status !=4" width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @loading="loading = true" @success="claimsUploadFile($event, 3)" />
|
<!-- <div class="desc_data_list_item">-->
|
<!-- <div class="desc_data_list_item_img" style="cursor: pointer; background: #8c939d;">-->
|
<!-- <i class="el-icon-plus"></i>-->
|
<!-- </div>-->
|
<!-- <div class="desc_data_list_item_upload">-->
|
<!-- <el-button type="primary">上传</el-button>-->
|
<!-- <el-button>取消</el-button>-->
|
<!-- </div>-->
|
<!-- </div>-->
|
<!-- <div class="desc_data_list_item1"></div>-->
|
<!-- <div class="desc_data_list_item1"></div>-->
|
</div>
|
<div class="desc_data_list" v-else-if="activeName === 'second'">
|
<template v-if="model.hospitalFileList && model.hospitalFileList">
|
<div class="desc_data_list_item" v-for="(item, index) in model.hospitalFileList" :key="index">
|
<div class="desc_data_list_item_dele" @click="delFile(item.id)">删除</div>
|
<div class="desc_data_list_item_img" v-if="item.type == 0 && item.fileurlFull != null">
|
<img :src="item.fileurlFull" />
|
</div>
|
<div class="desc_data_list_item_img" v-if="item.type == 1 && item.fileurlFull != null">
|
<video controls :src="item.fileurlFull" />
|
</div>
|
<div class="desc_data_list_item_info">
|
<span>{{ item.name }}</span>
|
<span>操作员-{{ item.creatorName }}</span>
|
<span>{{ item.createDate }}</span>
|
</div>
|
</div>
|
</template>
|
<template v-if="(model.hospitalFileList==null|| model.hospitalFileList.length==0) && (model.status ==2 || model.status ==4)">
|
<span style="height: 40px; width:100%;text-align:center;color: #8c939d;font-size: 12px">暂无相关材料</span>
|
</template>
|
<upload v-if="model.status !=1 && model.status !=4" width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @loading="loading = true" @success="claimsUploadFile($event, 4)" />
|
<!-- <div class="desc_data_list_item">-->
|
<!-- <div class="desc_data_list_item_img" style="cursor: pointer; background: #8c939d;">-->
|
<!-- <i class="el-icon-plus"></i>-->
|
<!-- </div>-->
|
<!-- <div class="desc_data_list_item_upload">-->
|
<!-- <el-button type="primary">上传</el-button>-->
|
<!-- <el-button>取消</el-button>-->
|
<!-- </div>-->
|
<!-- </div>-->
|
<!-- <div class="desc_data_list_item1"></div>-->
|
<!-- <div class="desc_data_list_item1"></div>-->
|
</div>
|
<div class="desc_data_list" v-else-if="activeName === 'third'">
|
<template v-if="model.disabilityFileList && model.disabilityFileList">
|
<div class="desc_data_list_item" v-for="(item, index) in model.disabilityFileList" :key="index">
|
<div class="desc_data_list_item_dele" @click="delFile(item.id)">删除</div>
|
<div class="desc_data_list_item_img" v-if="item.type == 0 && item.fileurlFull != null">
|
<img :src="item.fileurlFull" />
|
</div>
|
<div class="desc_data_list_item_img" v-if="item.type == 1 && item.fileurlFull != null">
|
<video controls :src="item.fileurlFull" />
|
</div>
|
<div class="desc_data_list_item_info">
|
<span>{{ item.name }}</span>
|
<span>操作员-{{ item.creatorName }}</span>
|
<span>{{ item.createDate }}</span>
|
</div>
|
</div>
|
</template>
|
<template v-if="(model.disabilityFileList==null|| model.disabilityFileList.length==0) && (model.status ==2 || model.status ==4)">
|
<span style=" height: 40px;width:100%;text-align:center;color: #8c939d;font-size: 12px">暂无相关材料</span>
|
</template>
|
<upload v-if="model.status !=1 && model.status !=4" width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @loading="loading = true" @success="claimsUploadFile($event, 5)" />
|
<!-- <div class="desc_data_list_item">-->
|
<!-- <UploadFileCommon :uploadData="{ folder: 'apply',fileType:'.pdf' }" :fileList="form.fileList1" @uploadSuccess="baoxianFileUploaded" />-->
|
<!--<!– <div class="desc_data_list_item_img" style="cursor: pointer; background: #8c939d;">-->
|
<!-- <i class="el-icon-plus"></i>-->
|
<!-- </div>–>-->
|
<!-- <div class="desc_data_list_item_upload">-->
|
<!-- <el-button type="primary">上传</el-button>-->
|
<!-- <el-button>取消</el-button>-->
|
<!-- </div>-->
|
<!-- </div>-->
|
<!-- <div class="desc_data_list_item1"></div>-->
|
<!-- <div class="desc_data_list_item1"></div>-->
|
</div>
|
</div>
|
<div class="desc_data">
|
<div class="desc_data_label">3. 赔付结案资料</div>
|
<div class="desc_data_list">
|
<template v-if="model.compensationFileList && model.compensationFileList">
|
<div class="desc_data_list_item" v-for="(item, index) in model.compensationFileList" :key="index">
|
<div class="desc_data_list_item_dele" @click="delFile(item.id)">删除</div>
|
<div class="desc_data_list_item_img" v-if="item.type == 0 && item.fileurlFull != null">
|
<img :src="item.fileurlFull" />
|
</div>
|
<div class="desc_data_list_item_img" v-if="item.type == 1 && item.fileurlFull != null">
|
<video controls :src="item.fileurlFull" />
|
</div>
|
<div class="desc_data_list_item_info">
|
<span>{{ item.name }}</span>
|
<span>操作员-{{ item.creatorName }}</span>
|
<span>{{ item.createDate }}</span>
|
</div>
|
</div>
|
</template>
|
<template v-if="(model.compensationFileList==null|| model.compensationFileList.length==0) && (model.status ==2 || model.status ==4)">
|
<span style=" height: 40px;width:100%;text-align:center;color: #8c939d;font-size: 12px">暂无相关材料</span>
|
</template>
|
<upload v-if="model.status !=1 && model.status !=4" width="100px" height="100px" :list="[]" accept=".png,.jpg,.jpeg,.mp4,.word,.xlsx,.xls,.pdf,.excel" folder="settle" @loading="loading = true" @success="claimsUploadFile($event, 6)" />
|
<!-- <div class="desc_data_list_item">-->
|
<!-- <div class="desc_data_list_item_img" style="cursor: pointer; background: #8c939d;">-->
|
<!-- <i class="el-icon-plus"></i>-->
|
<!-- </div>-->
|
<!-- <div class="desc_data_list_item_upload">-->
|
<!-- <el-button type="primary">上传</el-button>-->
|
<!-- <el-button>取消</el-button>-->
|
<!-- </div>-->
|
<!-- </div>-->
|
<!-- <div class="desc_data_list_item1"></div>-->
|
<!-- <div class="desc_data_list_item1"></div>-->
|
</div>
|
</div>
|
<div class="desc_label">
|
<div class="desc_label_left">
|
<span class="desc_label_left_title">
|
案件进度
|
</span>
|
</div>
|
</div>
|
<div class="desc_times">
|
<el-timeline :reverse="reverse">
|
<el-timeline-item
|
v-for="(activity, index) in model.settleClaimsLogList"
|
:key="index"
|
:timestamp="activity.timestamp">
|
<div style="display: flex; flex-direction: column;" v-if="activity.objType==3">
|
<span style="font-size: 16px; font-weight: bold; color: #0d5ada;">
|
{{activity.title}}
|
<span style="font-size: 16px; font-weight: bold; color: #0d5ada; margin-left: 10px;" >
|
<span v-if=" model.ylClaimAccount && model.ylClaimAccount>0">医疗理赔{{ model.ylClaimAccount }}元;</span>
|
<span v-if=" model.wgClaimAccount && model.wgClaimAccount>0">误工理赔{{ model.wgClaimAccount }}元;</span>
|
<span v-if=" model.scClaimAccount && model.scClaimAccount>0">伤残理赔{{ model.scClaimAccount }}元;</span>
|
<span v-if=" model.swClaimAccount && model.swClaimAccount>0">死亡理赔{{ model.swClaimAccount }}元;</span>
|
理赔总额:{{ model.claimAccount }}元
|
</span>
|
</span>
|
<span style="margin-top: 5px; font-size: 12px; font-weight: 400; color: #999999;">
|
{{activity.content}}
|
</span>
|
<span style="margin-top: 5px; font-size: 12px; font-weight: 400; color: #999999;">
|
操作员-{{activity.creatorName}}({{activity.creatorType==1? activity.companyName: "平台端"}}){{activity.createDate}}
|
</span>
|
</div>
|
<div style="display: flex; flex-direction: column;" v-else>
|
<span style="font-size: 16px; font-weight: 400; color: black;">
|
{{activity.title}}
|
<span style="font-size: 16px; font-weight: 400; color: black; margin-left: 10px;" >
|
{{activity.content}}
|
</span>
|
</span>
|
<span style="margin-top: 5px; font-size: 12px; font-weight: 400; color: #999999;">
|
操作员-{{activity.creatorName}}({{activity.creatorType==1? activity.companyName: "平台端"}}){{activity.createDate}}
|
</span>
|
</div>
|
</el-timeline-item>
|
</el-timeline>
|
</div>
|
</div>
|
<template v-slot:footer>
|
<el-button @click="visible=false">返回</el-button>
|
</template>
|
<OperaSettleClaimsCheckWindow ref="operaInsuranceApplyCheckWindow" @success="callback" />
|
<!-- 在线报案 -->
|
<onlineReporting ref="onlineReporting" @success="callback" />
|
<!-- 补充说明 -->
|
<supplementaryExplanation ref="supplementaryExplanation" @success="callback" />
|
<!-- 投保详情 -->
|
<OperaInsuranceApplyDetails ref="OperaInsuranceApplyDetails" @success="callback" />
|
</GlobalWindow>
|
</template>
|
|
<script>
|
|
import UploadFileCommon from '@/components/common/UploadFileCommon'
|
import BaseOpera from '@/components/base/BaseOpera'
|
import GlobalWindow from '@/components/common/GlobalWindow'
|
import OperaSettleClaimsCheckWindow from '@/components/business/OperaSettleClaimsCheckWindow'
|
import onlineReporting from '@/components/enterprise/onlineReporting'
|
import supplementaryExplanation from '@/components/enterprise/supplementaryExplanation'
|
import OperaInsuranceApplyDetails from '@/components/business/OperaInsuranceApplyWindow'
|
import upload from '@/components/common/upload'
|
import {confirmFile, findById,exportFiles,claimsUploadFile,delFile} from '@/api/business/settleClaims'
|
import { mapState } from 'vuex'
|
export default {
|
name: 'OperaSettleClaimsWindow',
|
extends: BaseOpera,
|
components: { GlobalWindow, OperaSettleClaimsCheckWindow, OperaInsuranceApplyDetails, UploadFileCommon, onlineReporting, supplementaryExplanation, upload },
|
data () {
|
return {
|
loading: false,
|
doneFileDate: null,
|
remarkLogList: [],
|
list: [],
|
model: {},
|
activeName: 'first',
|
reverse: false
|
}
|
},
|
computed: {
|
...mapState(['userInfo'])
|
},
|
created () {
|
this.config({
|
api: '/business/settleClaims',
|
'field.id': 'id'
|
})
|
},
|
methods: {
|
open(title,target){
|
this.model = {}
|
this.model = target
|
this.title = title
|
this.visible = true
|
this.doneFileDate = null
|
this.remarkLogList = []
|
this.getDetail()
|
},
|
// 判断两个时间之间相差是否
|
contrast24(time1, time2) {
|
console.log(time1)
|
console.log(time2)
|
if (time1 && time2) {
|
let a = new Date(time1)
|
let b = new Date(time2)
|
let timeDiff = Math.abs(a.getTime() - b.getTime());
|
console.log(Math.ceil(timeDiff / (3600 * 1000)))
|
return Math.ceil(timeDiff / (3600 * 1000)) <= 24;
|
} else {
|
return false
|
}
|
},
|
contrast(time1, time2) {
|
if (time1 && time2) {
|
let a = new Date(time1).getTime()
|
let b = new Date(time2).getTime()
|
return a > b
|
} else {
|
return false
|
}
|
},
|
edit() {
|
let obj = JSON.parse(JSON.stringify(this.model))
|
obj.areaId = obj.areaId.split(',').map(item => Number(item))
|
this.$refs.onlineReporting.open('修改信息', obj)
|
},
|
openBaoxiandan(){
|
window.open(this.model.baoxiandanFile.fileurlFull);
|
},
|
delFile(id){
|
this.$dialog.messageConfirm('确认删除该附件吗,一旦删除无法撤回?')
|
.then(() => {
|
delFile(this.model.id, id).then(response => {
|
this.getDetail()
|
}).catch(err => {
|
this.$tip.apiFailed(err)
|
})
|
})
|
},
|
getDetail(){
|
findById( this.model.id)
|
.then(res => {
|
this.model = res
|
this.remarkLogList = []
|
var logList = this.model.settleClaimsLogList
|
if (logList) {
|
logList.forEach(item => {
|
if (item.objType == 2) {
|
this.doneFileDate = item.createDate
|
}
|
if (item.objType==7) {
|
this.remarkLogList.push(item)
|
}
|
})
|
}
|
}).catch(err => {
|
|
})
|
},
|
handleClick(tab) {
|
this.activeName = tab.name
|
},
|
callback(){
|
this.getDetail()
|
this.$emit('success')
|
},
|
claimsUploadFile(e, objType) {
|
claimsUploadFile({
|
id: this.model.id,
|
objType,
|
fileUrl: e.imgaddr,
|
fileName: e.originname,
|
fileType: e.type
|
}).then(response => {
|
this.getDetail()
|
}).catch(err => {
|
this.$tip.apiFailed(err)
|
}).finally(() => {
|
this.loading = false
|
})
|
},
|
submit(type) {
|
var that = this
|
if (type == 0) {
|
this.$dialog.messageConfirm('理赔材料收集完成,请及时提交保险公司!')
|
.then(() => {
|
// this.isWorking = true
|
confirmFile({id:that.model.id})
|
.then(response => {
|
that.getDetail()
|
}).catch(err => {
|
this.$tip.apiFailed(err)
|
})
|
})
|
}else if(type == 1){
|
//资料下载
|
this.$dialog.exportConfirm('确认进行资料下载吗?')
|
.then(() => {
|
this.isWorking = true
|
exportFiles({ id: that.model.id })
|
.then(response => {
|
this.download(response)
|
}).catch(err => {
|
console.log(err)
|
this.$message.error("下载资料失败,请确认资料数据不为空")
|
}).finally(() => {
|
this.isWorking = false
|
})
|
})
|
.catch(() => {
|
})
|
}
|
}
|
}
|
}
|
</script>
|
<style>
|
.v-modal {
|
z-index: 2000 !important;
|
}
|
</style>
|
<style lang="scss" scoped>
|
.form {
|
width: 100%;
|
display: flex;
|
align-items: center;
|
flex-direction: column;
|
.form_span {
|
width: 100%;
|
display: flex;
|
align-items: start;
|
flex-direction: column;
|
margin-bottom: 20px;
|
span {
|
font-size: 14px;
|
&:nth-child(1) {
|
color: black;
|
margin-bottom: 5px;
|
}
|
&:nth-child(2) {
|
color: #8c939d;
|
}
|
}
|
}
|
.form_item {
|
width: 100%;
|
display: flex;
|
align-items: start;
|
margin-bottom: 20px;
|
&:last-child {
|
margin: 0 !important;
|
}
|
.form_item_label {
|
flex-shrink: 0;
|
color: black;
|
font-size: 14px;
|
span {
|
color: red;
|
font-size: 14px;
|
}
|
}
|
.form_item_val {
|
flex: 1;
|
/*height: 40px;*/
|
margin-left: 20px;
|
textarea {
|
width: 100%;
|
height: 70px;
|
border: 1px solid #cbcbcb;
|
padding: 10px;
|
outline: none;
|
box-sizing: border-box;
|
}
|
input {
|
width: 100%;
|
height: 100%;
|
outline: none;
|
border-radius: 5px;
|
border: 1px solid #cbcbcb;
|
padding: 0 20px;
|
box-sizing: border-box;
|
}
|
}
|
}
|
}
|
.desc {
|
width: 100%;
|
display: flex;
|
align-items: center;
|
flex-direction: column;
|
.desc_label {
|
width: 100%;
|
display: flex;
|
align-items: center;
|
justify-content: space-between;
|
.desc_label_left {
|
flex: 1;
|
display: flex;
|
align-items: center;
|
.desc_label_left_title {
|
font-size: 20px;
|
font-weight: bold;
|
color: black;
|
}
|
.desc_label_left_time {
|
font-size: 14px;
|
color: black;
|
/*color: rgba(249, 86, 1, 0.996);*/
|
margin-left: 10px;
|
}
|
.desc_label_left_code {
|
font-size: 15px;
|
color: black;
|
margin-left: 30px;
|
}
|
}
|
.desc_label_right {
|
flex-shrink: 0;
|
}
|
}
|
.desc_list {
|
width: 100%;
|
margin-top: 20px;
|
display: flex;
|
align-items: center;
|
flex-wrap: wrap;
|
.desc_list_item {
|
width: 33.3%;
|
display: flex;
|
align-items: center;
|
margin-bottom: 10px;
|
.desc_list_item_label {
|
width: 130px;
|
flex-shrink: 0;
|
font-size: 15px;
|
color: black;
|
}
|
.desc_list_item_val {
|
flex: 1;
|
font-size: 15px;
|
color: black;
|
}
|
.desc_list_item_videos {
|
flex: 1;
|
display: flex;
|
align-items: center;
|
flex-wrap: wrap;
|
.desc_list_item_imgs_video {
|
width: 120px;
|
height: 120px;
|
background: black;
|
margin-right: 10px;
|
display: flex;
|
align-items: center;
|
justify-content: center;
|
overflow: hidden;
|
video {
|
width: 100%;
|
height: 100%;
|
}
|
img {
|
width: 100%;
|
}
|
}
|
}
|
}
|
}
|
.desc_xian {
|
width: 100%;
|
height: 1px;
|
margin: 10px 0;
|
background: #ececec;
|
}
|
.desc_data {
|
width: 100%;
|
display: flex;
|
flex-direction: column;
|
margin-top: 20px;
|
.desc_data_label {
|
font-size: 16px;
|
color: black;
|
font-weight: 600;
|
margin-bottom: 20px;
|
}
|
.desc_data_cate {
|
width: 100%;
|
margin: 0 0 10px 0;
|
}
|
.desc_data_list {
|
width: 100%;
|
display: flex;
|
align-items: center;
|
flex-wrap: wrap;
|
.desc_data_list_item1 {
|
width: 24.5%;
|
}
|
.desc_data_list_item {
|
width: 24.5%;
|
padding: 10px;
|
box-sizing: border-box;
|
border: 1px solid #e2e2e2;
|
display: flex;
|
align-items: center;
|
justify-content: space-between;
|
position: relative;
|
margin-bottom: 10px;
|
margin-right: 20px;
|
&:last-child {
|
margin-right: 0 !important;
|
}
|
.desc_data_list_item_dele {
|
position: absolute;
|
top: 10px;
|
right: 10px;
|
font-size: 14px;
|
cursor: pointer;
|
color: rgba(249, 86, 1, 0.996078431372549);
|
}
|
.desc_data_list_item_upload {
|
flex: 1;
|
height: 80px;
|
display: flex;
|
align-items: center;
|
justify-content: center;
|
}
|
.desc_data_list_item_img {
|
flex-shrink: 0;
|
width: 80px;
|
height: 80px;
|
display: flex;
|
align-items: center;
|
justify-content: center;
|
overflow: hidden;
|
margin-right: 10px;
|
.el-icon-plus {
|
font-size: 26px;
|
color: #ffffff;
|
}
|
img {
|
width: 100%;
|
}
|
video {
|
width: 100%;
|
}
|
}
|
.desc_data_list_item_info {
|
flex: 1;
|
height: 80px;
|
display: flex;
|
flex-direction: column;
|
justify-content: space-between;
|
word-break: break-all;
|
span {
|
&:nth-child(1) {
|
width: 160px;
|
white-space: nowrap;
|
overflow: hidden;
|
text-overflow: ellipsis;
|
font-size: 14px;
|
color: black;
|
padding-right: 30px;
|
box-sizing: border-box;
|
}
|
&:nth-child(2) {
|
width: 100%;
|
word-break: break-all;
|
font-size: 14px;
|
color: #888888;
|
}
|
&:nth-child(3) {
|
width: 100%;
|
word-break: break-all;
|
font-size: 14px;
|
color: #888888;
|
}
|
}
|
}
|
}
|
}
|
}
|
.desc_times {
|
width: 100%;
|
margin-top: 20px;
|
}
|
}
|
</style>
|