教员管理,教研室管理

This commit is contained in:
2026-08-25 18:08:29 +08:00
parent 7fa8041bf7
commit 5c107426c1
3 changed files with 117 additions and 236 deletions
+17 -73
View File
@@ -21,13 +21,13 @@ export function listTeachingPlan(params) {
}
// ==================== 调课申请管理 /course-running/adjust ====================
// 接口依据:CourseRunningController(前端 baseURL 为 /api,此处不重复 /api 前缀)
// 接口依据:CourseRunningController类上 @RequestMapping("/course-running")前端 baseURL 为 /api,此处不重复 /api 前缀)
/**
* 分页查询调课申请列表
* GET /adjust/list
* GET /course-running/adjust/list
* 查询参数(ScheduleAdjustQueryDTO):sskcbbh 课次编号、sqjybh 申请教员编号、nd 年度、
* jyspzzt 教研室审批状态、jyscszt 教研室查收状态、jgspzt 机关审批状态、sczt 删除状态、
* jyspzzt 教研室审批状态、jyscszt 教研室查收状态、sczt 删除状态、
* cjsjStart/cjsjEnd 申请日期范围(ISO 格式)、pageNum、pageSize
* 返回:PageResult<ScheduleAdjustApplyVO>records/total
*/
@@ -40,11 +40,10 @@ export function listScheduleAdjust(params) {
}
/**
* 查询可供调课课次
* GET /adjust/lessons
* 查询参数:nd 学期年度
* 返回:List<AdjustableLessonVO>
* 注意:后端当前未实现该接口,调用会报错(页面已做兜底提示)
* 查询当前教员可供调课课次
* GET /course-running/adjust/lessons
* 查询参数:nd 年度(可选)
* 返回:List<AdjustableLessonVO>kcmc/rq/jc/xydmc/kcxh/jsbh/sskcbbh 等)
*/
export function listAdjustableLessons(params) {
return request({
@@ -56,7 +55,7 @@ export function listAdjustableLessons(params) {
/**
* 查询调课申请详情
* GET /adjust/detail
* GET /course-running/adjust/detail
* @param ssdksqbh 调课申请编号
* 返回:ScheduleAdjustDetailVO
*/
@@ -70,10 +69,10 @@ export function getScheduleAdjustDetail(ssdksqbh) {
/**
* 提交调课申请
* POST /adjust/submit
* 请求体(ScheduleAdjustApplyDTO):sskcbbh 课次编号、sy 调课事由、rq 新日期、jc 新节次
* nd 年度、sqjybh 申请教员编号、jxnr 教学内容、jxyd 教学要点、jxff 教学方法、
* jxbzbz 教学保障备注、ycxx 用车信息、bz 备注、roomList/teacherList/teamList/supportList
* POST /course-running/adjust/submit
* 请求体(ScheduleAdjustApplyDTO核心字段:sskcbbh 课次编号、sy 调课事由、rq 调课后新日期、
* jc 调课后新节次、nd 年度、sqjybh 申请教员编号(可选 ydsjap 原日期节次描述、xydrwbh/kbh/
* kcbbh/xydmc/jysdh/yjsbh/xjsbh/kcmc/sqjyxm 由课次自动带出)
*/
export function submitScheduleAdjust(data) {
return request({
@@ -85,8 +84,9 @@ export function submitScheduleAdjust(data) {
/**
* 教研室审批调课申请
* POST /adjust/audit/jys
* 请求体(ScheduleAdjustAuditDTO):ssdksqbh、auditRole=jys、spzt1同意/2发回/3拒绝)、fhyj、sprbh
* POST /course-running/adjust/audit/jys
* 请求体(ScheduleAdjustAuditDTO):ssdksqbh(必填)、spzt(1同意/2发回/3拒绝)、
* fhyj(审批意见,发回时填写)、sprbh(审批人编号,不传时取当前登录人;点审批即已查收)
*/
export function auditByTeachingOffice(data) {
return request({
@@ -96,66 +96,10 @@ export function auditByTeachingOffice(data) {
})
}
/**
* 教研室查收调课申请
* POST /adjust/receive/jys
* @param ssdksqbh 调课申请编号
* @param csrbh 查收人编号
*/
export function receiveByTeachingOffice(params) {
return request({
url: '/course-running/adjust/receive/jys',
method: 'post',
params
})
}
/**
* 教学系审批调课申请
* POST /adjust/audit/jxx
* 请求体(ScheduleAdjustAuditDTO):ssdksqbh、auditRole=jxx、spzt、fhyj、sprbh
*/
export function auditByTeachingDepartment(data) {
return request({
url: '/course-running/adjust/audit/jxx',
method: 'post',
data
})
}
/**
* 机关审批调课申请
* POST /adjust/audit/jg
* 请求体(ScheduleAdjustAuditDTO):ssdksqbh、auditRole=jg、spzt、fhyj、sprbh、jgbh(机关编号必填)
*/
export function auditByAuthority(data) {
return request({
url: '/course-running/adjust/audit/jg',
method: 'post',
data
})
}
/**
* 机关查收调课申请
* POST /adjust/receive/jg
* @param ssdksqbh 调课申请编号
* @param jgbh 机关编号
* @param csrbh 查收人编号
*/
export function receiveByAuthority(params) {
return request({
url: '/course-running/adjust/receive/jg',
method: 'post',
params
})
}
/**
* 撤销调课申请
* DELETE /adjust/cancel
* @param ssdksqbh 调课申请编号
* @param sqjybh 申请教员编号(权限校验)
* DELETE /course-running/adjust/cancel
* @param params { ssdksqbh, sqjybh }
*/
export function cancelScheduleAdjust(params) {
return request({
@@ -79,21 +79,7 @@
<template slot-scope="scope">
<div class="ops-cell">
<el-button type="text" size="mini" icon="el-icon-view" @click="openDetail(scope.row)">详情</el-button>
<el-dropdown v-if="showAuditMenu(scope.row)" trigger="click" @command="cmd => openAudit(scope.row, cmd)">
<el-button type="text" size="mini" @click.stop>审批<i class="el-icon-arrow-down el-icon--right" /></el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item v-if="scope.row.jyspzzt === 0" command="jys">教研室审批</el-dropdown-item>
<el-dropdown-item v-if="scope.row.jyspzzt === 1" command="jxx">教学系审批</el-dropdown-item>
<el-dropdown-item v-if="scope.row.jyspzzt === 1" command="jg">机关审批</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<el-dropdown v-if="showReceiveMenu(scope.row)" trigger="click" @command="cmd => openReceive(scope.row, cmd)">
<el-button type="text" size="mini" @click.stop>查收<i class="el-icon-arrow-down el-icon--right" /></el-button>
<el-dropdown-menu slot="dropdown">
<el-dropdown-item v-if="scope.row.jyscszt === 0" command="jys">教研室查收</el-dropdown-item>
<el-dropdown-item command="jg">机关查收</el-dropdown-item>
</el-dropdown-menu>
</el-dropdown>
<el-button v-if="showAuditMenu(scope.row)" type="text" size="mini" @click="openAudit(scope.row)">审批</el-button>
<el-button v-if="scope.row.sczt === 0 && scope.row.jyspzzt !== 1" type="text" size="mini" class="danger-btn" @click="handleCancel(scope.row)">撤销</el-button>
</div>
</template>
@@ -135,23 +121,17 @@
<el-form-item label="申请教员编号" prop="sqjybh">
<el-input v-model="addForm.sqjybh" placeholder="请输入申请教员编号" />
</el-form-item>
<el-form-item label="教学内容">
<el-input v-model="addForm.jxnr" placeholder="选" />
<el-form-item label="学员队名称">
<el-input v-model="addForm.xydmc" placeholder="选择可供调课课次后自动带出" />
</el-form-item>
<el-form-item label="教学要点">
<el-input v-model="addForm.jxyd" placeholder="选" />
<el-form-item label="原教室编号">
<el-input v-model="addForm.yjsbh" placeholder="选择可供调课课次后自动带出" />
</el-form-item>
<el-form-item label="教学方法">
<el-input v-model="addForm.jxff" placeholder="选填" />
<el-form-item label="拟调整教室编号">
<el-input v-model="addForm.xjsbh" placeholder="选填" />
</el-form-item>
<el-form-item label="教学保障备注">
<el-input v-model="addForm.jxbzbz" placeholder="选" />
</el-form-item>
<el-form-item label="用车信息">
<el-input v-model="addForm.ycxx" placeholder="选填" />
</el-form-item>
<el-form-item label="备注">
<el-input v-model="addForm.bz" type="textarea" :rows="2" placeholder="选填" />
<el-form-item label="原上课时间">
<el-input v-model="addForm.ydsjap" placeholder="选择可供调课课次后自动带出" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@@ -180,7 +160,7 @@
</el-dialog>
<!-- 审批弹窗 -->
<el-dialog :title="auditTitle" :visible.sync="auditVisible" width="520px" append-to-body>
<el-dialog title="教研室审批" :visible.sync="auditVisible" width="520px" append-to-body>
<el-form ref="auditForm" :model="auditForm" label-width="100px">
<el-form-item label="审批结果" required>
<el-radio-group v-model="auditForm.spzt">
@@ -188,15 +168,13 @@
<el-radio :label="2">发回</el-radio>
<el-radio :label="3">拒绝</el-radio>
</el-radio-group>
<div class="form-tip">点审批即已查收</div>
</el-form-item>
<el-form-item label="审批意见">
<el-input v-model="auditForm.fhyj" type="textarea" :rows="3" placeholder="请输入审批意见(发回/拒绝时必填)" />
</el-form-item>
<el-form-item label="审批人编号" required>
<el-input v-model="auditForm.sprbh" placeholder="请输入审批人编号" />
</el-form-item>
<el-form-item v-if="auditForm.auditRole === 'jg'" label="机关编号" required>
<el-input v-model="auditForm.jgbh" placeholder="请输入机关编号" />
<el-form-item label="审批人编号">
<el-input v-model="auditForm.sprbh" placeholder="不填默认取当前登录人" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
@@ -205,22 +183,6 @@
</div>
</el-dialog>
<!-- 查收弹窗 -->
<el-dialog :title="receiveTitle" :visible.sync="receiveVisible" width="460px" append-to-body>
<el-form ref="receiveForm" :model="receiveForm" label-width="100px">
<el-form-item v-if="receiveForm.type === 'jg'" label="机关编号" required>
<el-input v-model="receiveForm.jgbh" placeholder="请输入机关编号" />
</el-form-item>
<el-form-item label="查收人编号" required>
<el-input v-model="receiveForm.csrbh" placeholder="请输入查收人编号" />
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button type="primary" :loading="receiveLoading" @click="submitReceive">确定</el-button>
<el-button @click="receiveVisible = false">取消</el-button>
</div>
</el-dialog>
<!-- 查看详情弹窗 -->
<el-dialog title="申请详情" :visible.sync="detailVisible" width="760px" append-to-body>
<div v-loading="detailLoading">
@@ -329,10 +291,6 @@ import {
getScheduleAdjustDetail,
submitScheduleAdjust,
auditByTeachingOffice,
auditByTeachingDepartment,
auditByAuthority,
receiveByTeachingOffice,
receiveByAuthority,
cancelScheduleAdjust
} from '@/api/teachBusiness/courseRunning'
import { listAllSemester } from '@/api/teachBusiness/semester'
@@ -402,13 +360,7 @@ export default {
// 审批
auditVisible: false,
auditLoading: false,
auditTitle: '审批',
auditForm: { ssdksqbh: '', auditRole: 'jys', spzt: 1, fhyj: '', sprbh: '', jgbh: '' },
// 查收
receiveVisible: false,
receiveLoading: false,
receiveTitle: '查收',
receiveForm: { ssdksqbh: '', type: 'jys', csrbh: '', jgbh: '' },
auditForm: { ssdksqbh: '', spzt: 1, fhyj: '', sprbh: '' },
// 详情
detailVisible: false,
detailLoading: false,
@@ -523,12 +475,10 @@ export default {
rq: '',
jc: 1,
sqjybh: this.curUserName,
jxnr: '',
jxyd: '',
jxff: '',
jxbzbz: '',
ycxx: '',
bz: ''
xydmc: '',
yjsbh: '',
xjsbh: '',
ydsjap: ''
}
this.$nextTick(() => this.$refs.addForm && this.$refs.addForm.clearValidate())
this.addVisible = true
@@ -545,11 +495,16 @@ export default {
this.lessonDialogVisible = true
}).catch(() => {
this.lessonLoading = false
this.$message.info('后端暂未提供可供调课课次接口,请手动填写课次编号')
this.$message.info('加载可供调课课次失败,请手动填写课次编号')
})
},
pickLesson(row) {
this.addForm.sskcbbh = row.sskcbbh
// 自动带出课次关联字段(若接口返回则回填)
;['xydmc', 'yjsbh', 'ydsjap', 'kbh', 'kcbbh', 'xydrwbh', 'jysdh', 'xjsbh', 'kcmc', 'sqjyxm'].forEach(key => {
if (row[key] !== undefined && row[key] !== null) this.addForm[key] = row[key]
})
if (!this.addForm.ydsjap && row.rq) this.addForm.ydsjap = this.fmtRqJc(row.rq, row.jc)
this.lessonDialogVisible = false
this.$message.success('已选择课次:' + (row.kcmc || row.sskcbbh))
},
@@ -564,7 +519,7 @@ export default {
nd: this.addForm.nd,
sqjybh: this.addForm.sqjybh
}
;['jxnr', 'jxyd', 'jxff', 'jxbzbz', 'ycxx', 'bz'].forEach(key => {
;['xydmc', 'yjsbh', 'xjsbh', 'ydsjap', 'kbh', 'kcbbh', 'xydrwbh', 'jysdh', 'kcmc', 'sqjyxm'].forEach(key => {
if (this.addForm[key]) payload[key] = this.addForm[key]
})
this.addLoading = true
@@ -580,46 +535,31 @@ export default {
},
/* ---------- 审批 ---------- */
showAuditMenu(row) {
return row.sczt === 0 && (row.jyspzzt === 0 || row.jyspzzt === 1)
return row.sczt === 0 && (row.jyspzzt === 0 || row.jyspzzt === 2 || row.jyspzzt === 3)
},
openAudit(row, role) {
const titleMap = { jys: '教研室审批', jxx: '教学系审批', jg: '机关审批' }
this.auditTitle = titleMap[role] || '审批'
openAudit(row) {
this.auditForm = {
ssdksqbh: row.ssdksqbh,
auditRole: role,
spzt: 1,
fhyj: '',
sprbh: this.curUserName,
jgbh: ''
sprbh: ''
}
this.auditVisible = true
},
submitAudit() {
const f = this.auditForm
if (!f.sprbh) {
this.$message.warning('请填写审批人编号')
return
}
if (f.auditRole === 'jg' && !f.jgbh) {
this.$message.warning('请填写机关编号')
if (f.spzt !== 1 && !f.fhyj) {
this.$message.warning('发回/拒绝时请填写审批意见')
return
}
const payload = {
ssdksqbh: f.ssdksqbh,
auditRole: f.auditRole,
spzt: f.spzt,
fhyj: f.fhyj,
sprbh: f.sprbh
}
if (f.jgbh) payload.jgbh = f.jgbh
const apiMap = {
jys: auditByTeachingOffice,
jxx: auditByTeachingDepartment,
jg: auditByAuthority
fhyj: f.fhyj
}
if (f.sprbh) payload.sprbh = f.sprbh
this.auditLoading = true
apiMap[f.auditRole](payload).then(() => {
auditByTeachingOffice(payload).then(() => {
this.auditLoading = false
this.auditVisible = false
this.$message.success('审批成功')
@@ -628,48 +568,11 @@ export default {
this.auditLoading = false
})
},
/* ---------- 查收 ---------- */
showReceiveMenu(row) {
return row.sczt === 0 && row.jyspzzt === 1
},
openReceive(row, type) {
this.receiveTitle = type === 'jys' ? '教研室查收' : '机关查收'
this.receiveForm = {
ssdksqbh: row.ssdksqbh,
type: type,
csrbh: this.curUserName,
jgbh: ''
}
this.receiveVisible = true
},
submitReceive() {
const f = this.receiveForm
if (!f.csrbh) {
this.$message.warning('请填写查收人编号')
return
}
if (f.type === 'jg' && !f.jgbh) {
this.$message.warning('请填写机关编号')
return
}
const params = { ssdksqbh: f.ssdksqbh, csrbh: f.csrbh }
if (f.jgbh) params.jgbh = f.jgbh
const api = f.type === 'jys' ? receiveByTeachingOffice : receiveByAuthority
this.receiveLoading = true
api(params).then(() => {
this.receiveLoading = false
this.receiveVisible = false
this.$message.success('查收成功')
this.loadList()
}).catch(() => {
this.receiveLoading = false
})
},
/* ---------- 撤销 ---------- */
handleCancel(row) {
this.$confirm('确认撤销该调课申请?撤销后课次将恢复原时间。', '提示', { type: 'warning' })
this.$confirm('确认撤销该调课申请?', '提示', { type: 'warning' })
.then(() => {
cancelScheduleAdjust({ ssdksqbh: row.ssdksqbh, sqjybh: row.sqjybh }).then(() => {
cancelScheduleAdjust({ ssdksqbh: row.ssdksqbh }).then(() => {
this.$message.success('撤销成功')
this.loadList()
}).catch(() => {})
@@ -791,6 +694,13 @@ export default {
gap: 0 4px;
}
.form-tip {
font-size: 12px;
color: #909399;
line-height: 1.4;
margin-top: 4px;
}
.pick-lesson-btn {
margin-top: 6px;
width: 100%;
@@ -103,22 +103,9 @@
<el-form ref="addFormRef" :model="addForm" :rules="addRules" label-width="140px" class="add-form">
<el-divider content-position="left">教员基本信息</el-divider>
<el-row :gutter="16">
<el-col :span="12">
<el-form-item label="教员编号"><el-input v-model="addForm.teacher.jybh" placeholder="选填" /></el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="教员姓名" prop="teacher.jyxm"><el-input v-model="addForm.teacher.jyxm" placeholder="请输入" /></el-form-item>
</el-col>
</el-row>
<el-row :gutter="16">
<el-col :span="12">
<el-form-item label="教研室代号" prop="teacher.jysdh"><el-input v-model="addForm.teacher.jysdh" placeholder="请输入" /></el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="序号" prop="teacher.xh"><el-input v-model="addForm.teacher.xh" placeholder="请输入" /></el-form-item>
</el-col>
</el-row>
<el-row :gutter="16">
<el-col :span="12">
<el-form-item label="性别" prop="teacher.xb">
<el-select v-model="addForm.teacher.xb" style="width:100%">
@@ -126,33 +113,55 @@
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="16">
<el-col :span="12">
<el-form-item label="序号" prop="teacher.xh"><el-input v-model="addForm.teacher.xh" placeholder="请输入" /></el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="身份证号" prop="teacher.sfzh"><el-input v-model="addForm.teacher.sfzh" placeholder="请输入" /></el-form-item>
</el-col>
</el-row>
<el-row :gutter="16">
<el-col :span="12">
<el-form-item label="专业技术职务等级" prop="teacher.zyjszwdj"><el-input v-model="addForm.teacher.zyjszwdj" placeholder="请输入" /></el-form-item>
<el-form-item label="专业技术职务等级" prop="teacher.zyjszwdj">
<el-select v-model="addForm.teacher.zyjszwdj" placeholder="请选择" clearable style="width:100%">
<el-option v-for="item in zyjszwdjOptions" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="虚实类型" prop="teacher.xslx">
<el-select v-model="addForm.teacher.xslx" style="width:100%">
<el-option :value="1" label="实教" /><el-option :value="0" label="非实教" />
<el-radio-group v-model="addForm.teacher.xslx">
<el-radio :label="1"></el-radio>
<el-radio :label="0"></el-radio>
</el-radio-group>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="16">
<el-col :span="12">
<el-form-item label="教员类别" prop="teacher.jylb">
<el-select v-model="addForm.teacher.jylb" placeholder="请选择" clearable style="width:100%">
<el-option v-for="item in jylbOptions" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="在职类别" prop="teacher.zzlb">
<el-select v-model="addForm.teacher.zzlb" placeholder="请选择" clearable style="width:100%">
<el-option v-for="item in zzlbOptions" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue" />
</el-select>
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="16">
<el-col :span="12">
<el-form-item label="教员类别" prop="teacher.jylb"><el-input v-model="addForm.teacher.jylb" placeholder="请输入" /></el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="在职类别" prop="teacher.zzlb"><el-input v-model="addForm.teacher.zzlb" placeholder="请输入" /></el-form-item>
</el-col>
</el-row>
<el-row :gutter="16">
<el-col :span="12">
<el-form-item label="导师类别" prop="teacher.dslb"><el-input v-model="addForm.teacher.dslb" placeholder="请输入" /></el-form-item>
<el-form-item label="导师类别" prop="teacher.dslb">
<el-select v-model="addForm.teacher.dslb" placeholder="请选择" clearable style="width:100%">
<el-option v-for="item in dslbOptions" :key="item.dictValue" :label="item.dictLabel" :value="item.dictValue" />
</el-select>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="学缘" prop="teacher.xy"><el-input v-model="addForm.teacher.xy" placeholder="请输入" /></el-form-item>
@@ -594,6 +603,7 @@ import {
getTeacherAttribute,
updateTeacherAttribute
} from '@/api/teachOffice/teacher'
import { getDicts } from '@/api/system/dict/data'
export default {
name: 'Teacher',
@@ -614,14 +624,14 @@ export default {
addForm: this.createEmptyAddForm(),
addRules: {
'teacher.jyxm': [{ required: true, message: '请输入教员姓名', trigger: 'blur' }],
'teacher.jysdh': [{ required: true, message: '请输入教研室代号', trigger: 'blur' }],
'teacher.xh': [{ required: true, message: '请输入序号', trigger: 'blur' }],
'teacher.zyjszwdj': [{ required: true, message: '请输入专业技术职务等级', trigger: 'blur' }],
'teacher.zyjszwdj': [{ required: true, message: '请选择专业技术职务等级', trigger: 'change' }],
'teacher.xslx': [{ required: true, message: '请选择虚实类型', trigger: 'change' }],
'teacher.jylb': [{ required: true, message: '请输入教员类别', trigger: 'blur' }],
'teacher.zzlb': [{ required: true, message: '请输入在职类别', trigger: 'blur' }],
'teacher.jylb': [{ required: true, message: '请选择教员类别', trigger: 'change' }],
'teacher.zzlb': [{ required: true, message: '请选择在职类别', trigger: 'change' }],
'teacher.ewyxkbs': [{ required: true, message: '请输入额外允许开班数', trigger: 'change' }],
'teacher.dslb': [{ required: true, message: '请输入导师类别', trigger: 'blur' }],
'teacher.dslb': [{ required: true, message: '请选择导师类别', trigger: 'change' }],
'teacher.xy': [{ required: true, message: '请输入学缘', trigger: 'blur' }],
'teacher.sfzh': [{ required: true, message: '请输入身份证号', trigger: 'blur' }],
'teacher.xb': [{ required: true, message: '请选择性别', trigger: 'change' }],
@@ -659,11 +669,17 @@ export default {
attributeForm: {},
attributeLoading: false,
attributeSaving: false,
attributeJybh: ''
attributeJybh: '',
// 字典选项
zyjszwdjOptions: [],
jylbOptions: [],
zzlbOptions: [],
dslbOptions: []
}
},
mounted() {
this.fetchList()
this.loadDicts()
},
methods: {
/** 统一格式化后端 LocalDateTime(去除 T、截断到秒) */
@@ -696,6 +712,15 @@ export default {
},
/** 移除空值 */
loadDicts() {
getDicts('teacher_zyjszwdj').then(res => { this.zyjszwdjOptions = res.data || [] }).catch(() => {})
getDicts('teacher_jylb').then(res => { this.jylbOptions = res.data || [] }).catch(() => {})
getDicts('teacher_zzlb').then(res => { this.zzlbOptions = res.data || [] }).catch(() => {})
getDicts('teacher_dslb').then(res => { this.dslbOptions = res.data || [] }).catch(() => {})
},
cleanPayload(obj) {
const payload = {}
Object.keys(obj).forEach(key => {
@@ -1052,3 +1077,5 @@ export default {
}
}
</style>