예제 #1
0
        public IActionResult AddMeal([FromBody] MealCreateRequestDTO mealRequest)
        {
            if (mealRequest == null)
            {
                return(BadRequest("Request is null!"));
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest("Data validation errors!"));
            }

            try
            {
                var meal = new Meal
                {
                    Name            = mealRequest.Name,
                    Description     = mealRequest.Description,
                    Price           = mealRequest.Price,
                    GeneralPriority = mealRequest.GeneralPriority,
                    LocalPriority   = mealRequest.LocalPriority,
                    ImageUrl        = mealRequest.ImageUrl,
                    MealCategoryId  = mealRequest.MealCategoryId,
                    RestaurantId    = mealRequest.RestaurantId,
                    MealTypeId      = mealRequest.MealTypeId
                };
                mealService.AddMeal(meal);
                return(Ok("Meal added!"));
            }
            catch (Exception ex)
            {
                return(BadRequest("An error occured while saving meal"));
            }
        }
        public IActionResult UpdateMeal([FromBody] MealCreateRequestDTO mealRequest)
        {
            if (mealRequest == null)
            {
                return(BadRequest("Request is null!"));
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest("Data validation errors!"));
            }

            try
            {
                var meal = mealService.GetMealById(mealRequest.Id);
                if (meal == null)
                {
                    return(NotFound());
                }

                meal.Name            = mealRequest.Name;
                meal.Description     = mealRequest.Description;
                meal.Price           = mealRequest.Price;
                meal.GeneralPriority = mealRequest.GeneralPriority;
                meal.LocalPriority   = mealRequest.LocalPriority;
                meal.ImageUrl        = mealRequest.ImageUrl;
                meal.MealCategoryId  = mealRequest.MealCategoryId;
                meal.RestaurantId    = mealRequest.RestaurantId;
                meal.MealTypeId      = meal.MealTypeId;


                List <MealContent> mealContents = null;
                if (mealRequest.MealContents != null && mealRequest.MealContents.Any())
                {
                    mealContents = mealRequest.MealContents;
                }
                mealService.EditMeal(meal, mealContents);
                return(Ok("Meal updated!"));
            }
            catch (Exception ex)
            {
                return(BadRequest("An error occured while saving meal"));
            }
        }