@page "/admin/UsersManager"
@using OrdersManagementDataModel.Dtos
@using Syncfusion.Blazor.Grids
@using Action = Syncfusion.Blazor.Grids.Action
@using UserService = OrdersManagement.Services.UserService
@inject UserService UserService
@inject RoleService RoleService
@inject FunctionService FunctionService
Użytkownicy
§
Role
Funkcje
@code {
private List UserList { get; set; } = new();
private List Roles { get; set; } = new();
private List Functions { get; set; } = new();
protected override async Task OnInitializedAsync()
{
await LoadUsers();
await LoadRoles();
await LoadFunctions();
}
private async Task LoadUsers()
{
UserList = (await UserService.GetUsersAsync() ?? Array.Empty()).ToList();
}
private async Task LoadRoles()
{
Roles = (await RoleService.GetRolesAsync() ?? Array.Empty()).ToList();
}
private async Task LoadFunctions()
{
Functions = (await FunctionService.GetFunctionsAsync() ?? Array.Empty()).ToList();
}
private async Task UserActionBegin(ActionEventArgs args)
{
if (args.RequestType.Equals(Action.Delete))
{
await UserService.DeleteUserAsync(args.Data.RowPointer);
}
else if (args.RequestType.Equals(Action.Add))
{
args.Data.RowPointer = Guid.NewGuid();
}
}
private async Task UserActionComplete(ActionEventArgs args)
{
switch (args.RequestType)
{
case Action.Delete:
await LoadUsers();
break;
case Action.Add:
await UserService.AddUserAsync(args.Data);
await LoadUsers();
break;
case Action.Save:
await UserService.UpdateUserAsync(args.Data);
await LoadUsers();
break;
}
}
private async Task RoleActionBegin(ActionEventArgs args)
{
if (args.RequestType.Equals(Action.Delete))
{
await RoleService.DeleteRoleAsync(args.Data.RowPointer);
}
else if (args.RequestType.Equals(Action.Add))
{
args.Data.RowPointer = Guid.NewGuid();
}
}
private async Task RoleActionComplete(ActionEventArgs args)
{
switch (args.RequestType)
{
case Action.Delete:
await LoadRoles();
break;
case Action.Add:
await RoleService.AddRoleAsync(args.Data);
await LoadRoles();
break;
case Action.Save:
await RoleService.UpdateRoleAsync(args.Data);
await LoadRoles();
break;
}
}
private async Task FunctionActionBegin(ActionEventArgs args)
{
if (args.RequestType.Equals(Action.Delete))
{
await FunctionService.DeleteFunctionAsync(args.Data.RowPointer);
}
else if (args.RequestType.Equals(Action.Add))
{
args.Data.RowPointer = Guid.NewGuid();
}
}
private async Task FunctionActionComplete(ActionEventArgs args)
{
switch (args.RequestType)
{
case Action.Delete:
await LoadFunctions();
break;
case Action.Add:
await FunctionService.AddFunctionAsync(args.Data);
await LoadFunctions();
break;
case Action.Save:
await FunctionService.UpdateFunctionAsync(args.Data);
await LoadFunctions();
break;
}
}
}