添加除名修复管理流程相关页面
This commit is contained in:
parent
e00900fc49
commit
080b80b4a3
|
|
@ -25,4 +25,4 @@ VUE_APP_AICEPS_URL = 'https://10.207.148.172/gz-aiceps-manage'
|
||||||
#工商年报
|
#工商年报
|
||||||
VUE_APP_AICEAR_URL = 'https://10.207.148.172/aicear_gz'
|
VUE_APP_AICEAR_URL = 'https://10.207.148.172/aicear_gz'
|
||||||
|
|
||||||
VUE_APP_PROXY_URL = 'http://127.0.0.1:8090'
|
VUE_APP_PROXY_URL = 'http://219.148.175.145:56666'
|
||||||
|
|
|
||||||
|
|
@ -42,7 +42,8 @@ $color-title-color: #000;
|
||||||
$table-content-font-size: 16px;
|
$table-content-font-size: 16px;
|
||||||
// 查询标题文字大小
|
// 查询标题文字大小
|
||||||
$search-label-title-font-size:16px;
|
$search-label-title-font-size:16px;
|
||||||
|
// 表单表头颜色
|
||||||
|
$font-size-label:#666;
|
||||||
// 右对齐
|
// 右对齐
|
||||||
$text-algin-right:right;
|
$text-algin-right:right;
|
||||||
// 右对齐
|
// 右对齐
|
||||||
|
|
|
||||||
|
|
@ -2968,6 +2968,40 @@ export const constantRoutes = [{
|
||||||
component: () => import('@/views/expelled/announcement'),
|
component: () => import('@/views/expelled/announcement'),
|
||||||
name: 'announcement',
|
name: 'announcement',
|
||||||
meta: { title: '除名公告管理' }
|
meta: { title: '除名公告管理' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: 'exclusionRepairmMgt',
|
||||||
|
component: () => import('@/views/expelled/除名修复管理/index'),
|
||||||
|
name: 'exclusionRepairmMgt',
|
||||||
|
meta: { title: '除名修复管理' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: 'removeAccept',
|
||||||
|
component: () => import('@/views/expelled/除名修复管理/一移出受理'),
|
||||||
|
name: 'removeAccept',
|
||||||
|
hidden: true,
|
||||||
|
meta: { title: '移出 - 经办人' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: 'removeReview',
|
||||||
|
component: () => import('@/views/expelled/除名修复管理/二移出审核'),
|
||||||
|
name: 'removeReview',
|
||||||
|
hidden: true,
|
||||||
|
meta: { title: '移出 - 审核人' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: 'removeExamine',
|
||||||
|
component: () => import('@/views/expelled/除名修复管理/三移出审批'),
|
||||||
|
name: 'removeExamine',
|
||||||
|
hidden: true,
|
||||||
|
meta: { title: '移出 - 审批人' }
|
||||||
|
},
|
||||||
|
{
|
||||||
|
path: 'recoverinfo',
|
||||||
|
component: () => import('@/views/expelled/除名修复管理/审批详情'),
|
||||||
|
name: 'recoverinfo',
|
||||||
|
hidden: true,
|
||||||
|
meta: { title: '移出 - 审批详情' }
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,468 @@
|
||||||
|
<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.searchUscc" clearable size="mini" type="text" class="search-input" placeholder="请输入统一社会信用代码/注册号" @keyup.enter.native="search" />
|
||||||
|
</div>
|
||||||
|
</el-row>
|
||||||
|
</el-col>
|
||||||
|
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-row>
|
||||||
|
<label class="label-name_2">除名原因:</label> <!-- clearable 可以清空选项 -->
|
||||||
|
<el-select
|
||||||
|
v-model="searchForm.specause"
|
||||||
|
clearable
|
||||||
|
size="mini"
|
||||||
|
placeholder="请选择列入原因"
|
||||||
|
class="custom"
|
||||||
|
>
|
||||||
|
<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" class="mb10">
|
||||||
|
<label class="label-name">主体名称(模糊):</label>
|
||||||
|
<div class="search-input-box">
|
||||||
|
<el-input v-model="searchForm.searchName" clearable size="mini" type="text" class="search-input" placeholder="请输入主体名称(模糊)" @keyup.enter.native="search" />
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
|
<el-col :span="12">
|
||||||
|
<el-row class="mb10">
|
||||||
|
<label class="label-name">除名日期:</label> <!-- value-format="yyyy-MM-dd" 指定日期发送格式 -->
|
||||||
|
<el-date-picker
|
||||||
|
v-model="searchForm.searchDate"
|
||||||
|
size="mini"
|
||||||
|
value-format="yyyy-MM-dd"
|
||||||
|
type="daterange"
|
||||||
|
range-separator="至"
|
||||||
|
start-placeholder="开始日期"
|
||||||
|
end-placeholder="结束日期"
|
||||||
|
/>
|
||||||
|
</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="search">查询</el-button>
|
||||||
|
<el-button size="mini" @click="searchForm.searchUscc = '';searchForm.searchName='';searchForm.reportYear='';searchForm.searchDate='';searchForm.specause=''">重置</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="30" align="center" />
|
||||||
|
<el-table-column label="统一社会信用代码/注册号" min-width="100" align="left">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
{{ scope.row.uniscid ||scope.row.regno }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column prop="entname" :show-overflow-tooltip="true" label="主体名称" min-width="150" align="left" />
|
||||||
|
<el-table-column prop="enttypeName" :show-overflow-tooltip="true" label="主体类型" min-width="60" align="left" />
|
||||||
|
<el-table-column prop="abntime" label="除名日期" min-width="50" align="left" />
|
||||||
|
<el-table-column prop="specause" :show-overflow-tooltip="true" label="除名原因" min-width="150" align="left" :formatter="reasonFormat" />
|
||||||
|
<el-table-column label="操作" min-width="60" align="center">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<el-button type="primary" size="mini" @click="check(scope.row.abnlistid,scope.row.specause,scope.row.pripid,scope.row.abntime)">办理</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.pageSize"
|
||||||
|
: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.curPage }} 页 /
|
||||||
|
共 {{ (pageParam.total !== 0 ? parseInt((pageParam.total + pageParam.pageSize - 1)/pageParam.pageSize) : 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 v-if="details.length>0" type="primary" @click="showDetails = true">查看详情</el-button>
|
||||||
|
<el-button type="primary" :loading="subloading" @click="startTask(abnlistidParam)">确定</el-button>
|
||||||
|
</span>
|
||||||
|
</el-dialog>
|
||||||
|
<el-dialog :visible.sync="showDetails" title="市场主体一年内因实地查无的除名记录">
|
||||||
|
<el-table :data="details" tooltip-effect="dark" size="mini" style="width: 100%; min-height: 380px" :fit="true">
|
||||||
|
<el-table-column prop="entname" :show-overflow-tooltip="true" label="主体名称" min-width="150" align="left" />
|
||||||
|
<el-table-column prop="specause" :show-overflow-tooltip="true" label="除名原因" min-width="180" align="left" :formatter="reasonFormat" />
|
||||||
|
<el-table-column prop="remdate" :show-overflow-tooltip="true" label="除名日期" min-width="80" align="left" />
|
||||||
|
</el-table>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import { commonPage, bizRemListValidateBiz } from '@/api/abnormal'
|
||||||
|
import { startBizRemove } from '@/api/abnormal'
|
||||||
|
import { getConstant } from '@/api/system'
|
||||||
|
export default {
|
||||||
|
components: {
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
subloading: false,
|
||||||
|
abnlistidParam: '',
|
||||||
|
templateDialog1: false,
|
||||||
|
showDetails: false,
|
||||||
|
prompt: '',
|
||||||
|
details: [],
|
||||||
|
selection: [],
|
||||||
|
searchForm: {
|
||||||
|
entertype: 'individual'
|
||||||
|
},
|
||||||
|
reasonList: [], // 几种列入原因
|
||||||
|
reason: '',
|
||||||
|
loading: false,
|
||||||
|
showMore: false,
|
||||||
|
showFixed: false,
|
||||||
|
tableData: [],
|
||||||
|
pageParam: {
|
||||||
|
customParamMap: { entertype: 'individual' },
|
||||||
|
curPage: 1,
|
||||||
|
total: 0,
|
||||||
|
pageSize: 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(abnlistid, specause, pripid, abntime) {
|
||||||
|
return bizRemListValidateBiz(abnlistid).then(({ code, data }) => {
|
||||||
|
if (data.length > 0) {
|
||||||
|
this.$message.error(data[0].reason)
|
||||||
|
} else {
|
||||||
|
this.abnlistidParam = abnlistid
|
||||||
|
this.templateDialog1 = true
|
||||||
|
this.prompt = '是否确认启动待办'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 启动待办
|
||||||
|
startTask(abnlistid) {
|
||||||
|
this.subloading = true
|
||||||
|
startBizRemove('', abnlistid, 'individual').then(res => {
|
||||||
|
this.subloading = false
|
||||||
|
if (res.code === 0) {
|
||||||
|
this.$router.push({ path: '/credit/company/removeaccept', query: { tasklistid: res.data.tasklistid, bizseq: res.data.bizseq, type: 'individual' }})
|
||||||
|
} else if (res.code === 3002) {
|
||||||
|
this.subloading = false
|
||||||
|
this.prompt = res.msg
|
||||||
|
this.templateDialog1 = true
|
||||||
|
} else {
|
||||||
|
this.subloading = false
|
||||||
|
this.$message.error(res.msg)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 搜索
|
||||||
|
search() {
|
||||||
|
this.pageParam.customParamMap = this.searchForm
|
||||||
|
this.pageParam.curPage = 1
|
||||||
|
this.loadPage()
|
||||||
|
},
|
||||||
|
// 分页多选插件回调
|
||||||
|
removeCallback(index, row) {
|
||||||
|
this.$refs.multipleTable.toggleRowSelection(row, false)
|
||||||
|
},
|
||||||
|
// 全选按钮事件
|
||||||
|
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(curPage) {
|
||||||
|
this.pageParam.curPage = curPage
|
||||||
|
this.loadPage()
|
||||||
|
},
|
||||||
|
// 分页大小改变
|
||||||
|
pageSizeChange(pageSize) {
|
||||||
|
this.pageParam.pageSize = pageSize
|
||||||
|
this.loadPage()
|
||||||
|
},
|
||||||
|
// 加载分页
|
||||||
|
loadPage() {
|
||||||
|
if (this.loading) return
|
||||||
|
this.loading = true
|
||||||
|
commonPage(this.pageParam).then(res => {
|
||||||
|
this.loading = false
|
||||||
|
const list = []
|
||||||
|
let i = 1
|
||||||
|
const pageStart = (this.pageParam.curPage - 1) * this.pageParam.pageSize
|
||||||
|
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)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style lang="scss" scoped>
|
||||||
|
.main-content{
|
||||||
|
background: #fff;
|
||||||
|
padding: 10pt;
|
||||||
|
.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
|
|
@ -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() {
|
||||||
|
// 计算页数(根据后台数据的条数和每页显示数量算出一共几页,得0时设为1)
|
||||||
|
if (this.entbase.length >= 1) {
|
||||||
|
this.pageNum = Math.ceil(this.entbase.length / this.pageSize) || 1
|
||||||
|
}
|
||||||
|
// 数据分组
|
||||||
|
for (let i = 0; i < this.pageNum; i++) {
|
||||||
|
// 每一页都是一个数组 形如 [['第一页的数据'],['第二页的数据'],['第三页数据']]
|
||||||
|
// 根据每页显示数量 将后台的数据分割到 每一页,假设pageSize为5, 则第一页是1-5条,即slice(0,5),第二页是6-10条,即slice(5,10)...
|
||||||
|
this.totalPageData[i] = this.entbase.slice(this.pageSize * i, this.pageSize * (i + 1))
|
||||||
|
}
|
||||||
|
// 获取到数据后显示第一页内容,数组下标是从0开始的,这里一定要减去1,不然会丢失一组数据
|
||||||
|
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>
|
||||||
Loading…
Reference in New Issue