289 lines
9.3 KiB
Vue
289 lines
9.3 KiB
Vue
<template>
|
|
|
|
<div>
|
|
<el-tabs tab-position="top" v-model="activeName">
|
|
<el-tab-pane label="已上报教职工" name="1">
|
|
<el-table :data="userTrueTableData" style="width: 100%" row-key="id"
|
|
@sort-change="pageOrder"
|
|
:summary-method="getSummaries"
|
|
show-summary
|
|
v-loading="tableLoading" ref="userTable"
|
|
:size="tableSize" class="vi-table">
|
|
|
|
<el-table-column align="center" header-align="center" width="80px" label="序号"
|
|
type="index">
|
|
<template scope="scope">
|
|
<span>{{
|
|
scope.$index + (userTruePageForm.pageNumber - 1) * userTruePageForm.pageSize + 1
|
|
}} </span>
|
|
</template>
|
|
</el-table-column>
|
|
|
|
<el-table-column
|
|
align="center"
|
|
header-align="center"
|
|
v-for="column in userTrueTableColumns"
|
|
show-overflow-tooltip
|
|
:label="column.label"
|
|
:prop="column.prop"
|
|
:sortable="column.sortable"
|
|
>
|
|
<template v-if="column.prop=='planDateTime'" scope="{row}">
|
|
{{ row.startDateTime }}-{{ row.endDateTime }}
|
|
</template>
|
|
<template v-else-if="column.prop=='planType'" scope="{row}">
|
|
{{ row.planType === 1 ? '幼托费' : '其它' }}
|
|
</template>
|
|
<template scope="{row}" v-else-if="column.prop==='state'">
|
|
<span :style="'color:'+row.stateColor">{{ row.stateName }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
|
|
<!-- <el-table-column prop="userOnline" align="center" header-align="center"
|
|
label="操作"
|
|
width="100px">
|
|
<template slot-scope="{row}">
|
|
<el-button size="mini" @click="openUserView(row)">
|
|
查看
|
|
</el-button>
|
|
</template>
|
|
</el-table-column>-->
|
|
</el-table>
|
|
<el-row class="el-pagination-container" style="margin-bottom: 0px">
|
|
<el-pagination
|
|
@size-change="userTruePageSizeChange"
|
|
@current-change="userTruePageNumberChange"
|
|
:current-page="userTruePageForm.pageNumber"
|
|
:page-sizes="[5,10, 20, 30, 50]"
|
|
:page-size="userTruePageForm.pageSize"
|
|
layout="total, sizes, prev, pager, next"
|
|
:total="userTruePageForm.totalCount">
|
|
</el-pagination>
|
|
</el-row>
|
|
</el-tab-pane>
|
|
<!-- <el-tab-pane label="未审核教职工" name="2">
|
|
<el-table :data="userFalseTableData" style="width: 100%" row-key="id"
|
|
@sort-change="pageOrder"
|
|
v-loading="tableLoading" ref="userTable"
|
|
:size="tableSize" class="vi-table">
|
|
|
|
<el-table-column align="center" header-align="center" width="80px" label="序号"
|
|
type="index">
|
|
<template scope="scope">
|
|
<span>{{
|
|
scope.$index + (userFalsePageForm.pageNumber - 1) * userFalsePageForm.pageSize + 1
|
|
}} </span>
|
|
</template>
|
|
</el-table-column>
|
|
|
|
<el-table-column
|
|
align="center"
|
|
header-align="center"
|
|
v-for="column in userTrueTableColumns"
|
|
show-overflow-tooltip
|
|
:label="column.label"
|
|
:prop="column.prop"
|
|
:sortable="column.sortable"
|
|
>
|
|
<template v-if="column.prop=='planDateTime'" scope="{row}">
|
|
{{ row.startDateTime }}-{{ row.endDateTime }}
|
|
</template>
|
|
<template v-else-if="column.prop=='planType'" scope="{row}">
|
|
{{ row.planType === 1 ? '幼托费' : '其它' }}
|
|
</template>
|
|
<template scope="{row}" v-else-if="column.prop==='state'">
|
|
<span :style="'color:'+row.stateColor">{{ row.stateName }}</span>
|
|
</template>
|
|
</el-table-column>
|
|
|
|
<el-table-column prop="userOnline" align="center" header-align="center"
|
|
label="操作"
|
|
width="100px">
|
|
<template slot-scope="{row}">
|
|
<el-button size="mini" @click="openUserView(row)">
|
|
查看
|
|
</el-button>
|
|
</template>
|
|
</el-table-column>
|
|
</el-table>
|
|
<el-row class="el-pagination-container" style="margin-bottom: 0px">
|
|
<el-pagination
|
|
@size-change="userFalsePageSizeChange"
|
|
@current-change="userFalsePageNumberChange"
|
|
:current-page="userFalsePageForm.pageNumber"
|
|
:page-sizes="[5,10, 20, 30, 50]"
|
|
:page-size="userFalsePageForm.pageSize"
|
|
layout="total, sizes, prev, pager, next"
|
|
:total="userFalsePageForm.totalCount">
|
|
</el-pagination>
|
|
</el-row>
|
|
|
|
</el-tab-pane>-->
|
|
</el-tabs>
|
|
|
|
|
|
<el-drawer
|
|
show-close
|
|
title="" size="78%"
|
|
:visible.sync="userDrawer"
|
|
:append-to-body="true">
|
|
|
|
<div style="padding: 30px">
|
|
<info ref="info"></info>
|
|
</div>
|
|
|
|
</el-drawer>
|
|
|
|
</div>
|
|
</template>
|
|
<script>
|
|
module.exports = {
|
|
props: {
|
|
union_id: {
|
|
type: String,
|
|
default: 0
|
|
},
|
|
plan_id: {
|
|
type: String,
|
|
default: null
|
|
},
|
|
year: {
|
|
type: String,
|
|
default: 0
|
|
},
|
|
state: {
|
|
type: String,
|
|
default: 0
|
|
},
|
|
},
|
|
mixins: [initTableMixins],
|
|
data() {
|
|
return {
|
|
userDrawer: false,
|
|
activeName: "1",
|
|
userFalseTableData: [],
|
|
userFalsePageForm: {
|
|
searchName: "",
|
|
searchKeyword: "",
|
|
pageNumber: 1,
|
|
pageSize: 10,
|
|
totalCount: 0,
|
|
pageOrderName: "",
|
|
pageOrderBy: ""
|
|
},
|
|
userTrueTableData: [],
|
|
userTruePageForm: {
|
|
searchName: "",
|
|
searchKeyword: "",
|
|
pageNumber: 1,
|
|
pageSize: 10,
|
|
totalCount: 0,
|
|
pageOrderName: "",
|
|
pageOrderBy: ""
|
|
},
|
|
userTrueTableColumns: [
|
|
{prop: 'loginName', label: '工号'},
|
|
{prop: 'userName', label: '姓名'},
|
|
{prop: 'unitName', label: '单位'},
|
|
{prop: 'unionName', label: '工会'},
|
|
{prop: 'money', label: '报销金额', sortable: true},
|
|
// {prop: 'applyDateTime', label: '报销申请时间'},
|
|
// {prop: 'state', label: '报销状态', sortable: true},
|
|
]
|
|
}
|
|
},
|
|
components: {
|
|
'file-upload': httpVueLoader('/components/plugins/FileUpload.vue'),
|
|
'info': httpVueLoader('/components/childcareFees/info.vue?v=' + new Date().getTime()),
|
|
},
|
|
methods: {
|
|
getSummaries(param) {
|
|
const {columns, data} = param;
|
|
const sums = [];
|
|
columns.forEach((column, index) => {
|
|
if (index === 0) {
|
|
sums[index] = '合计';
|
|
return;
|
|
}
|
|
const values = data.map(item => Number(item[column.property]));
|
|
if ([5].includes(index)) {
|
|
sums[index] = values.reduce((prev, curr) => {
|
|
const value = Number(curr);
|
|
if (!isNaN(value)) {
|
|
return prev + curr;
|
|
} else {
|
|
return prev;
|
|
}
|
|
}, 0);
|
|
sums[index] += ' 元';
|
|
} else {
|
|
sums[index] = '';
|
|
}
|
|
});
|
|
|
|
return sums;
|
|
},
|
|
openUserView(row) {
|
|
this.userDrawer = true
|
|
setTimeout(() => {
|
|
this.$refs.info.getInfo(row.id)
|
|
}, 300)
|
|
},
|
|
userTruePageSizeChange(val) {
|
|
this.userTruePageForm.pageSize = val;
|
|
this.userTrueNumPageData();
|
|
},
|
|
userTruePageNumberChange(val) {
|
|
this.userTruePageForm.pageNumber = val;
|
|
this.userTrueNumPageData();
|
|
},
|
|
userTrueNumPageData() {
|
|
sublime.showLoadingbar();
|
|
this.tableLoading = true
|
|
this.userTruePageForm.year = this.year
|
|
this.userTruePageForm.unionId = this.union_id
|
|
this.userTruePageForm.planId = this.plan_id
|
|
this.userTruePageForm.state = this.state
|
|
$.post("/platform/childcareFees/schoolAudit/userTrueNumPageData", this.userTruePageForm, (data) => {
|
|
sublime.closeLoadingbar();
|
|
this.tableLoading = false
|
|
if (data.code === 0) {
|
|
this.userTrueTableData = data.data.list;
|
|
this.userTruePageForm.totalCount = data.data.totalCount;
|
|
} else {
|
|
this.$message.error(data.msg);
|
|
}
|
|
}, "json");
|
|
},
|
|
userFalsePageSizeChange(val) {
|
|
this.userFalsePageForm.pageSize = val;
|
|
this.userFalseNumPageData();
|
|
},
|
|
userFalsePageNumberChange(val) {
|
|
this.userFalsePageForm.pageNumber = val;
|
|
this.userFalseNumPageData();
|
|
},
|
|
userFalseNumPageData() {
|
|
sublime.showLoadingbar();
|
|
this.tableLoading = true
|
|
this.userFalsePageForm.year = this.year
|
|
this.userFalsePageForm.unionId = this.union_id
|
|
this.userFalsePageForm.planId = this.plan_id
|
|
this.userFalsePageForm.state = this.state
|
|
$.post("/platform/childcareFees/schoolAudit/userFalseNumPageData", this.userFalsePageForm, (data) => {
|
|
sublime.closeLoadingbar();
|
|
this.tableLoading = false
|
|
if (data.code === 0) {
|
|
this.userFalseTableData = data.data.list;
|
|
this.userFalsePageForm.totalCount = data.data.totalCount;
|
|
} else {
|
|
this.$message.error(data.msg);
|
|
}
|
|
}, "json");
|
|
},
|
|
},
|
|
async created() {
|
|
}
|
|
}
|
|
</script>
|