using NetCorePal.Extensions.Repository.EntityFrameworkCore; namespace Fengling.Platform.Infrastructure.Repositories; using Fengling.Platform.Domain.AggregatesModel.TenantAggregate; using NetCorePal.Extensions.Repository; using Microsoft.EntityFrameworkCore; public interface ITenantRepository : IRepository { Task GetByTenantIdAsync(string tenantId, CancellationToken cancellationToken = default); Task GetByIdIncludeH5Async(TenantId id, CancellationToken cancellationToken = default); } public class TenantRepository(PlatformDbContext context) : RepositoryBase(context), ITenantRepository { public async Task GetByTenantIdAsync(string tenantId, CancellationToken cancellationToken = default) { return await DbContext.Tenants.FirstOrDefaultAsync(t => t.TenantCode == tenantId, cancellationToken); } public async Task GetByIdIncludeH5Async(TenantId id, CancellationToken cancellationToken = default) { return await DbContext.Tenants.FirstOrDefaultAsync(t => t.Id == id, cancellationToken); } }