教室编号生成调整
This commit is contained in:
@@ -100,6 +100,11 @@
|
||||
:close-on-click-modal="false">
|
||||
<el-form ref="classroomForm" :model="dialog.form" :rules="rules" label-width="110px">
|
||||
<el-row :gutter="20">
|
||||
<el-col :span="12">
|
||||
<el-form-item label="教室编号">
|
||||
<el-input v-model="dialog.form.jsbh" placeholder="留空自动生成(按现有最大编号 +1)" maxlength="50" clearable />
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="教室名称" prop="jsmc">
|
||||
<el-input v-model="dialog.form.jsmc" placeholder="请输入教室名称" />
|
||||
@@ -107,7 +112,15 @@
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="教学楼代号">
|
||||
<el-input v-model="dialog.form.jxldh" placeholder="请输入教学楼代号" />
|
||||
<el-select v-model="dialog.form.jxldh" :loading="buildOptionsLoading" placeholder="请选择教学楼"
|
||||
clearable filterable class="w-full">
|
||||
<el-option
|
||||
v-for="item in buildOptions"
|
||||
:key="item.id"
|
||||
:label="formatBuildLabel(item)"
|
||||
:value="item.jxldh"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
@@ -200,6 +213,7 @@ import {
|
||||
listClassroom,
|
||||
listAllClassroom
|
||||
} from '@/api/teachBusiness/classroom'
|
||||
import { listAllBuild } from '@/api/teachBusiness/build'
|
||||
|
||||
export default {
|
||||
name: 'Venue',
|
||||
@@ -215,6 +229,9 @@ export default {
|
||||
},
|
||||
tableData: [],
|
||||
jxcdlxOptions: [],
|
||||
// 教学楼下拉选项(来源:教学楼表,未删除数据)
|
||||
buildOptions: [],
|
||||
buildOptionsLoading: false,
|
||||
total: 0,
|
||||
pageNum: 1,
|
||||
pageSize: 20,
|
||||
@@ -231,9 +248,26 @@ export default {
|
||||
},
|
||||
created() {
|
||||
this.loadVenueTypeOptions()
|
||||
this.loadBuildOptions()
|
||||
this.fetchList()
|
||||
},
|
||||
methods: {
|
||||
/** 加载全部未删除的教学楼,作为新增/编辑弹窗中教学楼代号下拉选项。 */
|
||||
loadBuildOptions() {
|
||||
this.buildOptionsLoading = true
|
||||
listAllBuild().then(response => {
|
||||
this.buildOptions = Array.isArray(response.data) ? response.data : []
|
||||
}).catch(() => {
|
||||
this.buildOptions = []
|
||||
}).finally(() => {
|
||||
this.buildOptionsLoading = false
|
||||
})
|
||||
},
|
||||
|
||||
formatBuildLabel(item) {
|
||||
const base = [item.jxldh, item.jxlmc].filter(Boolean).join(' ')
|
||||
return base || item.id
|
||||
},
|
||||
/**
|
||||
* 独立加载全部场地类型,避免查询结果收窄后下拉候选项同步丢失。
|
||||
*/
|
||||
|
||||
Reference in New Issue
Block a user