Added stubs for user management endpoints

This commit is contained in:
2026-10-04 15:17:22 +02:00
parent 06539236a1
commit 84a171d4a4
13 changed files with 160 additions and 12 deletions
@@ -10,7 +10,7 @@ public interface ISkorubaUserService
Task<Result<string>> CreateUserAsync(CreateUserRequest request, CancellationToken cancellationToken = default);
[Log]
Task<Result<UserResponse>> GetUserAsync(string userId, CancellationToken cancellationToken = default);
Task<Result<UserResponse>> GetUserAsync(Guid userId, CancellationToken cancellationToken = default);
[Log]
[Audit]
@@ -18,13 +18,30 @@ public interface ISkorubaUserService
[Log]
[Audit]
Task<Result> SetUserLockoutAsync(string userId, bool disabled, CancellationToken cancellationToken = default);
Task<Result> SetUserLockoutAsync(Guid userId, bool disabled, CancellationToken cancellationToken = default);
[Log]
[Audit]
Task<Result> AddClaimAsync(string userId, string claimType, string claimValue, CancellationToken cancellationToken = default);
Task<Result> AddClaimAsync(Guid userId, string claimType, string claimValue, CancellationToken cancellationToken = default);
[Log]
[Audit]
Task<Result> RemoveClaimAsync(string userId, int claimId, CancellationToken cancellationToken = default);
Task<Result> RemoveClaimAsync(Guid userId, int claimId, CancellationToken cancellationToken = default);
[Log]
[Audit]
Task<Result> AddRoleAsync(Guid userId, string roleId, CancellationToken cancellationToken = default);
[Log]
[Audit]
Task<Result> RemoveRoleAsync(Guid userId, string roleId, CancellationToken cancellationToken = default);
[Log]
Task<Result<Role[]>> GetAvailableRolesAsync(string? searchText = null, int page = 1, int pageSize = 50, CancellationToken cancellationToken = default);
[Log]
Task<Result<Role[]>> GetUserRolesAsync(string userId, int page = 1, int pageSize = 50, CancellationToken cancellationToken = default);
[Log]
Task<Result<Models.Security.Claim[]>> GetUserClaimsAsync(string userId, int page = 1, int pageSize = 50, CancellationToken cancellationToken = default);
}
@@ -4,6 +4,12 @@ public sealed record CreateUserRequest(string UserName, string Email, string Pas
public sealed record UpdateUserRequest(string Id, string UserName, string Email, bool EmailConfirmed, string? PhoneNumber, bool PhoneNumberConfirmed, bool LockoutEnabled, DateTimeOffset? LockoutEnd, int AccessFailedCount, bool TwoFactorEnabled);
public sealed record UserClaim(string ClaimType, string ClaimValue, int? ClaimId = null);
public sealed record Claim(string ClaimType, string ClaimValue, int? ClaimId = null);
public sealed record UserResponse(string Id, string UserName, string Email, bool IsLockedOut, bool LockoutEnabled);
public record ClaimsResponse(int TotalCount, int PageSize, ICollection<Claim> Claims);
public sealed record UserResponse(string Id, string UserName, string Email, bool IsLockedOut, bool LockoutEnabled);
public record Role(string Id, string Name);
public record RolesResponse(int TotalCount, int PageSize, ICollection<Role> Roles);