Merge remote-tracking branch 'origin/main'

This commit is contained in:
2026-03-17 16:46:27 +08:00
3 changed files with 192 additions and 0 deletions

View File

@@ -546,6 +546,7 @@ export default {
this.formData.major = res.rows[0].srsMajors.majorName
this.formData.studentId = res.rows[0].stuId
this.formData.teacherName = res.rows[0].cphName
this.formData.deptName = res.rows[0].deptName
})
}
})
@@ -591,6 +592,7 @@ export default {
this.formData.className = res.data.className
this.formData.grade = res.data.gradeName
this.formData.teacherName = res.data.teacherName
this.formData.deptName = res.data.deptName
}
})
}

View File

@@ -0,0 +1,174 @@
<template>
<div>
<el-form v-show="showSearch" ref="queryForm" :model="queryParams" size="small" :inline="true" 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="name">
<el-input v-model="queryParams.name" 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 v-hasPermi="['system:student:add']" type="primary" plain icon="el-icon-plus" size="mini"
@click="handleAdd">新增</el-button>
</el-col>
<el-col :span="1.5">
<el-button v-hasPermi="['system:student:edit']" type="success" plain icon="el-icon-edit" size="mini"
:disabled="single" @click="handleUpdate">修改</el-button>
</el-col> -->
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-delete" size="mini" :disabled="multiple"
@click="handleAdd">批量申请</el-button>
</el-col>
<!-- <el-col :span="1.5">
<el-button v-hasPermi="['system:stuent:import']" type="info" plain icon="el-icon-upload2" size="mini"
@click="handleImport">导入</el-button>
</el-col>
<el-col :span="1.5">
<el-button v-hasPermi="['system:student:export']" type="warning" plain icon="el-icon-download" size="mini"
@click="handleExport">导出</el-button>
</el-col>
<el-col :span="1.5">
<el-button v-hasPermi="['system:student:exportAllOwnStu']" type="warning" plain icon="el-icon-download"
size="mini" @click="handleExportAll">导出全部</el-button>
</el-col> -->
<right-toolbar :show-search.sync="showSearch" @queryTable="getList" />
</el-row>
<el-table v-loading="loading" :data="studentList" @selection-change="handleSelectionChange">
<el-table-column type="selection" width="55" align="center" />
<el-table-column label="学号" align="center" prop="stuNo" width="150" />
<el-table-column label="姓名" align="center" prop="name" width="100" />
<el-table-column label="性别" align="center" prop="gender" />
<!-- <el-table-column label="生日" align="center" prop="birthday" width="180">
<template slot-scope="scope">
<span>{{ parseTime(scope.row.birthday, '{y}-{m}-{d}') }}</span>
</template>
</el-table-column> -->
<!-- <el-table-column label="身份证" align="center" prop="idCard" /> -->
<el-table-column label="学院名称" align="center" prop="deptId">
<template slot-scope="scope">
<span>{{ scope.row.dept.deptName }}</span>
</template>
</el-table-column>
<el-table-column label="专业名称" align="center" prop="majorId" width="250">
<template slot-scope="scope">
<span>{{ scope.row.srsMajors.majorName }}</span>
</template>
</el-table-column>
<!-- <el-table-column label="年级id" align="center" prop="gradeId" /> -->
<el-table-column label="班级名称" align="center" prop="classId" width="270">
<template slot-scope="scope">
<span>{{ scope.row.srsClass.className }}</span>
</template>
</el-table-column>
<!-- <el-table-column label="手机号码" align="center" prop="phone" />
<el-table-column label="家庭地址" align="center" prop="address" /> -->
<!-- <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)">修改</el-button>
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)">删除</el-button>
<el-button size="mini" type="text" icon="el-icon-refresh" @click="doInitPwdOne(scope.row)">初始化密码</el-button>
<el-button size="mini" type="text" icon="el-icon-view" @click="picVClick(scope.row)">查看画像</el-button>
<el-button size="mini" type="text" icon="el-icon-view" @click="lookDetail(scope.row)">查看详情</el-button>
<el-button size="mini" type="text" icon="el-icon-search" @click="detailVClick(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 { listOwnStu as listStudent } from '@/api/stuCQS/basedata/student'
export default {
data() {
return {
// 遮罩层
loading: true,
// 选中数组
ids: [],
// 非单个禁用
single: true,
// 非多个禁用
multiple: true,
// 显示搜索条件
showSearch: true,
// 总条数
total: 0,
// 学生信息表格数据
studentList: [],
// 查询参数
queryParams: {
pageNum: 1,
pageSize: 10,
name: null,
stuNo: null,
},
}
},
methods: {
/** 查询学生信息列表 */
getList() {
this.loading = true
listStudent(this.queryParams).then(response => {
this.studentList = response.rows
this.total = response.total
this.loading = false
})
},
// 表单重置
reset() {
this.form = {
stuId: null,
name: null,
stuNo: null,
}
this.resetForm('form')
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1
this.getList()
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm('queryForm')
this.classVlue1 = [],
this.handleQuery()
},
// 多选框选中数据
handleSelectionChange(selection) {
this.ids = selection.map(item => item.stuId)
this.single = selection.length !== 1
this.multiple = !selection.length
},
handleAdd() {
}
},
// 生命周期 - 创建完成访问当前this实例
created() {
},
// 生命周期 - 挂载完成访问DOM元素
mounted() {
this.getList()
},
// 离开当前页面时执行代码
destroyed() {
}
}
</script>
<style scoped>
/* @import url(); 引入css类 */
</style>

