Beispiel #1
0
        public ActionResult <FoodDTO> CreateFood(FoodDTO model)
        {
            try
            {
                var foodCategory = _repository.GetFoodCategoryByID(model.FoodTypeID);
                if (foodCategory == null)
                {
                    return(BadRequest("Food Category could not be find"));
                }

                IMapper mapper  = EDeliveryProfile.CreateFood();
                var     newFood = mapper.Map <Food>(model);

                var userIdClaim = User.FindFirst("MemberId")?.Value;
                var memberId    = int.TryParse(userIdClaim, out var id) ? id : 0;

                EDeliveryDBContext dBContext = new EDeliveryDBContext();

                var restaurantId = dBContext.Restaurant.First(o => o.MemberId == memberId).RestaurantId;
                newFood.RestaurantId = restaurantId;

                _repository.CreateFood(newFood);

                return(new ObjectResult(new { message = "success", statusCode = HttpStatusCode.OK, response = "Created food" }));
            }
            catch (Exception ex)
            {
                _logger.LogError($"Failed to create new food:{ex}");
                return(BadRequest("Failed to create new food"));
            }
        }