import { request } from './http'; import { resourceApi } from './resource'; /** 平台角色、菜单、账号和工作台接口。 */ export type PlatformRole = { identity: string; role_code: string; name: string; data_scope: string; is_system: boolean; status: string }; export type PlatformMenu = { identity: string; parent_identity?: string; menu_code: string; name: string; icon: string; path: string; sort_no: number }; export const platformApi = { overview: () => request>('/dashboard/overview'), listAccount: () => request<{ total: number; list: Record[] }>('/platform_account'), listRole: () => resourceApi.list('/platform_role'), createRole: (data: Record) => resourceApi.create('/platform_role', data), listMenu: () => request<{ total: number; list: PlatformMenu[] }>('/platform_menu'), listRoleMenuIdentities: (identity: string) => request<{ menu_identities: string[] }>( `/platform_role/${identity}/menu`, ), replaceRoleMenus: (identity: string, menuIdentities: string[]) => request<{ updated: boolean }>( `/platform_role/${identity}/menu`, { method: 'PUT', body: JSON.stringify({ menu_identities: menuIdentities }), }, ), };