1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768 |
- import { http } from "@/utils/http";
- import { ref } from "vue";
- type addDept = {
- code: number;
- msg: string;
- data: boolean;
- };
- type addDeptList = {
- code: number;
- msg: string;
- data: Array<any>;
- };
- export const postAddDept = data => {
- return http.request<addDept>("post", "/sysDept/addDept", { data });
- };
- export const postDelDept = data => {
- return http.request<addDept>("post", "/sysDept/delDept", { data });
- };
- export const postListTree = () => {
- return http.request<addDeptList>("post", "/sysDept/listTree");
- };
- export const postUpdateDept = data => {
- return http.request<addDept>("post", "/sysDept/updateDept", { data });
- };
- export const postDeptUserAdd = data => {
- return http.request<addDept>("post", "/sysDept/deptUserAdd", { data });
- };
- export const postListTreeWithUser = () => {
- return http.request<addDeptList>("post", "/sysDept/listTreeWithUser");
- };
- export const treeDept = ref([]);
- export const postListTreeWithUserApi = async () => {
- const res = await postListTreeWithUser();
- treeDept.value = transformData(res.data);
- };
- const transformData = data => {
-
- return data.map(item => {
-
- const transformedItem = {
- userName: item.deptName || item.userName,
- userCode: item.deptCode || item.userCode,
- children: []
- };
-
- if (item.childrenRes && Array.isArray(item.childrenRes)) {
- transformedItem.children.push(...transformData(item.childrenRes));
- }
-
- if (item.childrenUserRes && Array.isArray(item.childrenUserRes)) {
- item.childrenUserRes.forEach(user => {
-
- transformedItem.children.push({
- userName: user.userName,
- userCode: user.userCode
- });
- });
- }
- return transformedItem;
- });
- };
|