permission.ts 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. import { http } from "@/utils/http";
  2. type Result = {
  3. code: number;
  4. message: string;
  5. data?: any;
  6. };
  7. export const getAllPermissions = () => {
  8. return http.request<Result>("get", "/permission/list");
  9. };
  10. export const getPermissionsGrouped = () => {
  11. return http.request<Result>("get", "/permission/list-grouped");
  12. };
  13. export const getPermissionsByModule = (moduleCode: string) => {
  14. return http.request<Result>("get", `/permission/module/${moduleCode}`);
  15. };
  16. export const getRolePermissionIds = (roleId: number) => {
  17. return http.request<Result>("get", `/permission/role/${roleId}`);
  18. };
  19. export const updateRolePermissions = (roleId: number, permissionIds: number[]) => {
  20. return http.request<Result>("post", `/permission/role/${roleId}`, {
  21. data: permissionIds
  22. });
  23. };
  24. // ===== 权限定义CRUD =====
  25. export const createPermission = (data: any) => {
  26. return http.request<Result>("post", "/permission/create", { data });
  27. };
  28. export const updatePermission = (data: any) => {
  29. return http.request<Result>("put", "/permission/update", { data });
  30. };
  31. export const deletePermission = (id: number) => {
  32. return http.request<Result>("delete", `/permission/${id}`);
  33. };
  34. export const togglePermissionStatus = (id: number, status: number) => {
  35. return http.request<Result>("put", `/permission/${id}/status`, {
  36. data: status
  37. });
  38. };