public async Task <IActionResult> Search([FromBody] FilterDtoSearchObject filterDto) { if (filterDto == null) { filterDto = new FilterDtoSearchObject { MaxPrice = "0", MinLikes = "0", SearchBy = string.Empty, sort = new SortByDto[0] } } ; var categories = filterDto.Categories ?? new CategorySearchDto[0]; var searchBy = filterDto.SearchBy ?? string.Empty; var result = new ResultObjectDto <DishDtoResult> { Pagination = { Page = 1, Size = 500, Total = null } }; try { decimal maxPrice = string.IsNullOrEmpty(filterDto.MaxPrice) ? 0 : Convert.ToDecimal(filterDto.MaxPrice); int minLikes = string.IsNullOrEmpty(filterDto.MinLikes) ? 0 : Convert.ToInt32(filterDto.MinLikes); var dishList = await _dishService.GetDishListFromFilter(false, maxPrice, Convert.ToInt32(minLikes), searchBy, categories.Select(c => c.Id).ToList(), -1); result.Result = dishList.Select(DishConverter.EntityToApi).ToList(); result.Pagination.Total = dishList.Count(); var serializerSettings = new JsonSerializerSettings { Formatting = Formatting.None }; Response.Headers.Add("Access-Control-Expose-Headers", "Authorization"); Response.Headers.Add("X-Content-Type-Options", "nosniff"); Response.Headers.Add("X-Frame-Options", "DENY"); Response.Headers.Add("X-XSS-Protection", "1;mode=block"); Response.Headers.Add("X-Application-Context", "restaurant:h2mem:8081"); var json = JsonConvert.SerializeObject(result, serializerSettings); return(new OkObjectResult(json)); } catch (Exception ex) { return(StatusCode((int)HttpStatusCode.InternalServerError, $"{ex.Message} : {ex.InnerException}")); } } }
public async Task <IActionResult> Search([FromBody] FilterDtoSearchObject filterDto) { if (filterDto == null) { filterDto = new FilterDtoSearchObject(); } try { var dishList = await _dishService.GetDishListFromFilter(false, filterDto.GetMaxPrice(), filterDto.GetMinLikes(), filterDto.GetSearchBy(), filterDto.GetCategories(), -1); return(new OkObjectResult(GenerateResultDto(dishList).ToJson())); } catch (Exception ex) { return(StatusCode((int)HttpStatusCode.InternalServerError, $"{ex.Message} : {ex.InnerException}")); } }
public void ResetDishFilter() { GlobalDishFilter = new FilterDtoSearchObject { Categories = new CategorySearchDto[0], MinLikes = "", MaxPrice = "", SearchBy = "", sort = new Business.Dto.General.SortByDto[0] }; }
public void SetDishFilter(FilterDtoSearchObject filter) { GlobalDishFilter = filter; }
private void SetUp() { KartShop = new StorableObject <Observable.ShoppingCartItem>(); GlobalDishFilter = new FilterDtoSearchObject { }; }