View File

@@ -49,6 +49,9 @@
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="openForm">发起入伍保留学籍申请</el-button>
</el-col>
<el-col :span="1.5">
<el-button type="primary" plain icon="el-icon-plus" size="mini" @click="applicationDialogShow" v-if="this.roleGroup.includes('辅导员')">批量发起入伍保留学籍申请</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="['routine:enlistmentReserve:edit']">修改</el-button>
@@ -221,15 +224,20 @@
<el-button @click="cancel"> </el-button>
</div>
</el-dialog>
<el-dialog title="批量申请" :visible.sync="applicationDialogOpen" width="80%" append-to-body>
<applicationDialog></applicationDialog>
</el-dialog>
</div>
</template>
<script>
import { listEnlistmentReserve, getOwnInfo, delEnlistmentReserve, addEnlistmentReserve, updateEnlistmentReserve } from "@/api/routine/enlistmentReserve/enlistmentReserve";
import { getUserProfile } from '@/api/system/user' // 获取当前登录用户
import applicationDialog from '@/views/routine/enlistmentReserve/components/applicationDialog'
export default {
name: "EnlistmentReserve",
dicts: ['rt_classes', 'rt_nation', 'rt_grade'],
components: { applicationDialog },
data() {
return {
// 遮罩层
@@ -250,6 +258,8 @@ export default {
title: "",
// 是否显示弹出层
open: false,
// 是否显示弹出层
applicationDialogOpen: false,
// 查询参数
queryParams: {
pageNum: 1,
@@ -272,6 +282,7 @@ export default {
reserveStartDate: null,
reserveEndDate: null,
approvalNo: null,
deptName: null
},
// 表单参数
form: {},
@@ -354,6 +365,8 @@ export default {
this.queryParams.studentName = this.user.nickName
} else if (this.roleGroup.includes("辅导员")) {
this.queryParams.teacherName = this.user.nickName
} else if (this.roleGroup.includes("学务") || this.roleGroup.includes("二级学院")) {
this.queryParams.deptName = this.user.dept.deptName
}
this.getList()
}
@@ -505,6 +518,9 @@ export default {
// 无驳回记录
return { isReject: false, rejectText: '' };
}
},
applicationDialogShow() {
this.applicationDialogOpen = true
}
}
};