Commit 30f83b44 authored by wangxl's avatar wangxl

4344

parent bac0cea6
...@@ -153,7 +153,7 @@ export const routes = [ ...@@ -153,7 +153,7 @@ export const routes = [
{ path: '/audit/talent', name: '人才申报审核', component: () => import('@/views/audit/talent/Index.vue'), meta: { title: '人才申报审核', icon: '', noCache: true } }, { path: '/audit/talent', name: '人才申报审核', component: () => import('@/views/audit/talent/Index.vue'), meta: { title: '人才申报审核', icon: '', noCache: true } },
{ path: '/talent/preliminary', name: '人才预审', component: () => import('@/views/audit/talent/Index.vue'), meta: { title: '人才预审', icon: '', noCache: true } }, { path: '/talent/preliminary', name: '人才预审', component: () => import('@/views/audit/talent/Index.vue'), meta: { title: '人才预审', icon: '', noCache: true } },
{ path: '/talent/assign', name: '人才分配', component: () => import('@/views/talentAssign/index.vue'), meta: { title: '人才分配', icon: '', noCache: true } }, { path: '/talent/assign', name: '人才分配', component: () => import('@/views/talentAssign/index.vue'), meta: { title: '人才分配', icon: '', noCache: true } },
{ path: '/talent/final', name: '人才终审', component: () => import('@/views/audit/talent/Index.vue'), meta: { title: '人才终审', icon: '', noCache: true } }, { path: '/talent/final', name: '人才终审', component: () => import('@/views/audit/talent/final.vue'), meta: { title: '人才终审', icon: '', noCache: true } },
] ]
}, },
{ {
......
<template>
<div class="app-content">
<a-form :form="form" :model="searchForm" layout="inline" class="search_form">
<a-form-item>
<a-input placeholder="身份证号" v-model="searchForm.certId" :maxLength="100" style="width: 180px" />
</a-form-item>
<a-form-item>
<a-input placeholder="姓名" v-model="searchForm.personName" :maxLength="100" style="width: 180px" />
</a-form-item>
<a-form-item>
<a-button type="primary" icon="search" @click="search">搜索</a-button>
<a-button icon="reload" style="margin-left: 10px" @click="reset" class="bt-normal">重置</a-button>
</a-form-item>
</a-form>
<div style="width:100%">
<div style="display: inline-block;;width:50%">
<btn-group :data="tabDate" :itemCount="itemCount" v-model="activekey" @change="callback" />
</div>
<div style="display: inline-block;width:50%;text-align: right;">
<a-button type="primary" @click="batchAudit" style="margin-right: 8px;" v-if="isBatchButten">批量审核</a-button>
<a-button type="primary" @click="exportData" icon="download">Excel</a-button>
</div>
</div>
<a-divider style="height: 1px; background-color: #e8e8e8;" />
<span class="form-description" v-if="description"> ※ 审核时间:{{ description }}</span>
<a-table :row-selection="{ selectedRowKeys: selectedRowKeys, onChange: onSelectChange }" :dataSource="tableData" :columns="columns" :scroll="{ x: 'max-content' }" rowKey="id" :pagination="false" :loading="loading">
<template slot="talentInfo" slot-scope="record">
<a @click="recordClick(record, 'view')">{{record.personName}}</a>
</template>
<template slot="option" slot-scope="record">
<a-button type="link" size="small" @click="recordClick(record, 'view')">查看</a-button>
<a-button type="link" size="small" v-if="record.auditResult == 1" @click="recordClick(record, 'audit')">审核</a-button>
</template>
</a-table>
<a-pagination v-if="pagination.total > 0" :total="pagination.total" show-size-changer show-quick-jumper v-model="pagination.pageIndex" :page-size="pagination.pageSize" :page-size-options="pagination.pageSizeOptions" @showSizeChange="showSizeChange" @change="change" :showTotal="() => `共 ${pagination.total} 条`" />
<a-modal v-model="visibleAudit" v-if="visibleAudit" title="审核" :footer="null" width="94%" :dialog-style="{ top: '8%' }" destroyOnClose :maskClosable="false">
<audit v-model="id" :objId="objectId" @close="closeWindow" @changeScroll="() => {this.$refs.s_modal.changeScroll()}"></audit>
</a-modal>
<a-modal v-model="visibleBatch" v-if="visibleBatch" title="批量审核" :footer="null" width="700px" :dialog-style="{ top: '15%' }" destroyOnClose :maskClosable="false">
<batch-audit :idList="selectedRowKeys" @close="closeWindow" />
</a-modal>
<a-modal v-model="visibleView" title="查看" width="94%" :footer="null" :dialog-style="{ top: '8%' }" destroyOnClose :maskClosable="false">
<talent-view v-model="id" @close="closeWindow" />
</a-modal>
</div>
</template>
<script>
import { isEmptyParams, filterExportExcelData, tableColumnsName } from "@/views/utils/common"
import talentView from "@/views/report/talent/components/talentView"
import batchAudit from '@/views/audit/talent/batchAudit'
import audit from '@/views/audit/talent/audit'
export default {
name: "talentAudit",
components: {
talentView, audit, batchAudit
},
data() {
return {
selectedRowKeys: [],
// 选项卡
//panes: { count1: 0, count2: 0, count3: 0, count4: 0, count5: 0, },
form: this.$form.createForm(this, { name: 'advanced_search' }),
searchForm: {
auditType: 6,
auditResult: 1,
certId: null,
personName: null,
reportYear: null,
auditType: 6,
},
activekey: '1',
tabDate: [
{ key: "1", tab: "待审核" },
{ key: "10", tab: "已通过" },
{ key: "30", tab: "返回修改" },
{ key: "20", tab: "未通过" },
{ key: "", tab: "所有" },
],
itemCount: [0, 0, 0, 0, 0],
tableData: [],
columns: [
{ title: '申报年度', dataIndex: 'reportYear', align: 'center' },
{ title: '申报单位', dataIndex: 'appUnitName', align: 'center' },
{ title: "身份证号", dataIndex: 'certId', align: 'center' },
{ title: '姓名', scopedSlots: { customRender: 'talentInfo' }, align: 'center' },
{ title: '性别', dataIndex: 'sex', align: 'center' },
{ title: '专业', dataIndex: 'specName', align: 'center' },
{ title: '职称', dataIndex: 'titleName', align: 'center' },
{ title: '审核状态', dataIndex: 'auditResultName', align: 'center' },
{ title: '操作', scopedSlots: { customRender: 'option' }, align: 'center', fixed: 'right', width: 180, },
],
pagination: {
pageIndex: 1,
pageSize: this.$defaultPageSize,
total: 0,
pageSizeOptions: this.$defaultPageSizeOptions,
},
loading: false,
// 弹窗标志
visibleAudit: false,
visibleView: false,
visibleBatch: false,
isBatchButten: true,
isButten: false,
description: '',
id: null,
objectId: null,
};
},
created () {
this.getYear()
},
methods: {
onSelectChange (selectedRowKeys) {
this.selectedRowKeys = selectedRowKeys;
},
search () {
this.id = null
this.objectId = null
this.selectedRowKeys = []
this.pagination.pageIndex = 1
this.getListByPage();
},
reset () {
this.id = null
this.objectId = null
this.selectedRowKeys = []
this.searchForm.certId = null
this.searchForm.personName = null
this.searchForm.knowledgeId = null
this.pagination.pageIndex = 1
this.getListByPage()
},
getYear () {
this.$api.batch.getCurrentYearTalentBatch({ type: 2 }).then(({ data = {} }) => {
if (data) {
this.isButten = data.disabled
this.description = data.description
this.searchForm.reportYear = data.year
this.getListByPage()
}
}).catch(() => { })
},
getListByPage () {
this.getCount()
this.loading = true;
let pars = isEmptyParams(this.searchForm);
let par = { ...pars, pageIndex: this.pagination.pageIndex, pageSize: this.pagination.pageSize, }
this.$api.audit.getAuditListByPage(par).then(({ data = {} }) => {
if (data) {
const { dataList = [], total = 0 } = data
this.pagination.total = total
this.tableData = dataList
this.loading = false
}
}).catch(() => { this.loading = false })
},
getCount () {
let pars = isEmptyParams({ auditType: 6, reportYear: this.searchForm.reportYear });
this.$api.audit.getCount(pars).then(({ data = {} }) => {
if (data) {
this.panes = data
this.itemCount = [data.count1, data.count2, data.count3, data.count4, data.count5]
}
}).catch(() => { })
},
change () {
this.getListByPage();
},
showSizeChange (current, pageSize) {
this.pagination.pageSize = pageSize
this.getListByPage()
},
closeWindow (value) {
if (value === 'audit') {
this.getListByPage()
this.id = null
this.objectId = null
this.selectedRowKeys = []
this.visibleView = false
this.visibleAudit = false
this.visibleBatch = false
} else if (value === 'error') {
this.id = null
this.objectId = null
this.selectedRowKeys = []
this.visibleView = false
this.visibleAudit = false
this.visibleBatch = false
}
},
recordClick (record, type) {
if (type === 'view') {
this.id = record.auditObjectId
this.visibleView = true
} else if (type === 'audit') {
this.id = record.id
this.objectId = record.auditObjectId
this.visibleAudit = true
} else if (type === 'taskView') {
this.selectProjId = record.projId
}
},
batchAudit () {
if (!!this.selectedRowKeys && this.selectedRowKeys.length > 0) {
this.visibleBatch = true
}
else
this.$message.error('请选择项目!')
},
callback (key) {
if (key == '1') {
this.isBatchButten = true
} else
this.isBatchButten = false
this.searchForm.auditResult = key;
this.getListByPage()
},
exportData () {
},
}
};
</script>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment