/// <summary> /// Return the list of CuisineType /// </summary> /// <returns>CuisineTypeList</returns> public async Task <IActionResult> GetCuisineType() { BaseResult <List <CuisineTypeViewModel> > cuisineTypeResultFromCache = new BaseResult <List <CuisineTypeViewModel> > { Result = RedisCacheHelper.Instance.Get <List <CuisineTypeViewModel> >(Constants.CacheKeys.CuisineTypeList) }; if (cuisineTypeResultFromCache.Result == null || cuisineTypeResultFromCache.Result.Count == 0) { BaseResult <List <CuisineType> > cuisineTypeResult = await iMealPlan.GetCuisineType().ConfigureAwait(false); if (cuisineTypeResult.IsError && cuisineTypeResult.ExceptionMessage != null) { return(new StatusCodeResult(500)); } else if (cuisineTypeResult.Result == null || cuisineTypeResult.Result.Count == 0) { return(NoContent()); //204 } else { var result = MealPlanResponseMapper.MapCuisineType(cuisineTypeResult); RedisCacheHelper.Instance.Set <List <CuisineTypeViewModel> >(Constants.CacheKeys.CuisineTypeList, result.Result); return(Ok(result)); //200 } } return(Ok(cuisineTypeResultFromCache)); //200 }
public async Task <IActionResult> GetMealPlan([FromBody] int hotelId) { if (hotelId > default(int)) { BaseResult <List <HotelMeal> > hotelMealResult = await iMealPlan.GetHotelMeal(hotelId).ConfigureAwait(false); if (hotelMealResult.IsError && hotelMealResult.ExceptionMessage != null) { return(new StatusCodeResult(500)); } else if (hotelMealResult.Result == null || hotelMealResult.Result.Count == 0) { return(NoContent());//204 } BaseResult <List <HotelMealType> > hotelMealTypeResult = await iMealPlan.GetHotelMealType(hotelId).ConfigureAwait(false); if (hotelMealTypeResult.IsError && hotelMealTypeResult.ExceptionMessage != null) { return(new StatusCodeResult(500)); } var result = MealPlanResponseMapper.MapMealPlan(hotelMealResult, hotelMealTypeResult); return(Ok(result)); //200 } return(BadRequest()); //400 }