/** * 权限相关 API - 匹配后端实际接口 */ import { BaseService } from '../BaseService' import type { Permission, PermissionTreeNode, PermissionQueryParams, CreatePermissionParams, UpdatePermissionParams, BaseResponse, PaginationResponse } from '@/types/api' export class PermissionService extends BaseService { /** * 获取权限列表(分页) * GET /api/admin/permissions * @param params 查询参数 */ static getPermissions( params?: PermissionQueryParams ): Promise> { return this.getPage('/api/admin/permissions', params) } /** * 获取权限树 * GET /api/admin/permissions/tree * 用于角色分配权限时的树形选择 */ static getPermissionTree(): Promise> { return this.get>('/api/admin/permissions/tree') } /** * 获取权限详情 * GET /api/admin/permissions/{id} * @param id 权限ID */ static getPermission(id: number): Promise> { return this.getOne(`/api/admin/permissions/${id}`) } /** * 创建权限 * POST /api/admin/permissions * @param data 权限数据 */ static createPermission(data: CreatePermissionParams): Promise { return this.create('/api/admin/permissions', data) } /** * 更新权限 * PUT /api/admin/permissions/{id} * @param id 权限ID * @param data 权限数据 */ static updatePermission( id: number, data: UpdatePermissionParams ): Promise { return this.update(`/api/admin/permissions/${id}`, data) } /** * 删除权限 * DELETE /api/admin/permissions/{id} * @param id 权限ID */ static deletePermission(id: number): Promise { return this.remove(`/api/admin/permissions/${id}`) } }