first commit

This commit is contained in:
2026-09-23 09:38:39 +08:00
commit 98a8b8cace
6257 changed files with 1266718 additions and 0 deletions
@@ -0,0 +1,187 @@
<!--#
layout("/layouts/platform.html"){
#-->
<style>
</style>
<div id="app" v-cloak>
<transition name="el-zoom-in-center">
<div v-show="smm.status==='table'">
<el-row class="header navbar bg-white shadow">
<div class="btn-group tool-button mt5">
<el-date-picker
placeholder="年度"
value-format="yyyy"
format="yyyy年"
v-model="pageForm.year"
type="year">
</el-date-picker>
</div>
<div class="btn-group tool-button mt5">
</div>
<div class="btn-group tool-button mt5">
<el-button icon="el-icon-search" @click="doSearch" type="primary"></el-button>
</div>
</el-row>
<el-row class="el-table-container">
<el-table :data="tableData" @sort-change='pageOrder' size="mini">
<el-table-column label="序号" type="index">
<template scope="scope"><span>{{scope.$index+(pageForm.pageNumber - 1) * pageForm.pageSize + 1}} </span>
</template>
</el-table-column>
<el-table-column prop="sqrgh" label="受补助人工号"></el-table-column>
<el-table-column prop="sqrname" label="受补助人姓名"></el-table-column>
<el-table-column prop="sq_sqrdw" label="受补助人单位"></el-table-column>
<el-table-column prop="dsqrname" label="申请人姓名"></el-table-column>
<el-table-column sortable prop="sq_sqsj" label="申请时间">
</el-table-column>
<el-table-column prop="sq_knbzsqly" label="申请理由" show-overflow-tooltip>
</el-table-column>
<el-table-column sortable prop="sq_sqzt" label="状态">
<template scope="{row}">
<span v-if="row.sq_sqzt==0">待申请人修改</span>
<span v-if="row.sq_sqzt==1">待部门工会审核</span>
<span v-if="row.sq_sqzt==2">待校工会审核</span>
<span v-if="row.sq_sqzt==3">部门工会审核不通过</span>
<span v-if="row.sq_sqzt==4">校工会审核不通过</span>
<span v-if="row.sq_sqzt==5">审核通过</span>
</template>
</el-table-column>
<el-table-column
label="操作"
width="100">
<template slot-scope="{row}">
<el-button v-if="row.sq_sqzt===1" type="primary" size="mini"
@click="openView(row)">审核
</el-button>
<el-button v-if="[2,3].includes(row.sq_sqzt)" type="danger" size="mini"
@click="ch(row)">撤回
</el-button>
</template>
</el-table-column>
</el-table>
</el-row>
<el-row class="el-pagination-container">
<el-pagination
@size-change="pageSizeChange"
@current-change="pageNumberChange"
:current-page="pageForm.pageNumber"
:page-sizes="[10, 20, 30, 50]"
:page-size="pageForm.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="pageForm.totalCount">
</el-pagination>
</el-row>
</div>
</transition>
<knbf-info :smm.sync="smm">
<template slot="handle">
<el-tab-pane label="部门工会审核" name="fghsh">
<el-form :model="formData" ref="Form" label-width="100px">
<el-form-item label="审核人">
${@shiro.getPrincipalProperty('username')}
</el-form-item>
<el-form-item label="审核时间">
{{moment().format('YYYY-MM-DD')}}
</el-form-item>
<el-form-item label="审核意见" prop="sq_jcdwshyj">
<el-input v-model="formData.sq_jcdwshyj" type="textarea" maxlength="300"
rows="5"></el-input>
</el-form-item>
<sign prefix="knbffghsh" :qz.sync="formData.jcdwqz"></sign>
</el-form>
<el-row class="mt20 text-center">
<el-button type="info" @click="doHandle(0)">退 回</el-button>
<el-button type="danger" @click="doHandle(3)">拒 绝</el-button>
<el-button type="success" @click="doHandle(2)">通 过</el-button>
</el-row>
</el-tab-pane>
</template>
</knbf-info>
</div>
<script>
let vue = new Vue({
el: '#app',
mixins: [initTableMixins],
data() {
return {
smm: {status: 'table', id: ''},
tableData: [],
formData: {
jcdwqz: ''
},
pageForm: {
lx: 1
}
}
},
components: {
'sign': httpVueLoader('/components/sign/sign.vue?v' + new Date().getTime()),
'knbf-info': httpVueLoader('/components/zgfw/knbf/knbf.vue')
},
methods: {
openView(row){
this.formData = {
sq_id:row.sq_id
}
this.smm={
status: 'detail',
sq_id:row.sq_id,
data:row,
activeName:'fghsh'
}
},
pageData() {
$.post(base + "/platform/zgfw/knbf/sh/pageData", this.pageForm).then(res => {
if (res.code === 0) {
this.tableData = res.data.list;
this.pageForm.totalCount = res.data.totalCount;
} else {
this.$message.error(res.msg);
}
});
},
doSearch() {
this.pageForm.pageNumber = 1;
this.pageData();
},
doHandle(s){
this.formData.sq_sqzt = s
$.post('/platform/zgfw/knbf/sh/dofghSh',this.formData).then(res=>{
if(res.code===0){
this.$message.success(res.msg)
this.smm={
status:'table'
}
this.pageData()
}
})
},
ch(row){
this.$confirm('撤回吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
$.post('/platform/zgfw/knbf/sh/doch',{id:row.id,status:1}).then(res=>{
if(res.code===0){
this.$message.success(res.msg)
this.pageData()
}
})
}).catch(() => {});
}
},
created() {
this.pageData();
}
})
</script>
<!--#
}
#-->
@@ -0,0 +1,223 @@
<!--#
layout("/layouts/platform.html"){
#-->
<style>
#app{
padding: 10px;
height: 100%;
overflow-y: auto;
}
.el-divider {
background-color: #409EFF;
}
.el-divider__text {
color: #409EFF;
}
input[type="number"] {
-moz-appearance: textfield;
}
.flexbox {
display: flex;
}
.flexbox .el-form-item {
width: 50%;
}
.el-form .el-select, .el-form .el-date-editor {
width: 100%;
}
.el-loading-spinner{
font-size: 30px;
}
.el-collapse-item__arrow{
color: red;
font-size: 20px;
}
</style>
<div id="app" v-cloak>
<el-card style="width:100%;">
<div slot="header" style="font-size: 20px;">
困难补助申请
</div>
<el-form :model="formData" label-width="100px" ref="addForm" :rules="formRules">
<el-divider content-position="left">基本信息</el-divider>
<el-form-item label="申请人">
<el-input placeholder="姓名" value="${@shiro.getPrincipalProperty('username')}"
readonly="true"></el-input>
</el-form-item>
<div class="flexbox">
<el-form-item label="受补助人" prop="sq_sqr">
<el-select v-model="formData.sq_sqr"
@change="sqrChange"
filterable
remote
reserve-keyword
placeholder="输入工号或者姓名查找"
:remote-method="querySqr">
<el-option v-for="o in sqrlist" :label="o.username+'-'+o.loginname" :value="o.id"
:key="o.id"></el-option>
</el-select>
</el-form-item>
<el-form-item label="性别" prop="sq_sex">
<el-select v-model="formData.sq_sex">
<el-option value="男" label="男"></el-option>
<el-option value="女" label="女"></el-option>
</el-select>
</el-form-item>
</div>
<div class="flexbox">
<el-form-item label="出生年月" prop="sq_birthday">
<el-date-picker value-format="yyyy-MM-dd" v-model="formData.sq_birthday">
</el-date-picker>
</el-form-item>
<el-form-item label="单位" prop="sq_sqrdw">
<el-input v-model="formData.sq_sqrdw" readonly></el-input>
</el-form-item>
</div>
<div class="flexbox">
<el-form-item label="职称(务)" prop="sq_zwzc">
<el-input placeholder="职称" v-model="formData.sq_zwzc"></el-input>
</el-form-item>
<el-form-item label="联系电话" prop="sq_mobile">
<el-input placeholder="联系电话" v-model="formData.sq_mobile"></el-input>
</el-form-item>
</div>
<div>
<el-form-item label="申请理由" prop="sq_knbzsqly">
<el-input placeholder="请填写困难补助申请理由" type="textarea" :autosize="{ minRows: 4, maxRows: 8}"
maxlength="1000" v-model.trim="formData.sq_knbzsqly"></el-input>
</el-form-item>
</div>
<div>
<sign prefix="knbfsh" :qz.sync="formData.sqrqz"></sign>
</div>
<!-- <div>-->
<!-- <el-form-item label="附件">-->
<!-- <el-upload-->
<!-- name="file"-->
<!-- ref="upload"-->
<!-- action=""-->
<!-- :on-change="handleChange"-->
<!-- :auto-upload="false"-->
<!-- :multiple="false"-->
<!-- :file-list="fileList">-->
<!-- <el-button size="mini" type="primary">选择文件</el-button>-->
<!-- </el-upload>-->
<!-- </el-form-item>-->
<!-- </div>-->
</el-form>
<div style="text-align: right;margin-top: 20px;">
<el-button type="primary" @click="doAdd">确 定</el-button>
</div>
</el-card>
</div>
<script>
const rules = {
sq_sqr: [{required: true, message: '请填写申请人', trigger: ['blur', 'change']}],
sq_sex: [{required: true, message: '请选择申请人性别', trigger: ['blur', 'change']}],
sq_birthday: [{required: true, message: '请填写申请人生日', trigger: ['blur', 'change']}],
sq_zwzc: [{required: true, message: '请填写申请人职务(职称)', trigger: ['blur', 'change']}],
sq_mobile: [{required: true, message: '请填写申请人手机号', trigger: ['blur', 'change']}],
sq_knbzsqly: [{required: true, message: '请填写申请理由', trigger: ['blur', 'change']}]
}
let vue = new Vue({
el: '#app',
data() {
return {
formData: {
sqrqz:'',
sq_sqr:'',
sq_sqrdw:'',
sq_sex:'',
sq_birthday:'',
sq_zwzc:'',
sq_mobile:'',
sq_knbzsqly:''
},
addDialogVisible: false,
formRules: rules,
fileList: [],
sqrlist: [],
}
},
components: {
'sign': httpVueLoader('/components/sign/sign.vue?v' + new Date().getTime()),
},
methods: {
async querySqr(key) {
const data = await selectUser(key,10)
this.sqrlist = data.list
},
sqrChange(val){
let u = this.sqrlist.find(u=>u.id === val)
console.log(u)
this.$set(this.formData,'sq_sex',u.sex)
this.$set(this.formData,'sq_xgh',u.loginname)
this.$set(this.formData,'sq_birthday','')
this.$set(this.formData,'sq_zwzc',u.zc)
this.$set(this.formData,'sq_mobile',u.mobile)
this.$set(this.formData,'sq_sqrdw',u.dwname)
},
handleChange(file, fileList) {
if (file.size === 0) {
this.$message.warning("您选择的是空文件!");
for (let i = 0; i < fileList.length; i++) {
if (file === fileList[i]) {
fileList.splice(i, 1);
}
}
}
this.fileList = fileList;
},
doAdd() {
this.$refs["addForm"].validate(valid => {
if (valid) {
let formData = new FormData();
formData.append("sqxx", JSON.stringify(this.formData));
this.fileList.forEach(function (val) {
formData.append("file", val.raw, val.raw.name);
})
$.ajax({
url: base + "/platform/zgfw/knbfsq/doAdd",
type: "post",
data: formData,
processData: false,
contentType: false
}).then(res=>{
clearInterval(qzInterval)
if(res.code===0){
this.$message({
message: res.msg,
type: 'success',
onClose:()=>{
window.location.href='/platform/zgfw/knbfsqxx'
}
})
}
})
}
})
}
}
})
</script>
<!--#
}
#-->
@@ -0,0 +1,304 @@
<!--#
layout("/layouts/platform.html"){
#-->
<style>
.flexbox {
display: flex;
}
.flexbox .el-form-item {
width: 50%;
}
.el-form .el-select, .el-form .el-date-editor {
width: 100%;
}
.el-loading-spinner {
font-size: 30px;
}
.el-divider {
background-color: #409EFF;
}
.el-divider__text {
color: #409EFF;
}
.editdialog .el-collapse-item__arrow {
color: red;
font-size: 20px;
}
</style>
<div id="app" v-cloak>
<transition name="el-zoom-in-center">
<div v-show="smm.status==='table'">
<el-row class="header navbar bg-white shadow">
<div class="btn-group tool-button mt5">
<el-date-picker
placeholder="年度"
value-format="yyyy"
format="yyyy年"
v-model="pageForm.year"
type="year">
</el-date-picker>
</div>
<div class="btn-group tool-button mt5">
</div>
<div class="btn-group tool-button mt5">
<el-button icon="el-icon-search" @click="doSearch" type="primary"></el-button>
</div>
</el-row>
<el-row class="el-table-container">
<el-table :data="tableData" @sort-change='pageOrder' size="mini">
<el-table-column label="序号" type="index">
<template scope="scope"><span>{{scope.$index+(pageForm.pageNumber - 1) * pageForm.pageSize + 1}} </span>
</template>
</el-table-column>
<el-table-column prop="sqrgh" label="受补助人工号"></el-table-column>
<el-table-column prop="sqrname" label="受补助人姓名"></el-table-column>
<el-table-column prop="sq_sqrdw" label="受补助人单位"></el-table-column>
<el-table-column prop="dsqrname" label="申请人姓名"></el-table-column>
<el-table-column sortable prop="sq_sqsj" label="申请时间">
</el-table-column>
<el-table-column prop="sq_knbzsqly" label="申请理由" show-overflow-tooltip>
</el-table-column>
<el-table-column sortable prop="sq_sqzt" label="状态">
<template scope="{row}">
<span v-if="row.sq_sqzt==0">待申请人修改</span>
<span v-if="row.sq_sqzt==1">待部门工会审核</span>
<span v-if="row.sq_sqzt==2">待校工会审核</span>
<span v-if="row.sq_sqzt==3">部门工会审核不通过</span>
<span v-if="row.sq_sqzt==4">校工会审核不通过</span>
<span v-if="row.sq_sqzt==5">审核通过</span>
</template>
</el-table-column>
<el-table-column
label="操作"
width="300">
<template slot-scope="{row}">
<el-button size="mini" @click="openView(row)">查看</el-button>
<el-button v-if="row.sq_sqzt===5" size="mini" @click="exportKnbf(row.sq_id)">导出</el-button>
<el-button v-if="[0,1].includes(row.sq_sqzt)" type="primary" size="mini"
@click="openEdit(row.sq_id)">编辑
</el-button>
<el-button v-if="[0,1].includes(row.sq_sqzt)" type="danger" size="mini"
@click="doDelete(row.sq_id)">删除
</el-button>
</template>
</el-table-column>
</el-table>
</el-row>
<el-row class="el-pagination-container">
<el-pagination
@size-change="pageSizeChange"
@current-change="pageNumberChange"
:current-page="pageForm.pageNumber"
:page-sizes="[10, 20, 30, 50]"
:page-size="pageForm.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="pageForm.totalCount">
</el-pagination>
</el-row>
<el-dialog title="困难补助编辑" top="5%" :visible.sync="editDialogVisible" width="65%">
<div slot="header">
困难补助编辑
</div>
<el-form :model="formData" label-width="100px" ref="editForm" :rules="formRules">
<el-divider content-position="left">基本信息</el-divider>
<el-form-item label="申请人">
<el-input placeholder="姓名" :value="formData.dsqrusername"
readonly="true"></el-input>
</el-form-item>
<div class="flexbox">
<el-form-item label="受补助人" prop="sq_sqr">
<el-input v-model="formData.sqrusername" readonly></el-input>
</el-form-item>
<el-form-item label="性别" prop="sq_sex">
<el-select v-model="formData.sq_sex">
<el-option value="男" label="男"></el-option>
<el-option value="女" label="女"></el-option>
</el-select>
</el-form-item>
</div>
<div class="flexbox">
<el-form-item label="出生年月" prop="sq_birthday">
<el-date-picker value-format="yyyy-MM-dd" v-model="formData.sq_birthday">
</el-date-picker>
</el-form-item>
<el-form-item label="单位" prop="sq_sqrdw">
<el-input v-model="formData.sq_sqrdw" readonly></el-input>
</el-form-item>
</div>
<div class="flexbox">
<el-form-item label="职称(务)" prop="sq_zwzc">
<el-input placeholder="职称" v-model="formData.sq_zwzc"></el-input>
</el-form-item>
<el-form-item label="联系电话" prop="sq_mobile">
<el-input placeholder="联系电话" v-model="formData.sq_mobile"></el-input>
</el-form-item>
</div>
<div>
<el-form-item label="申请理由" prop="sq_knbzsqly">
<el-input placeholder="请填写困难补助申请理由" type="textarea" :autosize="{ minRows: 4, maxRows: 8}"
maxlength="1000" v-model.trim="formData.sq_knbzsqly"></el-input>
</el-form-item>
</div>
<div>
<sign prefix="knbfsh" :qz.sync="formData.sqrqz"></sign>
</div>
<!-- <div>-->
<!-- <el-form-item label="附件">-->
<!-- </el-form-item>-->
<!-- </div>-->
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="editDialogVisible = false">取 消</el-button>
<el-button type="primary" @click="doEdit">重新提交</el-button>
</span>
</el-dialog>
</div>
</transition>
<knbf-info :smm.sync="smm" />
</div>
<script>
let vue = new Vue({
el: '#app',
mixins: [initTableMixins],
data() {
return {
smm: {status: 'table', id: ''},
tableData: [],
formData: {},
editDialogVisible: false,
formRules: {
sq_sqr: [{required: true, message: '请填写申请人', trigger: ['blur', 'change']}],
sq_sex: [{required: true, message: '请选择申请人性别', trigger: ['blur', 'change']}],
sq_xgh: [{required: true, message: '请填写申请人新工号', trigger: ['blur', 'change']}],
sq_birthday: [{required: true, message: '请填写申请人生日', trigger: ['blur', 'change']}],
sq_zwzc: [{required: false, message: '请填写申请人职务(职称)', trigger: ['blur', 'change']}],
sq_mobile: [{required: false, message: '请填写申请人手机号', trigger: ['blur', 'change']}],
sq_knlx: [{required: true, message: '请填写困难帮扶类型', trigger: ['blur', 'change']}],
sq_knbzsqly: [{required: true, message: '请填写申请理由', trigger: ['blur', 'change']}]
}
}
},
components: {
'sign': httpVueLoader('/components/sign/sign.vue?v' + new Date().getTime()),
'knbf-info': httpVueLoader('/components/zgfw/knbf/knbf.vue')
},
methods: {
openView(row){
this.smm={
status: 'detail',
id:row.sq_id,
data:row,
activeName:'1'
}
},
pageData() {
$.post(base + "/platform/zgfw/knbfsqxx/pageData", this.pageForm).then(res => {
if (res.code == 0) {
if (res.data.list.length == 0 && this.pageForm.pageNumber > 1) {
this.pageForm.pageNumber = this.pageForm.pageNumber - 1;
this.pageData();
}
this.tableData = res.data.list;
this.pageForm.totalCount = res.data.totalCount;
} else {
this.$message.error(res.msg);
}
});
},
doDelete(id) {
this.$confirm('是否确定删除该申请记录?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(()=>{
$.post('/platform/zgfw/knbfsqxx/doDelete', {id: id}).then(res => {
if (res.code === 0) {
this.$message.success('删除成功!');
this.doSearch();
}
});
}).catch()
},
openEdit(id) {
if (this.$refs["editForm"]) {
this.$refs["editForm"].resetFields();
}
$.post(base + '/platform/zgfw/knbfsqxx/queryDetail', {id: id}).then(res => {
if (res.code === 0) {
this.formData = res.data.jbxx;
// res.data.fileList.forEach(val=>{
// this.fileList.push({name: val.fjname, uid: val.fjid, fjurl: val.fjurl})
// })
this.editDialogVisible = true
} else {
this.$message.error(res.msg);
}
});
},
doEdit() {
this.$refs["editForm"].validate(valid => {
if (valid) {
$.post('/platform/zgfw/knbfsqxx/doEdit', this.formData).then(res => {
if (res.code === 0) {
this.editDialogVisible = false
this.$message.success(res.msg)
this.pageData()
}
})
//let formData = new FormData();
//formData.append("sqxx", JSON.stringify(this.formData));
// formData.append("delfile",JSON.stringify(this.Delfileurl));
// this.fileList.forEach(val=>{
// if(val.status==='ready'){
// formData.append("file", val.raw, val.raw.name);
// }
// })
// $.ajax({
// url: base + "/platform/zgfw/knbfsqxx/doEdit",
// type: "post",
// data: formData,
// processData: false,
// contentType: false,
// success: function (data) {
// if (data.code === 0) {
// vue.editDialogVisible=false;
// vue.doSearch();
// vue.$message.success(data.msg);
// }
// }
// })
}
});
},
doSearch() {
this.pageForm.pageNumber = 1;
this.pageData();
},
exportKnbf(id) {
window.open('/platform/zgfw/knbfsqxx/export?id=' + id);
}
},
created() {
this.pageData();
}
})
</script>
<!--#
}
#-->
@@ -0,0 +1,186 @@
<!--#
layout("/layouts/platform.html"){
#-->
<style>
</style>
<div id="app" v-cloak>
<transition name="el-zoom-in-center">
<div v-show="smm.status==='table'">
<el-row class="header navbar bg-white shadow">
<div class="btn-group tool-button mt5">
<el-date-picker
placeholder="年度"
value-format="yyyy"
format="yyyy年"
v-model="pageForm.year"
type="year">
</el-date-picker>
</div>
<div class="btn-group tool-button mt5">
</div>
<div class="btn-group tool-button mt5">
<el-button icon="el-icon-search" @click="doSearch" type="primary"></el-button>
</div>
</el-row>
<el-row class="el-table-container">
<el-table :data="tableData" @sort-change='pageOrder' size="mini">
<el-table-column label="序号" type="index">
<template scope="scope"><span>{{scope.$index+(pageForm.pageNumber - 1) * pageForm.pageSize + 1}} </span>
</template>
</el-table-column>
<el-table-column prop="sqrgh" label="受补助人工号"></el-table-column>
<el-table-column prop="sqrname" label="受补助人姓名"></el-table-column>
<el-table-column prop="sq_sqrdw" label="受补助人单位"></el-table-column>
<el-table-column prop="dsqrname" label="申请人姓名"></el-table-column>
<el-table-column sortable prop="sq_sqsj" label="申请时间">
</el-table-column>
<el-table-column prop="sq_knbzsqly" label="申请理由" show-overflow-tooltip>
</el-table-column>
<el-table-column sortable prop="sq_sqzt" label="状态">
<template scope="{row}">
<span v-if="row.sq_sqzt==0">待申请人修改</span>
<span v-if="row.sq_sqzt==1">待部门工会审核</span>
<span v-if="row.sq_sqzt==2">待校工会审核</span>
<span v-if="row.sq_sqzt==3">部门工会审核不通过</span>
<span v-if="row.sq_sqzt==4">校工会审核不通过</span>
<span v-if="row.sq_sqzt==5">审核通过</span>
</template>
</el-table-column>
<el-table-column
label="操作"
width="100">
<template slot-scope="{row}">
<el-button v-if="row.sq_sqzt===2" type="primary" size="mini"
@click="openView(row)">审核
</el-button>
</template>
</el-table-column>
</el-table>
</el-row>
<el-row class="el-pagination-container">
<el-pagination
@size-change="pageSizeChange"
@current-change="pageNumberChange"
:current-page="pageForm.pageNumber"
:page-sizes="[10, 20, 30, 50]"
:page-size="pageForm.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="pageForm.totalCount">
</el-pagination>
</el-row>
</div>
</transition>
<knbf-info :smm.sync="smm">
<template slot="handle">
<el-tab-pane label="校工会审核" name="xghsh">
<el-form :model="formData" ref="Form" label-width="100px">
<el-form-item label="审核人">
${@shiro.getPrincipalProperty('username')}
</el-form-item>
<el-form-item label="审核时间">
{{moment().format('YYYY-MM-DD')}}
</el-form-item>
<el-form-item label="审核意见" prop="sq_xghshyj">
<el-input v-model="formData.sq_xghshyj" type="textarea" maxlength="300" rows="5"></el-input>
</el-form-item>
<sign prefix="knbfxghsh" :qz.sync="formData.xghqz"></sign>
</el-form>
<el-row class="mt20 text-center">
<el-button type="info" @click="doHandle(1)">退 回</el-button>
<el-button type="danger" @click="doHandle(4)">拒 绝</el-button>
<el-button type="success" @click="doHandle(5)">通 过</el-button>
</el-row>
</el-tab-pane>
</template>
</knbf-info>
</div>
<script>
let vue = new Vue({
el: '#app',
mixins: [initTableMixins],
data() {
return {
smm: {status: 'table', id: ''},
tableData: [],
formData: {
xghqz: ''
},
pageForm: {
lx: 2
}
}
},
components: {
'sign': httpVueLoader('/components/sign/sign.vue?v' + new Date().getTime()),
'knbf-info': httpVueLoader('/components/zgfw/knbf/knbf.vue')
},
methods: {
openView(row){
this.formData = {
sq_id:row.sq_id
}
this.smm={
status: 'detail',
sq_id:row.sq_id,
data:row,
activeName:'xghsh'
}
},
pageData() {
$.post(base + "/platform/zgfw/knbf/sh/pageData", this.pageForm).then(res => {
if (res.code == 0) {
if (res.data.list.length == 0 && this.pageForm.pageNumber > 1) {
this.pageForm.pageNumber = this.pageForm.pageNumber - 1;
this.pageData();
}
this.tableData = res.data.list;
this.pageForm.totalCount = res.data.totalCount;
} else {
this.$message.error(res.msg);
}
});
},
doSearch() {
this.pageForm.pageNumber = 1;
this.pageData();
},
doHandle(s){
this.formData.sq_sqzt = s
$.post('/platform/zgfw/knbf/sh/doxghSh',this.formData).then(res=>{
if(res.code===0){
this.$message.success(res.msg)
this.smm={
status:'table'
}
this.pageData()
}
})
},
ch(row){
this.$confirm('撤回吗?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
$.post('/platform/zgfw/knbf/sh/doch',{id:row.id,status:1}).then(res=>{
if(res.code===0){
this.$message.success(res.msg)
this.pageData()
}
})
}).catch(() => {});
}
},
created() {
this.pageData();
}
})
</script>
<!--#
}
#-->
@@ -0,0 +1,174 @@
<!--#
layout("/layouts/platform.html"){
#-->
<style>
</style>
<div id="app" v-cloak>
<transition name="el-zoom-in-center">
<div v-show="smm.status==='table'">
<el-row class="header navbar bg-white shadow">
<div class="btn-group tool-button mt5">
<el-date-picker
placeholder="年度"
value-format="yyyy"
format="yyyy年"
v-model="pageForm.year"
type="year">
</el-date-picker>
</div>
<div class="btn-group tool-button mt5">
<el-input placeholder="请输入关键字" v-model="pageForm.searchKeyword" clearable @keyup.enter.native="doSearch">
<el-select v-model="pageForm.searchName" slot="prepend" placeholder="查询类型" style="width: 120px;">
<el-option label="补助人姓名" value="sqr.username"></el-option>
<el-option label="补助人工号" value="sqr.loginname"></el-option>
</el-select>
</el-input>
</div>
<div class="btn-group tool-button mt5">
<el-select clearable filterable placeholder="请选择部门工会" v-model="pageForm.unionid">
<el-option
v-for="item in unionList"
:key="item.id"
:label="item.unionname"
:value="item.id">
</el-option>
</el-select>
</div>
<div class="btn-group tool-button mt5">
<el-button icon="el-icon-search" @click="doSearch" type="primary"></el-button>
</div>
<!--# if(@shiro.hasRole('H04')){ #-->
<div class="pull-right offscreen-right mt5">
<el-button size="medium" @click="exportHz"><i class="el-icon-document-copy"></i> 汇总</el-button>
</div>
<!--# } #-->
</el-row>
<el-row class="el-table-container">
<el-table :data="tableData" @sort-change='pageOrder' size="mini">
<el-table-column label="序号" type="index">
<template scope="scope"><span>{{scope.$index+(pageForm.pageNumber - 1) * pageForm.pageSize + 1}} </span>
</template>
</el-table-column>
<el-table-column prop="sqrgh" label="受补助人工号"></el-table-column>
<el-table-column prop="sqrname" label="受补助人姓名"></el-table-column>
<el-table-column prop="sq_sqrdw" label="受补助人单位"></el-table-column>
<el-table-column prop="dsqrname" label="申请人姓名"></el-table-column>
<el-table-column sortable prop="sq_sqsj" label="申请时间">
</el-table-column>
<el-table-column prop="sq_knbzsqly" label="申请理由" show-overflow-tooltip>
</el-table-column>
<el-table-column sortable prop="sq_sqzt" label="状态">
<template scope="{row}">
<span v-if="row.sq_sqzt==0">待申请人修改</span>
<span v-if="row.sq_sqzt==1">待部门工会审核</span>
<span v-if="row.sq_sqzt==2">待校工会审核</span>
<span v-if="row.sq_sqzt==3">部门工会审核不通过</span>
<span v-if="row.sq_sqzt==4">校工会审核不通过</span>
<span v-if="row.sq_sqzt==5">审核通过</span>
</template>
</el-table-column>
<el-table-column
label="操作"
width="300">
<template slot-scope="{row}">
<el-button size="mini" @click="openView(row)">查看</el-button>
<el-button v-if="row.sq_sqzt===5" size="mini" @click="exportknbf(row.sq_id)">导出</el-button>
<!--# if(@shiro.hasRole('sysadmin') || @shiro.hasRole('A06')){#-->
<el-button v-if="[0,1].includes(row.sq_sqzt)" type="danger" size="mini" @click="doDelete(row.sq_id)">删除</el-button>
<!--# } #-->
</template>
</el-table-column>
</el-table>
</el-row>
<el-row class="el-pagination-container">
<el-pagination
@size-change="pageSizeChange"
@current-change="pageNumberChange"
:current-page="pageForm.pageNumber"
:page-sizes="[10, 20, 30, 50]"
:page-size="pageForm.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="pageForm.totalCount">
</el-pagination>
</el-row>
</div>
</transition>
<knbf-info :smm.sync="smm" />
</div>
<script>
let vue = new Vue({
el: '#app',
mixins: [initTableMixins],
data() {
return {
smm: {status: 'table', id: ''},
tableData: [],
pageForm: {
year: moment().format('YYYY'),
unionid: '',
searchName: 'sqr.username'
},
unionList: []
}
},
components: {
'knbf-info': httpVueLoader('/components/zgfw/knbf/knbf.vue')
},
methods: {
openView(row){
this.smm={
status: 'detail',
id:row.sq_id,
data:row,
activeName:'1'
}
},
pageData() {
$.post(base + "/platform/zgfw/knbf/zhcx/pageData", this.pageForm).then(res => {
if (res.code === 0) {
this.tableData = res.data.list;
this.pageForm.totalCount = res.data.totalCount;
} else {
this.$message.error(res.msg);
}
});
},
doDelete(id) {
this.$confirm('是否确定删除该申请记录?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(()=>{
$.post('/platform/zgfw/knbfsqxx/doDelete', {id: id}).then(res => {
if (res.code === 0) {
this.$message.success('删除成功!');
this.doSearch();
}
});
}).catch()
},
exportknbf(id){
window.open('/platform/zgfw/knbfsqxx/export?id=' + id);
},
exportHz(){
window.location.href = '/platform/zgfw/knbf/zhcx/exportHz'
}
},
async created() {
this.pageData()
this.unionList = await getUnion()
}
})
</script>
<!--#
}
#-->