Files
UNION_NJUST/target/classes/views/platform/syr/cxtj/lxhz.html
T
2026-09-23 09:38:39 +08:00

184 lines
7.6 KiB
HTML

<!--#
layout("/layouts/platform.html"){
#-->
<div id="app" v-cloak>
<guava ref="guava">
<el-card shadow="never">
<div class="btn-group tool-button mt5">
<el-date-picker
placeholder="年份"
type="year"
v-model="pageForm.year"
value-format="yyyy">
</el-date-picker>
</div>
<div class="btn-group tool-button mt5">
<el-input placeholder="请输入项目名称查询" style="width: 250px;" v-model="pageForm.xmmc"></el-input>
</div>
<div class="btn-group tool-button mt5">
<el-input @keyup.enter.native="doSearch" placeholder="请输入内容" v-model="pageForm.searchKeyword">
<el-select placeholder="查询类型" slot="prepend" style="width: 120px;"
v-model="pageForm.searchName">
<el-option label="申报人姓名" value="u.username"></el-option>
<el-option label="申报人工号" value="u.loginname"></el-option>
</el-select>
</el-input>
</div>
<div class="btn-group tool-button mt5">
<el-select @change="getUnitList()" clearable filterable placeholder="请选择部门工会"
v-model="pageForm.unionid">
<el-option
:key="item.id"
:label="item.unionname"
:value="item.id"
v-for="item in unionList">
</el-option>
</el-select>
<el-select clearable filterable placeholder="请选择单位" v-model="pageForm.unitid">
<el-option
:key="item.id"
:label="item.name"
:value="item.id"
v-for="item in unitList">
</el-option>
</el-select>
</div>
<div class="btn-group tool-button mt5">
<el-button @click="doSearch" icon="el-icon-search" type="primary"></el-button>
</div>
</el-card>
<el-card class="mt10" shadow="never">
<vi-title2 title="立项汇总">
<template #func>
<el-button @click="exportLxhz" size="small" type="primary">导出立项申报汇总表</el-button>
<el-button @click="exportLxpshz" size="small" type="primary">导出立项评审汇总表</el-button>
<el-button @click="exportJtpshz" size="small" type="primary">导出结题评审汇总表</el-button>
<el-button @click="exportGoodProject" size="small" type="primary">导出结题汇总表</el-button>
</template>
</vi-title2>
<el-table :data="tableData" @sort-change='pageOrder'>
<el-table-column align="center" header-align="center" label="序号" type="index">
<template scope="scope">
<span>{{scope.$index+(pageForm.pageNumber - 1) * pageForm.pageSize + 1}} </span>
</template>
</el-table-column>
<el-table-column label="项目名称" prop="xmmc" show-overflow-tooltip width="400"></el-table-column>
<el-table-column label="申报人" prop="username"></el-table-column>
<el-table-column label="性别" prop="sex" width="100"></el-table-column>
<el-table-column label="申报单位" prop="dwname" show-overflow-tooltip width="150"></el-table-column>
<el-table-column label="部门工会" prop="ghname" show-overflow-tooltip width="150"></el-table-column>
<el-table-column label="职务职称" prop="zwzc" width="100"></el-table-column>
<el-table-column label="状态" prop="statename" sortable width="200"></el-table-column>
<el-table-column label="申报日期" prop="sbrq" sortable width="100"></el-table-column>
<el-table-column fixed="right" label="操作" width="100">
<template slot-scope="{row}">
<el-button @click="openView(row)" size="mini">查看</el-button>
</template>
</el-table-column>
</el-table>
<el-row class="el-pagination-container">
<el-pagination
:current-page="pageForm.pageNumber"
:page-size="pageForm.pageSize"
:total="pageForm.totalCount"
@current-change="pageNumberChange"
layout="total, prev, pager, next, jumper">
</el-pagination>
</el-row>
</el-card>
<template #view>
<syr-info-new ref="viewInfo"></syr-info-new>
</template>
</guava>
</div>
<script>
let vm = new Vue({
el: '#app',
mixins: [initTableMixins],
data() {
return {
smm: {
status: 'table'
},
unionList: [],
unitList: [],
tableShow: true,
pageForm: {
searchName: 'u.username',
searchKeyword: '',
xmmc: '',
unionid: '',
unitid: '',
year: new Date().getFullYear().toString()
},
tableData: [],
xmid: '',
}
},
components: {
'syr-info-new': httpVueLoader('/components/syr/SyrInfoNew.vue'),
},
methods: {
async pageData() {
const {data} = await POST('/platform/syr/cxtj/dgncx/pageData', this.pageForm, true)
this.tableData = data.list
this.pageForm.totalCount = data.totalCount
},
async openView(row) {
this.$refs.guava.view()
this.$refs.viewInfo.openView(row.id)
},
async getUnitList() {
this.unitList = []
this.pageForm.unitid = ''
this.unitList = await getUnit(this.pageForm.unionid)
},
exportLxhz() {
const {year} = this.pageForm
if (!year) {
this.notifyWarning('请先选择年度')
return
}
window.open(loc() + '/export?year=' + year)
},
exportLxpshz() {
const {year} = this.pageForm
if (!year) {
this.notifyWarning('请先选择年度')
return
}
window.open(loc() + '/exportLxpshz?year=' + year)
},
exportJtpshz() {
const {year} = this.pageForm
if (!year) {
this.notifyWarning('请先选择年度')
return
}
window.open(loc() + '/exportJtpshz?year=' + year)
},
exportGoodProject() {
const {year} = this.pageForm
if (!year) {
this.notifyWarning('请先选择年度')
return
}
window.open(loc() + '/exportGoodProject?year=' + year)
}
},
async created() {
this.pageData()
this.unionList = await getUnion()
}
})
</script>
<!--#
}
#-->