feat: 提交后端其余改动

This commit is contained in:
2026-01-01 07:41:57 +08:00
parent fc55003d3d
commit aa42a635e4
34 changed files with 2426 additions and 1208 deletions

View File

@@ -0,0 +1,65 @@
using TakeoutSaaS.Domain.Dictionary.Entities;
using TakeoutSaaS.Domain.Dictionary.Enums;
namespace TakeoutSaaS.Domain.Dictionary.Repositories;
/// <summary>
/// 字典标签覆盖仓储契约。
/// </summary>
public interface IDictionaryLabelOverrideRepository
{
/// <summary>
/// 根据 ID 获取覆盖配置。
/// </summary>
Task<DictionaryLabelOverride?> GetByIdAsync(long id, CancellationToken cancellationToken = default);
/// <summary>
/// 获取指定字典项的覆盖配置。
/// </summary>
/// <param name="tenantId">租户 ID。</param>
/// <param name="dictionaryItemId">字典项 ID。</param>
/// <param name="cancellationToken">取消标记。</param>
Task<DictionaryLabelOverride?> GetByItemIdAsync(long tenantId, long dictionaryItemId, CancellationToken cancellationToken = default);
/// <summary>
/// 获取租户的所有覆盖配置。
/// </summary>
/// <param name="tenantId">租户 ID。</param>
/// <param name="overrideType">可选的覆盖类型过滤。</param>
/// <param name="cancellationToken">取消标记。</param>
Task<IReadOnlyList<DictionaryLabelOverride>> ListByTenantAsync(
long tenantId,
OverrideType? overrideType = null,
CancellationToken cancellationToken = default);
/// <summary>
/// 批量获取多个字典项的覆盖配置。
/// </summary>
/// <param name="tenantId">租户 ID。</param>
/// <param name="dictionaryItemIds">字典项 ID 列表。</param>
/// <param name="cancellationToken">取消标记。</param>
Task<IReadOnlyList<DictionaryLabelOverride>> GetByItemIdsAsync(
long tenantId,
IEnumerable<long> dictionaryItemIds,
CancellationToken cancellationToken = default);
/// <summary>
/// 新增覆盖配置。
/// </summary>
Task AddAsync(DictionaryLabelOverride entity, CancellationToken cancellationToken = default);
/// <summary>
/// 更新覆盖配置。
/// </summary>
Task UpdateAsync(DictionaryLabelOverride entity, CancellationToken cancellationToken = default);
/// <summary>
/// 删除覆盖配置。
/// </summary>
Task DeleteAsync(DictionaryLabelOverride entity, CancellationToken cancellationToken = default);
/// <summary>
/// 持久化更改。
/// </summary>
Task SaveChangesAsync(CancellationToken cancellationToken = default);
}