using MediatR; using TakeoutSaaS.Application.App.Tenants.Dto; using TakeoutSaaS.Application.App.Tenants.Queries; using TakeoutSaaS.Domain.Tenants.Repositories; namespace TakeoutSaaS.Application.App.Tenants.Handlers; /// /// 账单详情查询处理器。 /// public sealed class GetTenantBillQueryHandler(ITenantBillingRepository billingRepository) : IRequestHandler { public async Task Handle(GetTenantBillQuery request, CancellationToken cancellationToken) { // 1. 查询账单 var bill = await billingRepository.FindByIdAsync(request.TenantId, request.BillingId, cancellationToken); // 2. 返回 DTO 或 null return bill?.ToDto(); } }