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