305 lines
14 KiB
HTML
305 lines
14 KiB
HTML
<!--#
|
|
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=2.0.0'),
|
|
'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>
|
|
|
|
<!--#
|
|
}
|
|
#-->
|