fix: BUG修改

This commit is contained in:
kun 2023-11-22 18:33:09 +08:00
parent f651ba04c1
commit 77de79e60c

View File

@ -132,6 +132,13 @@ const rules = reactive<FormRules>({
message: "请输入角色顺序", message: "请输入角色顺序",
trigger: "blur" trigger: "blur"
} }
],
sn: [
{
required: true,
message: "请选择指定类型",
trigger: "blur"
}
] ]
}); });
const treeRef = ref(null); const treeRef = ref(null);
@ -249,9 +256,21 @@ const transfrom = (arr: Array<any>) => {
const confirm = async () => { const confirm = async () => {
const checked = treeRef.value.getCheckedNodes(); const checked = treeRef.value.getCheckedNodes();
await editRolePermissions(transfrom(checked)); const halfChecked = treeRef.value.getHalfCheckedNodes();
const checkedArr = transfrom(checked);
const halfCheckedArr = transfrom(halfChecked);
const concatArr: any = checkedArr.concat(halfCheckedArr);
if (!concatArr.length) {
ElMessage.error("请选择");
} else {
await editRolePermissions(concatArr);
drawerVisible.value = false; drawerVisible.value = false;
datas.length = 0; datas.length = 0;
}
// const checked = treeRef.value.getCheckedNodes();
// await editRolePermissions(transfrom(checked));
// drawerVisible.value = false;
// datas.length = 0;
}; };
// params // params
@ -302,9 +321,27 @@ const handleEditItem = async (row: any) => {
const res = await getTreeByIdList({ roleId: row.roleId }); const res = await getTreeByIdList({ roleId: row.roleId });
// //
nextTick(() => { nextTick(() => {
treeRef.value.setCheckedKeys(res.result.map(item => item.authorityId)); // treeRef.value.setCheckedKeys(res.result.map(item => item.authorityId));
treeRef.value.setCheckedKeys(getRelativeKeys(res.result));
}); });
}; };
// keys
const getRelativeKeys = (arr: any) => {
let keysArr = [] as any;
arr.map(item => {
if (item.type == 0 && item.children == 0) {
keysArr.push(item.authorityId);
}
if (item.type == 1 && item.children == 0) {
keysArr.push(item.authorityId);
}
if (item.type != 0 && item.type != 1 && !item.children) {
keysArr.push(item.authorityId);
}
});
return keysArr;
};
const saveItem = async (formEl: FormInstance | undefined, form: any) => { const saveItem = async (formEl: FormInstance | undefined, form: any) => {
// //
if (!formEl) return; if (!formEl) return;