Files
SIG-CM2.0/src/api/SIGCM2.Application/IngresosBrutos/GetById/GetIngresosBrutosByIdQueryHandler.cs

26 lines
787 B
C#

using SIGCM2.Application.Abstractions;
using SIGCM2.Application.Abstractions.Persistence;
using SIGCM2.Application.IngresosBrutos.Dtos;
using SIGCM2.Domain.Exceptions;
namespace SIGCM2.Application.IngresosBrutos.GetById;
public sealed class GetIngresosBrutosByIdQueryHandler
: ICommandHandler<GetIngresosBrutosByIdQuery, IngresosBrutosDto>
{
private readonly IIngresosBrutosRepository _repo;
public GetIngresosBrutosByIdQueryHandler(IIngresosBrutosRepository repo)
{
_repo = repo;
}
public async Task<IngresosBrutosDto> Handle(GetIngresosBrutosByIdQuery query)
{
var entity = await _repo.GetByIdAsync(query.Id)
?? throw new IngresosBrutosNotFoundException(query.Id);
return IngresosBrutosMapper.ToDto(entity);
}
}