<template>
|
<div class="app-container">
|
<div class="filter-container">
|
<div style="display: block;">
|
<div class="basic_search" style="padding-top: 10px">
|
<span>按企业名称:</span>
|
<el-input filterable clearable v-model="listQuery.filter.enterprisename" style="width:200px">
|
</el-input>
|
</div>
|
<div class="basic_search" style="padding-top: 10px">
|
<span>按单号:</span>
|
<el-input filterable clearable v-model="listQuery.filter.code" style="width:200px">
|
</el-input>
|
</div>
|
<div class="basic_search" style="padding-top: 10px">
|
<span>按状态:</span>
|
<el-select filterable clearable v-model="listQuery.filter.status" style="width:200px">
|
<el-option
|
v-for="item in statusList"
|
:key="item.id"
|
:value="item.text"
|
:label="item.name"
|
></el-option>
|
</el-select>
|
</div>
|
<div class="basic_search" style="margin-right: 10px">
|
<el-button style="margin-left: 10px;" type="primary" @click="openSaleJudgeForm('新增','')">新增</el-button>
|
<el-button style="margin-left: 10px;" type="primary" icon="el-icon-search" @click="search('查询','')">查询</el-button>
|
</div>
|
</div>
|
|
</div>
|
<div class="table_content">
|
<el-table
|
v-loading="listLoading"
|
:key="tableKey"
|
:data="saleJudgeData"
|
border
|
fit
|
highlight-current-row
|
style="width: 100%;"
|
>
|
<el-table-column label="序号" type="index" align="center" width="60"/>
|
<el-table-column label="企业名称" prop="enterprisename" align="center">
|
</el-table-column>
|
<el-table-column label="单号" prop="code" align="center">
|
</el-table-column>
|
<el-table-column label="提出人" prop="requestor" align="center">
|
</el-table-column>
|
<el-table-column label="提交时间" prop="submittime" align="center">
|
</el-table-column>
|
<el-table-column label="单号" prop="code" align="center">
|
</el-table-column>
|
<el-table-column label="处罚措施" prop="punishmentmeasure" align="center">
|
<template slot-scope="scope">
|
<div v-for="item in punishmentMeasureList">
|
<div v-if="scope.row.punishmentmeasure === item.value">
|
<span>{{item.text}}</span>
|
</div>
|
</div>
|
</template>
|
</el-table-column>
|
<el-table-column label="处罚原因" prop="punishmentreason" align="center">
|
</el-table-column>
|
<el-table-column label="审批人" prop="approver" align="center">
|
</el-table-column>
|
<el-table-column label="文件" prop="file" align="center">
|
<template slot-scope="scope">
|
<el-button type="text" @click="download(scope.row)">下载</el-button>
|
</template>
|
</el-table-column>
|
<el-table-column label="状态" prop="status" align="center">
|
</el-table-column>
|
<el-table-column label="操作" align="center">
|
<template slot-scope="scope">
|
<el-button type="text" @click="commit(scope.row)" v-if="(scope.row.status === '待提交' || scope.row.status === '驳回') ? true :false">提交</el-button>
|
<el-button type="text" @click="openSaleJudgeForm('修改',scope.row)" v-if="(scope.row.status === '待提交' || scope.row.status === '驳回') ? true :false">修改</el-button>
|
<el-button type="text" @click="review(scope.row)" v-if="scope.row.status === '待审批' ? true :false">审批</el-button>
|
</template>
|
</el-table-column>
|
</el-table>
|
<br>
|
<el-pagination
|
v-show="recordTotal>0"
|
:current-page="currentPage"
|
:page-sizes="[10, 20, 30, 50]"
|
:page-size="pageSize"
|
:total="recordTotal"
|
layout="total, sizes, prev, pager, next, jumper"
|
background
|
style="float:right;"
|
@size-change="handleSizeChange"
|
@current-change="handleCurrentChange"
|
/>
|
<br>
|
</div>
|
<el-dialog
|
title="审批"
|
:visible.sync="dialogVisible"
|
:close-on-click-modal="false"
|
:close-on-press-escape="false"
|
width="60%">
|
<el-form :model="saleJudgeForm" ref="ruleForm" label-width="200px">
|
<el-row>
|
<el-col :span="20">
|
<el-form-item label="企业名称" prop="enterprisename" >
|
<el-select v-model="saleJudgeForm.enterprisename" :disabled="ifShow">
|
</el-select>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="20">
|
<el-form-item label="处罚类型" prop="punishmentmeasure">
|
<el-select v-model="saleJudgeForm.punishmentmeasure" :disabled="ifShow">
|
<el-option
|
v-for="item in punishmentMeasureList"
|
:key="item.id"
|
:value="item.value"
|
:label="item.text">
|
</el-option>
|
</el-select>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="20">
|
<el-form-item label="处罚原因" prop="punishmentreason">
|
<el-input type="textarea" :row="2" v-model="saleJudgeForm.punishmentreason" :disabled="ifShow">
|
</el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
<el-row>
|
<el-col :span="20">
|
<el-form-item label="审批建议:">
|
<el-input type="textarea" :row="3" v-model="reviewRegisterForm.lastrejectreason"></el-input>
|
</el-form-item>
|
</el-col>
|
</el-row>
|
</el-form>
|
<div align="center">
|
<el-button @click="refuse">拒绝</el-button>
|
<el-button type="primary" @click="agree()">通过</el-button>
|
</div>
|
</el-dialog>
|
<sale-judge-form ref="form" @getinfo="getSaleJudge"></sale-judge-form>
|
</div>
|
</template>
|
|
<script>
|
import {uploadUrl} from '@/assets/upload/url'
|
import {agreeSaleJudge, commitSaleJudge, getSaleJudge, refuseSaleJudge} from "../../../api/saleJudge";
|
import {computePageCount} from "../../../utils";
|
import SaleJudgeForm from "./components/saleJudgeForm";
|
import {dictionaryAllItems} from "../../../api/dictionary";
|
import {parseError} from "../../../utils/messageDialog";
|
|
export default {
|
name: "registerReview",
|
data(){
|
return{
|
ifShow:false,
|
pageSize: 10,
|
recordTotal: 0,
|
currentPage: 1,
|
pageTotal: 0,
|
tableKey: 0,
|
listLoading:false,
|
saleJudgeData:[],
|
dialogVisible:false,
|
reviewRegisterForm:{
|
id:'',
|
lastrejectreason:'',
|
},
|
saleJudgeForm:{
|
enterprisename:'',
|
enterprisenumber:'',
|
punishmentmeasure:'',
|
punishmentreason:'',
|
file:'',
|
id:'',
|
},
|
provinceList:[],
|
cityList:[],
|
districtList:[],
|
streetList:[],
|
committeeList:[],
|
punishmentMeasureList:[],
|
statusList:[{id:1,name:'待提交',text:'TOSUBMIT'},{id:2,name:'待审批',text:'PENDING'},{id:3,name:'驳回',text:'REJECT'},{id:4,name:'审批通过',text:'APPROVED'}],
|
reviewResultList:[{id:0,name:'未审核'},{id:1,name:'审核通过'},{id:2,name:'审核拒绝'}],
|
listQuery:{
|
filter:{
|
enterprisename:'',
|
status:'',
|
code:'',
|
},
|
pageIndex:1,
|
pageSize:10,
|
},
|
}
|
},
|
components:{
|
SaleJudgeForm
|
},
|
created() {
|
this.getSaleJudge()
|
this.getPunishmentTypeList()
|
},
|
watch: {
|
},
|
methods:{
|
async getSaleJudge(){
|
this.listLoading = true
|
let res = await getSaleJudge(this.listQuery)
|
if(res.data.code === "200"){
|
this.recordTotal = res.data.result.total
|
this.pageSize = res.data.result.size
|
this.pageTotal = computePageCount(res.data.result.totalCount, res.data.result.pageSize)
|
this.currentPage = res.data.result.current
|
this.saleJudgeData = res.data.result.records
|
}else{
|
this.$message({
|
type:'warning',
|
message:res.data.message
|
})
|
}
|
this.listLoading = false
|
},
|
openSaleJudgeForm(title,value){
|
this.$refs.form.showSaleJudgeForm(title,value,this.punishmentMeasureList)
|
},
|
search(){
|
this.getSaleJudge()
|
},
|
async commit(val){
|
commitSaleJudge(val.id).then((res)=>{
|
if(res.data.code == '200') {
|
this.getSaleJudge()
|
this.$notify({
|
title: '成功',
|
message: '提交成功',
|
type: 'success',
|
duration: 2000,
|
})
|
}else{
|
this.$message({
|
message:res.data.message,
|
type:'warning'
|
})
|
}
|
})
|
},
|
review(value){
|
this.dialogVisible = true
|
this.ifShow = true
|
this.saleJudgeForm.enterprisename = JSON.parse(JSON.stringify(value)).enterprisename
|
this.saleJudgeForm.enterprisenumber = JSON.parse(JSON.stringify(value)).enterprisenumber
|
this.saleJudgeForm.punishmentmeasure = JSON.parse(JSON.stringify(value)).punishmentmeasure
|
this.saleJudgeForm.punishmentreason = JSON.parse(JSON.stringify(value)).punishmentreason
|
this.saleJudgeForm.id= JSON.parse(JSON.stringify(value)).id
|
this.reviewRegisterForm.lastrejectreason = ''
|
},
|
refuse(){
|
this.reviewRegisterForm.id = this.saleJudgeForm.id
|
this.$confirm('拒绝申请,是否继续','提示',{
|
confirmButtonText:'确定',
|
cancelButtonText:'取消',
|
type:'warning',
|
}).then(()=> {
|
refuseSaleJudge(this.reviewRegisterForm).then( (res)=>{
|
if(res.data.code === "200"){
|
this.dialogVisible = false
|
this.getSaleJudge()
|
this.$notify({
|
title:'成功',
|
message:'审核拒绝成功',
|
type:'success',
|
duration:2000,
|
})
|
}else{
|
this.$message({
|
type:'warning',
|
message:res.data.message
|
})
|
}
|
})
|
})
|
},
|
agree(){
|
this.reviewRegisterForm.id = this.saleJudgeForm.id
|
this.$confirm('同意申请,是否继续','提示',{
|
confirmButtonText:'确定',
|
cancelButtonText:'取消',
|
type:'warning',
|
}).then(()=> {
|
agreeSaleJudge(this.reviewRegisterForm).then( (res)=>{
|
if(res.data.code === "200"){
|
this.dialogVisible = false
|
this.getSaleJudge()
|
this.$notify({
|
title:'成功',
|
message:'审核通过成功',
|
type:'success',
|
duration:2000,
|
})
|
}else{
|
this.$message({
|
type:'warning',
|
message:res.data.message
|
})
|
}
|
})
|
})
|
},
|
handleSizeChange: function(val) {
|
this.listQuery.pageSize = val
|
this.getSaleJudge()
|
},
|
handleCurrentChange: function(val) {
|
this.listQuery.pageIndex = val
|
this.getSaleJudge()
|
},
|
download(val){
|
window.open(uploadUrl()+val.path1, '_blank')
|
},
|
getPunishmentTypeList(){
|
const _this = this
|
if (_this.levelOptions && _this.levelOptions.length > 0) {
|
return
|
}
|
const params = {}
|
params['dictionaryType'] = '处罚类型'
|
dictionaryAllItems(params).then(response => {
|
const res = response.data
|
if (res.code == 200) {
|
_this.punishmentMeasureList = res.result
|
console.log(_this.punishmentMeasureList);
|
} else {
|
parseError({error: res.message, vm: _this})
|
}
|
}).catch(error => {
|
parseError({error: error, vm: _this})
|
})
|
},//获取处罚类型
|
},
|
}
|
</script>
|
|
<style scoped>
|
.basic_search{
|
display:inline-block;
|
}
|
|
</style>
|