48 lines
1.7 KiB
C#
48 lines
1.7 KiB
C#
using PostFundManagement.Domain.Attributes;
|
|
using PostFundManagement.Domain.Models.Security;
|
|
|
|
namespace PostFundManagement.Domain.Abstractions;
|
|
|
|
public interface ISkorubaUserService
|
|
{
|
|
[Log]
|
|
[Audit]
|
|
Task<Result<string>> CreateUserAsync(CreateUserRequest request, CancellationToken cancellationToken = default);
|
|
|
|
[Log]
|
|
Task<Result<UserResponse>> GetUserAsync(Guid userId, CancellationToken cancellationToken = default);
|
|
|
|
[Log]
|
|
[Audit]
|
|
Task<Result> UpdateUserAsync(UpdateUserRequest request, CancellationToken cancellationToken = default);
|
|
|
|
[Log]
|
|
[Audit]
|
|
Task<Result> SetUserLockoutAsync(Guid userId, bool disabled, CancellationToken cancellationToken = default);
|
|
|
|
[Log]
|
|
[Audit]
|
|
Task<Result> AddClaimAsync(Guid userId, string claimType, string claimValue, CancellationToken cancellationToken = default);
|
|
|
|
[Log]
|
|
[Audit]
|
|
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);
|
|
}
|