import { defHttp } from '/@/utils/http/axios'; import { getMenuListResultModel } from './model/menuModel'; import { useUserStore } from '/@/store/modules/user'; import { RoleEnum } from '/@/enums/roleEnum'; import menu from '/@/mock/menu.json' import menu_get_ids from '/@/mock/menu_get_ids.json' import tool from '/@/utils/Tool'; enum Api { BaseMenuUrl = '/menu', SaveStructure = '/user-center/department/editDepartment', DeleteStructure = "/user-center/department/deleteDepartment", GetMenuList = '/menu/me/menus', SysAdminMenuList = '/admin/me/menus', GetMenuIdsByRoleId = '/menu/get_ids/', GetChildDepartment = '/user-center/department/getChildDepartment', GetMenuTreeData = "/base-center/menu/getMenuTreeData" } /** * 删除机构 * @param ids 删除id数组 */ export const DeleteStructure = (params) => { return new Promise((resolve, reject) => { defHttp.post({ url: Api.DeleteStructure, params: tool.objectToFormData(params) }).then((res) => { resolve(res.datas) }) }) } /** * @description: 新增机构 */ export const saveStructure = (params) => { return new Promise((resolve, reject) => { defHttp.post({ url: Api.SaveStructure, params: tool.objectToFormData(params) }) .then((res) => { resolve(res.datas) }) }) }; /** * @description: 获取机构列表 */ export const structureList = () => { return new Promise((resolve, reject) => { defHttp.post({ url: Api.GetChildDepartment }).then((res) => { var a = tool.structureTree([res.datas]); console.log(a) resolve(a) }) }) }; /** * @description: Get user menu based on id */ export const getMenuList = (args?: number) => { const userStore = useUserStore(); let url = Api.GetMenuList; try { if (userStore.getRoleList.find((v) => v == RoleEnum.SYS_ADMIN)) { url = Api.SysAdminMenuList; } return new Promise((resolve, reject) => { resolve(menu) }) } catch (e) { } }; /** * @description: 获取新菜单列表 */ export const menuList = (args?: number) => { try { return new Promise((resolve, reject) => { return defHttp.post({ url: Api.GetMenuTreeData, }).then(r => { console.log("22222:", r.datas); resolve(r.datas) }); }) } catch (e) { }; } /** * @description: Get user menu based on id */ export const getMenuList2 = (args?: number) => { const userStore = useUserStore(); let url = Api.GetMenuList; try { if (userStore.getRoleList.find((v) => v == RoleEnum.SYS_ADMIN)) { url = Api.SysAdminMenuList; } return defHttp.get({ url, params: { needButton: args == 1 ? false : null, }, }); } catch (e) { } }; export const delMenu = (menuIds: string[]) => { const url = Api.BaseMenuUrl; return defHttp.delete({ url: url, data: menuIds }); }; export const getMenusIdsByRoleId = (roleId: string) => { const url = Api.GetMenuIdsByRoleId + roleId; // return defHttp.get>({ url }); return new Promise((resolve, reject) => { resolve(menu_get_ids); }) };