32 lines
1.1 KiB
C#
32 lines
1.1 KiB
C#
using System;
|
|
using System.Collections.Generic;
|
|
using System.Threading;
|
|
using System.Threading.Tasks;
|
|
using TakeoutSaaS.Domain.Identity.Entities;
|
|
|
|
namespace TakeoutSaaS.Domain.Identity.Repositories;
|
|
|
|
/// <summary>
|
|
/// 后台用户仓储契约。
|
|
/// </summary>
|
|
public interface IIdentityUserRepository
|
|
{
|
|
/// <summary>
|
|
/// 根据账号获取后台用户。
|
|
/// </summary>
|
|
Task<IdentityUser?> FindByAccountAsync(string account, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 根据 ID 获取后台用户。
|
|
/// </summary>
|
|
Task<IdentityUser?> FindByIdAsync(long userId, CancellationToken cancellationToken = default);
|
|
|
|
/// <summary>
|
|
/// 按租户与关键字查询后台用户列表(仅读)。
|
|
/// </summary>
|
|
/// <param name="tenantId">租户 ID。</param>
|
|
/// <param name="keyword">可选关键字(账号/名称)。</param>
|
|
/// <param name="cancellationToken">取消标记。</param>
|
|
Task<IReadOnlyList<IdentityUser>> SearchAsync(long tenantId, string? keyword, CancellationToken cancellationToken = default);
|
|
}
|