行政处罚信用修复改为三级审批流程

This commit is contained in:
zhouxy 2026-02-04 20:45:30 +08:00
parent 595111c613
commit d03d00229b
2 changed files with 73 additions and 14 deletions

View File

@ -94,8 +94,12 @@ export default {
// 严重违法 end
case 'startAccept':
return '待受理'
case 'handleRemPunish':
return '待审核'
case 'approveRemPunish':
return '待审批'
case 'returnRemPunish':
return '回退待处理'
default:
return '未知节点状态'
}

View File

@ -230,15 +230,15 @@
<template v-if="taskInfo && taskInfo.origin === '1'">
<!-- origin为1时代表外网申请的 -->
<el-form-item label="是否受理:" prop="isAccept">
<el-radio v-model="punishInfo.isAccept" label="1" style="font-size: unset" @change="handleAcceptChange">受理</el-radio>
<el-radio v-model="punishInfo.isAccept" label="0" style="font-size: unset" @change="handleAcceptChange">不予受理回退至申请人</el-radio>
<el-radio v-model="punishInfo.isAccept" label="1" style="font-size: unset" @change="handleAcceptChange" :disabled="punishInfo.linkType !== '1'">受理</el-radio>
<el-radio v-model="punishInfo.isAccept" label="0" style="font-size: unset" @change="handleAcceptChange" :disabled="punishInfo.linkType !== '1'">不予受理回退至申请人</el-radio>
</el-form-item>
</template>
<template v-else>
<!-- origin不为1时代表内网发起的 -->
<el-form-item label="是否受理:" prop="isAccept">
<el-radio v-model="punishInfo.isAccept" label="1" style="font-size: unset" @change="handleAcceptChange">受理</el-radio>
<el-radio v-model="punishInfo.isAccept" label="0" style="font-size: unset" @change="handleAcceptChange">不予受理</el-radio>
<el-radio v-model="punishInfo.isAccept" label="1" style="font-size: unset" @change="handleAcceptChange" :disabled="punishInfo.linkType !== '1'">受理</el-radio>
<el-radio v-model="punishInfo.isAccept" label="0" style="font-size: unset" @change="handleAcceptChange" :disabled="punishInfo.linkType !== '1'">不予受理</el-radio>
</el-form-item>
</template>
</el-col>
@ -259,6 +259,26 @@
</el-form-item>
</el-col>
</el-row>
<el-row class="bt0 flex-row" v-if="punishInfo.isAccept === '1'">
<el-col :span="24">
<!-- 单选按钮组 -->
<el-form-item label="下一步操作:" prop="nextNodeId">
<el-radio-group v-model="punishInfo.nextNodeId">
<template v-if="punishInfo.linkType === '1'">
<el-radio label="handleRemPunish">提交至执法人员审核</el-radio>
</template>
<template v-else-if="punishInfo.linkType === '0'">
<el-radio label="approveRemPunish">提交至审批人</el-radio>
<el-radio label="returnRemPunish">回退上一步</el-radio>
</template>
<template v-else-if="punishInfo.linkType === '2'">
<el-radio label="endRemPunish">业务结束</el-radio>
<el-radio label="returnRemPunish">回退上一步</el-radio>
</template>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
<el-row class="bt0 flex-row">
<el-col :span="24">
<el-form-item label="意见" prop="opinion">
@ -266,10 +286,19 @@
</el-form-item>
</el-col>
</el-row>
<el-row class="bt0 flex-row" v-if="punishInfo.linkType === '1' && punishInfo.isAccept === '1'">
<el-row class="bt0 flex-row" v-if="punishInfo.isAccept === '1' && !(punishInfo.nextNodeId === 'endRemPunish' || punishInfo.nextNodeId === 'returnRemPunish') && punishInfo.linkType !== '2'">
<el-col :span="24">
<el-form-item label="下一步操作人" prop="nextPerformerids">
<el-select v-model="punishInfo.nextPerformerids" placeholder="请选择下一步操作人" filterable class="custom" style="width:40%">
<el-form-item
:label="getOperatorLabel()"
prop="nextPerformerids"
>
<el-select
v-model="punishInfo.nextPerformerids"
placeholder="请选择下一步操作人"
filterable
class="custom"
style="width:40%"
>
<el-option
v-for="item in reviewer"
:key="'reviewer'+item.primaryKey"
@ -341,7 +370,9 @@ export default {
fullscreenLoading: false,
user: JSON.parse(sessionStorage.getItem('user')),
bizSeq: this.$route.query.bizSeq,
punishInfo: {},
punishInfo: {
nextNodeId: ''
},
IlcPunInfo: {},
taskInfo: {},
process: {},
@ -430,6 +461,15 @@ export default {
this.loadReviewer()
},
methods: {
// label
getOperatorLabel() {
if (this.punishInfo.linkType === '1') {
return '审核人';
} else if (this.punishInfo.linkType === '0') {
return '审批人';
}
return '下一步操作人'; //
},
toEntDetail() {
this.$router.push({
path: '/aiccs/comprehensive/details',
@ -475,15 +515,20 @@ export default {
},
//
performSubmit() {
// linkType '1'
if (this.punishInfo.linkType !== '1') {
//
const submitData = {
...this.punishInfo,
nextNodeId: this.punishInfo.nextNodeId // nextNodeId
};
//
if (this.punishInfo.nextNodeId === 'endRemPunish') {
this.$message({
message: '提醒!后台正在生成文书,过程需要耐心等待,切勿重复点击提交,待生成完毕页面会自动返回待办。',
type: 'warning',
duration: 5000 // 5
});
}
submitTask(this.punishInfo).then(res => {
submitTask(submitData).then(res => {
if (res.code === 0) {
this.$message.success('提交成功')
this.$router.back()
@ -546,11 +591,14 @@ export default {
},
//
loadReviewer() {
getUsersWithPermission('exptRemoveHandle', this.user.orgId).then(res => {
// linkType permission
const permission = this.punishInfo.linkType === '1' ? 'exptRemoveHandle' : 'exptRemoveApprove';
getUsersWithPermission(permission, this.user.orgId).then(res => {
if (res.code === 0) {
this.reviewer = res.data
this.reviewer = res.data;
}
})
});
},
//
validateBusinessForm() {
@ -577,6 +625,13 @@ export default {
//
if (value === '1') {
this.punishInfo.isAgreeRepair = '';
// linkType === '1'
if (this.punishInfo.linkType === '1') {
this.punishInfo.nextNodeId = 'handleRemPunish';
}
} else {
//
this.punishInfo.nextNodeId = '';
}
},
openDialog(type) {