protected override IEnumerable <RepairDto> Handle(GetRepairsQuery request) { var repairs = _dbContext.Repairs.Include(r => r.Activities) .ThenInclude(a => a.Mechanic) .Include(r => r.Vehicle) .ThenInclude(v => v.Type).AsQueryable(); if (!string.IsNullOrEmpty(request.Status)) { repairs = ApplyFilter(repairs, request); } return(Mapper.Map <IEnumerable <RepairDto> >(repairs)); }
private IQueryable <Domain.Entities.Repair> ApplyFilter(IQueryable <Domain.Entities.Repair> repairs, GetRepairsQuery request) { string predicate = BuildPredicate(request.Status); return(repairs.Where(predicate)); }
public IActionResult GetRepair([FromQuery] GetRepairsQuery query) { query = query ?? new GetRepairsQuery(); return(Ok(_mediator.Send(query).Result)); }