@page "/users"
@attribute [Authorize]
@inject HttpClient Http
QuantEngine - 사용자 관리
사용자 관리
시스템 사용자 및 권한 관리
새 사용자 추가
@if (Users.Count == 0)
{
사용자가 없습니다.
}
else
{
이름
이메일
역할
상태
가입일
작업
@context.Name[0]
@context.Name
@context.Email
@context.Role
@(context.IsActive ? "활성" : "비활성")
@context.CreatedDate.ToString("yyyy-MM-dd")
편집
삭제
}
@code {
private List Users = new();
private string SearchQuery = "";
private IEnumerable FilteredUsers
{
get => string.IsNullOrEmpty(SearchQuery)
? Users
: Users.Where(u => u.Name.Contains(SearchQuery, StringComparison.OrdinalIgnoreCase) ||
u.Email.Contains(SearchQuery, StringComparison.OrdinalIgnoreCase));
}
protected override async Task OnInitializedAsync()
{
await LoadUsers();
}
private async Task LoadUsers()
{
try
{
Users = new List
{
new UserModel
{
Id = "1",
Name = "admin",
Email = "admin@quantengine.local",
Role = "Admin",
IsActive = true,
CreatedDate = DateTime.Now.AddMonths(-6)
},
new UserModel
{
Id = "2",
Name = "user1",
Email = "user1@example.com",
Role = "Viewer",
IsActive = true,
CreatedDate = DateTime.Now.AddMonths(-3)
},
new UserModel
{
Id = "3",
Name = "user2",
Email = "user2@example.com",
Role = "Operator",
IsActive = true,
CreatedDate = DateTime.Now.AddMonths(-1)
}
};
}
catch
{
// Handle error
}
}
private async Task OpenAddUserDialog()
{
// Dialog implementation would go here
await Task.CompletedTask;
}
private async Task EditUser(UserModel user)
{
// Edit dialog implementation
await Task.CompletedTask;
}
private async Task DeleteUser(UserModel user)
{
// Delete confirmation and implementation
await Task.CompletedTask;
}
private class UserModel
{
public string Id { get; set; }
public string Name { get; set; }
public string Email { get; set; }
public string Role { get; set; }
public bool IsActive { get; set; }
public DateTime CreatedDate { get; set; }
}
}