public IEnumerable <VendingMachine> GetByCriteria(VendingMachineSearchRequest request) { var vendingMachines = _repository.GetAll(); if (!string.IsNullOrWhiteSpace(request.Name)) { vendingMachines = vendingMachines.Where(x => x.Name.ToLower().Contains(request.Name.ToLower())); } if (!string.IsNullOrWhiteSpace(request.Model)) { vendingMachines = vendingMachines.Where(x => x.Model.ToLower().Contains(request.Model.ToLower())); } if (!string.IsNullOrWhiteSpace(request.Code)) { vendingMachines = vendingMachines.Where(x => x.Code.ToLower().Contains(request.Code.ToLower())); } if (request.Category.HasValue) { vendingMachines = vendingMachines.Where(x => x.Category == request.Category); } return(vendingMachines); }
public IActionResult GetByCriteria([FromQuery] VendingMachineSearchRequest request) { var vendingMachine = _vendingMachineService.GetByCriteria(request); return(Ok(vendingMachine)); }