public async Task <IEnumerable <PunkApiBeerModel> > GetBeersAsync(SearchBeerModel searchBeerModel) { var listBeers = await GetBeersAsync(); if (searchBeerModel.AttenuationLevel.HasValue) { listBeers = listBeers.Where(c => c.AttenuationLevel == searchBeerModel.AttenuationLevel.Value).ToList(); } if (searchBeerModel.Ph.HasValue) { listBeers = listBeers.Where(c => c.Ph == searchBeerModel.Ph.Value).ToList(); } if (searchBeerModel.Volume.HasValue) { listBeers = listBeers.Where(c => c.Volume.Value == searchBeerModel.Volume.Value).ToList(); } if (!string.IsNullOrEmpty(searchBeerModel.IngredientName)) { listBeers = listBeers.Where( c => c.Ingredients.Hops.Any(h => h.Name == searchBeerModel.IngredientName) || c.Ingredients.Malt.Any(m => m.Name == searchBeerModel.IngredientName) || c.Ingredients.Yeast == searchBeerModel.IngredientName) .ToList(); } return(listBeers); }
public async Task <IActionResult> Post([FromQuery] SearchBeerModel searchBeerModel) { var listBeersImport = await _punkApiHttpCliente.GetBeersAsync(searchBeerModel); await _beerService.Import(listBeersImport); return(Ok()); }
public async Task <IActionResult> Get([FromQuery] SearchBeerModel searchBeerModel) { var resultSearch = await _punkApiHttpCliente.GetBeersAsync(searchBeerModel); var returnResult = _mapper.Map <IEnumerable <ResultSearchModel> >(resultSearch); return(new OkObjectResult(returnResult)); }