using OrdersManagementDataModel.Dtos; namespace OrdersManagement.Services; public class RoleService( IHttpClientFactory httpClientFactory, CustomAuthenticationStateProvider authenticationStateProvider) : ServiceBase(httpClientFactory, authenticationStateProvider) { public async Task?> GetRolesAsync() { return await GetListAsync("api/Roles"); } public async Task GetRoleAsync(Guid roleId) { return await GetEntityAsync($"api/Roles/by-id/?id={roleId}"); } public async Task GetRoleByNameAsync(string roleName) { return await GetEntityAsync($"api/Roles/by-name/?name={roleName}"); } public async Task AddRoleAsync(RoleDto role) { return await PostAsJsonAsync("api/Roles", role); } public async Task UpdateRoleAsync(RoleDto role) { return await PutAsJsonAsync("api/Roles", role); } public async Task DeleteRoleAsync(Guid roleId) { return await DeleteAsync($"api/Roles/?id={roleId}"); } }