-
部门管理
+
-
-
- 新增部门
-
- 新增子部门
-
- 删除
-
+
- {{ data.deptInfo?.deptName }}
+
+
{{ data.deptInfo?.deptName }}
+
+
+
+
+
+ {{ action.title }}
+
+
+
+
+
+
-
-
-
-
-
-
-
- {{ data.label }}
-
-
-
- 取消
- 编辑
- 确定
+
+
+
+
+
+
+
+
+ {{ data.label }}
+
+
+
+
+
+ 取消
+
+ 编辑
+
+ 确定
+
+
-
角色管理
+
-
-
- 新增角色
-
- 新增子角色
-
- 删除
-
+
+
+ 新增角色
+ 新增子角色
+ 删除
+
- {{ data.zhName }}
+
+ {{ data.zhName }}
+
+
+
-
-
-
-
-
-
-
-
-
- 取消
-
- 编辑
-
- 确定
+
+
+
+
+
+
+
+
+
+
+
+
+ 取消
+
+ 编辑
+
+ 确定
+
+
@@ -174,8 +215,6 @@
/**操作拦截 */
const pipe = (func: Function, flag = false, toggle = true) => {
- console.log(selectRef.value);
-
if (toggle) activeKey.value = 1;
if (flag) {
// 只有部门的操作
@@ -237,6 +276,14 @@
};
getPermissionTree({ projectId, orgId });
+ // 选中自己的第一个部门
+ const initDept = () => {
+ if (!deptTreeData.value?.length || !deptTreeData.value[0]?.children?.length) return;
+ const info = {
+ node: { key: '0-0-0', dataRef: { deptInfo: deptTreeData.value[0]?.children[0].deptInfo } },
+ };
+ SelectApartmentTree(['0-0-0'], info);
+ };
// 部门树
const getDepartList = (params) => {
@@ -255,6 +302,7 @@
};
getDepartList({ orgId }).then((res) => {
deptTreeData.value = res;
+ initDept();
});
// 获取部门树
@@ -267,14 +315,24 @@
// 获取角色树
const getUserTree = (params = { deptId: selectRef.value?.deptInfo?.deptId }) => {
- http.post(department.queryRoleTree, params).then((res) => {
+ return http.post(department.queryRoleTree, params).then((res) => {
roleTreeData.value = res.data;
});
};
// 根据依赖刷新角色树
watchEffect(() => {
if (selectRef.value) {
- getUserTree();
+ getUserTree().then(() => {
+ return;
+ if (!roleTreeData.value?.length) {
+ selectRoleRef.value = {};
+ roleFormData.value = {};
+ }
+ const info = {
+ node: { key: '0-0', dataRef: { ...roleTreeData.value[0] } },
+ };
+ SelectUserTree(['0-0'], info);
+ });
}
});
@@ -285,26 +343,28 @@
callback: null,
};
- const addApartment = () => {
+ const addApartment = (data) => {
+ const { deptInfo } = data;
+
disabled.value = false;
opMap.type = 'addDept';
formData.value = {};
let sourceOrgId = '';
- if (!currentOrgRef.value.own) {
+ if (deptInfo.orgId !== orgId) {
+ // 此处为给关联企业加部门
sourceOrgId = orgId;
}
opMap.fuc = (params) => {
return formRef.value.triggerSubmit().then(() => {
return http.post(department.deptSave, {
...params,
- orgId: selectRef.value.deptInfo?.orgId,
+ orgId: deptInfo?.orgId,
sourceOrgId,
projectId,
orgName,
});
});
};
- return;
};
const addApartmentSon = () => {
@@ -365,17 +425,22 @@
});
};
};
- const deleteDept = () => {
+ const deleteDept = (data) => {
+ console.log(data);
+
// 删除逻辑
Modal.confirm({
title: '是否确认删除',
onOk() {
- http.post(department.deptDel, { deptId: selectRef.value.deptInfo.deptId }).then(() => {
+ http.post(department.deptDel, { deptId: data.deptInfo.deptId }).then(() => {
getTree();
clearDeptData();
// 清空select树
- deptTreeSelectedKeys.value = [];
- selectRef.value = '';
+ if (data.selected) {
+ // 删除选中的数据需要清空
+ deptTreeSelectedKeys.value = [];
+ selectRef.value = '';
+ }
});
},
onCancel() {
@@ -647,55 +712,116 @@
rolePermission();
}
};
+
+ // 部门区域的dropdown
+ const dropActions = ref([
+ { title: '新增部门', func: addApartment, key: 'addDept' },
+ { title: '新增子部门', func: addApartmentSon, key: 'addDeptSon' },
+ { title: '删除', func: deleteDept, key: 'deleteDept' },
+ // { title: '新增角色', func: addUser, key: 'addUser' },
+ ]);
+
+ const filterAction = (data, actions) => {
+ if (data.hasOwnProperty('orgInfo')) {
+ // 企业节点
+ return actions.filter(({ key }) => key === 'addDept');
+ }
+ return actions;
+ };
+
+ // 角色区域的dropdown
+ const dropRoleActions = ref([
+ { title: '新增角色', func: addUser, key: 'addUser' },
+ { title: '新增子角色', func: addUserSon, key: 'addUserSon' },
+ { title: '删除', func: deleteUser, key: 'deleteUser' },
+ ]);
+ const treeRef = ref();
+ console.log(treeRef);