refactor: 管理端去租户过滤并Portal化RBAC菜单

This commit is contained in:
2026-01-29 10:46:49 +00:00
parent ea9c20d8a9
commit b3639ff34b
115 changed files with 1106 additions and 1092 deletions

View File

@@ -11,7 +11,11 @@ public interface IStoreRepository
/// <summary>
/// 依据标识获取门店。
/// </summary>
Task<Store?> FindByIdAsync(long storeId, long tenantId, CancellationToken cancellationToken = default);
/// <param name="storeId">门店 ID。</param>
/// <param name="tenantId">租户 ID为空则不做租户过滤。</param>
/// <param name="cancellationToken">取消标记。</param>
/// <param name="includeDeleted">是否包含已删除数据。</param>
Task<Store?> FindByIdAsync(long storeId, long? tenantId, CancellationToken cancellationToken = default, bool includeDeleted = false);
/// <summary>
/// 获取指定商户的门店列表。
@@ -22,14 +26,14 @@ public interface IStoreRepository
/// 按租户筛选门店列表。
/// </summary>
Task<IReadOnlyList<Store>> SearchAsync(
long tenantId,
long? tenantId,
long? merchantId,
StoreStatus? status,
StoreAuditStatus? auditStatus,
StoreBusinessStatus? businessStatus,
StoreOwnershipType? ownershipType,
string? keyword,
bool ignoreTenantFilter = false,
bool includeDeleted = false,
CancellationToken cancellationToken = default);
/// <summary>
@@ -51,12 +55,20 @@ public interface IStoreRepository
/// <summary>
/// 获取门店营业时段。
/// </summary>
Task<IReadOnlyList<StoreBusinessHour>> GetBusinessHoursAsync(long storeId, long tenantId, CancellationToken cancellationToken = default);
/// <param name="storeId">门店 ID。</param>
/// <param name="tenantId">租户 ID为空则不做租户过滤。</param>
/// <param name="cancellationToken">取消标记。</param>
/// <param name="includeDeleted">是否包含已删除数据。</param>
Task<IReadOnlyList<StoreBusinessHour>> GetBusinessHoursAsync(long storeId, long? tenantId, CancellationToken cancellationToken = default, bool includeDeleted = false);
/// <summary>
/// 获取门店费用配置。
/// </summary>
Task<StoreFee?> GetStoreFeeAsync(long storeId, long tenantId, CancellationToken cancellationToken = default);
/// <param name="storeId">门店 ID。</param>
/// <param name="tenantId">租户 ID为空则不做租户过滤。</param>
/// <param name="cancellationToken">取消标记。</param>
/// <param name="includeDeleted">是否包含已删除数据。</param>
Task<StoreFee?> GetStoreFeeAsync(long storeId, long? tenantId, CancellationToken cancellationToken = default, bool includeDeleted = false);
/// <summary>
/// 新增门店费用配置。
@@ -71,7 +83,11 @@ public interface IStoreRepository
/// <summary>
/// 获取门店资质列表。
/// </summary>
Task<IReadOnlyList<StoreQualification>> GetQualificationsAsync(long storeId, long tenantId, CancellationToken cancellationToken = default);
/// <param name="storeId">门店 ID。</param>
/// <param name="tenantId">租户 ID为空则不做租户过滤。</param>
/// <param name="cancellationToken">取消标记。</param>
/// <param name="includeDeleted">是否包含已删除数据。</param>
Task<IReadOnlyList<StoreQualification>> GetQualificationsAsync(long storeId, long? tenantId, CancellationToken cancellationToken = default, bool includeDeleted = false);
/// <summary>
/// 依据标识获取门店资质。
@@ -111,22 +127,38 @@ public interface IStoreRepository
/// <summary>
/// 获取门店配送区域配置。
/// </summary>
Task<IReadOnlyList<StoreDeliveryZone>> GetDeliveryZonesAsync(long storeId, long tenantId, CancellationToken cancellationToken = default);
/// <param name="storeId">门店 ID。</param>
/// <param name="tenantId">租户 ID为空则不做租户过滤。</param>
/// <param name="cancellationToken">取消标记。</param>
/// <param name="includeDeleted">是否包含已删除数据。</param>
Task<IReadOnlyList<StoreDeliveryZone>> GetDeliveryZonesAsync(long storeId, long? tenantId, CancellationToken cancellationToken = default, bool includeDeleted = false);
/// <summary>
/// 依据标识获取配送区域。
/// </summary>
Task<StoreDeliveryZone?> FindDeliveryZoneByIdAsync(long deliveryZoneId, long tenantId, CancellationToken cancellationToken = default);
/// <param name="deliveryZoneId">配送区域 ID。</param>
/// <param name="tenantId">租户 ID为空则不做租户过滤。</param>
/// <param name="cancellationToken">取消标记。</param>
/// <param name="includeDeleted">是否包含已删除数据。</param>
Task<StoreDeliveryZone?> FindDeliveryZoneByIdAsync(long deliveryZoneId, long? tenantId, CancellationToken cancellationToken = default, bool includeDeleted = false);
/// <summary>
/// 获取门店节假日配置。
/// </summary>
Task<IReadOnlyList<StoreHoliday>> GetHolidaysAsync(long storeId, long tenantId, CancellationToken cancellationToken = default);
/// <param name="storeId">门店 ID。</param>
/// <param name="tenantId">租户 ID为空则不做租户过滤。</param>
/// <param name="cancellationToken">取消标记。</param>
/// <param name="includeDeleted">是否包含已删除数据。</param>
Task<IReadOnlyList<StoreHoliday>> GetHolidaysAsync(long storeId, long? tenantId, CancellationToken cancellationToken = default, bool includeDeleted = false);
/// <summary>
/// 依据标识获取节假日配置。
/// </summary>
Task<StoreHoliday?> FindHolidayByIdAsync(long holidayId, long tenantId, CancellationToken cancellationToken = default);
/// <param name="holidayId">节假日配置 ID。</param>
/// <param name="tenantId">租户 ID为空则不做租户过滤。</param>
/// <param name="cancellationToken">取消标记。</param>
/// <param name="includeDeleted">是否包含已删除数据。</param>
Task<StoreHoliday?> FindHolidayByIdAsync(long holidayId, long? tenantId, CancellationToken cancellationToken = default, bool includeDeleted = false);
/// <summary>
/// 获取门店桌台区域。
@@ -276,12 +308,18 @@ public interface IStoreRepository
/// <summary>
/// 删除配送区域。
/// </summary>
Task DeleteDeliveryZoneAsync(long deliveryZoneId, long tenantId, CancellationToken cancellationToken = default);
/// <param name="deliveryZoneId">配送区域 ID。</param>
/// <param name="tenantId">租户 ID为空则不做租户过滤。</param>
/// <param name="cancellationToken">取消标记。</param>
Task DeleteDeliveryZoneAsync(long deliveryZoneId, long? tenantId, CancellationToken cancellationToken = default);
/// <summary>
/// 删除节假日。
/// </summary>
Task DeleteHolidayAsync(long holidayId, long tenantId, CancellationToken cancellationToken = default);
/// <param name="holidayId">节假日配置 ID。</param>
/// <param name="tenantId">租户 ID为空则不做租户过滤。</param>
/// <param name="cancellationToken">取消标记。</param>
Task DeleteHolidayAsync(long holidayId, long? tenantId, CancellationToken cancellationToken = default);
/// <summary>
/// 删除桌台区域。