|
@@ -1,15 +1,15 @@
|
|
|
<template>
|
|
|
<div class="app-container">
|
|
|
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch">
|
|
|
- <el-form-item label="Excel来源" prop="source">
|
|
|
- <el-input
|
|
|
- v-model="queryParams.source"
|
|
|
- placeholder="请输入Excel来源"
|
|
|
- clearable
|
|
|
- size="small"
|
|
|
- @keyup.enter.native="handleQuery"
|
|
|
- />
|
|
|
- </el-form-item>
|
|
|
+ <!-- <el-form-item label="Excel来源" prop="source">-->
|
|
|
+ <!-- <el-input-->
|
|
|
+ <!-- v-model="queryParams.source"-->
|
|
|
+ <!-- placeholder="请输入Excel来源"-->
|
|
|
+ <!-- clearable-->
|
|
|
+ <!-- size="small"-->
|
|
|
+ <!-- @keyup.enter.native="handleQuery"-->
|
|
|
+ <!-- />-->
|
|
|
+ <!-- </el-form-item>-->
|
|
|
<el-form-item label="用户编号" prop="userCode">
|
|
|
<el-input
|
|
|
v-model="queryParams.userCode"
|
|
@@ -115,14 +115,33 @@
|
|
|
</el-row>
|
|
|
|
|
|
<el-row :gutter="6">
|
|
|
- <el-col :span="8">
|
|
|
+ <el-col :span="7">
|
|
|
<el-card class="box-card">
|
|
|
<div slot="header" class="clearfix">
|
|
|
<span>福利领取目录</span>
|
|
|
</div>
|
|
|
<div class="item">
|
|
|
- <el-table v-loading="loading" :data="sourceList" @selection-change="handleSelectionChange" rowClick>
|
|
|
- <el-table-column label="Excel来源" align="center" prop="source"/>
|
|
|
+ <el-table v-loading="loading" :data="sourceList" @selection-change="handleSelectionChange"
|
|
|
+ @row-click="rowClick">
|
|
|
+ <el-table-column label="文件名" align="center" prop="source"/>
|
|
|
+ <el-table-column label="操作" align="center" class-name="small-padding fixed-width" width="130">
|
|
|
+ <template slot-scope="scope">
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ type="text"
|
|
|
+ icon="el-icon-pie-chart"
|
|
|
+ @click="openStat(scope.row.source)"
|
|
|
+ >统计
|
|
|
+ </el-button>
|
|
|
+ <el-button
|
|
|
+ size="mini"
|
|
|
+ type="text"
|
|
|
+ icon="el-icon-magic-stick"
|
|
|
+ @click="sourceDoUnregistered(scope.row.source)"
|
|
|
+ >发布
|
|
|
+ </el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
</el-table>
|
|
|
<pagination
|
|
|
v-show="total>0"
|
|
@@ -134,17 +153,17 @@
|
|
|
</div>
|
|
|
</el-card>
|
|
|
</el-col>
|
|
|
- <el-col :span="16">
|
|
|
+ <el-col :span="17">
|
|
|
<el-card class="box-card">
|
|
|
<div slot="header" class="clearfix">
|
|
|
- <span>报名信息</span>
|
|
|
+ <span>{{ sourceName }}</span>
|
|
|
</div>
|
|
|
<div class="item">
|
|
|
<el-table v-loading="loading" :data="applyRecordList" @selection-change="handleSelectionChange">
|
|
|
<el-table-column type="selection" width="55" align="center"/>
|
|
|
<el-table-column label="用户编号" align="center" prop="userCode"/>
|
|
|
<el-table-column label="用户名称" align="center" prop="userName"/>
|
|
|
- <el-table-column label="地点" align="center" prop="address">
|
|
|
+ <el-table-column label="地点" align="center" prop="address" width="380">
|
|
|
<template slot-scope="scope">
|
|
|
<dict-tag :options="dict.type.welfare_apply_addr" :value="scope.row.address"/>
|
|
|
</template>
|
|
@@ -200,7 +219,14 @@
|
|
|
<el-input v-model="form.userName" placeholder="请输入用户名称"/>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="地点" prop="address">
|
|
|
- <el-input v-model="form.address" placeholder="请输入地点"/>
|
|
|
+ <el-select v-model="form.address" placeholder="请选择地点">
|
|
|
+ <el-option
|
|
|
+ v-for="dict in dict.type.welfare_apply_addr"
|
|
|
+ :key="dict.value"
|
|
|
+ :label="dict.label"
|
|
|
+ :value="dict.value"
|
|
|
+ ></el-option>
|
|
|
+ </el-select>
|
|
|
</el-form-item>
|
|
|
<el-form-item label="当前状态" prop="nowStatus">
|
|
|
<el-select v-model="form.nowStatus" placeholder="请选择当前状态">
|
|
@@ -249,6 +275,12 @@
|
|
|
<el-button @click="cancelTemplate">取 消</el-button>
|
|
|
</div>
|
|
|
</el-dialog>
|
|
|
+ <el-dialog :title="stat.title" :visible.sync="stat.open" width="900px">
|
|
|
+ <el-table v-loading="stat.loading" :data="statList" :show-summary="true">
|
|
|
+ <el-table-column label="部门" align="center" prop="address"/>
|
|
|
+ <el-table-column label="报名数量" align="center" prop="applyNum"/>
|
|
|
+ </el-table>
|
|
|
+ </el-dialog>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
@@ -256,6 +288,8 @@
|
|
|
import {
|
|
|
listApplyRecord,
|
|
|
sourceListApplyRecord,
|
|
|
+ statApplyRecord,
|
|
|
+ doUnregistered,
|
|
|
getApplyRecord,
|
|
|
delApplyRecord,
|
|
|
addApplyRecord,
|
|
@@ -264,7 +298,7 @@ import {
|
|
|
importTempApplyRecord
|
|
|
} from '@/api/event/applyRecord'
|
|
|
import { getToken } from '@/utils/auth'
|
|
|
-import { listSalaryslip } from '@/api/salary/salaryslip'
|
|
|
+import { exportDetail } from '@/api/canteen/giftDetail'
|
|
|
|
|
|
export default {
|
|
|
name: 'ApplyRecord',
|
|
@@ -288,6 +322,7 @@ export default {
|
|
|
// 福利报名记录表格数据
|
|
|
applyRecordList: [],
|
|
|
sourceList: [],
|
|
|
+ statList: [],
|
|
|
// 弹出层标题
|
|
|
title: '',
|
|
|
// 是否显示弹出层
|
|
@@ -312,6 +347,7 @@ export default {
|
|
|
form: {},
|
|
|
// 表单校验
|
|
|
rules: {},
|
|
|
+ sourceName: '',
|
|
|
upload: {
|
|
|
// 是否显示弹出层(用户导入)
|
|
|
open: false,
|
|
@@ -324,6 +360,11 @@ export default {
|
|
|
headers: { Authorization: 'Bearer ' + getToken() },
|
|
|
// 上传的地址
|
|
|
url: process.env.VUE_APP_BASE_API + '/event/applyRecord/importData'
|
|
|
+ },
|
|
|
+ stat: {
|
|
|
+ open: false,
|
|
|
+ title: '统计',
|
|
|
+ loading: false
|
|
|
}
|
|
|
}
|
|
|
},
|
|
@@ -331,11 +372,12 @@ export default {
|
|
|
this.getList()
|
|
|
},
|
|
|
methods: {
|
|
|
- rowClick(row, column, event) {
|
|
|
+ rowClick(row) {
|
|
|
+ this.loading = true
|
|
|
this.queryParams.source = row.source
|
|
|
- this.excelInfo.source = row.source
|
|
|
- listSalaryslip(this.queryParams).then(response => {
|
|
|
- this.salaryslipList = response.rows
|
|
|
+ this.sourceName = row.source
|
|
|
+ listApplyRecord(this.queryParams).then(response => {
|
|
|
+ this.applyRecordList = response.rows
|
|
|
this.total = response.total
|
|
|
this.loading = false
|
|
|
})
|
|
@@ -353,6 +395,31 @@ export default {
|
|
|
this.sourceQueryParams.total = response.total
|
|
|
})
|
|
|
},
|
|
|
+ openStat(source) {
|
|
|
+ this.stat.open = true
|
|
|
+ this.stat.loading = true
|
|
|
+ this.stat.title = '统计【' + source + '】'
|
|
|
+ statApplyRecord(source).then(response => {
|
|
|
+ if (response.code === 200) {
|
|
|
+ this.statList = response.data
|
|
|
+ this.stat.loading = false
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ sourceDoUnregistered(source) {
|
|
|
+ this.$modal.confirm('发布成功后所有人员都设置为【未报名】状态,确认发布吗?').then(() => {
|
|
|
+ return doUnregistered(source)
|
|
|
+ }).then(response => {
|
|
|
+ if (response.code === 200) {
|
|
|
+ this.$modal.msgSuccess('发布成功')
|
|
|
+ this.getList()
|
|
|
+ } else {
|
|
|
+ this.$modal.msgError('发布失败')
|
|
|
+ }
|
|
|
+ }).catch(() => {
|
|
|
+
|
|
|
+ })
|
|
|
+ },
|
|
|
// 取消按钮
|
|
|
cancel() {
|
|
|
this.open = false
|