<template>
|
<GlobalWindow
|
:title="title"
|
width="100%"
|
:visible.sync="visible"
|
:confirm-working="isWorking"
|
>
|
<!-- 驳回退回申请 -->
|
<div class="form">
|
<div class="form_item">
|
<div class="form_item_label"><span>*</span>审核说明:</div>
|
<div class="form_item_val">
|
<el-input type="textarea" v-model="checkInfo" :rows="2" placeholder="请输入"></el-input>
|
</div>
|
</div>
|
</div>
|
|
<div class="box" v-for="(item, index) in duSolutionList" :key="index">
|
<div class="box_label">保险方案:{{item.solutionName}}</div>
|
<el-table
|
v-if="item.duWorktypeList && item.duWorktypeList.length>0"
|
:data="item.duWorktypeList"
|
border
|
style="width: 100%">
|
<el-table-column label="序号" width="80px">
|
<template slot-scope="scope">
|
<span>{{scope.$index + 1}}</span>
|
</template>
|
</el-table-column>
|
<el-table-column
|
prop="workTypeName"
|
label="所属工种">
|
</el-table-column>
|
<el-table-column
|
prop="name"
|
label="操作视频">
|
<template slot-scope="{row}">
|
<video loop controls width="150px" height="150px" :src="row.videoUrlFull"></video>
|
</template>
|
</el-table-column>
|
<el-table-column
|
label="状态">
|
<template slot-scope="{row}">
|
<span :class="'du-status'+row.status" v-if="row.unitStatus === 0">待审核</span>
|
<span :class="'du-status'+row.status" v-if="row.unitStatus === 1">审核通过</span>
|
<span :class="'du-status'+row.status" v-if="row.unitStatus === 2">审核不通过</span>
|
</template>
|
</el-table-column>
|
</el-table>
|
</div>
|
<template v-slot:footer>
|
<el-button type="primary" @click="doSubmit(1)">审核通过</el-button>
|
<el-button type="danger" @click="doSubmit(2)">审核退回</el-button>
|
<el-button @click="visible=false">取消</el-button>
|
</template>
|
</GlobalWindow>
|
</template>
|
|
<script>
|
import BaseOpera from '@/components/base/BaseOpera'
|
import GlobalWindow from '@/components/common/GlobalWindow'
|
import {checkWorktype} from "@/api/business/dispatchUnit";
|
export default {
|
name: 'dispatchReview',
|
extends: BaseOpera,
|
components: { GlobalWindow },
|
data () {
|
return {
|
// 表单数据
|
checkInfo:'',
|
form: {
|
duSolutionList:[]
|
},
|
duSolutionList:[],
|
// 验证规则
|
rules: {
|
},
|
tableData: [],
|
visible5: false
|
}
|
},
|
created () {
|
this.config({
|
api: '/business/insuranceApply',
|
'field.id': 'id'
|
})
|
},
|
methods: {
|
open(title, target){
|
this.title=title
|
this.visible=true
|
this.form ={}
|
this.checkInfo=''
|
this.form = target
|
this.duSolutionList=[]
|
var duSolutionList = this.form.duSolutionList;
|
duSolutionList.forEach(item => {
|
var worktyps = item.duWorktypeList;
|
var flag = 0;
|
var tempworktyps = new Array();
|
worktyps.forEach(item1 => {
|
if(item1.status == null || item1.status == 0){
|
//如果是待审核工种
|
flag = 1;
|
tempworktyps.push(item1);
|
}
|
if(flag ==1){
|
this.duSolutionList.push({duWorktypeList:tempworktyps,solutionName:item.solutionName})
|
}
|
})
|
})
|
|
console.log(this.form)
|
},
|
doSubmit(type){
|
this.$dialog.messageConfirm('确认进行该操作吗?')
|
.then(() => {
|
this.isWorking = true
|
checkWorktype({id:this.form.id,checkInfo:this.checkInfo,worktypeStatus:type})
|
.then(response => {
|
this.visible = false
|
this.$emit('success')
|
}).catch(err => {
|
this.$tip.apiFailed(err)
|
})
|
})
|
}
|
|
}
|
}
|
</script>
|
|
<style lang="scss" scoped>
|
.box {
|
width: 100%;
|
.box_label {
|
width: 100%;
|
color: black;
|
font-size: 14px;
|
margin-bottom: 15px;
|
}
|
}
|
.form {
|
width: 100%;
|
display: flex;
|
align-items: center;
|
flex-direction: column;
|
margin-bottom: 50px;
|
.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: center;
|
margin-bottom: 50px;
|
&:last-child {
|
margin: 0 !important;
|
}
|
.form_item_label {
|
flex-shrink: 0;
|
//width: 170px;
|
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: 40px;
|
outline: none;
|
border-radius: 5px;
|
border: 1px solid #cbcbcb;
|
padding: 0 20px;
|
box-sizing: border-box;
|
}
|
}
|
}
|
}
|
</style>
|