Merge branch 'main' of http://47.112.118.149:10082/xgxt_sd/zhxg_pc
This commit is contained in:
295
src/views/dormitory/accommodation/index.vue
Normal file
295
src/views/dormitory/accommodation/index.vue
Normal file
@@ -0,0 +1,295 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||
<el-form-item label="学号" prop="stuNo">
|
||||
<el-input v-model="queryParams.stuNo" placeholder="请输入学号" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="姓名" prop="stuName">
|
||||
<el-input v-model="queryParams.stuName" placeholder="请输入姓名" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="班级" prop="className">
|
||||
<el-input v-model="queryParams.className" placeholder="请输入班级" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学院" prop="deptName">
|
||||
<el-input v-model="queryParams.deptName" placeholder="请输入学院" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="专业" prop="majorName">
|
||||
<el-input v-model="queryParams.majorName" placeholder="请输入专业" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="年级" prop="gradeName">
|
||||
<el-input v-model="queryParams.gradeName" placeholder="请输入年级" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="房间号" prop="roomNo">
|
||||
<el-input v-model="queryParams.roomNo" placeholder="请输入房间号" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<el-col :span="1.5">
|
||||
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="applyVClick">申请</el-button>
|
||||
</el-col>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
<el-dialog title="申请" :visible.sync="applyV" :fullscreen="true" :destroy-on-close="true" @close="getList">
|
||||
<el-form ref="formData" :model="formData" :rules="rules">
|
||||
<adApply style="margin: 0 auto;" :selectedId="selectId" v-if="applyV" />
|
||||
</el-form>
|
||||
</el-dialog>
|
||||
<el-table v-loading="loading" :data="accommodationsList" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="#" align="center" prop="id" />
|
||||
<el-table-column label="学院" align="center" prop="deptName" />
|
||||
<el-table-column label="专业" align="center" prop="majorName" />
|
||||
<el-table-column label="年级" align="center" prop="gradeName" />
|
||||
<el-table-column label="班级" align="center" prop="className" />
|
||||
<el-table-column label="学号" align="center" prop="stuNo" />
|
||||
<el-table-column label="姓名" align="center" prop="stuName" />
|
||||
<el-table-column label="性别" align="center" prop="gender" />
|
||||
<el-table-column label="学年" align="center" prop="stuYearName" />
|
||||
<el-table-column label="审核状态" align="center" prop="reviewerStatus">
|
||||
<template slot-scope="scope">
|
||||
<dict-tag :options="dict.type.acc_reviewer_status" :value="scope.row.reviewerStatus" />
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- <el-table-column label="出生日期" align="center" prop="birday" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.birday, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="联系电话" align="center" prop="stuPhone" />
|
||||
<el-table-column label="身份证号" align="center" prop="sfzh" />
|
||||
<el-table-column label="房间号" align="center" prop="roomNo" />
|
||||
<el-table-column label="宿舍缴费情况" align="center" prop="isCharge" />
|
||||
<el-table-column label="外宿原因" align="center" prop="sleepOutRemark" />
|
||||
<el-table-column label="外宿地址" align="center" prop="address" />
|
||||
<el-table-column label="紧急联系人" align="center" prop="emergencyContact" />
|
||||
<el-table-column label="家长意见" align="center" prop="parentComment" />
|
||||
<el-table-column label="家长联系电话" align="center" prop="parentTel" />
|
||||
<el-table-column label="家长联系地址" align="center" prop="parentAddress" />
|
||||
|
||||
<el-table-column label="申请人签名" align="center" prop="applySign" />
|
||||
<el-table-column label="申请日期" align="center" prop="applyDate" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.applyDate, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="辅导员意见" align="center" prop="fdyCmt" />
|
||||
<el-table-column label="辅导员签名" align="center" prop="fdySign" />
|
||||
<el-table-column label="辅导员审核日期" align="center" prop="fdyDate" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.fdyDate, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="辅导员工号" align="center" prop="fdyNo" />
|
||||
<el-table-column label="二级学院审核意见" align="center" prop="deptCmt" />
|
||||
<el-table-column label="二级学院签名" align="center" prop="deptSign" />
|
||||
<el-table-column label="二级学院审核日期" align="center" prop="deptDate" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.deptDate, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="二级学院审核工号" align="center" prop="deptNo" />
|
||||
<el-table-column label="学工意见" align="center" prop="xgCmt" />
|
||||
<el-table-column label="学工签名" align="center" prop="xgSign" />
|
||||
<el-table-column label="学工审核日期" align="center" prop="xgDate" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.xgDate, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="学工审核工号" align="center" prop="xgNo" />
|
||||
<el-table-column label="校领导意见" align="center" prop="leaderCmt" />
|
||||
<el-table-column label="校领导" align="center" prop="leaderSign" />
|
||||
<el-table-column label="校领导审核日期" align="center" prop="leaderDate" width="180">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.leaderDate, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="校领导审核工号" align="center" prop="leaderNo" /> -->
|
||||
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||
<template slot-scope="scope">
|
||||
<el-button v-if="scope.row.reviewerStatus==0" size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)">修改</el-button>
|
||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
||||
@pagination="getList" />
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import adApply from '@/views/dormitory/accommodation/wsnt/adApply.vue'
|
||||
import { listAccommodations, getAccommodations, delAccommodations, addAccommodations, updateAccommodations } from "@/api/dormitory/accommodations"
|
||||
|
||||
export default {
|
||||
name: 'adApplystu',
|
||||
dicts: ['acc_reviewer_status'],
|
||||
components: {
|
||||
adApply
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
applyV: false,
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 选中数组
|
||||
ids: [],
|
||||
selectId: null,
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 外宿申请表格数据
|
||||
accommodationsList: [],
|
||||
// 弹出层标题
|
||||
title: "",
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
stuNo: null,
|
||||
stuName: null,
|
||||
className: null,
|
||||
deptName: null,
|
||||
majorName: null,
|
||||
gradeName: null,
|
||||
roomNo: null,
|
||||
},
|
||||
// 表单参数
|
||||
formData: {},
|
||||
// 表单校验
|
||||
rules: {
|
||||
}
|
||||
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
methods: {
|
||||
applyVClick() {
|
||||
this.reset();
|
||||
this.applyV = true;
|
||||
this.selectId=null;
|
||||
},
|
||||
/** 查询外宿申请列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
listAccommodations(this.queryParams).then(response => {
|
||||
this.accommodationsList = response.rows;
|
||||
this.total = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
},
|
||||
// 取消按钮
|
||||
// cancel() {
|
||||
// this.applyV = false;
|
||||
// this.reset();
|
||||
// },
|
||||
// 表单重置
|
||||
reset() {
|
||||
this.formData = {
|
||||
id: null,
|
||||
stuNo: null,
|
||||
stuName: null,
|
||||
birday: null,
|
||||
gender: null,
|
||||
className: null,
|
||||
stuPhone: null,
|
||||
sfzh: null,
|
||||
deptName: null,
|
||||
majorName: null,
|
||||
gradeName: null,
|
||||
roomNo: null,
|
||||
isCharge: null,
|
||||
sleepOutRemark:null,
|
||||
address: null,
|
||||
emergencyContact: null,
|
||||
parentComment: null,
|
||||
parentTel: null,
|
||||
parentAddress: null,
|
||||
reviewerStatus: null,
|
||||
applySign: null,
|
||||
applyDate: null,
|
||||
fdyCmt: null,
|
||||
fdySign: null,
|
||||
fdyDate: null,
|
||||
fdyNo: null,
|
||||
deptCmt: null,
|
||||
deptSign: null,
|
||||
deptDate: null,
|
||||
deptNo: null,
|
||||
xgCmt: null,
|
||||
xgSign: null,
|
||||
xgDate: null,
|
||||
xgNo: null,
|
||||
leaderCmt: null,
|
||||
leaderSign: null,
|
||||
leaderDate: null,
|
||||
leaderNo: null,
|
||||
stuYearId: null,
|
||||
createTime: null,
|
||||
createBy: null,
|
||||
updateTime: null,
|
||||
updateBy: null
|
||||
};
|
||||
this.resetForm("formData");
|
||||
},
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.ids = selection.map(item => item.id)
|
||||
this.single = selection.length !== 1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.reset();
|
||||
const id = row.id || this.ids;
|
||||
this.selectId = row.id;
|
||||
//getAccommodations(id).then(response => {
|
||||
// this.formData = response.data;
|
||||
this.applyV = true;
|
||||
//});
|
||||
},
|
||||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
const ids = row.id || this.ids;
|
||||
this.$modal.confirm('是否确认删除外宿申请编号为"' + ids + '"的数据项?').then(function () {
|
||||
return delAccommodations(ids);
|
||||
}).then(() => {
|
||||
this.getList();
|
||||
this.$modal.msgSuccess("删除成功");
|
||||
}).catch(() => { });
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
<style scoped lang="scss">
|
||||
.lookForm {
|
||||
.el-form-item {
|
||||
margin-bottom: 5px;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
660
src/views/dormitory/accommodation/wsnt/adApply.vue
Normal file
660
src/views/dormitory/accommodation/wsnt/adApply.vue
Normal file
@@ -0,0 +1,660 @@
|
||||
<template>
|
||||
<div>
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:黑体; font-size:18pt; font-style:normal; font-weight:normal; text-transform:none">广西水利电力职业技术学院</span><span
|
||||
style="font-family:黑体; font-size:18pt; font-style:normal; font-weight:normal; text-transform:none">外宿</span><span
|
||||
style="font-family:黑体; font-size:18pt; font-style:normal; font-weight:normal; text-transform:none">申请表</span>
|
||||
</p>
|
||||
<table cellspacing="0" cellpadding="0" style="border-collapse:collapse; margin:0 auto; width:577.75pt">
|
||||
<tr style="height:24pt">
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:24pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">原宿舍号</span>
|
||||
</p>
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle;">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
{{ formData.name }}</span>
|
||||
<span style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
{{ formData.roomNo }}号房</span>
|
||||
</p>
|
||||
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:59.95pt">
|
||||
<p style="margin:0pt; text-align:center">
|
||||
<span style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
姓名</span>
|
||||
</p>
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:25.2pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">{{
|
||||
formData.stuName }}</span>
|
||||
</p>
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:25.2pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
性别</span>
|
||||
</p>
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:52.2pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">{{
|
||||
formData.gender }}</span>
|
||||
</p>
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:52.2pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
出生年月
|
||||
</span>
|
||||
</p>
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:52.2pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">{{
|
||||
formData.birthday
|
||||
}}</span>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:66.65pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">专业</span>
|
||||
</p>
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:131.95pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
{{ formData.majorName }}
|
||||
</span>
|
||||
</p>
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:52.2pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">班级</span>
|
||||
</p>
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:160.2pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
{{ formData.className }}
|
||||
</span>
|
||||
</p>
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:66.65pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">学号</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="5"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:365.95pt">
|
||||
<p style="margin:0pt; text-align:justify; text-indent:18pt"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
{{ formData.stuNo }}
|
||||
</span>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="4"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:288pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">宿费交纳情况(只填写当年度交费情况)</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="4"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:365.95pt">
|
||||
<p style="margin:0pt; text-align:justify; text-indent:18pt"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
已交
|
||||
</span>
|
||||
<span style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
{{ formData.stuYearName }}
|
||||
</span>年度
|
||||
住宿费<span style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
{{ formData.needMoney }}
|
||||
</span>人民币
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="3"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">身份证号码</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="2"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:66.65pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">{{
|
||||
formData.sfzh }}</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="2"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">学生联系电话</span>
|
||||
</p>
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:66.65pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">{{
|
||||
formData.stuPhone }}</span>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">申请外宿原因</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="7"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:200pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
<el-input placeholder="请输入" type="textarea" v-model="formData.sleepOutRemark" />
|
||||
</span>
|
||||
</p>
|
||||
<p style="margin-left: 280pt;">
|
||||
<span style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
签名:
|
||||
</span>
|
||||
<img :src="baseurl + formData.signature" width="100pt" height="50pt" v-model="formData.applySign" />
|
||||
<!-- <span>
|
||||
<el-date-picker clearable type="date" value-format="yyyy-MM-dd" placeholder="请选择日期"
|
||||
style="border: 1pt solid;width: 100pt;margin-left: 20pt;" v-model="formData.applyDate">
|
||||
</el-date-picker>
|
||||
</span> -->
|
||||
<span style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none"
|
||||
v-if="formData.applyDate == null">
|
||||
{{ dayjs().format("YYYY年M月D日") }}</span>
|
||||
<span style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none"
|
||||
v-if="formData.applyDate != null">{{ dayjs(formData.applyDate).format("YYYY年M月D日") }}</span>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">外宿详细地址
|
||||
</span>
|
||||
</p>
|
||||
<p style="margin:0pt; text-align:center">
|
||||
<span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none;color: red;">(具体到门牌号)</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="3"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
<el-input placeholder="请输入" type="textarea" v-model="formData.address" />
|
||||
</span>
|
||||
</p>
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">外宿居所紧急联系人电话</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="3"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
<el-input placeholder="请输入" type="textarea" v-model="formData.emergencyContact" />
|
||||
</span>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td colspan="2"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">家长意见</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="6"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
<el-input placeholder="请输入" type="textarea" v-model="formData.parentComment" />
|
||||
</span>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td rowspan="2"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">家长联系方式</span>
|
||||
</p>
|
||||
</td>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
通讯地址
|
||||
</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="6"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
<el-input placeholder="请输入" type="textarea" v-model="formData.parentAddress" />
|
||||
</span>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">联系电话</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="6"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle; width:12pt">
|
||||
<p style="margin:0pt; text-align:center"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
<el-input placeholder="请输入" type="textarea" v-model="formData.parentTel" />
|
||||
</span>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle;width: 12pt;">
|
||||
<p style="margin:0pt;"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">本人承诺</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="7"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle;">
|
||||
<p style="margin:0pt;"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
1.自觉遵守国家法律、法规;
|
||||
</span>
|
||||
</p>
|
||||
<p style="margin:0pt"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
2.自觉遵守学生行为规范和学校的规章制度,遵守社会公德;
|
||||
</span>
|
||||
</p>
|
||||
<p style="margin:0pt"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
3.自觉遵守外宿住址所在社区的有关管理规定;
|
||||
</span>
|
||||
</p>
|
||||
<p style="margin:0pt"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
4.本人申请外宿,属个人自愿行为,外宿期间发生的一切事故,造成本人、他人或集体的人身、财产损害的,学校不负责任。
|
||||
</span>
|
||||
</p>
|
||||
<p style="margin-left:300pt"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
签名:
|
||||
</span>
|
||||
<img :src="baseurl + formData.signature" width="100pt" height="50pt" v-model="formData.applySign2" />
|
||||
<!--<el-date-picker clearable type="date" value-format="yyyy-MM-dd" placeholder="请选择日期"
|
||||
v-model="formData.applyDate2" style="border: 1pt solid;width: 100pt;margin-left: 20pt;">
|
||||
</el-date-picker> -->
|
||||
<span style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none"
|
||||
v-if="formData.applyDate2 == null">
|
||||
{{ dayjs().format("YYYY年M月D日") }}</span>
|
||||
<span style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none"
|
||||
v-if="formData.applyDate2 != null">{{dayjs(formData.applyDate2).format("YYYY年M月D日")}}</span>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle;width: 12pt;">
|
||||
<p style="margin:0pt;"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">辅导员意见</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="7"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle;width: 12pt;">
|
||||
<p>
|
||||
<el-select v-model="selectedValue" placeholder="请选择" style="border: 1pt solid;width: 100pt;">
|
||||
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
||||
</el-select>
|
||||
<span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none;margin-left: 145pt;">
|
||||
签名:
|
||||
</span>
|
||||
<el-input style="border: 1pt solid;width: 100pt;" v-model="formData.fdySign" />
|
||||
<el-date-picker clearable type="date" value-format="yyyy-MM-dd" placeholder="请选择日期"
|
||||
v-model="formData.fdyDate" style="border: 1pt solid;width: 100pt;margin-left: 20pt;">
|
||||
</el-date-picker>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle;width: 12pt;">
|
||||
<p style="margin:0pt;"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">学院意见</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="7"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle;width: 12pt;">
|
||||
<p style="margin:0pt;"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">拟准许外宿时间:
|
||||
</span>
|
||||
<el-date-picker clearable type="date" value-format="yyyy-MM-dd" placeholder="请选择日期"
|
||||
style="border: 1pt solid;width: 100pt;margin-left: 0pt;">
|
||||
</el-date-picker> ———— 次年 <el-date-picker clearable type="date" value-format="yyyy-MM-dd"
|
||||
placeholder="请选择日期" style="border: 1pt solid;width: 100pt;margin-left: 0pt;">
|
||||
</el-date-picker>
|
||||
</p>
|
||||
<p style="margin-left:250pt"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none;">
|
||||
签名:
|
||||
</span>
|
||||
<el-input style="border: 1px solid;width: 100pt;" v-model="formData.deptSign" />
|
||||
<el-date-picker clearable type="date" value-format="yyyy-MM-dd" placeholder="请选择日期"
|
||||
style="border: 1px solid;width: 100pt;margin-left: 20pt;" v-model="formData.deptDate">
|
||||
</el-date-picker>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle;width: 12pt;">
|
||||
<p style="margin:0pt;"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">学工处意见</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="7"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle;width: 12pt;">
|
||||
<p style="margin:0pt;"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none;">拟准许外宿时间:
|
||||
</span>
|
||||
<el-date-picker clearable type="date" value-format="yyyy-MM-dd" placeholder="请选择日期"
|
||||
style="border: 1px solid;width: 100pt;margin-left: 0pt;">
|
||||
</el-date-picker>———— 次年
|
||||
<el-date-picker clearable type="date" value-format="yyyy-MM-dd" placeholder="请选择日期"
|
||||
style="border: 1px solid;width: 100pt;margin-left: 0pt;">
|
||||
</el-date-picker>
|
||||
</p>
|
||||
<p style="margin-left:250pt"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">
|
||||
签名:
|
||||
</span>
|
||||
<el-input style="border: 1px solid;width: 100pt;" v-model="formData.xgSign" />
|
||||
<el-date-picker clearable type="date" value-format="yyyy-MM-dd" placeholder="请选择日期"
|
||||
style="border: 1px solid;width: 100pt;margin-left: 20pt;" v-model="formData.xgDate">
|
||||
</el-date-picker>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
<tr>
|
||||
<td
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle;width: 12pt;">
|
||||
<p style="margin:0pt;"><span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none">学校领导意见</span>
|
||||
</p>
|
||||
</td>
|
||||
<td colspan="7"
|
||||
style="border-bottom-color:#000000; border-bottom-style:solid; border-bottom-width:0.75pt; border-left-color:#000000; border-left-style:solid; border-left-width:0.75pt; border-right-color:#000000; border-right-style:solid; border-right-width:0.75pt; border-top-color:#000000; border-top-style:solid; border-top-width:0.75pt; padding-left:5.03pt; padding-right:5.03pt; vertical-align:middle;width: 12pt;">
|
||||
<p>
|
||||
<el-select v-model="selectedValue" placeholder="请选择" style="border: 1pt solid;width: 100pt;">
|
||||
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value"></el-option>
|
||||
</el-select>
|
||||
<span
|
||||
style="font-family:宋体; font-size:12pt; font-style:normal; font-weight:normal; text-transform:none;margin-left: 145pt;">
|
||||
签名:
|
||||
</span>
|
||||
<el-input style="border: 1px solid;width: 100pt;" v-model="formData.leaderSign" />
|
||||
<el-date-picker clearable type="date" value-format="yyyy-MM-dd" placeholder="请选择日期"
|
||||
style="border: 1px solid;width: 100pt;margin-left: 20pt;" v-model="formData.leaderDate">
|
||||
</el-date-picker>
|
||||
</p>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
<div style="margin: 0 auto;width: fit-content;">
|
||||
<el-button type="success" plain @click="doApply(0)" v-if="showButtons">保存</el-button>
|
||||
<el-button type="success" plain @click="doApply(1)" v-if="showButtons">提交申请</el-button>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
<script>
|
||||
import { boolImg, CheckImgExists, isEmpty, fullLoading } from '@/api/helpFunc'
|
||||
import { getStuDormitory, addAccommodations, getAccommodations, updateAccommodations } from '@/api/dormitory/accommodations'
|
||||
import { getLoginStudent, getOwnClass } from '@/api/stuCQS/basedata/student'
|
||||
import { getOwnMajorName } from '@/api/stuCQS/basedata/class'
|
||||
import { ref } from 'vue';
|
||||
import dayjs from 'dayjs'
|
||||
export default {
|
||||
name: 'adApply',
|
||||
props: {
|
||||
selectedId: {
|
||||
type: [Number, String],
|
||||
default: null
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
dayjs,
|
||||
showButtons: true,
|
||||
baseurl: process.env.VUE_APP_BASE_API + '/',
|
||||
options: [
|
||||
{ value: 'option1', label: '同意' },
|
||||
{ value: 'option2', label: '不同意' },
|
||||
// 更多选项
|
||||
],
|
||||
selectedValue: 'option1', // 预设的默认值
|
||||
formData: {
|
||||
name: null,
|
||||
roomNo: null,
|
||||
deptName: null,
|
||||
gradeName: null,
|
||||
stuName: null,
|
||||
gender: null,
|
||||
birthday: null,
|
||||
majorName: null,
|
||||
className: null,
|
||||
stuNo: null,
|
||||
sfzh: null,
|
||||
stuPhone: null,
|
||||
signature: null,
|
||||
sleepOutRemark: null,
|
||||
address: null,
|
||||
emergencyContact: null,
|
||||
parentComment: null,
|
||||
parentTel: null,
|
||||
parentAddress: null,
|
||||
reviewerStatus: null,
|
||||
applySign: null,
|
||||
applyDate: null,
|
||||
applySign2: null,
|
||||
applyDate2: null,
|
||||
isCharge: null,//宿舍缴纳情况
|
||||
stuYearName: null,
|
||||
needMoney: null
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {
|
||||
this.getLoginStudent();
|
||||
this.getOwnMajorName();
|
||||
this.getClass();
|
||||
this.getStuDormitory();
|
||||
this.getLoadData();
|
||||
},
|
||||
methods: {
|
||||
async getLoadData() {
|
||||
if (this.selectedId != null) {
|
||||
let loading = fullLoading(this);
|
||||
let res = await getAccommodations(this.selectedId);
|
||||
loading.close();
|
||||
if (res.code == 200) {
|
||||
let data = { ...res.data };
|
||||
this.formData.sleepOutRemark = data.sleepOutRemark;
|
||||
this.formData.address = data.address;
|
||||
this.formData.emergencyContact = data.emergencyContact;
|
||||
this.formData.parentComment = data.parentComment;
|
||||
this.formData.parentTel = data.parentTel;
|
||||
this.formData.parentAddress = data.parentAddress;
|
||||
this.formData.applySign = data.applySign;
|
||||
this.formData.applyDate = data.applyDate;
|
||||
this.formData.applySign2 = data.applySign2;
|
||||
this.formData.applyDate2 = data.applyDate2;
|
||||
this.formData.reviewerStatus = data.reviewerStatus;
|
||||
if (this.formData.reviewerStatus == 1) {
|
||||
this.showButtons = false;
|
||||
} else {
|
||||
this.showButtons = true;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.formData.sleepOutRemark = "";
|
||||
}
|
||||
},
|
||||
async getLoginStudent() {
|
||||
let loading = fullLoading(this);
|
||||
let res = await getLoginStudent();
|
||||
loading.close();
|
||||
if (res.code == 200) {
|
||||
let data = { ...res.data };
|
||||
this.formData.stuName = data.name;
|
||||
this.formData.gender = data.gender;
|
||||
this.formData.birthday = data.birthday;
|
||||
this.formData.stuNo = data.stuNo;
|
||||
this.formData.sfzh = data.idCard;
|
||||
this.formData.stuPhone = data.phone;
|
||||
this.formData.deptName = data.deptName;
|
||||
this.formData.gradeName = data.gradeName;
|
||||
this.formData.stuYearName = data.stuYearName;
|
||||
this.formData.needMoney = data.needMoney;
|
||||
}
|
||||
},
|
||||
async getClass() {
|
||||
let loading = fullLoading(this);
|
||||
let res = await getOwnClass();
|
||||
loading.close();
|
||||
if (res.code == 200) {
|
||||
let data = { ...res.data };
|
||||
this.formData.className = data.className;
|
||||
}
|
||||
},
|
||||
async getOwnMajorName() {
|
||||
let loading = fullLoading(this);
|
||||
let res = await getOwnMajorName();
|
||||
loading.close();
|
||||
if (res.code == 200) {
|
||||
let data = { ...res.data };
|
||||
this.formData.majorName = data.majorName;
|
||||
}
|
||||
},
|
||||
async getStuDormitory() {
|
||||
let loading = fullLoading(this);
|
||||
let res = await getStuDormitory();
|
||||
loading.close();
|
||||
if (res.code == 200) {
|
||||
let data = { ...res.data };
|
||||
this.formData.name = data.name;
|
||||
this.formData.roomNo = data.roomNo;
|
||||
this.formData.signature = data.signature;
|
||||
this.formData.isCharge = data.isCharge;
|
||||
}
|
||||
},
|
||||
async doApply(par) {
|
||||
// let sdata = { ...this.formData }
|
||||
// console.log(sdata)
|
||||
// if (isEmpty(sdata.helpHis)) {
|
||||
// this.$message.info('请填写曾获资助/奖励,没有写无')
|
||||
// return
|
||||
// }
|
||||
// if (isEmpty(sdata.yearMoney)) {
|
||||
// this.$message.info('请填写年收入')
|
||||
// return
|
||||
// }
|
||||
|
||||
// let loading = fullLoading(this)
|
||||
// let res = await doApply(sdata)
|
||||
// loading.close()
|
||||
// if (res.code == 200) {
|
||||
// this.$message.success('提交成功,请关闭页面查看')
|
||||
// }
|
||||
var sel = this.selectedId;
|
||||
if (sel == null) {
|
||||
if (par == 0) {
|
||||
let loading = fullLoading(this)
|
||||
this.formData.reviewerStatus = 0;
|
||||
addAccommodations(this.formData).then(response => {
|
||||
loading.close()
|
||||
this.$modal.msgSuccess("保存成功");
|
||||
});
|
||||
} else {
|
||||
let loading = fullLoading(this)
|
||||
this.formData.reviewerStatus = 1;
|
||||
addAccommodations(this.formData).then(response => {
|
||||
loading.close()
|
||||
this.$modal.msgSuccess("提交成功");
|
||||
this.showButtons = false;
|
||||
});
|
||||
}
|
||||
} else {
|
||||
this.formData.id = sel;
|
||||
if (par == 0) {
|
||||
let loading = fullLoading(this)
|
||||
this.formData.reviewerStatus = 0;
|
||||
updateAccommodations(this.formData).then(response => {
|
||||
loading.close()
|
||||
this.$modal.msgSuccess("保存成功");
|
||||
});
|
||||
} else {
|
||||
let loading = fullLoading(this)
|
||||
this.formData.reviewerStatus = 1;
|
||||
updateAccommodations(this.formData).then(response => {
|
||||
loading.close()
|
||||
this.$modal.msgSuccess("提交成功");
|
||||
this.showButtons = false;
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
/* 取消 textarea 的边框 */
|
||||
::v-deep .el-textarea__inner {
|
||||
border: none;
|
||||
}
|
||||
|
||||
/* 取消 el-input 的边框 */
|
||||
::v-deep .el-input__inner {
|
||||
border: none;
|
||||
}
|
||||
</style>
|
||||
@@ -64,7 +64,7 @@
|
||||
<el-form-item label="姓名" prop="stuName">
|
||||
<el-input v-model="queryParams.stuName" placeholder="请输入学生姓名" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="辅导员姓名" prop="teacherName">
|
||||
<el-form-item label="辅导员姓名" prop="teacherName" v-if="!roleGroup.includes('辅导员')">
|
||||
<el-input v-model="queryParams.teacherName" placeholder="请输入辅导员姓名" clearable
|
||||
@keyup.enter.native="handleQuery"
|
||||
/>
|
||||
@@ -260,6 +260,7 @@ import { listMajors } from '@/api/stuCQS/basedata/majors'
|
||||
import { listGrade } from '@/api/stuCQS/basedata/grade'
|
||||
import { listInSchoolClass as listClass } from '@/api/stuCQS/basedata/class'
|
||||
import { getTokenKeySessionStorage } from '@/utils/auth'
|
||||
import { getUserProfile } from '@/api/system/user' // 获取当前登录用户
|
||||
let id, campusId, buildingId, parkId, floorId
|
||||
|
||||
|
||||
@@ -363,7 +364,8 @@ export default {
|
||||
sendForm: {
|
||||
gradeId: null,
|
||||
endDate: null
|
||||
}
|
||||
},
|
||||
roleGroup: ""
|
||||
}
|
||||
},
|
||||
created() {
|
||||
@@ -639,11 +641,25 @@ export default {
|
||||
/** 查询宿舍学生关联列表 */
|
||||
getList() {
|
||||
this.loading = true
|
||||
listStudent(this.queryParams).then(response => {
|
||||
this.studentList = response.rows
|
||||
this.total = response.total
|
||||
this.loading = false
|
||||
})
|
||||
getUserProfile().then((response) => {
|
||||
this.roleGroup = response.roleGroup
|
||||
if (response.roleGroup.includes('辅导员')) {
|
||||
this.queryParams.teacherName = response.data.nickName
|
||||
} else if (response.roleGroup.includes('学务')) {
|
||||
// this.queryParams.deptId = response.data.deptId
|
||||
this.deptList.forEach(element => {
|
||||
if (element.label == response.data.dept.deptName) {
|
||||
this.queryParams.deptId = element.value
|
||||
}
|
||||
});
|
||||
this.changeDept()
|
||||
}
|
||||
listStudent(this.queryParams).then(response => {
|
||||
this.studentList = response.rows
|
||||
this.total = response.total
|
||||
this.loading = false
|
||||
})
|
||||
})
|
||||
},
|
||||
// 取消按钮
|
||||
cancel() {
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,215 @@
|
||||
<!-- 详细外宿申请表 -->
|
||||
<template>
|
||||
<div v-loading="loading">
|
||||
<!-- 详细入伍保留学籍表单 -->
|
||||
<el-descriptions class="margin-top" title="" :column="4" size="medium" border style="width: 100%">
|
||||
<el-descriptions-item>
|
||||
<template slot="label"> 原宿舍号 </template>
|
||||
{{ renderData.originalDormitory }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item>
|
||||
<template slot="label"> 姓名 </template>
|
||||
{{ renderData.studentName }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item>
|
||||
<template slot="label"> 性别 </template>
|
||||
<span v-if="renderData.gender == 1">男</span>
|
||||
<span v-else>女</span>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item>
|
||||
<template slot="label"> 出生年月 </template>
|
||||
{{ renderData.birthDate }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item span="2">
|
||||
<template slot="label"> 专业系 </template>
|
||||
{{ renderData.majorName }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item>
|
||||
<template slot="label"> 班级 </template>
|
||||
{{ renderData.className }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item>
|
||||
<template slot="label"> 学号 </template>
|
||||
{{ renderData.studentNo }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item span="4">
|
||||
<template slot="label"> 宿费交纳情况(只填写当年度交费情况) </template>
|
||||
<!-- {{ renderData.familyAddress }} -->
|
||||
已交 绑定当前学年年度住宿费 人民币
|
||||
</el-descriptions-item>
|
||||
|
||||
<el-descriptions-item span="2">
|
||||
<template slot="label"> 身份证号码 </template>
|
||||
{{ renderData.idCard }}
|
||||
</el-descriptions-item>
|
||||
|
||||
<el-descriptions-item span="2">
|
||||
<template slot="label"> 学生联系电话 </template>
|
||||
{{ renderData.studentPhone }}
|
||||
</el-descriptions-item>
|
||||
|
||||
|
||||
<el-descriptions-item span="4">
|
||||
<template slot="label"> 附件材料 </template>
|
||||
<Affix v-model="renderData.affixId" :disabled="true" />
|
||||
</el-descriptions-item>
|
||||
|
||||
<el-descriptions-item span="4">
|
||||
<template slot="label"> 申请原因 </template>
|
||||
<div style="padding-top: 10px;">
|
||||
{{ renderData.applyReason }}
|
||||
</div>
|
||||
<div style="padding: 20px;">
|
||||
<div style="display: flex;justify-content: flex-end;align-items: center;">
|
||||
<div style="padding: 0 10px;display: flex;justify-content: flex-end;align-items: center;">
|
||||
<div>申请人: </div>
|
||||
<div>
|
||||
<el-image style="width: 100px; height: 50px; margin-left: 10px; border: 1px solid #eee"
|
||||
:src="baseUrl + renderData.studentSignature" :preview-src-list="[baseUrl + renderData.studentSignature]">
|
||||
</el-image>
|
||||
</div>
|
||||
</div>
|
||||
<div style="padding: 0 10px;">日期: {{ renderData.createTime }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</el-descriptions-item>
|
||||
|
||||
<!-- <el-descriptions-item span="4" v-for="item in formData.enlistmentReserveApprovalList">
|
||||
<template slot="label"> {{ item.opinionType }} </template>
|
||||
<div style="padding-top: 10px;">
|
||||
{{ item.approvalOpinion || "暂无意见" }}
|
||||
</div>
|
||||
<div style="padding: 20px;">
|
||||
<div style="display: flex;justify-content: flex-end;align-items: center;">
|
||||
<div style="padding: 0 10px;">
|
||||
审批结果:
|
||||
<el-tag v-if="item.approvalResult == 1" type="success">通过</el-tag>
|
||||
<el-tag v-else type="danger">驳回</el-tag>
|
||||
</div>
|
||||
<div style="padding: 0 10px;">签名: {{ item.approverName }}</div>
|
||||
<div style="padding: 0 10px;">日期: {{ item.approvalTime }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</el-descriptions-item> -->
|
||||
|
||||
<el-descriptions-item span="2">
|
||||
<template slot="label"> 外宿详细地址(具体到门牌号) </template>
|
||||
{{ renderData.address + renderData.outsideAddress }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item span="2">
|
||||
<template slot="label"> 外宿居所紧急联系人电话 </template>
|
||||
{{ renderData.emergencyPhone }}
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item span="4">
|
||||
<template slot="label"> 家长意见 </template>
|
||||
<div style="padding-top: 10px;">
|
||||
<el-image style="width: 200px; height: 150px; margin-left: 10px; border: 1px solid #eee"
|
||||
:src="baseUrl + renderData.parentSignAttachment" :preview-src-list="[baseUrl + renderData.parentSignAttachment]">
|
||||
</el-image>
|
||||
</div>
|
||||
<div style="padding: 20px;">
|
||||
<div style="display: flex;justify-content: flex-end;align-items: center;">
|
||||
<div style="padding: 0 10px;display: flex;justify-content: flex-end;align-items: center;">
|
||||
<div>申请人: </div>
|
||||
<div>
|
||||
<el-image style="width: 100px; height: 50px; margin-left: 10px; border: 1px solid #eee"
|
||||
:src="baseUrl + renderData.parentSignAttachment" :preview-src-list="[baseUrl + renderData.parentSignAttachment]">
|
||||
</el-image>
|
||||
</div>
|
||||
</div>
|
||||
<div style="padding: 0 10px;">日期: {{ renderData.createTime }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item span="4">
|
||||
<template slot="label"> 家长联系方式 </template>
|
||||
<div>
|
||||
<div style="display: flex;align-items: center;">
|
||||
<div>通讯地址</div>
|
||||
<div>{{ renderData.parentAddress + renderData.parentDetailAddress }}</div>
|
||||
</div>
|
||||
<div style="display: flex;align-items: center;">
|
||||
<div>联系电话</div>
|
||||
<div>{{ renderData.parentPhone }}</div>
|
||||
</div>
|
||||
</div>
|
||||
</el-descriptions-item>
|
||||
|
||||
<el-descriptions-item span="4">
|
||||
<template slot="label"> 保留学籍时间和编号 </template>
|
||||
{{ renderData.reserveNo }}
|
||||
</el-descriptions-item>
|
||||
</el-descriptions>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {
|
||||
getOutsideAccommodationApply,
|
||||
} from '@/api/dormitory/outsideAccommodation/outsideAccommodationApply'
|
||||
export default {
|
||||
props: {
|
||||
// props类型定义(Object类型+默认空对象)
|
||||
formData: {
|
||||
type: Object, // 正确的对象类型声明
|
||||
default: () => ({}) // 函数返回空对象(避免所有实例共享同一个对象)
|
||||
}
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
loading: false,
|
||||
currentId: null,
|
||||
// formData: {} // 注释/删除这一行
|
||||
detailData: {}, // 用独立变量存储接口返回的详情数据
|
||||
baseUrl: process.env.VUE_APP_BASE_API,
|
||||
}
|
||||
},
|
||||
// 计算属性判断优先级
|
||||
computed: {
|
||||
renderData() {
|
||||
// 规则:有接口数据(detailData有内容)则用detailData,否则用props的formData
|
||||
// Object.keys(this.detailData).length > 0 表示detailData非空
|
||||
return Object.keys(this.detailData).length > 0
|
||||
? this.detailData
|
||||
: this.formData;
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
// 监听路由参数变化,只要有新的 id 就更新
|
||||
"$route.query.id": {
|
||||
immediate: true, // 初始化时立即执行一次
|
||||
handler(newId, oldId) {
|
||||
if (newId) {
|
||||
this.loading = true;
|
||||
this.currentId = newId;
|
||||
// 调用接口加载数据
|
||||
getOutsideAccommodationApply(this.currentId)
|
||||
.then(res => {
|
||||
// 修正Promise语法(逗号改分号/换行)
|
||||
this.detailData = { ...res.data }; // 接口数据存入独立变量
|
||||
this.loading = false;
|
||||
console.log(this.detailData);
|
||||
})
|
||||
// 添加异常捕获,避免接口报错导致loading一直显示
|
||||
.catch(err => {
|
||||
this.loading = false;
|
||||
this.$message.error('加载详情失败:' + err.message);
|
||||
console.error(err);
|
||||
});
|
||||
} else {
|
||||
// 若 id 为空,清空数据
|
||||
this.currentId = null;
|
||||
this.detailData = {};
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
methods: {},
|
||||
created() { },
|
||||
mounted() { },
|
||||
destroyed() { }
|
||||
}
|
||||
</script>
|
||||
<style scoped>
|
||||
/* @import url(); 引入css类 */
|
||||
</style>
|
||||
@@ -0,0 +1,635 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px" :label-position="`left`">
|
||||
<el-form-item label="学号" prop="studentNo">
|
||||
<el-input v-model="queryParams.studentNo" placeholder="请输入学号" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学生姓名" prop="studentName">
|
||||
<el-input v-model="queryParams.studentName" placeholder="请输入学生姓名" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="性别" prop="gender">
|
||||
<el-input v-model="queryParams.gender" placeholder="请输入性别" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="出生年月" prop="birthDate">
|
||||
<el-date-picker clearable v-model="queryParams.birthDate" type="date" value-format="yyyy-MM-dd"
|
||||
placeholder="请选择出生年月">
|
||||
</el-date-picker>
|
||||
</el-form-item> -->
|
||||
<!-- <el-form-item label="学院名称" prop="deptName">
|
||||
<el-input v-model="queryParams.deptName" placeholder="请输入学院名称" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="专业名称" prop="majorName">
|
||||
<el-input v-model="queryParams.majorName" placeholder="请输入专业名称" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item> -->
|
||||
<el-form-item label="班级名称" prop="className">
|
||||
<el-input v-model="queryParams.className" placeholder="请输入班级名称" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="外宿开始时间" prop="startDate">
|
||||
<el-date-picker clearable v-model="queryParams.startDate" type="date" value-format="yyyy-MM-dd"
|
||||
placeholder="请选择外宿开始时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="外宿结束时间" prop="endDate">
|
||||
<el-date-picker clearable v-model="queryParams.endDate" type="date" value-format="yyyy-MM-dd"
|
||||
placeholder="请选择外宿结束时间">
|
||||
</el-date-picker>
|
||||
</el-form-item> -->
|
||||
<!-- <el-form-item label="是否有效" prop="isValid">
|
||||
<el-input v-model="queryParams.isValid" placeholder="请输入是否有效" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item> -->
|
||||
<el-form-item label="辅导员姓名" prop="teacherName" label-width="88px">
|
||||
<el-input v-model="queryParams.teacherName" placeholder="请输入辅导员姓名" clearable
|
||||
@keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<!-- <el-col :span="1.5">
|
||||
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
|
||||
v-hasPermi="['dormitory:outsideAccommodationApply:add']">新增</el-button>
|
||||
</el-col> -->
|
||||
<el-col :span="1.5">
|
||||
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="openForm"
|
||||
v-hasPermi="['dormitory:outsideAccommodationApply:add']">外宿申请</el-button>
|
||||
</el-col>
|
||||
<!-- <el-col :span="1.5">
|
||||
<el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
|
||||
v-hasPermi="['dormitory:outsideAccommodationApply:edit']">修改</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
|
||||
v-hasPermi="['dormitory:outsideAccommodationApply:remove']">删除</el-button>
|
||||
</el-col> -->
|
||||
<el-col :span="1.5">
|
||||
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
|
||||
v-hasPermi="['dormitory:outsideAccommodationApply:export']">导出</el-button>
|
||||
</el-col>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table v-loading="loading" :data="outsideAccommodationApplyList" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<el-table-column label="申请编号" align="center" prop="applyNo" />
|
||||
<el-table-column label="学号" align="center" prop="studentNo" />
|
||||
<el-table-column label="学生姓名" align="center" prop="studentName" />
|
||||
<el-table-column label="辅导员姓名" align="center" prop="teacherName" />
|
||||
<el-table-column label="性别" align="center" prop="gender">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.gender == 1">男</span>
|
||||
<span v-else>女</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="出生年月" align="center" prop="birthDate">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.birthDate, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="学院名称" align="center" prop="deptName" />
|
||||
<el-table-column label="专业名称" align="center" prop="majorName" />
|
||||
<el-table-column label="班级名称" align="center" prop="className" />
|
||||
<el-table-column label="原宿舍号" align="center" prop="originalDormitory" />
|
||||
<el-table-column label="住宿费缴纳状态" align="center" prop="accommodationFeeStatus">
|
||||
<template slot-scope="scope">
|
||||
<el-tag v-if="scope.row.accommodationFeeStatus == 0" type="info">未交</el-tag>
|
||||
<el-tag v-if="scope.row.accommodationFeeStatus == 1" type="success">已交</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="外宿原因" align="center" prop="applyReason">
|
||||
<template slot-scope="scope">
|
||||
<el-tooltip class="item" effect="dark" :content="scope.row.applyReason" placement="top">
|
||||
<div class="text-ellipsis">{{ scope.row.applyReason }}</div>
|
||||
</el-tooltip>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="外宿详细地址" align="center" prop="outsideAddress">
|
||||
<template slot-scope="scope">
|
||||
<el-tooltip class="item" effect="dark" :content="scope.row.address + ' ' + scope.row.outsideAddress" placement="top">
|
||||
<div class="text-ellipsis">{{ scope.row.address + " " + scope.row.outsideAddress }}</div>
|
||||
</el-tooltip>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="外宿开始时间" align="center" prop="startDate" width="100px">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.startDate, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="外宿结束时间" align="center" prop="endDate" width="100px">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.endDate, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="申请状态" align="center" prop="status" width="110px">
|
||||
<template slot-scope="scope">
|
||||
<el-tag v-if="scope.row.status == 0 && scope.row.status == ''" type="info">待提交</el-tag>
|
||||
<el-tag v-if="scope.row.status == 6" type="info">审批驳回</el-tag>
|
||||
<el-tag v-if="scope.row.status == 1">待辅导员审批</el-tag>
|
||||
<el-tag v-if="scope.row.status == 2">待学院书记审批</el-tag>
|
||||
<el-tag v-if="scope.row.status == 3">待学工处审批</el-tag>
|
||||
<el-tag v-if="scope.row.status == 4">待学校领导审批</el-tag>
|
||||
<el-tag v-if="scope.row.status == 5" type="success">审核通过</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="是否有效" align="center" prop="isValid">
|
||||
<template slot-scope="scope">
|
||||
<el-tag v-if="scope.row.isValid == 0" type="info">到期</el-tag>
|
||||
<el-tag v-if="scope.row.isValid == 1" type="success">有效</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['dormitory:outsideAccommodationApply:edit']" v-if="scope.row.status == 0 || scope.row.status == 6">修改</el-button>
|
||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
||||
v-hasPermi="['dormitory:outsideAccommodationApply:remove']" v-if="scope.row.status == 0">删除</el-button>
|
||||
<el-button v-if="scope.row.applyStatus != 0" size="mini" type="text" icon="el-icon-info"
|
||||
@click="detail(scope.row)">详情</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
||||
@pagination="getList" />
|
||||
|
||||
<!-- 添加或修改外宿申请对话框 -->
|
||||
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
<el-form-item label="申请编号" prop="applyNo">
|
||||
<el-input v-model="form.applyNo" placeholder="请输入申请编号" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学生ID" prop="studentId">
|
||||
<el-input v-model="form.studentId" placeholder="请输入学生ID" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学号" prop="studentNo">
|
||||
<el-input v-model="form.studentNo" placeholder="请输入学号" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学生姓名" prop="studentName">
|
||||
<el-input v-model="form.studentName" placeholder="请输入学生姓名" />
|
||||
</el-form-item>
|
||||
<el-form-item label="性别" prop="gender">
|
||||
<el-input v-model="form.gender" placeholder="请输入性别" />
|
||||
</el-form-item>
|
||||
<el-form-item label="出生年月" prop="birthDate">
|
||||
<el-date-picker clearable v-model="form.birthDate" type="date" value-format="yyyy-MM-dd"
|
||||
placeholder="请选择出生年月">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="学院ID" prop="deptId">
|
||||
<el-input v-model="form.deptId" placeholder="请输入学院ID" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学院名称" prop="deptName">
|
||||
<el-input v-model="form.deptName" placeholder="请输入学院名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="专业ID" prop="majorId">
|
||||
<el-input v-model="form.majorId" placeholder="请输入专业ID" />
|
||||
</el-form-item>
|
||||
<el-form-item label="专业名称" prop="majorName">
|
||||
<el-input v-model="form.majorName" placeholder="请输入专业名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="班级ID" prop="classId">
|
||||
<el-input v-model="form.classId" placeholder="请输入班级ID" />
|
||||
</el-form-item>
|
||||
<el-form-item label="班级名称" prop="className">
|
||||
<el-input v-model="form.className" placeholder="请输入班级名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="原宿舍号" prop="originalDormitory">
|
||||
<el-input v-model="form.originalDormitory" placeholder="请输入原宿舍号" />
|
||||
</el-form-item>
|
||||
<el-form-item label="外宿原因" prop="applyReason">
|
||||
<el-input v-model="form.applyReason" type="textarea" placeholder="请输入内容" />
|
||||
</el-form-item>
|
||||
<el-form-item label="外宿详细地址" prop="outsideAddress">
|
||||
<el-input v-model="form.outsideAddress" placeholder="请输入外宿详细地址" />
|
||||
</el-form-item>
|
||||
<el-form-item label="外宿地址-省" prop="province">
|
||||
<el-input v-model="form.province" placeholder="请输入外宿地址-省" />
|
||||
</el-form-item>
|
||||
<el-form-item label="外宿地址-市" prop="city">
|
||||
<el-input v-model="form.city" placeholder="请输入外宿地址-市" />
|
||||
</el-form-item>
|
||||
<el-form-item label="外宿地址-区/县" prop="district">
|
||||
<el-input v-model="form.district" placeholder="请输入外宿地址-区/县" />
|
||||
</el-form-item>
|
||||
<el-form-item label="外宿紧急联系人" prop="emergencyContact">
|
||||
<el-input v-model="form.emergencyContact" placeholder="请输入外宿紧急联系人" />
|
||||
</el-form-item>
|
||||
<el-form-item label="紧急联系人电话" prop="emergencyPhone">
|
||||
<el-input v-model="form.emergencyPhone" placeholder="请输入紧急联系人电话" />
|
||||
</el-form-item>
|
||||
<el-form-item label="家长意见" prop="parentOpinion">
|
||||
<el-input v-model="form.parentOpinion" placeholder="请输入家长意见" />
|
||||
</el-form-item>
|
||||
<el-form-item label="家长签字附件URL" prop="parentSignAttachment">
|
||||
<el-input v-model="form.parentSignAttachment" placeholder="请输入家长签字附件URL" />
|
||||
</el-form-item>
|
||||
<el-form-item label="家长联系电话" prop="parentPhone">
|
||||
<el-input v-model="form.parentPhone" placeholder="请输入家长联系电话" />
|
||||
</el-form-item>
|
||||
<el-form-item label="家长通讯地址-省" prop="parentProvince">
|
||||
<el-input v-model="form.parentProvince" placeholder="请输入家长通讯地址-省" />
|
||||
</el-form-item>
|
||||
<el-form-item label="家长通讯地址-市" prop="parentCity">
|
||||
<el-input v-model="form.parentCity" placeholder="请输入家长通讯地址-市" />
|
||||
</el-form-item>
|
||||
<el-form-item label="家长通讯地址-区/县" prop="parentDistrict">
|
||||
<el-input v-model="form.parentDistrict" placeholder="请输入家长通讯地址-区/县" />
|
||||
</el-form-item>
|
||||
<el-form-item label="家长通讯地址-详细地址" prop="parentDetailAddress">
|
||||
<el-input v-model="form.parentDetailAddress" placeholder="请输入家长通讯地址-详细地址" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学生承诺电子签URL" prop="studentPromiseSign">
|
||||
<el-input v-model="form.studentPromiseSign" placeholder="请输入学生承诺电子签URL" />
|
||||
</el-form-item>
|
||||
<el-form-item label="承诺签署日期" prop="promiseDate">
|
||||
<el-date-picker clearable v-model="form.promiseDate" type="date" value-format="yyyy-MM-dd"
|
||||
placeholder="请选择承诺签署日期">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="外宿开始时间" prop="startDate">
|
||||
<el-date-picker clearable v-model="form.startDate" type="date" value-format="yyyy-MM-dd"
|
||||
placeholder="请选择外宿开始时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="外宿结束时间" prop="endDate">
|
||||
<el-date-picker clearable v-model="form.endDate" type="date" value-format="yyyy-MM-dd"
|
||||
placeholder="请选择外宿结束时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="驳回原因" prop="rejectReason">
|
||||
<el-input v-model="form.rejectReason" type="textarea" placeholder="请输入内容" />
|
||||
</el-form-item>
|
||||
<el-form-item label="是否有效" prop="isValid">
|
||||
<el-input v-model="form.isValid" placeholder="请输入是否有效" />
|
||||
</el-form-item>
|
||||
<el-form-item label="辅导员姓名" prop="teacherName">
|
||||
<el-input v-model="form.teacherName" placeholder="请输入辅导员姓名" />
|
||||
</el-form-item>
|
||||
<el-form-item label="附件id" prop="affixId">
|
||||
<el-input v-model="form.affixId" placeholder="请输入附件id" />
|
||||
</el-form-item>
|
||||
<el-form-item label="流程部署编号" prop="deployId">
|
||||
<el-input v-model="form.deployId" placeholder="请输入流程部署编号" />
|
||||
</el-form-item>
|
||||
<el-form-item label="Flowable流程实例ID" prop="processInstanceId">
|
||||
<el-input v-model="form.processInstanceId" placeholder="请输入Flowable流程实例ID" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { listOutsideAccommodationApply, getOutsideAccommodationApply, delOutsideAccommodationApply, addOutsideAccommodationApply, updateOutsideAccommodationApply } from "@/api/dormitory/outsideAccommodation/outsideAccommodationApply";
|
||||
|
||||
export default {
|
||||
name: "OutsideAccommodationApply",
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 选中数组
|
||||
ids: [],
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 外宿申请表格数据
|
||||
outsideAccommodationApplyList: [],
|
||||
// 弹出层标题
|
||||
title: "",
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
applyNo: null,
|
||||
studentId: null,
|
||||
studentNo: null,
|
||||
studentName: null,
|
||||
gender: null,
|
||||
birthDate: null,
|
||||
deptId: null,
|
||||
deptName: null,
|
||||
majorId: null,
|
||||
majorName: null,
|
||||
classId: null,
|
||||
className: null,
|
||||
originalDormitory: null,
|
||||
accommodationFeeStatus: null,
|
||||
applyReason: null,
|
||||
outsideAddress: null,
|
||||
province: null,
|
||||
city: null,
|
||||
district: null,
|
||||
emergencyContact: null,
|
||||
emergencyPhone: null,
|
||||
parentOpinion: null,
|
||||
parentSignAttachment: null,
|
||||
parentPhone: null,
|
||||
parentProvince: null,
|
||||
parentCity: null,
|
||||
parentDistrict: null,
|
||||
parentDetailAddress: null,
|
||||
studentPromiseSign: null,
|
||||
promiseDate: null,
|
||||
startDate: null,
|
||||
endDate: null,
|
||||
status: null,
|
||||
rejectReason: null,
|
||||
isValid: null,
|
||||
teacherName: null,
|
||||
affixId: null,
|
||||
deployId: null,
|
||||
processInstanceId: null
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
// 表单校验
|
||||
rules: {
|
||||
applyNo: [
|
||||
{ required: true, message: "申请编号不能为空", trigger: "blur" }
|
||||
],
|
||||
studentId: [
|
||||
{ required: true, message: "学生ID不能为空", trigger: "blur" }
|
||||
],
|
||||
studentNo: [
|
||||
{ required: true, message: "学号不能为空", trigger: "blur" }
|
||||
],
|
||||
studentName: [
|
||||
{ required: true, message: "学生姓名不能为空", trigger: "blur" }
|
||||
],
|
||||
deptId: [
|
||||
{ required: true, message: "学院ID不能为空", trigger: "blur" }
|
||||
],
|
||||
deptName: [
|
||||
{ required: true, message: "学院名称不能为空", trigger: "blur" }
|
||||
],
|
||||
majorId: [
|
||||
{ required: true, message: "专业ID不能为空", trigger: "blur" }
|
||||
],
|
||||
majorName: [
|
||||
{ required: true, message: "专业名称不能为空", trigger: "blur" }
|
||||
],
|
||||
classId: [
|
||||
{ required: true, message: "班级ID不能为空", trigger: "blur" }
|
||||
],
|
||||
className: [
|
||||
{ required: true, message: "班级名称不能为空", trigger: "blur" }
|
||||
],
|
||||
originalDormitory: [
|
||||
{ required: true, message: "原宿舍号不能为空", trigger: "blur" }
|
||||
],
|
||||
accommodationFeeStatus: [
|
||||
{ required: true, message: "住宿费缴纳状态不能为空", trigger: "change" }
|
||||
],
|
||||
applyReason: [
|
||||
{ required: true, message: "外宿原因不能为空", trigger: "blur" }
|
||||
],
|
||||
outsideAddress: [
|
||||
{ required: true, message: "外宿详细地址不能为空", trigger: "blur" }
|
||||
],
|
||||
province: [
|
||||
{ required: true, message: "外宿地址-省不能为空", trigger: "blur" }
|
||||
],
|
||||
city: [
|
||||
{ required: true, message: "外宿地址-市不能为空", trigger: "blur" }
|
||||
],
|
||||
district: [
|
||||
{ required: true, message: "外宿地址-区/县不能为空", trigger: "blur" }
|
||||
],
|
||||
emergencyContact: [
|
||||
{ required: true, message: "外宿紧急联系人不能为空", trigger: "blur" }
|
||||
],
|
||||
emergencyPhone: [
|
||||
{ required: true, message: "紧急联系人电话不能为空", trigger: "blur" }
|
||||
],
|
||||
parentOpinion: [
|
||||
{ required: true, message: "家长意见不能为空", trigger: "blur" }
|
||||
],
|
||||
parentSignAttachment: [
|
||||
{ required: true, message: "家长签字附件URL不能为空", trigger: "blur" }
|
||||
],
|
||||
parentPhone: [
|
||||
{ required: true, message: "家长联系电话不能为空", trigger: "blur" }
|
||||
],
|
||||
parentProvince: [
|
||||
{ required: true, message: "家长通讯地址-省不能为空", trigger: "blur" }
|
||||
],
|
||||
parentCity: [
|
||||
{ required: true, message: "家长通讯地址-市不能为空", trigger: "blur" }
|
||||
],
|
||||
parentDistrict: [
|
||||
{ required: true, message: "家长通讯地址-区/县不能为空", trigger: "blur" }
|
||||
],
|
||||
parentDetailAddress: [
|
||||
{ required: true, message: "家长通讯地址-详细地址不能为空", trigger: "blur" }
|
||||
],
|
||||
studentPromiseSign: [
|
||||
{ required: true, message: "学生承诺电子签URL不能为空", trigger: "blur" }
|
||||
],
|
||||
promiseDate: [
|
||||
{ required: true, message: "承诺签署日期不能为空", trigger: "blur" }
|
||||
],
|
||||
startDate: [
|
||||
{ required: true, message: "外宿开始时间不能为空", trigger: "blur" }
|
||||
],
|
||||
endDate: [
|
||||
{ required: true, message: "外宿结束时间不能为空", trigger: "blur" }
|
||||
],
|
||||
status: [
|
||||
{ required: true, message: "申请状态不能为空", trigger: "change" }
|
||||
],
|
||||
createTime: [
|
||||
{ required: true, message: "创建时间不能为空", trigger: "blur" }
|
||||
],
|
||||
createBy: [
|
||||
{ required: true, message: "创建人不能为空", trigger: "blur" }
|
||||
],
|
||||
updateTime: [
|
||||
{ required: true, message: "更新时间不能为空", trigger: "blur" }
|
||||
],
|
||||
isValid: [
|
||||
{ required: true, message: "是否有效不能为空", trigger: "blur" }
|
||||
],
|
||||
teacherName: [
|
||||
{ required: true, message: "辅导员姓名不能为空", trigger: "blur" }
|
||||
],
|
||||
}
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
methods: {
|
||||
/** 查询外宿申请列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
listOutsideAccommodationApply(this.queryParams).then(response => {
|
||||
this.outsideAccommodationApplyList = response.rows;
|
||||
this.total = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
},
|
||||
// 取消按钮
|
||||
cancel() {
|
||||
this.open = false;
|
||||
this.reset();
|
||||
},
|
||||
// 表单重置
|
||||
reset() {
|
||||
this.form = {
|
||||
id: null,
|
||||
applyNo: null,
|
||||
studentId: null,
|
||||
studentNo: null,
|
||||
studentName: null,
|
||||
gender: null,
|
||||
birthDate: null,
|
||||
deptId: null,
|
||||
deptName: null,
|
||||
majorId: null,
|
||||
majorName: null,
|
||||
classId: null,
|
||||
className: null,
|
||||
originalDormitory: null,
|
||||
accommodationFeeStatus: null,
|
||||
applyReason: null,
|
||||
outsideAddress: null,
|
||||
province: null,
|
||||
city: null,
|
||||
district: null,
|
||||
emergencyContact: null,
|
||||
emergencyPhone: null,
|
||||
parentOpinion: null,
|
||||
parentSignAttachment: null,
|
||||
parentPhone: null,
|
||||
parentProvince: null,
|
||||
parentCity: null,
|
||||
parentDistrict: null,
|
||||
parentDetailAddress: null,
|
||||
studentPromiseSign: null,
|
||||
promiseDate: null,
|
||||
startDate: null,
|
||||
endDate: null,
|
||||
status: null,
|
||||
rejectReason: null,
|
||||
createTime: null,
|
||||
createBy: null,
|
||||
updateTime: null,
|
||||
updateBy: null,
|
||||
isValid: null,
|
||||
teacherName: null,
|
||||
affixId: null,
|
||||
deployId: null,
|
||||
processInstanceId: null
|
||||
};
|
||||
this.resetForm("form");
|
||||
},
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.ids = selection.map(item => item.id)
|
||||
this.single = selection.length !== 1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
/** 新增按钮操作 */
|
||||
handleAdd() {
|
||||
this.reset();
|
||||
this.open = true;
|
||||
this.title = "添加外宿申请";
|
||||
},
|
||||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.reset();
|
||||
// const id = row.id || this.ids
|
||||
// getOutsideAccommodationApply(id).then(response => {
|
||||
// this.form = response.data;
|
||||
// this.open = true;
|
||||
// this.title = "修改外宿申请";
|
||||
// });
|
||||
this.$router.push({
|
||||
path: "/dormitory/outsideAccommodation/applicationForm",
|
||||
query: { id: row.id } // 将 row.id 放在 query 中
|
||||
});
|
||||
},
|
||||
/** 提交按钮 */
|
||||
submitForm() {
|
||||
this.$refs["form"].validate(valid => {
|
||||
if (valid) {
|
||||
if (this.form.id != null) {
|
||||
updateOutsideAccommodationApply(this.form).then(response => {
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
} else {
|
||||
addOutsideAccommodationApply(this.form).then(response => {
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
const ids = row.id || this.ids;
|
||||
this.$modal.confirm('是否确认删除外宿申请编号为"' + ids + '"的数据项?').then(function () {
|
||||
return delOutsideAccommodationApply(ids);
|
||||
}).then(() => {
|
||||
this.getList();
|
||||
this.$modal.msgSuccess("删除成功");
|
||||
}).catch(() => { });
|
||||
},
|
||||
/** 导出按钮操作 */
|
||||
handleExport() {
|
||||
this.download('dormitory/outsideAccommodationApply/export', {
|
||||
...this.queryParams
|
||||
}, `outsideAccommodationApply_${new Date().getTime()}.xlsx`)
|
||||
},
|
||||
// 跳转申请表
|
||||
openForm() {
|
||||
this.$router.push("/dormitory/outsideAccommodation/applicationForm");
|
||||
},
|
||||
detail(row) {
|
||||
this.$router.push({
|
||||
path: "/dormitory/outsideAccommodation/detailApply",
|
||||
query: { id: row.id } // 将 row.id 放在 query 中
|
||||
});
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
|
||||
<style scoped>
|
||||
.text-ellipsis {
|
||||
white-space: nowrap;
|
||||
/* 防止文本换行 */
|
||||
overflow: hidden;
|
||||
/* 隐藏溢出的内容 */
|
||||
text-overflow: ellipsis;
|
||||
/* 显示省略号 */
|
||||
}
|
||||
</style>
|
||||
@@ -0,0 +1,325 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||
<el-form-item label="申请编号" prop="applyNo">
|
||||
<el-input v-model="queryParams.applyNo" placeholder="请输入申请编号" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="审批节点" prop="approvalNode">
|
||||
<el-input v-model="queryParams.approvalNode" placeholder="请输入审批节点" clearable
|
||||
@keyup.enter.native="handleQuery" />
|
||||
</el-form-item> -->
|
||||
<el-form-item label="审批人" prop="approverName">
|
||||
<el-input v-model="queryParams.approverName" placeholder="请输入审批人姓名" clearable
|
||||
@keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="审批时间" prop="approvalTime">
|
||||
<el-date-picker clearable v-model="queryParams.approvalTime" type="date" value-format="yyyy-MM-dd"
|
||||
placeholder="请选择审批时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="学生姓名" prop="studentName">
|
||||
<el-input v-model="queryParams.studentName" placeholder="请输入学生姓名" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学生学号" prop="studentNo">
|
||||
<el-input v-model="queryParams.studentNo" placeholder="请输入学生学号" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<el-col :span="1.5">
|
||||
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
|
||||
v-hasPermi="['dormitory:outsideAccommodationApproval:add']">新增</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
|
||||
v-hasPermi="['dormitory:outsideAccommodationApproval:edit']">修改</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
|
||||
v-hasPermi="['dormitory:outsideAccommodationApproval:remove']">删除</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
|
||||
v-hasPermi="['dormitory:outsideAccommodationApproval:export']">导出</el-button>
|
||||
</el-col>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table v-loading="loading" :data="outsideAccommodationApprovalList" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<!-- <el-table-column label="主键ID" align="center" prop="id" /> -->
|
||||
<!-- <el-table-column label="外宿申请ID" align="center" prop="applyId" /> -->
|
||||
<el-table-column label="学生姓名" align="center" prop="studentName" />
|
||||
<el-table-column label="学生学号" align="center" prop="studentNo" />
|
||||
<el-table-column label="申请编号" align="center" prop="applyNo" />
|
||||
<el-table-column label="审批节点" align="center" prop="approvalNode" />
|
||||
<!-- <el-table-column label="审批人ID" align="center" prop="approverId" /> -->
|
||||
<el-table-column label="审批人姓名" align="center" prop="approverName" />
|
||||
<!-- <el-table-column label="审批人角色" align="center" prop="approverRole" /> -->
|
||||
<el-table-column label="审批意见" align="center" prop="approvalOpinion" />
|
||||
<el-table-column label="审批结果" align="center" prop="approvalResult">
|
||||
<template slot-scope="scope">
|
||||
<el-tag v-if="scope.row.approvalResult == 1" type="success">通过</el-tag>
|
||||
<el-tag v-else type="danger">驳回</el-tag>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="审批时间" align="center" prop="approvalTime">
|
||||
<template slot-scope="scope">
|
||||
<span>{{ parseTime(scope.row.approvalTime, '{y}-{m}-{d}') }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<!-- <el-table-column label="流程实例ID" align="center" prop="processInstanceId" /> -->
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['dormitory:outsideAccommodationApproval:edit']">修改</el-button>
|
||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
||||
v-hasPermi="['dormitory:outsideAccommodationApproval:remove']">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
||||
@pagination="getList" />
|
||||
|
||||
<!-- 添加或修改外宿申请审批记录对话框 -->
|
||||
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
<el-form-item label="外宿申请ID" prop="applyId">
|
||||
<el-input v-model="form.applyId" placeholder="请输入外宿申请ID" />
|
||||
</el-form-item>
|
||||
<el-form-item label="申请编号" prop="applyNo">
|
||||
<el-input v-model="form.applyNo" placeholder="请输入申请编号" />
|
||||
</el-form-item>
|
||||
<el-form-item label="审批节点" prop="approvalNode">
|
||||
<el-input v-model="form.approvalNode" placeholder="请输入审批节点" />
|
||||
</el-form-item>
|
||||
<el-form-item label="审批人ID" prop="approverId">
|
||||
<el-input v-model="form.approverId" placeholder="请输入审批人ID" />
|
||||
</el-form-item>
|
||||
<el-form-item label="审批人姓名" prop="approverName">
|
||||
<el-input v-model="form.approverName" placeholder="请输入审批人姓名" />
|
||||
</el-form-item>
|
||||
<el-form-item label="审批人角色" prop="approverRole">
|
||||
<el-input v-model="form.approverRole" placeholder="请输入审批人角色" />
|
||||
</el-form-item>
|
||||
<el-form-item label="审批意见" prop="approvalOpinion">
|
||||
<el-input v-model="form.approvalOpinion" type="textarea" placeholder="请输入内容" />
|
||||
</el-form-item>
|
||||
<el-form-item label="审批结果" prop="approvalResult">
|
||||
<el-input v-model="form.approvalResult" placeholder="请输入审批结果" />
|
||||
</el-form-item>
|
||||
<el-form-item label="审批时间" prop="approvalTime">
|
||||
<el-date-picker clearable v-model="form.approvalTime" type="date" value-format="yyyy-MM-dd"
|
||||
placeholder="请选择审批时间">
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
<el-form-item label="流程实例ID" prop="processInstanceId">
|
||||
<el-input v-model="form.processInstanceId" placeholder="请输入流程实例ID" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学生姓名" prop="studentName">
|
||||
<el-input v-model="form.studentName" placeholder="请输入学生姓名" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学生学号" prop="studentNo">
|
||||
<el-input v-model="form.studentNo" placeholder="请输入学生学号" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { listOutsideAccommodationApproval, getOutsideAccommodationApproval, delOutsideAccommodationApproval, addOutsideAccommodationApproval, updateOutsideAccommodationApproval } from "@/api/dormitory/outsideAccommodation/outsideAccommodationApproval";
|
||||
|
||||
export default {
|
||||
name: "OutsideAccommodationApproval",
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 选中数组
|
||||
ids: [],
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 外宿申请审批记录表格数据
|
||||
outsideAccommodationApprovalList: [],
|
||||
// 弹出层标题
|
||||
title: "",
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
applyId: null,
|
||||
applyNo: null,
|
||||
approvalNode: null,
|
||||
approverId: null,
|
||||
approverName: null,
|
||||
approverRole: null,
|
||||
approvalOpinion: null,
|
||||
approvalResult: null,
|
||||
approvalTime: null,
|
||||
processInstanceId: null,
|
||||
studentName: null,
|
||||
studentNo: null
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
// 表单校验
|
||||
rules: {
|
||||
applyId: [
|
||||
{ required: true, message: "外宿申请ID不能为空", trigger: "blur" }
|
||||
],
|
||||
applyNo: [
|
||||
{ required: true, message: "申请编号不能为空", trigger: "blur" }
|
||||
],
|
||||
approvalNode: [
|
||||
{ required: true, message: "审批节点不能为空", trigger: "blur" }
|
||||
],
|
||||
approverId: [
|
||||
{ required: true, message: "审批人ID不能为空", trigger: "blur" }
|
||||
],
|
||||
approverName: [
|
||||
{ required: true, message: "审批人姓名不能为空", trigger: "blur" }
|
||||
],
|
||||
approverRole: [
|
||||
{ required: true, message: "审批人角色不能为空", trigger: "blur" }
|
||||
],
|
||||
approvalResult: [
|
||||
{ required: true, message: "审批结果不能为空", trigger: "blur" }
|
||||
],
|
||||
approvalTime: [
|
||||
{ required: true, message: "审批时间不能为空", trigger: "blur" }
|
||||
],
|
||||
studentName: [
|
||||
{ required: true, message: "学生姓名不能为空", trigger: "blur" }
|
||||
],
|
||||
studentNo: [
|
||||
{ required: true, message: "学生学号不能为空", trigger: "blur" }
|
||||
]
|
||||
}
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
methods: {
|
||||
/** 查询外宿申请审批记录列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
listOutsideAccommodationApproval(this.queryParams).then(response => {
|
||||
this.outsideAccommodationApprovalList = response.rows;
|
||||
this.total = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
},
|
||||
// 取消按钮
|
||||
cancel() {
|
||||
this.open = false;
|
||||
this.reset();
|
||||
},
|
||||
// 表单重置
|
||||
reset() {
|
||||
this.form = {
|
||||
id: null,
|
||||
applyId: null,
|
||||
applyNo: null,
|
||||
approvalNode: null,
|
||||
approverId: null,
|
||||
approverName: null,
|
||||
approverRole: null,
|
||||
approvalOpinion: null,
|
||||
approvalResult: null,
|
||||
approvalTime: null,
|
||||
processInstanceId: null,
|
||||
studentName: null,
|
||||
studentNo: null
|
||||
};
|
||||
this.resetForm("form");
|
||||
},
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.ids = selection.map(item => item.id)
|
||||
this.single = selection.length !== 1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
/** 新增按钮操作 */
|
||||
handleAdd() {
|
||||
this.reset();
|
||||
this.open = true;
|
||||
this.title = "添加外宿申请审批记录";
|
||||
},
|
||||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.reset();
|
||||
const id = row.id || this.ids
|
||||
getOutsideAccommodationApproval(id).then(response => {
|
||||
this.form = response.data;
|
||||
this.open = true;
|
||||
this.title = "修改外宿申请审批记录";
|
||||
});
|
||||
},
|
||||
/** 提交按钮 */
|
||||
submitForm() {
|
||||
this.$refs["form"].validate(valid => {
|
||||
if (valid) {
|
||||
if (this.form.id != null) {
|
||||
updateOutsideAccommodationApproval(this.form).then(response => {
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
} else {
|
||||
addOutsideAccommodationApproval(this.form).then(response => {
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
const ids = row.id || this.ids;
|
||||
this.$modal.confirm('是否确认删除外宿申请审批记录编号为"' + ids + '"的数据项?').then(function () {
|
||||
return delOutsideAccommodationApproval(ids);
|
||||
}).then(() => {
|
||||
this.getList();
|
||||
this.$modal.msgSuccess("删除成功");
|
||||
}).catch(() => { });
|
||||
},
|
||||
/** 导出按钮操作 */
|
||||
handleExport() {
|
||||
this.download('dormitory/outsideAccommodationApproval/export', {
|
||||
...this.queryParams
|
||||
}, `outsideAccommodationApproval_${new Date().getTime()}.xlsx`)
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
@@ -0,0 +1,270 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
|
||||
<el-form-item label="附件名称" prop="attachmentName">
|
||||
<el-input v-model="queryParams.attachmentName" placeholder="请输入附件名称" clearable
|
||||
@keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学生姓名" prop="studentName">
|
||||
<el-input v-model="queryParams.studentName" placeholder="请输入学生姓名" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学生学号" prop="studentNo">
|
||||
<el-input v-model="queryParams.studentNo" placeholder="请输入学生学号" clearable @keyup.enter.native="handleQuery" />
|
||||
</el-form-item>
|
||||
<el-form-item>
|
||||
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
|
||||
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
|
||||
<el-row :gutter="10" class="mb8">
|
||||
<el-col :span="1.5">
|
||||
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
|
||||
v-hasPermi="['dormitory:outsideAccommodationAttachment:add']">新增</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
|
||||
v-hasPermi="['dormitory:outsideAccommodationAttachment:edit']">修改</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
|
||||
v-hasPermi="['dormitory:outsideAccommodationAttachment:remove']">删除</el-button>
|
||||
</el-col>
|
||||
<el-col :span="1.5">
|
||||
<el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
|
||||
v-hasPermi="['dormitory:outsideAccommodationAttachment:export']">导出</el-button>
|
||||
</el-col>
|
||||
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
|
||||
</el-row>
|
||||
|
||||
<el-table v-loading="loading" :data="outsideAccommodationAttachmentList" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center" />
|
||||
<!-- <el-table-column label="主键ID" align="center" prop="id" /> -->
|
||||
<!-- <el-table-column label="外宿申请ID" align="center" prop="applyId" /> -->
|
||||
<el-table-column label="学生姓名" align="center" prop="studentName" />
|
||||
<el-table-column label="学生学号" align="center" prop="studentNo" />
|
||||
<el-table-column label="附件名称" align="center" prop="attachmentName" />
|
||||
<el-table-column label="附件存储URL" align="center" prop="attachmentUrl" />
|
||||
<el-table-column label="附件类型" align="center" prop="attachmentType" />
|
||||
<el-table-column label="附件大小" align="center" prop="fileSize" />
|
||||
<el-table-column label="附件后缀" align="center" prop="fileSuffix" />
|
||||
<el-table-column label="流程实例ID" align="center" prop="processInstanceId" />
|
||||
<el-table-column label="操作" align="center" class-name="small-padding fixed-width">
|
||||
<template slot-scope="scope">
|
||||
<el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
|
||||
v-hasPermi="['dormitory:outsideAccommodationAttachment:edit']">修改</el-button>
|
||||
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
|
||||
v-hasPermi="['dormitory:outsideAccommodationAttachment:remove']">删除</el-button>
|
||||
</template>
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
|
||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
|
||||
@pagination="getList" />
|
||||
|
||||
<!-- 添加或修改外宿申请附件对话框 -->
|
||||
<el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
<el-form-item label="外宿申请ID" prop="applyId">
|
||||
<el-input v-model="form.applyId" placeholder="请输入外宿申请ID" />
|
||||
</el-form-item>
|
||||
<el-form-item label="附件名称" prop="attachmentName">
|
||||
<el-input v-model="form.attachmentName" placeholder="请输入附件名称" />
|
||||
</el-form-item>
|
||||
<el-form-item label="附件存储URL" prop="attachmentUrl">
|
||||
<el-input v-model="form.attachmentUrl" placeholder="请输入附件存储URL" />
|
||||
</el-form-item>
|
||||
<el-form-item label="附件大小" prop="fileSize">
|
||||
<el-input v-model="form.fileSize" placeholder="请输入附件大小" />
|
||||
</el-form-item>
|
||||
<el-form-item label="附件后缀" prop="fileSuffix">
|
||||
<el-input v-model="form.fileSuffix" placeholder="请输入附件后缀" />
|
||||
</el-form-item>
|
||||
<el-form-item label="流程实例ID" prop="processInstanceId">
|
||||
<el-input v-model="form.processInstanceId" placeholder="请输入流程实例ID" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学生姓名" prop="studentName">
|
||||
<el-input v-model="form.studentName" placeholder="请输入学生姓名" />
|
||||
</el-form-item>
|
||||
<el-form-item label="学生学号" prop="studentNo">
|
||||
<el-input v-model="form.studentNo" placeholder="请输入学生学号" />
|
||||
</el-form-item>
|
||||
</el-form>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button type="primary" @click="submitForm">确 定</el-button>
|
||||
<el-button @click="cancel">取 消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { listOutsideAccommodationAttachment, getOutsideAccommodationAttachment, delOutsideAccommodationAttachment, addOutsideAccommodationAttachment, updateOutsideAccommodationAttachment } from "@/api/dormitory/outsideAccommodation/outsideAccommodationAttachment";
|
||||
|
||||
export default {
|
||||
name: "OutsideAccommodationAttachment",
|
||||
data() {
|
||||
return {
|
||||
// 遮罩层
|
||||
loading: true,
|
||||
// 选中数组
|
||||
ids: [],
|
||||
// 非单个禁用
|
||||
single: true,
|
||||
// 非多个禁用
|
||||
multiple: true,
|
||||
// 显示搜索条件
|
||||
showSearch: true,
|
||||
// 总条数
|
||||
total: 0,
|
||||
// 外宿申请附件表格数据
|
||||
outsideAccommodationAttachmentList: [],
|
||||
// 弹出层标题
|
||||
title: "",
|
||||
// 是否显示弹出层
|
||||
open: false,
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
pageSize: 10,
|
||||
applyId: null,
|
||||
attachmentName: null,
|
||||
attachmentUrl: null,
|
||||
attachmentType: null,
|
||||
fileSize: null,
|
||||
fileSuffix: null,
|
||||
processInstanceId: null,
|
||||
studentName: null,
|
||||
studentNo: null
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
// 表单校验
|
||||
rules: {
|
||||
applyId: [
|
||||
{ required: true, message: "外宿申请ID不能为空", trigger: "blur" }
|
||||
],
|
||||
attachmentName: [
|
||||
{ required: true, message: "附件名称不能为空", trigger: "blur" }
|
||||
],
|
||||
attachmentUrl: [
|
||||
{ required: true, message: "附件存储URL不能为空", trigger: "blur" }
|
||||
],
|
||||
fileSuffix: [
|
||||
{ required: true, message: "附件后缀不能为空", trigger: "blur" }
|
||||
],
|
||||
studentName: [
|
||||
{ required: true, message: "学生姓名不能为空", trigger: "blur" }
|
||||
],
|
||||
studentNo: [
|
||||
{ required: true, message: "学生学号不能为空", trigger: "blur" }
|
||||
]
|
||||
}
|
||||
};
|
||||
},
|
||||
created() {
|
||||
this.getList();
|
||||
},
|
||||
methods: {
|
||||
/** 查询外宿申请附件列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
listOutsideAccommodationAttachment(this.queryParams).then(response => {
|
||||
this.outsideAccommodationAttachmentList = response.rows;
|
||||
this.total = response.total;
|
||||
this.loading = false;
|
||||
});
|
||||
},
|
||||
// 取消按钮
|
||||
cancel() {
|
||||
this.open = false;
|
||||
this.reset();
|
||||
},
|
||||
// 表单重置
|
||||
reset() {
|
||||
this.form = {
|
||||
id: null,
|
||||
applyId: null,
|
||||
attachmentName: null,
|
||||
attachmentUrl: null,
|
||||
attachmentType: null,
|
||||
fileSize: null,
|
||||
fileSuffix: null,
|
||||
createTime: null,
|
||||
processInstanceId: null,
|
||||
studentName: null,
|
||||
studentNo: null
|
||||
};
|
||||
this.resetForm("form");
|
||||
},
|
||||
/** 搜索按钮操作 */
|
||||
handleQuery() {
|
||||
this.queryParams.pageNum = 1;
|
||||
this.getList();
|
||||
},
|
||||
/** 重置按钮操作 */
|
||||
resetQuery() {
|
||||
this.resetForm("queryForm");
|
||||
this.handleQuery();
|
||||
},
|
||||
// 多选框选中数据
|
||||
handleSelectionChange(selection) {
|
||||
this.ids = selection.map(item => item.id)
|
||||
this.single = selection.length !== 1
|
||||
this.multiple = !selection.length
|
||||
},
|
||||
/** 新增按钮操作 */
|
||||
handleAdd() {
|
||||
this.reset();
|
||||
this.open = true;
|
||||
this.title = "添加外宿申请附件";
|
||||
},
|
||||
/** 修改按钮操作 */
|
||||
handleUpdate(row) {
|
||||
this.reset();
|
||||
const id = row.id || this.ids
|
||||
getOutsideAccommodationAttachment(id).then(response => {
|
||||
this.form = response.data;
|
||||
this.open = true;
|
||||
this.title = "修改外宿申请附件";
|
||||
});
|
||||
},
|
||||
/** 提交按钮 */
|
||||
submitForm() {
|
||||
this.$refs["form"].validate(valid => {
|
||||
if (valid) {
|
||||
if (this.form.id != null) {
|
||||
updateOutsideAccommodationAttachment(this.form).then(response => {
|
||||
this.$modal.msgSuccess("修改成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
} else {
|
||||
addOutsideAccommodationAttachment(this.form).then(response => {
|
||||
this.$modal.msgSuccess("新增成功");
|
||||
this.open = false;
|
||||
this.getList();
|
||||
});
|
||||
}
|
||||
}
|
||||
});
|
||||
},
|
||||
/** 删除按钮操作 */
|
||||
handleDelete(row) {
|
||||
const ids = row.id || this.ids;
|
||||
this.$modal.confirm('是否确认删除外宿申请附件编号为"' + ids + '"的数据项?').then(function () {
|
||||
return delOutsideAccommodationAttachment(ids);
|
||||
}).then(() => {
|
||||
this.getList();
|
||||
this.$modal.msgSuccess("删除成功");
|
||||
}).catch(() => { });
|
||||
},
|
||||
/** 导出按钮操作 */
|
||||
handleExport() {
|
||||
this.download('dormitory/outsideAccommodationAttachment/export', {
|
||||
...this.queryParams
|
||||
}, `outsideAccommodationAttachment_${new Date().getTime()}.xlsx`)
|
||||
}
|
||||
}
|
||||
};
|
||||
</script>
|
||||
Reference in New Issue
Block a user