Files
SIG-CM2.0/src/api/SIGCM2.Application/Rubros/GetTree/GetRubroTreeQueryHandler.cs

24 lines
822 B
C#
Raw Normal View History

using SIGCM2.Application.Abstractions;
using SIGCM2.Application.Abstractions.Persistence;
using SIGCM2.Application.Rubros.Common;
using SIGCM2.Application.Rubros.Dtos;
namespace SIGCM2.Application.Rubros.GetTree;
public sealed class GetRubroTreeQueryHandler : ICommandHandler<GetRubroTreeQuery, IReadOnlyList<RubroTreeNodeDto>>
{
private readonly IRubroRepository _repo;
public GetRubroTreeQueryHandler(IRubroRepository repo)
{
_repo = repo;
}
public async Task<IReadOnlyList<RubroTreeNodeDto>> Handle(GetRubroTreeQuery query)
{
var all = await _repo.GetAllAsync(query.IncluirInactivos);
// CAT-002: avisoCounts injected via IAvisoQueryRepository (wired in Batch 6)
return RubroTreeBuilder.Build(all, query.IncluirInactivos, new Dictionary<int, int>());
}
}