68 lines
2.7 KiB
C#
68 lines
2.7 KiB
C#
using OrpaonVision.Core.Results;
|
|
using OrpaonVision.Core.Security.Contracts;
|
|
using OrpaonVision.Core.Security.Contracts.Queries;
|
|
|
|
namespace OrpaonVision.Core.Security;
|
|
|
|
/// <summary>
|
|
/// 用户应用服务接口。
|
|
/// </summary>
|
|
public interface IUserAppService
|
|
{
|
|
/// <summary>
|
|
/// 创建用户。
|
|
/// </summary>
|
|
/// <param name="command">创建用户命令。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>用户ID。</returns>
|
|
Task<Result<Guid>> CreateAsync(Contracts.Commands.CreateUserCommand command, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 更新用户。
|
|
/// </summary>
|
|
/// <param name="command">更新用户命令。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>操作结果。</returns>
|
|
Task<Result> UpdateAsync(Contracts.Commands.UpdateUserCommand command, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 删除用户。
|
|
/// </summary>
|
|
/// <param name="command">删除用户命令。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>操作结果。</returns>
|
|
Task<Result> DeleteAsync(Contracts.Commands.DeleteUserCommand command, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 获取用户详情。
|
|
/// </summary>
|
|
/// <param name="userId">用户ID。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>用户详情。</returns>
|
|
Task<Result<UserDetailDto>> GetDetailAsync(Guid userId, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 分页查询用户列表。
|
|
/// </summary>
|
|
/// <param name="query">查询条件。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>分页结果。</returns>
|
|
Task<Result<PagedResult<UserDetailDto>>> GetPagedListAsync(UserQueryDto query, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 重置用户密码。
|
|
/// </summary>
|
|
/// <param name="command">重置密码命令。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>操作结果。</returns>
|
|
Task<Result> ResetPasswordAsync(Contracts.Commands.ResetUserPasswordCommand command, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 启用/禁用用户。
|
|
/// </summary>
|
|
/// <param name="command">启用/禁用用户命令。</param>
|
|
/// <param name="cancellationToken">取消令牌。</param>
|
|
/// <returns>操作结果。</returns>
|
|
Task<Result> ToggleUserStatusAsync(Contracts.Commands.ToggleUserStatusCommand command, CancellationToken cancellationToken = default);
|
|
}
|