修复“位置管理”中的部分bug

This commit is contained in:
XiuHe 2026-03-10 10:53:28 +08:00
parent 44c3e77d43
commit ba37bff558
2 changed files with 23 additions and 11 deletions

View File

@ -9,7 +9,7 @@
@close="handleClose"
>
<el-form ref="formRef" :model="formData" label-width="80px" :rules="formRules">
<el-form-item label="父级位置" prop="pid">
<el-form-item label="父级位置" prop="parentId">
<el-tree-select
class="flex-1"
v-model="formData.parentId"
@ -17,7 +17,8 @@
clearable
node-key="id"
:props="{
label: 'name'
label: 'name',
children: 'childLocation'
}"
:default-expand-all="true"
placeholder="请选择父级位置"
@ -27,7 +28,7 @@
<el-form-item label="位置名称" prop="name">
<el-input v-model="formData.name" placeholder="请输入位置名称" clearable />
</el-form-item>
<el-form-item label="位置类型" prop="type" required>
<el-form-item label="位置类型" prop="type" required v-if="mode == 'add'">
<el-select
v-model="formData.type"
class="w-[280px]"
@ -47,7 +48,7 @@
required
>
<el-select
v-model="formData.type"
v-model="formData.status"
class="w-[280px]"
clearable
>
@ -116,7 +117,7 @@ const formData = reactive({
//
floorNumber: 0,
//
status: 0
status: '',
})
const formRules = {
@ -146,11 +147,22 @@ const menuOptions = ref<any[]>([])
const getMenu = async () => {
const data: any = await getLocationList()
const menu: any = { id: 0, name: '顶级', children: [] }
menu.children = arrayToTree(
treeToArray(data.childLocation).filter((item) => item.type != "ER")
)
menuOptions.value.push(menu)
const filteredTree = filterTree(data.childLocation, (item) => item.type !== 'ER')
//
const menu: any = {
id: 0,
name: '顶级',
childLocation: filteredTree
}
menuOptions.value = [menu]
}
//
const filterTree = (tree: any[], predicate: (item: any) => boolean): any[] => {
return tree.filter(predicate).map(node => ({
...node,
childLocation: node.childLocation ? filterTree(node.childLocation, predicate) : []
}))
}
const handleSubmit = async () => {

View File

@ -167,7 +167,7 @@ const handleAdd = async (id?: number) => {
await nextTick()
if (id) {
editRef.value?.setFormData({
pid: id
parentId: id
})
}
editRef.value?.open('add')