Spaces:
Sleeping
Sleeping
| import { RolePermission, RolePermissionCreateRequest } from '../types'; | |
| import apiClient from '@/lib/api/axios-instance'; | |
| import { createHeaders } from '@/lib/api'; | |
| import { API_BASE_URL } from '../config'; | |
| import axios from 'axios'; | |
| // RolePermission API service | |
| export const rolePermissionApi = { | |
| getAll: async (): Promise<RolePermission[]> => { | |
| const response = await apiClient.get(`/api/RolePermission`); | |
| if (!response.data) { | |
| throw new Error('Failed to fetch role permissions'); | |
| } | |
| return response.data; | |
| }, | |
| getByRoleId: async (roleId: number): Promise<RolePermission[]> => { | |
| const response = await apiClient.get(`/api/RolePermission/GetByRoleID/${roleId}`); | |
| if (!response.data) { | |
| throw new Error(`Failed to fetch role permissions for role ID ${roleId}`); | |
| } | |
| return response.data; | |
| }, | |
| create: async (rolePermission: RolePermissionCreateRequest): Promise<RolePermission> => { | |
| const response = await apiClient.post(`/api/RolePermission`, rolePermission); | |
| if (!response.data) { | |
| throw new Error('Failed to create role permission'); | |
| } | |
| return response.data; | |
| }, | |
| delete: async (id: number): Promise<void> => { | |
| const response = await apiClient.delete(`/api/RolePermission/${id}`); | |
| if (response.status >= 400) { | |
| throw new Error(`Failed to delete role permission with ID ${id}`); | |
| } | |
| }, | |
| }; |