|
|
@ -217,7 +217,7 @@ const initialFormData = { |
|
|
campus_id: '', |
|
|
campus_id: '', |
|
|
venue_name: '', |
|
|
venue_name: '', |
|
|
capacity: '', |
|
|
capacity: '', |
|
|
availability_status: '1', |
|
|
availability_status: '', // 改为空字符串,避免与字典加载冲突 |
|
|
time_range_type: '', |
|
|
time_range_type: '', |
|
|
time_range_start: '', |
|
|
time_range_start: '', |
|
|
time_range_end: '', |
|
|
time_range_end: '', |
|
|
@ -483,31 +483,41 @@ const confirm = async (formEl: FormInstance | undefined) => { |
|
|
|
|
|
|
|
|
// 获取字典数据 |
|
|
// 获取字典数据 |
|
|
let availability_statusList = ref([]) |
|
|
let availability_statusList = ref([]) |
|
|
const availability_statusDictList = async () => { |
|
|
|
|
|
availability_statusList.value = await ( |
|
|
|
|
|
await useDictionary('SiteStatus') |
|
|
|
|
|
).data.dictionary |
|
|
|
|
|
} |
|
|
|
|
|
availability_statusDictList() |
|
|
|
|
|
watch( |
|
|
|
|
|
() => availability_statusList.value, |
|
|
|
|
|
() => { |
|
|
|
|
|
formData.availability_status = availability_statusList.value[0].value |
|
|
|
|
|
} |
|
|
|
|
|
) |
|
|
|
|
|
let time_range_typeList = ref([]) |
|
|
let time_range_typeList = ref([]) |
|
|
const time_range_typeDictList = async () => { |
|
|
let dictLoaded = ref(false) // 添加加载状态标识 |
|
|
time_range_typeList.value = await ( |
|
|
|
|
|
await useDictionary('ALLOTTED_TIME') |
|
|
const loadDictionaries = async () => { |
|
|
).data.dictionary |
|
|
if (dictLoaded.value) return // 防止重复加载 |
|
|
|
|
|
|
|
|
|
|
|
try { |
|
|
|
|
|
// 并行加载字典数据 |
|
|
|
|
|
const [siteStatusRes, timeRangeRes] = await Promise.all([ |
|
|
|
|
|
useDictionary('SiteStatus'), |
|
|
|
|
|
useDictionary('ALLOTTED_TIME') |
|
|
|
|
|
]) |
|
|
|
|
|
|
|
|
|
|
|
availability_statusList.value = siteStatusRes.data.dictionary || [] |
|
|
|
|
|
time_range_typeList.value = timeRangeRes.data.dictionary || [] |
|
|
|
|
|
|
|
|
|
|
|
// 只在数据加载完成、有数据且formData对应字段为空时设置默认值 |
|
|
|
|
|
if (availability_statusList.value.length > 0 && !formData.availability_status) { |
|
|
|
|
|
formData.availability_status = availability_statusList.value[0].value |
|
|
} |
|
|
} |
|
|
time_range_typeDictList() |
|
|
|
|
|
watch( |
|
|
if (time_range_typeList.value.length > 0 && !formData.time_range_type) { |
|
|
() => time_range_typeList.value, |
|
|
|
|
|
() => { |
|
|
|
|
|
formData.time_range_type = time_range_typeList.value[0].value |
|
|
formData.time_range_type = time_range_typeList.value[0].value |
|
|
} |
|
|
} |
|
|
) |
|
|
|
|
|
|
|
|
dictLoaded.value = true |
|
|
|
|
|
} catch (error) { |
|
|
|
|
|
console.error('加载字典数据失败:', error) |
|
|
|
|
|
availability_statusList.value = [] |
|
|
|
|
|
time_range_typeList.value = [] |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
// 初始化时加载字典数据 |
|
|
|
|
|
loadDictionaries() |
|
|
|
|
|
|
|
|
const campusIdList = ref([] as any[]) |
|
|
const campusIdList = ref([] as any[]) |
|
|
const setCampusIdList = async () => { |
|
|
const setCampusIdList = async () => { |
|
|
|