1.市场主体除名修复管理、行政复议管理、撤销除名管理等功能

This commit is contained in:
cc_caijp 2026-01-12 18:46:32 +08:00
parent 907abed280
commit d5ecb37588
17 changed files with 12955 additions and 3194 deletions

View File

@ -81,22 +81,7 @@ export function expelledRepairStartBiz(data) {
})
}
// 除名修复业务审批流程
export function expelledRepairNextBiz(data) {
// const form = new FormData()
// console.log(form)
// console.log(data)
// for (const key in data) {
// form.append(key, data[key])
// }
// console.log(form)
return request({
url: '/expelled/repair/nextBiz',
method: 'post',
data: data
})
}
// 获取除名修复业务详情
export function expelledRepairGetBiz(bizId) {
return request({
url: `/expelled/repair/getBiz?bizId=${bizId}`,
@ -104,3 +89,64 @@ export function expelledRepairGetBiz(bizId) {
})
}
// 除名修复业务审批流程
export function expelledRepairNextBiz(data) {
return request({
url: '/expelled/repair/nextBiz',
method: 'post',
data: data
})
}
// 启动除名复议业务
export function expelledReviewStartBiz(data) {
return request({
url: '/expelled/review/startBiz',
method: 'post',
data
})
}
// 获取除名复议业务详情
export function expelledReviewGetBiz(bizId) {
return request({
url: `/expelled/review/getBiz?bizId=${bizId}`,
method: 'get'
})
}
// 除名复议业务审批流程
export function expelledReviewNextBiz(data) {
return request({
url: '/expelled/review/nextBiz',
method: 'post',
data: data
})
}
// 启动除名撤销业务
export function expelledRevokeStartBiz(data) {
return request({
url: '/expelled/revoke/startBiz',
method: 'post',
data
})
}
// 获取除名撤销业务详情
export function expelledRevokeGetBiz(bizId) {
return request({
url: `/expelled/revoke/getBiz?bizId=${bizId}`,
method: 'get'
})
}
// 除名撤销业务审批流程
export function expelledRevokeNextBiz(data) {
return request({
url: '/expelled/revoke/nextBiz',
method: 'post',
data: data
})
}

View File

@ -109,6 +109,10 @@ export default {
return '批量注销'
case '1001':
return '除名修复'
case '1002':
return '除名复议'
case '1003':
return '除名撤销'
default:
return '未知业务类型'
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,452 @@
<template>
<div class="main-content m20">
<!--头部-查询-->
<div class="content-header">
<div class="body search-body">
<el-row>
<el-col :span="12">
<el-row class="mb10">
<label class="label-name_1">统一社会信用代码/注册号</label>
<div class="search-input-box_1">
<el-input v-model="searchForm.uscc" clearable size="mini" type="text" class="search-input" placeholder="请输入统一社会信用代码/注册号" @keyup.enter.native="loadPage" />
</div>
</el-row>
</el-col>
<el-col :span="12" class="mb10">
<label class="label-name">主体名称</label>
<div class="search-input-box">
<el-input v-model="searchForm.entName" clearable size="mini" type="text" class="search-input" placeholder="请输入主体名称(模糊)" @keyup.enter.native="loadPage" />
</div>
</el-col>
<!-- <el-col :span="12">-->
<!-- <el-row>-->
<!-- <label class="label-name_2">除名原因</label> &lt;!&ndash; clearable 可以清空选项 &ndash;&gt;-->
<!-- <el-select-->
<!-- v-model="searchForm.specause"-->
<!-- clearable-->
<!-- size="mini"-->
<!-- placeholder="请选择列入原因"-->
<!-- class="custom"-->
<!-- @change="loadPage"-->
<!-- >-->
<!-- <el-option-->
<!-- v-for="item in reasonList"-->
<!-- :key="item.value"-->
<!-- :label="item.label"-->
<!-- :value="item.value"-->
<!-- />-->
<!-- </el-select>-->
<!-- </el-row>-->
<!-- </el-col>-->
</el-row>
<!-- <el-row>-->
<!-- <el-col :span="12">-->
<!-- <el-row class="mb10">-->
<!-- <label class="label-name">除名日期</label> &lt;!&ndash; value-format="yyyy-MM-dd" 指定日期发送格式 &ndash;&gt;-->
<!-- <el-date-picker-->
<!-- v-model="searchForm.searchDate"-->
<!-- size="mini"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- type="daterange"-->
<!-- range-separator="至"-->
<!-- start-placeholder="开始日期"-->
<!-- end-placeholder="结束日期"-->
<!-- @change="loadPage"-->
<!-- />-->
<!-- </el-row>-->
<!-- </el-col>-->
<!-- </el-row>-->
<el-row>
<el-col :span="11" :offset="1">
<div class="btn-box">
<el-button size="mini" type="primary" @click="loadPage">查询</el-button>
<el-button size="mini" @click="reset">重置</el-button>
</div>
</el-col>
</el-row>
</div>
</div>
<!--body-查询结果-->
<div class="content-body">
<div class="body">
<el-table
ref="multipleTable"
v-loading="loading"
size="mini"
:data="tableData"
tooltip-effect="dark"
style="width: 95%;margin:0 auto"
:fit="true"
:row-class-name="tableRowClassName"
:header-cell-style="{background:'#8cc3fb',color:'#fff'}"
@selection-change="handleSelectionChange"
>
<el-table-column prop="index" label="序号" min-width="10%" align="center" />
<el-table-column prop="uscc" label="统一社会信用代码/注册号" min-width="25%" align="left" />
<el-table-column prop="entName" label="主体名称" min-width="25%" align="left" />
<el-table-column prop="lerepName" label="法定代表人(负责人、经营者)" min-width="20%" align="left" />
<el-table-column prop="removeDate" label="除名日期" min-width="15%" align="left" />
<el-table-column prop="auditOpinion" :show-overflow-tooltip="true" label="除名原因" align="left" min-width="30%" />
<el-table-column prop="removeOrgName" label="除名机关" align="left" min-width="20%" />
<el-table-column label="操作" min-width="10%" align="center" fixed="right">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="check(scope.row)">办理</el-button>
</template>
</el-table-column>
</el-table>
<div class="page-box">
<el-row class="bl0">
<el-col :span="24">
<el-pagination
:disabled="loading"
:page-size="pageParam.size"
:total="pageParam.total"
:page-sizes="[10, 20, 30, 40,50,100,200]"
layout="slot,total, sizes, prev, pager, next, jumper"
@size-change="pageSizeChange"
@current-change="pageIndexChange"
>
<span>
{{ pageParam.current }} /
{{ (pageParam.total !== 0 ? parseInt((pageParam.total + pageParam.size - 1)/pageParam.size) : 1) }}
</span>
</el-pagination>
</el-col>
</el-row>
</div>
</div>
</div>
<el-dialog
title="提示"
:visible.sync="templateDialog1"
width="30%"
>
<span>{{ prompt }}</span>
<span slot="footer" class="dialog-footer">
<el-button type="primary" :loading="subloading" @click="startTask(abnlistidParam)">确定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import { startBizRemove } from '@/api/abnormal'
import { getConstant } from '@/api/system'
import { expelledAnnouncementList, expelledRevokeStartBiz } from '@/api/除名公告'
export default {
components: {
},
data() {
return {
subloading: false,
abnlistidParam: '',
templateDialog1: false,
prompt: '',
details: [],
selection: [],
searchForm: {
uscc: '',
entName: ''
},
reasonList: [], //
reason: '',
loading: false,
showMore: false,
showFixed: false,
tableData: [],
pageParam: {
current: 1,
total: 0,
size: 10
}
}
},
watch: {
},
mounted() {
//
getConstant('CD75').then(res => {
if (res.code === 0) {
const list = []
res.data.forEach(each => {
list.push({
value: each.code,
label: each.name
})
})
this.reasonList = list
}
})
this.loadPage()
window.addEventListener('scroll', this.handleScroll, true)
},
methods: {
showMoreCriteria() {
this.showMore = !this.showMore
},
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 === 1) {
return 'warning-row'
}
},
handleScroll() {
var scrollTop =
window.pageYOffset ||
document.documentElement.scrollTop ||
document.body.scrollTop
if (scrollTop > 80) {
this.showFixed = true
} else {
this.showFixed = false
}
},
//
reasonFormat(row) {
let name = ''
this.reasonList.forEach(each => {
if (each.value === row.specause) {
name = each.label
}
})
return name
},
check(row) {
this.$confirm('是否确认启动待办', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
return expelledRevokeStartBiz(row).then(({ code, data }) => {
if (code === 0) {
this.$message.success('除名撤销业务启动成功')
this.$router.push({ path: '/expelled/removeRevokeAccept', query: { bizId: data.bizId }})
} else {
this.$message.error('除名撤销业务启动失败')
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
},
//
selectAll() {
const table = this.$refs.multipleTable
for (const i in table.data) {
const each = table.data[i]
table.toggleRowSelection(each, true)
}
},
//
handleSelectionChange(selectData) {
const cancel = []
if (selectData.length !== this.tableData.length) {
//
this.tableData.forEach(each => {
for (const i in selectData) {
const atom = selectData[i]
if (atom.pripid === each.pripid) {
return
}
}
cancel.push(each)
})
}
//
for (const i in cancel) {
const each = cancel[i]
let index
for (const j in this.selection) {
const select = this.selection[j]
if (select.pripid === each.pripid) {
index = parseInt(j)
break
}
}
if (index !== undefined) {
this.selection.splice(index, 1)
}
}
//
for (const i in selectData) {
const each = selectData[i]
let exist = false
for (const j in this.selection) {
const select = this.selection[j]
if (select.pripid === each.pripid) {
exist = true
break
}
}
if (!exist) {
this.selection.push(each)
}
}
},
//
pageIndexChange(current) {
this.pageParam.current = current
this.loadPage()
},
//
pageSizeChange(size) {
this.pageParam.size = size
this.loadPage()
},
//
loadPage() {
if (this.loading) return
this.loading = true
expelledAnnouncementList({
current: this.pageParam.current,
size: this.pageParam.size,
entity: {
bizType: '2',
state: '10',
...this.searchForm
}
}).then(res => {
this.loading = false
const list = []
let i = 1
const pageStart = (this.pageParam.current - 1) * this.pageParam.size
res.data.records.forEach(each => {
each.index = pageStart + i++
list.push(each)
})
this.tableData = list
this.pageParam.total = res.data.total
// const selection = JSON.parse(JSON.stringify(this.selection))
// this.$nextTick(() => {
// for (const i in list) {
// const each = list[i]
// for (const j in selection) {
// if (each.pripid === selection[j].pripid) {
// this.$refs.multipleTable.toggleRowSelection(each, true)
// }
// }
// }
// })
})
},
reset() {
this.searchForm.uscc = ''
this.searchForm.entName = ''
this.loadPage()
}
}
}
</script>
<style lang="scss" scoped>
.main-content{
background: #fff;
padding: 20px;
.content-header{
background: white;
.search-body{
/deep/ .el-date-editor *{
font-size: 16px!important;
}
/deep/ .el-date-editor .el-range-separator{
width: 8%!important;
}
}
.label-name_1{
text-align: right;
display: inline-block;//
width: 220px;
font-size: $table-content-font-size;
}
.search-input-box_1{
display: inline-block;
width: calc(100% - 220px);
}
.label-name_2{
text-align: right;
display: inline-block;//
width: 220px;
font-size: $table-content-font-size;
}
.search-input-box_2{
display: inline-block;
width: calc(100% - 220px);
}
.label-name {
text-align: right;
display: inline-block;//
width: 220px;
font-size: $table-content-font-size;
}
.search-input-box{
display: inline-block;
width: calc(100% - 220px);
// width: 300px;
}
.custom{
width: 60%
}
.search-input{
cursor: pointer;
}
.body{
padding: 20px 0 ;
border-top:none;
margin-bottom: 20PX;
}
}
.content-body{
background:white;
margin-bottom: 100px;
}
.header{
height:50PX;
padding:15PX 10PX;
.title{
font-weight: 600;
font-size: 1.2rem;
}
}
.page-box{
margin:10PX;
.el-pagination{
text-align: right;
}
}
.mb10{
margin-bottom: 10px;
}
}
.fixed-bottom {
position: fixed;
width: 100%;
bottom: -10px;
right: 0;
z-index: 99;
padding: 10px;
/* background: #8bbef6; */
border-radius: 5px 5px 0 0;
background: linear-gradient(to bottom, #fff 0%,#8bbef6 100%);
box-shadow: 1px -4px 4px rgba(0, 21, 41, 0.08);
}
.content-body{
background: #fff;
/deep/.el-table .warning-row {
background: #eaf4fe!important;
}
}
</style>
<style lang="scss">
// .content-body .el-table-column--selection .cell{
// padding-right: 0px;
// }
.fixed-bottom {
.el-pagination {
text-align: right!important;
}
}
</style>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,515 @@
<template>
<div class="main-content abnormal">
<!-- <div class="content-header">
<span class="title">恢复正常记载状态审批</span>
<el-button type="warning" icon="el-icon-caret-left" size="mini" class="back-btn" @click="$router.back()">返回上一层</el-button>
</div> -->
<DetailHead />
<div class="content-body">
<el-form ref="form" :model="form" label-width="150px" label-position="left" :rules="formRules">
<div class="form">
<div class="tab">
<div class="tab-title"><label>异常信息</label></div>
</div>
<div class="form-body">
<el-row v-if="searchNameP === ''">
<el-form-item label="移出异常主体信息">
<el-button type="primary" size="mini" @click="showEntbaseList">查看异常主体名单<i class="el-icon el-icon-s-order" style="margin-left:5px" /></el-button>
</el-form-item>
</el-row>
<el-row v-if="searchNameP !== ''">
<el-form-item label="移出异常主体名称">
<span>{{ dataShow[0].entname }}</span>
</el-form-item>
</el-row>
<el-row>
<el-form-item label="恢复原因" prop="reason" class="bt0">
<div style="display:inline-block;width: 1000px">
<el-input v-model="reason" type="textarea" disabled />
</div>
</el-form-item>
</el-row>
<el-row>
<el-form-item label="备注" class="bt0">
<el-input v-model="form.remRemark" type="textarea" style="display:inline-block;width:1000px" :autosize="{ minRows: 3, maxRows: 6 }" disabled />
</el-form-item>
</el-row>
<el-row>
<el-form-item label="材料列表" class="bt0">
<ul style="list-style:none;padding:0;margin:5px">
<li v-for="item in fileList" :key="item.id" style="line-height: 30px">
<el-link :href="item.url" target="_blank">{{ item.name }}</el-link>
</li>
</ul>
</el-form-item>
</el-row>
</div>
</div>
<div class="form">
<div class="tab">
<div class="tab-title"><label>历史恢复记录</label></div>
</div>
<div class="form-body history content">
<div v-if="removeRecordList.length == 0" class="none">暂无恢复记录</div>
<el-table
v-else
:row-class-name="tableRowClassName"
:header-cell-style="{background:'#8cc3fb',color:'#fff'}"
:data="removeRecordList"
border
style="width: 100%"
>
<el-table-column type="index" label="序号" width="50" align="center" />
<el-table-column prop="abntime" label="标记日期" min-width="100" />
<el-table-column prop="specause" :formatter="intoReasonFormat" :show-overflow-tooltip="true" label="标记原因" min-width="200" />
<el-table-column prop="intoSponsor" label="标记主办人" min-width="100" />
<el-table-column prop="remdate" label="恢复日期" min-width="100" />
<el-table-column prop="remexcpres" :formatter="remReasonFormat" :show-overflow-tooltip="true" label="恢复原因" min-width="200" />
<el-table-column prop="remSponsor" label="恢复主办人" min-width="100" />
</el-table>
</div>
</div>
<div class="form">
<div class="tab">
<div class="tab-title"><label>处理意见</label></div>
</div>
<div class="form-body history">
<div v-if="historyLog.length == 0" class="none">暂无历史意见</div>
<el-steps direction="vertical">
<el-step v-for="(each,index) in historyLog" :key="'historyLog'+index" :title="each.step + '人:' + each.handler + ' ' + each.step +'日期:' + each.handledate " :description=" each.opinioncontent " status="finish" />
</el-steps>
</div>
</div>
</el-form>
<div class="submit-box">
<!-- <el-button type="primary" :loading="submitLoading" @click="submitForm">提交</el-button> -->
<el-button @click="$router.back()">返回</el-button>
</div>
</div>
<HandleDialog
:show.sync="showEntbase"
title="异常主体名单"
style="width:50vw"
>
<el-table
:data="dataShow"
tooltip-effect="dark"
style="width: 1200px"
:fit="true"
height="500px"
:row-class-name="tableRowClassName"
:header-cell-style="{background:'#8cc3fb',color:'#fff'}"
>
<el-table-column prop="index" label="序号" min-width="35" align="center" />
<el-table-column prop="uscc" label="统一社会信用代码/注册号" min-width="150" align="left" />
<el-table-column prop="entname" :show-overflow-tooltip="true" label="名称" min-width="150" align="left" />
<el-table-column prop="estdate" :show-overflow-tooltip="true" label="成立时间" align="left" />
<el-table-column prop="oploc" :show-overflow-tooltip="true" label="经营地址" min-width="150" align="left" />
<el-table-column prop="name" label="法定代表人" align="left" />
<el-table-column prop="enttypeCn" :show-overflow-tooltip="true" label="企业类型" min-width="80" align="left" />
<el-table-column prop="regstateCn" :show-overflow-tooltip="true" label="企业状态" min-width="100" align="left" />
</el-table>
<div>
<el-row class="bl0">
<el-col>
<el-pagination
:current-page="currentPage"
small
layout="prev, pager, next"
:total="total"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
/>
</el-col>
</el-row>
<!-- <div class="dialog-box"> -->
<!-- <el-button type="danger" @click="removeEntbaseItem">剔除</el-button> -->
<!-- <el-button type="primary" @click="showEntbaseList">确定</el-button> -->
<!-- </div> -->
</div>
</HandleDialog>
</div>
</template>
<script>
import DetailHead from '@/components/DetailHead'
import HandleDialog from '@/components/HandleDialog'
import { removeAttachementById, listAttachmentByBizseq } from '@/api/attachment'
import { bizRemoveNext, getBizRemInfo, getBizRemoveRecordList } from '@/api/abnormal'
import { getUsersWithPermission } from '@/api/user'
import { getConstant } from '@/api/system'
import { taskOpinion } from '@/api/task'
import { isMenHu } from '../../../utils/utils'
export default {
components: {
HandleDialog: HandleDialog,
DetailHead
},
data() {
return {
searchNameP: '',
submitLoading: false,
removeRecordList: [],
bizseq: '',
workflowId: '',
uploadPath: `${process.env.VUE_APP_BASE_API}/attachment/uploadAdvance`,
showEntbase: false,
batchId: this.$route.query.batch,
entbase: [],
// ,
// [[{},{},{}],[{},{},{}]]
//
totalPageData: [],
//
pageNum: '',
//
pageSize: 10,
//
currentPage: 1,
//
total: 1,
//
dataShow: [],
form: {
enterType: 'company',
nextNodeID: 'endExptlist',
remreasons: '',
opinion: ''
},
formRules: {
opinion: [
{ required: true, message: '请输入审批意见', trigger: 'blur' }
]
},
reason: '',
reasonOptions: [],
opinion: '',
opinionOptions: [],
historyLog: [],
exmainerOptions: [],
fileList: [],
user: JSON.parse(sessionStorage.getItem('user')),
reviewer: []
}
},
watch: {
//
opinion() {
let name = ''
this.opinionOptions.forEach(each => {
if (this.opinion === each.value) {
name = each.label
}
})
this.form.opinion = name
}
},
mounted() {
this.bizseq = this.$route.query.bizseq
this.workflowId = this.$route.query.workflowId
this.tasklistid = this.$route.query.tasklistid
this.searchNameP = this.$route.query.searchName
if (this.searchNameP === undefined) {
this.searchNameP = ''
}
//
this.opinionOptions = this.$util.getCommonWords(this.user.primaryKey)
//
getConstant('CD76').then(res => {
if (res.code === 0) {
const list = []
res.data.forEach(each => {
list.push({
value: each.code,
label: each.name
})
})
this.reasonOptions = list
}
})
//
getConstant('CD75').then(res => {
if (res.code === 0) {
const list = []
res.data.forEach(each => {
list.push({
value: each.code,
label: each.name
})
})
this.inclueReasonOptions = list
}
})
//
getBizRemInfo(this.bizseq).then(res => {
if (res.code === 0) {
// index
const list = []
let i = 1
const pageStart = (this.currentPage - 1) * this.pageSize
res.data.bizList.forEach(each => {
each.index = pageStart + i++
each.uscc = each.uniscid ? each.uniscid : each.regno //
list.push(each)
})
this.entbase = list
const bizInfo = res.data.bizRemListMOdel
this.entname = bizInfo.entname
this.$set(this, 'reason', this.$util.enumFormatter(this.reasonOptions, bizInfo.remexcpres))
this.form.remRemark = bizInfo.remRemark
//
this.total = this.entbase.length
//
this.calcPageData()
} else {
this.$message.error('加载异常名录主体信息失败')
}
})
//
getBizRemoveRecordList(this.bizseq).then(res => {
if (res.code === 0) {
this.removeRecordList = res.data
} else {
this.$message.error('加载移出记录失败')
}
})
//
taskOpinion(this.workflowId).then(res => {
if (res.code === 0) {
res.data.forEach(each => {
switch (each.opiniontype) {
case '0': each.step = '经办'
break
case '1': each.step = '审核'
break
case '2': each.step = '审批'
break
}
this.historyLog.push(each)
})
} else {
this.$message.error('加载处办记录失败')
}
})
//
// this.loadReviewer()
//
listAttachmentByBizseq(this.bizseq).then(data => {
data.forEach(each => {
each.id = each.attachmentid
each.name = each.filename
each.url = `${process.env.VUE_APP_DOWNLOAD_URL}/` + each.temppath
})
this.fileList = data
})
},
methods: {
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 === 1) {
return 'warning-row'
}
},
//
intoReasonFormat(row) {
return this.$util.enumFormatter(this.inclueReasonOptions, row.specause)
},
//
remReasonFormat(row) {
return this.$util.enumFormatter(this.reasonOptions, row.remexcpres)
},
//
calcPageData() {
// (,01)
if (this.entbase.length >= 1) {
this.pageNum = Math.ceil(this.entbase.length / this.pageSize) || 1
}
//
for (let i = 0; i < this.pageNum; i++) {
// [[''],[''],['']]
// ,pageSize5 1-5slice(0,5)6-10slice(5,10)...
this.totalPageData[i] = this.entbase.slice(this.pageSize * i, this.pageSize * (i + 1))
}
// ,01
this.dataShow = this.totalPageData[this.currentPage - 1]
},
//
handleSizeChange(newPageSize) {
this.pageSize = newPageSize
//
this.calcPageData()
},
//
handleCurrentChange(newPageNum) {
this.currentPage = newPageNum
// 1
this.dataShow = this.totalPageData[newPageNum - 1]
},
//
previewFile(file) {
window.open(file.url, '_blank')
},
//
submitForm() {
this.$refs.form.validate(valid => {
if (!valid) {
console.log('falure')
}
this.$confirm('是否确认提交?', '提示').then(() => {
// id
// let ids = []
// this.fileList.forEach(each => {
// ids.push(each.id)
// })
// this.form.fileIds = ids.toString()
// // id
// ids = []
// this.entbase.forEach(each => {
// ids.push(each.id)
// })
// this.form.pripids = ids.toString()
// createAbnormalTask(this.form).then(res => {
// if (res.code === 0) {
// this.$message.success('')
// this.$router.back()
// }
// })
this.submitLoading = true
this.form.bizseq = this.bizseq
this.form.workflowid = this.workflowId
this.form.opiniontype = '2'
this.form.handler = this.user.username
this.form.handlerid = this.user.primaryKey
this.form.opinioncontent = this.form.opinion
this.form.tasklistid = this.tasklistid
this.form.nextPerformerids = ''
this.form.nextPerformerNames = this.user.username
bizRemoveNext(this.form).then(res => {
this.submitLoading = false
if (res.code === 0) {
this.$message.success('审批成功')
if (isMenHu()) {
//
window.location.href = '/aiccs/#/todo/list'
} else {
this.$router.back()
}
}
})
}).catch(() => {})
})
},
uploadCallback(res, file) {
if (res.code === 0) {
file.id = res.data.attachmentid
}
},
//
showEntbaseList() {
this.showEntbase = true
},
//
removeFile(file) {
removeAttachementById(file.id).then(res => {
if (res.code === 0) {
this.$message.success('删除成功')
} else {
this.$message.error(res.msg)
}
})
}
}
}
</script>
<style lang="scss" scoped>
.main-content{
padding: 10pt;
.back-btn{
position:absolute;
right:40pt;
}
.content-header,.content-body{
background: white;
padding:20PX 10PX;
border:1PX solid #eee;
}
.content-header{
height:60PX;
.title{
font-weight: 700;
font-size: $font-size-sub-title;
}
}
.content-body{
padding:20pt;
.tab{
.tab-title{
label{
display:inline-block;
}
}
}
.form{
margin-bottom: 20pt;
}
}
}
.content-body{
background: #fff;
}
/deep/.el-table .warning-row {
background: #eaf4fe!important;
}
.el-row {
border-left: 1px solid $color-border;
}
.bt0 {
/deep/.el-form-item__label{
border-top: 0!important;
}
/deep/.el-form-item__content{
border-top: 0!important;
}
}
</style>
<style lang="scss">
.main-content.abnormal{
font-size: $table-content-font-size;
.el-form-item{
margin-bottom:0;
background: $color-form-label;
.el-form-item__label{
padding-left: 10px;
color: #666!important;
font-size: $table-content-font-size;
border-top: 1px solid $color-border;
}
.el-form-item__content{
background: white;
padding: 10px;
color: #333!important;
font-size: $table-content-font-size;
border-top: 1px solid $color-border;
border-right: 1px solid $color-border;
border-left: 1px solid $color-border;
}
}
.el-form-item:last-child{
border-bottom: 1px solid $color-border;
}
.form-body.history{
padding:15px;
border:1px solid $color-border;
}
.el-form-item.is-error .custom .el-input__inner{
border-color:$color-border;
}
.el-textarea.is-disabled .el-textarea__inner{
color: #1c1e23;
}
}
</style>

View File

@ -247,13 +247,13 @@
<tr v-if="isAccept === '1' && isAgreeRepair === '1'">
<th><span style="color:red">*</span>除名修复原因</th>
<td colspan="3" class="radio">
<el-input v-model="repairReason" placeholder="请输入除名修复原因" type="textarea" />
<el-input v-model="applyReason" placeholder="请输入除名修复原因" type="textarea" />
</td>
</tr>
<tr v-if="isAgreeRepair === '0'">
<th><span style="color:red">*</span>除名修复原因</th>
<td colspan="3" class="radio">
<el-input v-model="repairReason" placeholder="请输入除名修复原因" type="textarea" />
<el-input v-model="applyReason" placeholder="请输入除名修复原因" type="textarea" />
</td>
</tr>
</table>
@ -413,7 +413,7 @@ export default {
return {
detailInfo: {},
contactName: '', //
repairReason: '', //
applyReason: '', //
orgName: [],
tranferRecord: [],
tranferData: {},
@ -453,12 +453,12 @@ export default {
form: {
enterType: 'company',
situation: '',
repairReason: '',
applyReason: '',
remRemark: '',
opinion: ''
},
formRules: {
repairReason: [
applyReason: [
{ required: true, message: '请选择移出原因', trigger: 'blur' }
],
opinion: [
@ -641,7 +641,7 @@ export default {
if (this.$util.isEmpty(this.isAgreeRepair)) {
return this.$message.warning('请选择是否予以信用修复')
}
if (this.$util.isEmpty(this.repairReason)) {
if (this.$util.isEmpty(this.applyReason)) {
return this.$message.warning('请选择移出原因')
}
if (this.$util.isEmpty(this.detailInfo.repairInfo.contactName)) {
@ -1044,7 +1044,7 @@ export default {
this.submitLoading = false
return this.$message.error('请输入经办人意见')
}
if (this.isAccept === '1' && this.$util.isEmpty(this.repairReason) && this.isAgreeRepair === '1') {
if (this.isAccept === '1' && this.$util.isEmpty(this.applyReason) && this.isAgreeRepair === '1') {
this.submitLoading = false
return this.$message.error('请输入除名修复原因')
}
@ -1078,10 +1078,10 @@ export default {
nextNodeId: 'handleExptlist',
nextPerformerIds: this.formData.nextPerformerids,
nextPerformerNames: this.formData.nextPerformerNames,
repairApproveInfo: {
applyInfoQuery: {
...this.detailInfo.repairInfo,
acceptStatus: this.isAgreeRepair,
repairReason: this.repairReason,
applyReason: this.applyReason,
situation: this.formData.situation,
remark: this.remRemark
},

View File

@ -1021,7 +1021,7 @@ export default {
nextNodeId: this.formData.nextNodeId,
nextPerformerIds: '',
nextPerformerNames: '',
repairApproveInfo: {
applyInfoQuery: {
...this.companyInfo.repairInfo
},
opinionQuery: {

View File

@ -1024,7 +1024,7 @@ export default {
nextNodeId: this.formData.nextNodeId,
nextPerformerIds: this.formData.nextPerformerIds,
nextPerformerNames: this.formData.nextPerformerNames,
repairApproveInfo: {
applyInfoQuery: {
...this.companyInfo.repairInfo
},
opinionQuery: {

View File

@ -0,0 +1,451 @@
<template>
<div class="main-content m20">
<!--头部-查询-->
<div class="content-header">
<div class="body search-body">
<el-row>
<el-col :span="12">
<el-row class="mb10">
<label class="label-name_1">统一社会信用代码/注册号</label>
<div class="search-input-box_1">
<el-input v-model="searchForm.uscc" clearable size="mini" type="text" class="search-input" placeholder="请输入统一社会信用代码/注册号" @keyup.enter.native="loadPage" />
</div>
</el-row>
</el-col>
<el-col :span="12" class="mb10">
<label class="label-name">主体名称</label>
<div class="search-input-box">
<el-input v-model="searchForm.entName" clearable size="mini" type="text" class="search-input" placeholder="请输入主体名称(模糊)" @keyup.enter.native="loadPage" />
</div>
</el-col>
<!-- <el-col :span="12">-->
<!-- <el-row>-->
<!-- <label class="label-name_2">除名原因</label> &lt;!&ndash; clearable 可以清空选项 &ndash;&gt;-->
<!-- <el-select-->
<!-- v-model="searchForm.specause"-->
<!-- clearable-->
<!-- size="mini"-->
<!-- placeholder="请选择列入原因"-->
<!-- class="custom"-->
<!-- @change="loadPage"-->
<!-- >-->
<!-- <el-option-->
<!-- v-for="item in reasonList"-->
<!-- :key="item.value"-->
<!-- :label="item.label"-->
<!-- :value="item.value"-->
<!-- />-->
<!-- </el-select>-->
<!-- </el-row>-->
<!-- </el-col>-->
</el-row>
<!-- <el-row>-->
<!-- <el-col :span="12">-->
<!-- <el-row class="mb10">-->
<!-- <label class="label-name">除名日期</label> &lt;!&ndash; value-format="yyyy-MM-dd" 指定日期发送格式 &ndash;&gt;-->
<!-- <el-date-picker-->
<!-- v-model="searchForm.searchDate"-->
<!-- size="mini"-->
<!-- value-format="yyyy-MM-dd"-->
<!-- type="daterange"-->
<!-- range-separator="至"-->
<!-- start-placeholder="开始日期"-->
<!-- end-placeholder="结束日期"-->
<!-- @change="loadPage"-->
<!-- />-->
<!-- </el-row>-->
<!-- </el-col>-->
<!-- </el-row>-->
<el-row>
<el-col :span="11" :offset="1">
<div class="btn-box">
<el-button size="mini" type="primary" @click="loadPage">查询</el-button>
<el-button size="mini" @click="reset">重置</el-button>
</div>
</el-col>
</el-row>
</div>
</div>
<!--body-查询结果-->
<div class="content-body">
<div class="body">
<el-table
ref="multipleTable"
v-loading="loading"
size="mini"
:data="tableData"
tooltip-effect="dark"
style="width: 95%;margin:0 auto"
:fit="true"
:row-class-name="tableRowClassName"
:header-cell-style="{background:'#8cc3fb',color:'#fff'}"
@selection-change="handleSelectionChange"
>
<el-table-column prop="index" label="序号" min-width="10%" align="center" />
<el-table-column prop="uscc" label="统一社会信用代码/注册号" min-width="25%" align="left" />
<el-table-column prop="entName" label="主体名称" min-width="25%" align="left" />
<el-table-column prop="lerepName" label="法定代表人(负责人、经营者)" min-width="20%" align="left" />
<el-table-column prop="removeDate" label="除名日期" min-width="15%" align="left" />
<el-table-column prop="auditOpinion" :show-overflow-tooltip="true" label="除名原因" align="left" min-width="30%" />
<el-table-column prop="removeOrgName" label="除名机关" align="left" min-width="20%" />
<el-table-column label="操作" min-width="10%" align="center" fixed="right">
<template slot-scope="scope">
<el-button type="primary" size="mini" @click="check(scope.row)">办理</el-button>
</template>
</el-table-column>
</el-table>
<div class="page-box">
<el-row class="bl0">
<el-col :span="24">
<el-pagination
:disabled="loading"
:page-size="pageParam.size"
:total="pageParam.total"
:page-sizes="[10, 20, 30, 40,50,100,200]"
layout="slot,total, sizes, prev, pager, next, jumper"
@size-change="pageSizeChange"
@current-change="pageIndexChange"
>
<span>
{{ pageParam.current }} /
{{ (pageParam.total !== 0 ? parseInt((pageParam.total + pageParam.size - 1)/pageParam.size) : 1) }}
</span>
</el-pagination>
</el-col>
</el-row>
</div>
</div>
</div>
<el-dialog
title="提示"
:visible.sync="templateDialog1"
width="30%"
>
<span>{{ prompt }}</span>
<span slot="footer" class="dialog-footer">
<el-button type="primary" :loading="subloading" @click="startTask(abnlistidParam)">确定</el-button>
</span>
</el-dialog>
</div>
</template>
<script>
import { getConstant } from '@/api/system'
import { expelledAnnouncementList, expelledReviewStartBiz } from '@/api/除名公告'
export default {
components: {
},
data() {
return {
subloading: false,
abnlistidParam: '',
templateDialog1: false,
prompt: '',
details: [],
selection: [],
searchForm: {
uscc: '',
entName: ''
},
reasonList: [], //
reason: '',
loading: false,
showMore: false,
showFixed: false,
tableData: [],
pageParam: {
current: 1,
total: 0,
size: 10
}
}
},
watch: {
},
mounted() {
//
getConstant('CD75').then(res => {
if (res.code === 0) {
const list = []
res.data.forEach(each => {
list.push({
value: each.code,
label: each.name
})
})
this.reasonList = list
}
})
this.loadPage()
window.addEventListener('scroll', this.handleScroll, true)
},
methods: {
showMoreCriteria() {
this.showMore = !this.showMore
},
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 === 1) {
return 'warning-row'
}
},
handleScroll() {
var scrollTop =
window.pageYOffset ||
document.documentElement.scrollTop ||
document.body.scrollTop
if (scrollTop > 80) {
this.showFixed = true
} else {
this.showFixed = false
}
},
//
reasonFormat(row) {
let name = ''
this.reasonList.forEach(each => {
if (each.value === row.specause) {
name = each.label
}
})
return name
},
check(row) {
this.$confirm('是否确认启动待办', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
return expelledReviewStartBiz(row).then(({ code, data }) => {
if (code === 0) {
this.$message.success('除名复议业务启动成功')
this.$router.push({ path: '/expelled/removeReviewAccept', query: { bizId: data.bizId }})
} else {
this.$message.error('除名复议业务启动失败')
}
})
}).catch(() => {
this.$message({
type: 'info',
message: '已取消删除'
})
})
},
//
selectAll() {
const table = this.$refs.multipleTable
for (const i in table.data) {
const each = table.data[i]
table.toggleRowSelection(each, true)
}
},
//
handleSelectionChange(selectData) {
const cancel = []
if (selectData.length !== this.tableData.length) {
//
this.tableData.forEach(each => {
for (const i in selectData) {
const atom = selectData[i]
if (atom.pripid === each.pripid) {
return
}
}
cancel.push(each)
})
}
//
for (const i in cancel) {
const each = cancel[i]
let index
for (const j in this.selection) {
const select = this.selection[j]
if (select.pripid === each.pripid) {
index = parseInt(j)
break
}
}
if (index !== undefined) {
this.selection.splice(index, 1)
}
}
//
for (const i in selectData) {
const each = selectData[i]
let exist = false
for (const j in this.selection) {
const select = this.selection[j]
if (select.pripid === each.pripid) {
exist = true
break
}
}
if (!exist) {
this.selection.push(each)
}
}
},
//
pageIndexChange(current) {
this.pageParam.current = current
this.loadPage()
},
//
pageSizeChange(size) {
this.pageParam.size = size
this.loadPage()
},
//
loadPage() {
if (this.loading) return
this.loading = true
expelledAnnouncementList({
current: this.pageParam.current,
size: this.pageParam.size,
entity: {
bizType: '2',
state: '10',
...this.searchForm
}
}).then(res => {
this.loading = false
const list = []
let i = 1
const pageStart = (this.pageParam.current - 1) * this.pageParam.size
res.data.records.forEach(each => {
each.index = pageStart + i++
list.push(each)
})
this.tableData = list
this.pageParam.total = res.data.total
// const selection = JSON.parse(JSON.stringify(this.selection))
// this.$nextTick(() => {
// for (const i in list) {
// const each = list[i]
// for (const j in selection) {
// if (each.pripid === selection[j].pripid) {
// this.$refs.multipleTable.toggleRowSelection(each, true)
// }
// }
// }
// })
})
},
reset() {
this.searchForm.uscc = ''
this.searchForm.entName = ''
this.loadPage()
}
}
}
</script>
<style lang="scss" scoped>
.main-content{
background: #fff;
padding: 20px;
.content-header{
background: white;
.search-body{
/deep/ .el-date-editor *{
font-size: 16px!important;
}
/deep/ .el-date-editor .el-range-separator{
width: 8%!important;
}
}
.label-name_1{
text-align: right;
display: inline-block;//
width: 220px;
font-size: $table-content-font-size;
}
.search-input-box_1{
display: inline-block;
width: calc(100% - 220px);
}
.label-name_2{
text-align: right;
display: inline-block;//
width: 220px;
font-size: $table-content-font-size;
}
.search-input-box_2{
display: inline-block;
width: calc(100% - 220px);
}
.label-name {
text-align: right;
display: inline-block;//
width: 220px;
font-size: $table-content-font-size;
}
.search-input-box{
display: inline-block;
width: calc(100% - 220px);
// width: 300px;
}
.custom{
width: 60%
}
.search-input{
cursor: pointer;
}
.body{
padding: 20px 0 ;
border-top:none;
margin-bottom: 20PX;
}
}
.content-body{
background:white;
margin-bottom: 100px;
}
.header{
height:50PX;
padding:15PX 10PX;
.title{
font-weight: 600;
font-size: 1.2rem;
}
}
.page-box{
margin:10PX;
.el-pagination{
text-align: right;
}
}
.mb10{
margin-bottom: 10px;
}
}
.fixed-bottom {
position: fixed;
width: 100%;
bottom: -10px;
right: 0;
z-index: 99;
padding: 10px;
/* background: #8bbef6; */
border-radius: 5px 5px 0 0;
background: linear-gradient(to bottom, #fff 0%,#8bbef6 100%);
box-shadow: 1px -4px 4px rgba(0, 21, 41, 0.08);
}
.content-body{
background: #fff;
/deep/.el-table .warning-row {
background: #eaf4fe!important;
}
}
</style>
<style lang="scss">
// .content-body .el-table-column--selection .cell{
// padding-right: 0px;
// }
.fixed-bottom {
.el-pagination {
text-align: right!important;
}
}
</style>

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,515 @@
<template>
<div class="main-content abnormal">
<!-- <div class="content-header">
<span class="title">恢复正常记载状态审批</span>
<el-button type="warning" icon="el-icon-caret-left" size="mini" class="back-btn" @click="$router.back()">返回上一层</el-button>
</div> -->
<DetailHead />
<div class="content-body">
<el-form ref="form" :model="form" label-width="150px" label-position="left" :rules="formRules">
<div class="form">
<div class="tab">
<div class="tab-title"><label>异常信息</label></div>
</div>
<div class="form-body">
<el-row v-if="searchNameP === ''">
<el-form-item label="移出异常主体信息">
<el-button type="primary" size="mini" @click="showEntbaseList">查看异常主体名单<i class="el-icon el-icon-s-order" style="margin-left:5px" /></el-button>
</el-form-item>
</el-row>
<el-row v-if="searchNameP !== ''">
<el-form-item label="移出异常主体名称">
<span>{{ dataShow[0].entname }}</span>
</el-form-item>
</el-row>
<el-row>
<el-form-item label="恢复原因" prop="reason" class="bt0">
<div style="display:inline-block;width: 1000px">
<el-input v-model="reason" type="textarea" disabled />
</div>
</el-form-item>
</el-row>
<el-row>
<el-form-item label="备注" class="bt0">
<el-input v-model="form.remRemark" type="textarea" style="display:inline-block;width:1000px" :autosize="{ minRows: 3, maxRows: 6 }" disabled />
</el-form-item>
</el-row>
<el-row>
<el-form-item label="材料列表" class="bt0">
<ul style="list-style:none;padding:0;margin:5px">
<li v-for="item in fileList" :key="item.id" style="line-height: 30px">
<el-link :href="item.url" target="_blank">{{ item.name }}</el-link>
</li>
</ul>
</el-form-item>
</el-row>
</div>
</div>
<div class="form">
<div class="tab">
<div class="tab-title"><label>历史恢复记录</label></div>
</div>
<div class="form-body history content">
<div v-if="removeRecordList.length == 0" class="none">暂无恢复记录</div>
<el-table
v-else
:row-class-name="tableRowClassName"
:header-cell-style="{background:'#8cc3fb',color:'#fff'}"
:data="removeRecordList"
border
style="width: 100%"
>
<el-table-column type="index" label="序号" width="50" align="center" />
<el-table-column prop="abntime" label="标记日期" min-width="100" />
<el-table-column prop="specause" :formatter="intoReasonFormat" :show-overflow-tooltip="true" label="标记原因" min-width="200" />
<el-table-column prop="intoSponsor" label="标记主办人" min-width="100" />
<el-table-column prop="remdate" label="恢复日期" min-width="100" />
<el-table-column prop="remexcpres" :formatter="remReasonFormat" :show-overflow-tooltip="true" label="恢复原因" min-width="200" />
<el-table-column prop="remSponsor" label="恢复主办人" min-width="100" />
</el-table>
</div>
</div>
<div class="form">
<div class="tab">
<div class="tab-title"><label>处理意见</label></div>
</div>
<div class="form-body history">
<div v-if="historyLog.length == 0" class="none">暂无历史意见</div>
<el-steps direction="vertical">
<el-step v-for="(each,index) in historyLog" :key="'historyLog'+index" :title="each.step + '人:' + each.handler + ' ' + each.step +'日期:' + each.handledate " :description=" each.opinioncontent " status="finish" />
</el-steps>
</div>
</div>
</el-form>
<div class="submit-box">
<!-- <el-button type="primary" :loading="submitLoading" @click="submitForm">提交</el-button> -->
<el-button @click="$router.back()">返回</el-button>
</div>
</div>
<HandleDialog
:show.sync="showEntbase"
title="异常主体名单"
style="width:50vw"
>
<el-table
:data="dataShow"
tooltip-effect="dark"
style="width: 1200px"
:fit="true"
height="500px"
:row-class-name="tableRowClassName"
:header-cell-style="{background:'#8cc3fb',color:'#fff'}"
>
<el-table-column prop="index" label="序号" min-width="35" align="center" />
<el-table-column prop="uscc" label="统一社会信用代码/注册号" min-width="150" align="left" />
<el-table-column prop="entname" :show-overflow-tooltip="true" label="名称" min-width="150" align="left" />
<el-table-column prop="estdate" :show-overflow-tooltip="true" label="成立时间" align="left" />
<el-table-column prop="oploc" :show-overflow-tooltip="true" label="经营地址" min-width="150" align="left" />
<el-table-column prop="name" label="法定代表人" align="left" />
<el-table-column prop="enttypeCn" :show-overflow-tooltip="true" label="企业类型" min-width="80" align="left" />
<el-table-column prop="regstateCn" :show-overflow-tooltip="true" label="企业状态" min-width="100" align="left" />
</el-table>
<div>
<el-row class="bl0">
<el-col>
<el-pagination
:current-page="currentPage"
small
layout="prev, pager, next"
:total="total"
@size-change="handleSizeChange"
@current-change="handleCurrentChange"
/>
</el-col>
</el-row>
<!-- <div class="dialog-box"> -->
<!-- <el-button type="danger" @click="removeEntbaseItem">剔除</el-button> -->
<!-- <el-button type="primary" @click="showEntbaseList">确定</el-button> -->
<!-- </div> -->
</div>
</HandleDialog>
</div>
</template>
<script>
import DetailHead from '@/components/DetailHead'
import HandleDialog from '@/components/HandleDialog'
import { removeAttachementById, listAttachmentByBizseq } from '@/api/attachment'
import { bizRemoveNext, getBizRemInfo, getBizRemoveRecordList } from '@/api/abnormal'
import { getUsersWithPermission } from '@/api/user'
import { getConstant } from '@/api/system'
import { taskOpinion } from '@/api/task'
import { isMenHu } from '../../../utils/utils'
export default {
components: {
HandleDialog: HandleDialog,
DetailHead
},
data() {
return {
searchNameP: '',
submitLoading: false,
removeRecordList: [],
bizseq: '',
workflowId: '',
uploadPath: `${process.env.VUE_APP_BASE_API}/attachment/uploadAdvance`,
showEntbase: false,
batchId: this.$route.query.batch,
entbase: [],
// ,
// [[{},{},{}],[{},{},{}]]
//
totalPageData: [],
//
pageNum: '',
//
pageSize: 10,
//
currentPage: 1,
//
total: 1,
//
dataShow: [],
form: {
enterType: 'company',
nextNodeID: 'endExptlist',
remreasons: '',
opinion: ''
},
formRules: {
opinion: [
{ required: true, message: '请输入审批意见', trigger: 'blur' }
]
},
reason: '',
reasonOptions: [],
opinion: '',
opinionOptions: [],
historyLog: [],
exmainerOptions: [],
fileList: [],
user: JSON.parse(sessionStorage.getItem('user')),
reviewer: []
}
},
watch: {
//
opinion() {
let name = ''
this.opinionOptions.forEach(each => {
if (this.opinion === each.value) {
name = each.label
}
})
this.form.opinion = name
}
},
mounted() {
this.bizseq = this.$route.query.bizseq
this.workflowId = this.$route.query.workflowId
this.tasklistid = this.$route.query.tasklistid
this.searchNameP = this.$route.query.searchName
if (this.searchNameP === undefined) {
this.searchNameP = ''
}
//
this.opinionOptions = this.$util.getCommonWords(this.user.primaryKey)
//
getConstant('CD76').then(res => {
if (res.code === 0) {
const list = []
res.data.forEach(each => {
list.push({
value: each.code,
label: each.name
})
})
this.reasonOptions = list
}
})
//
getConstant('CD75').then(res => {
if (res.code === 0) {
const list = []
res.data.forEach(each => {
list.push({
value: each.code,
label: each.name
})
})
this.inclueReasonOptions = list
}
})
//
getBizRemInfo(this.bizseq).then(res => {
if (res.code === 0) {
// index
const list = []
let i = 1
const pageStart = (this.currentPage - 1) * this.pageSize
res.data.bizList.forEach(each => {
each.index = pageStart + i++
each.uscc = each.uniscid ? each.uniscid : each.regno //
list.push(each)
})
this.entbase = list
const bizInfo = res.data.bizRemListMOdel
this.entname = bizInfo.entname
this.$set(this, 'reason', this.$util.enumFormatter(this.reasonOptions, bizInfo.remexcpres))
this.form.remRemark = bizInfo.remRemark
//
this.total = this.entbase.length
//
this.calcPageData()
} else {
this.$message.error('加载异常名录主体信息失败')
}
})
//
getBizRemoveRecordList(this.bizseq).then(res => {
if (res.code === 0) {
this.removeRecordList = res.data
} else {
this.$message.error('加载移出记录失败')
}
})
//
taskOpinion(this.workflowId).then(res => {
if (res.code === 0) {
res.data.forEach(each => {
switch (each.opiniontype) {
case '0': each.step = '经办'
break
case '1': each.step = '审核'
break
case '2': each.step = '审批'
break
}
this.historyLog.push(each)
})
} else {
this.$message.error('加载处办记录失败')
}
})
//
// this.loadReviewer()
//
listAttachmentByBizseq(this.bizseq).then(data => {
data.forEach(each => {
each.id = each.attachmentid
each.name = each.filename
each.url = `${process.env.VUE_APP_DOWNLOAD_URL}/` + each.temppath
})
this.fileList = data
})
},
methods: {
tableRowClassName({ row, rowIndex }) {
if (rowIndex % 2 === 1) {
return 'warning-row'
}
},
//
intoReasonFormat(row) {
return this.$util.enumFormatter(this.inclueReasonOptions, row.specause)
},
//
remReasonFormat(row) {
return this.$util.enumFormatter(this.reasonOptions, row.remexcpres)
},
//
calcPageData() {
// (,01)
if (this.entbase.length >= 1) {
this.pageNum = Math.ceil(this.entbase.length / this.pageSize) || 1
}
//
for (let i = 0; i < this.pageNum; i++) {
// [[''],[''],['']]
// ,pageSize5 1-5slice(0,5)6-10slice(5,10)...
this.totalPageData[i] = this.entbase.slice(this.pageSize * i, this.pageSize * (i + 1))
}
// ,01
this.dataShow = this.totalPageData[this.currentPage - 1]
},
//
handleSizeChange(newPageSize) {
this.pageSize = newPageSize
//
this.calcPageData()
},
//
handleCurrentChange(newPageNum) {
this.currentPage = newPageNum
// 1
this.dataShow = this.totalPageData[newPageNum - 1]
},
//
previewFile(file) {
window.open(file.url, '_blank')
},
//
submitForm() {
this.$refs.form.validate(valid => {
if (!valid) {
console.log('falure')
}
this.$confirm('是否确认提交?', '提示').then(() => {
// id
// let ids = []
// this.fileList.forEach(each => {
// ids.push(each.id)
// })
// this.form.fileIds = ids.toString()
// // id
// ids = []
// this.entbase.forEach(each => {
// ids.push(each.id)
// })
// this.form.pripids = ids.toString()
// createAbnormalTask(this.form).then(res => {
// if (res.code === 0) {
// this.$message.success('')
// this.$router.back()
// }
// })
this.submitLoading = true
this.form.bizseq = this.bizseq
this.form.workflowid = this.workflowId
this.form.opiniontype = '2'
this.form.handler = this.user.username
this.form.handlerid = this.user.primaryKey
this.form.opinioncontent = this.form.opinion
this.form.tasklistid = this.tasklistid
this.form.nextPerformerids = ''
this.form.nextPerformerNames = this.user.username
bizRemoveNext(this.form).then(res => {
this.submitLoading = false
if (res.code === 0) {
this.$message.success('审批成功')
if (isMenHu()) {
//
window.location.href = '/aiccs/#/todo/list'
} else {
this.$router.back()
}
}
})
}).catch(() => {})
})
},
uploadCallback(res, file) {
if (res.code === 0) {
file.id = res.data.attachmentid
}
},
//
showEntbaseList() {
this.showEntbase = true
},
//
removeFile(file) {
removeAttachementById(file.id).then(res => {
if (res.code === 0) {
this.$message.success('删除成功')
} else {
this.$message.error(res.msg)
}
})
}
}
}
</script>
<style lang="scss" scoped>
.main-content{
padding: 10pt;
.back-btn{
position:absolute;
right:40pt;
}
.content-header,.content-body{
background: white;
padding:20PX 10PX;
border:1PX solid #eee;
}
.content-header{
height:60PX;
.title{
font-weight: 700;
font-size: $font-size-sub-title;
}
}
.content-body{
padding:20pt;
.tab{
.tab-title{
label{
display:inline-block;
}
}
}
.form{
margin-bottom: 20pt;
}
}
}
.content-body{
background: #fff;
}
/deep/.el-table .warning-row {
background: #eaf4fe!important;
}
.el-row {
border-left: 1px solid $color-border;
}
.bt0 {
/deep/.el-form-item__label{
border-top: 0!important;
}
/deep/.el-form-item__content{
border-top: 0!important;
}
}
</style>
<style lang="scss">
.main-content.abnormal{
font-size: $table-content-font-size;
.el-form-item{
margin-bottom:0;
background: $color-form-label;
.el-form-item__label{
padding-left: 10px;
color: #666!important;
font-size: $table-content-font-size;
border-top: 1px solid $color-border;
}
.el-form-item__content{
background: white;
padding: 10px;
color: #333!important;
font-size: $table-content-font-size;
border-top: 1px solid $color-border;
border-right: 1px solid $color-border;
border-left: 1px solid $color-border;
}
}
.el-form-item:last-child{
border-bottom: 1px solid $color-border;
}
.form-body.history{
padding:15px;
border:1px solid $color-border;
}
.el-form-item.is-error .custom .el-input__inner{
border-color:$color-border;
}
.el-textarea.is-disabled .el-textarea__inner{
color: #1c1e23;
}
}
</style>

View File

@ -3641,6 +3641,46 @@ export default {
})
break
}
//
case '1002': {
let path = ''
if (row.currentNodeOrBizStatus === 'exptlistEnter') {
path = 'removeReviewAccept'
} else if (row.currentNodeOrBizStatus === 'handleExptlist') {
path = 'removeReviewReview'
} else if (row.currentNodeOrBizStatus === 'approvelist') {
path = 'removeReviewExamine'
}
this.$router.push({
path: '/expelled/' + path,
query: {
taskId: row.tasklistid,
bizSeq: row.bizseqid,
workflowId: row.workflowid
}
})
break
}
//
case '1003': {
let path = ''
if (row.currentNodeOrBizStatus === 'exptlistEnter') {
path = 'removeRevokeAccept'
} else if (row.currentNodeOrBizStatus === 'handleExptlist') {
path = 'removeRevokeReview'
} else if (row.currentNodeOrBizStatus === 'approvelist') {
path = 'removeRevokeExamine'
}
this.$router.push({
path: '/expelled/' + path,
query: {
taskId: row.tasklistid,
bizSeq: row.bizseqid,
workflowId: row.workflowid
}
})
break
}
//
case '36': {
const path = '/crgs/#/schedule/dissentFirstCheck?bizseq=' + row.bizseqid + '&workflowid=' + row.workflowid + '&uscc=' + row.uscc + '&currentNode=' + row.currentNodeOrBizStatus