feat: 完成租户个人中心 API 首版实现
This commit is contained in:
@@ -0,0 +1,20 @@
|
||||
using TakeoutSaaS.Shared.Abstractions.Entities;
|
||||
|
||||
namespace TakeoutSaaS.Domain.Tenants.Entities;
|
||||
|
||||
/// <summary>
|
||||
/// 租户账单/配额可见角色规则。
|
||||
/// </summary>
|
||||
public sealed class TenantVisibilityRoleRule : MultiTenantEntityBase
|
||||
{
|
||||
/// <summary>
|
||||
/// 配额可见角色编码集合。
|
||||
/// </summary>
|
||||
public string[] QuotaVisibleRoleCodes { get; set; } = [];
|
||||
|
||||
/// <summary>
|
||||
/// 账单可见角色编码集合。
|
||||
/// </summary>
|
||||
public string[] BillingVisibleRoleCodes { get; set; } = [];
|
||||
|
||||
}
|
||||
@@ -7,6 +7,26 @@ namespace TakeoutSaaS.Domain.Tenants.Repositories;
|
||||
/// </summary>
|
||||
public interface IOperationLogRepository
|
||||
{
|
||||
/// <summary>
|
||||
/// 分页查询指定操作人的操作日志。
|
||||
/// </summary>
|
||||
/// <param name="tenantId">租户 ID。</param>
|
||||
/// <param name="operatorId">操作人标识。</param>
|
||||
/// <param name="from">开始时间(UTC)。</param>
|
||||
/// <param name="to">结束时间(UTC)。</param>
|
||||
/// <param name="page">页码(从 1 开始)。</param>
|
||||
/// <param name="pageSize">每页条数。</param>
|
||||
/// <param name="cancellationToken">取消标记。</param>
|
||||
/// <returns>分页结果(数据与总数)。</returns>
|
||||
Task<(IReadOnlyList<OperationLog> Items, int Total)> SearchByOperatorPagedAsync(
|
||||
long tenantId,
|
||||
string operatorId,
|
||||
DateTime from,
|
||||
DateTime to,
|
||||
int page,
|
||||
int pageSize,
|
||||
CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 新增操作日志。
|
||||
/// </summary>
|
||||
|
||||
@@ -7,6 +7,24 @@ namespace TakeoutSaaS.Domain.Tenants.Repositories;
|
||||
/// </summary>
|
||||
public interface ITenantPaymentRepository
|
||||
{
|
||||
/// <summary>
|
||||
/// 分页查询支付记录。
|
||||
/// </summary>
|
||||
/// <param name="tenantId">租户 ID。</param>
|
||||
/// <param name="from">开始时间(UTC)。</param>
|
||||
/// <param name="to">结束时间(UTC)。</param>
|
||||
/// <param name="page">页码(从 1 开始)。</param>
|
||||
/// <param name="pageSize">每页条数。</param>
|
||||
/// <param name="cancellationToken">取消标记。</param>
|
||||
/// <returns>分页结果(数据与总数)。</returns>
|
||||
Task<(IReadOnlyList<TenantPayment> Items, int Total)> SearchPagedAsync(
|
||||
long tenantId,
|
||||
DateTime from,
|
||||
DateTime to,
|
||||
int page,
|
||||
int pageSize,
|
||||
CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 查询指定账单的支付记录列表。
|
||||
/// </summary>
|
||||
|
||||
@@ -0,0 +1,40 @@
|
||||
using TakeoutSaaS.Domain.Tenants.Entities;
|
||||
|
||||
namespace TakeoutSaaS.Domain.Tenants.Repositories;
|
||||
|
||||
/// <summary>
|
||||
/// 租户可见角色规则仓储。
|
||||
/// </summary>
|
||||
public interface ITenantVisibilityRoleRuleRepository
|
||||
{
|
||||
/// <summary>
|
||||
/// 按租户获取规则。
|
||||
/// </summary>
|
||||
/// <param name="tenantId">租户 ID。</param>
|
||||
/// <param name="cancellationToken">取消标记。</param>
|
||||
/// <returns>规则实体,未配置时返回 null。</returns>
|
||||
Task<TenantVisibilityRoleRule?> FindByTenantIdAsync(long tenantId, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 新增规则。
|
||||
/// </summary>
|
||||
/// <param name="rule">规则实体。</param>
|
||||
/// <param name="cancellationToken">取消标记。</param>
|
||||
/// <returns>异步任务。</returns>
|
||||
Task AddAsync(TenantVisibilityRoleRule rule, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 更新规则。
|
||||
/// </summary>
|
||||
/// <param name="rule">规则实体。</param>
|
||||
/// <param name="cancellationToken">取消标记。</param>
|
||||
/// <returns>异步任务。</returns>
|
||||
Task UpdateAsync(TenantVisibilityRoleRule rule, CancellationToken cancellationToken = default);
|
||||
|
||||
/// <summary>
|
||||
/// 保存变更。
|
||||
/// </summary>
|
||||
/// <param name="cancellationToken">取消标记。</param>
|
||||
/// <returns>异步任务。</returns>
|
||||
Task SaveChangesAsync(CancellationToken cancellationToken = default);
|
||||
}
|
||||
Reference in New Issue
Block a user