Beispiel #1
0
        public async Task EditFood(FoodCreateDto foodCreateDto)
        {
            List <FoodAllergen> allergens = new List <FoodAllergen>();

            if (foodCreateDto.FoodAllergens != null)
            {
                foodCreateDto.FoodAllergens.ToList()
                .ForEach
                    (x => allergens.Add(new FoodAllergen()
                {
                    Allergen = x
                }
                                        ));
                await _context.FoodAllergens.AddRangeAsync(allergens.ToArray());
            }


            var entity = new Food()
            {
                Id            = foodCreateDto.Id.Value,
                Name          = foodCreateDto.Name,
                MenuId        = new Guid("fe1ee058-9e79-4544-bf93-026f477fe844"),
                Description   = foodCreateDto.Description,
                Category      = foodCreateDto.Category,
                FoodAllergens = allergens,
                Price         = foodCreateDto.Price
            };

            _context.Foods.Update(entity);

            _context.SaveChanges();
        }
        public ActionResult <FoodItemDto> AddFood([FromBody] FoodCreateDto foodCreateDto)
        {
            if (foodCreateDto == null)
            {
                return(BadRequest());
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            FoodItem toAdd = Mapper.Map <FoodItem>(foodCreateDto);

            _foodRepository.Add(toAdd);

            if (!_foodRepository.Save())
            {
                throw new Exception("Creating a fooditem failed on save.");
            }

            FoodItem newFoodItem = _foodRepository.GetSingle(toAdd.Id);

            return(CreatedAtRoute(nameof(GetSingleFood), new { id = newFoodItem.Id },
                                  Mapper.Map <FoodItemDto>(newFoodItem)));
        }
        public void Given_not_valid_FoodCreateDto_should_return_bad_request()
        {
            FoodCreateDto foodDto = null;

            var result = ClassUnderTest.AddFood(ApiVersion.Default, foodDto);

            result.Should().BeOfType <BadRequestResult>();
        }
        public ActionResult Create(FoodCreateDto newFood)
        {
            if (newFood.Id == null)
            {
                _foodService.AddFood(newFood);
            }
            else
            {
                _foodService.EditFood(newFood);
            }

            return(RedirectToAction(nameof(Index)));
        }
        public void Given_valid_FoodCreateDto_should_return_uri_resource()
        {
            var foodCreateDto = new FoodCreateDto()
            {
                Name     = "Portata1",
                Type     = "Antipasto",
                Calories = 100,
                Created  = DateTime.Now
            };

            var foodEntityDto = new FoodEntity()
            {
                Id       = 10,
                Name     = "Portata1",
                Type     = "Antipasto",
                Calories = 100,
                Created  = DateTime.Now
            };

            var foodDto = new FoodDto()
            {
                Id       = 10,
                Name     = "Portata1",
                Type     = "Antipasto",
                Calories = 100,
                Created  = DateTime.Now
            };

            GetMock <IMapper>().Setup(x => x.Map <FoodEntity>(It.IsAny <FoodCreateDto>())).Returns(foodEntityDto);
            GetMock <IMapper>().Setup(x => x.Map <FoodDto>(It.IsAny <FoodEntity>())).Returns(foodDto);

            GetMock <IFoodRepository>().Setup(x => x.Save()).Returns(true);
            GetMock <IFoodRepository>().Setup(x => x.GetSingle(It.IsAny <int>())).Returns(foodEntityDto);

            var actionResult = ClassUnderTest.AddFood(ApiVersion.Default, foodCreateDto);

            var result = actionResult as CreatedAtRouteResult;

            result.Should().NotBeNull();
            result.Value.Should().BeOfType <FoodDto>();
            var resultFood = result.Value as FoodDto;

            resultFood.Id.Should().Be(foodDto.Id);
        }
Beispiel #6
0
        public ActionResult <FoodDto> AddFood(ApiVersion version, [FromBody] FoodCreateDto foodCreateDto)
        {
            if (foodCreateDto == null)
            {
                return(BadRequest());
            }

            FoodEntity toAdd = _mapper.Map <FoodEntity>(foodCreateDto);

            _foodRepository.Add(toAdd);

            if (!_foodRepository.Save())
            {
                throw new Exception("Creating a fooditem failed on save.");
            }

            FoodEntity newFoodItem = _foodRepository.GetSingle(toAdd.Id);

            return(CreatedAtRoute(nameof(GetSingleFood), new { version = version.ToString(), id = newFoodItem.Id },
                                  _mapper.Map <FoodDto>(newFoodItem)));
        }
Beispiel #7
0
 public IActionResult CreateFood([FromBody] FoodCreateDto food)
 {
     try
     {
         if (!ModelState.IsValid)
         {
             return(BadRequest("Invalid object"));
         }
         var userEntity = _mapper.Map <Food>(food);
         _wrapper.Food.CreateFood(userEntity);
         _wrapper.Save();
         var createdFood = _mapper.Map <FoodDto>(userEntity);
         _logger.LogInfo($"Food tablosuna 1 adet kayıt eklendi");
         return(CreatedAtRoute("FoodById", new { id = createdFood.Id }, createdFood));
     }
     catch (Exception ex)
     {
         _logger.LogError($"Food controller createFood içinde hata oluştu : {ex.Message}");
         return(StatusCode(500, "Internal server error"));
     }
 }
Beispiel #8
0
        public IActionResult AddFood([FromBody] FoodCreateDto foodItemViewModel)
        {
            if (foodItemViewModel == null)
            {
                return(BadRequest());
            }

            FoodItem toAdd = _mapper.Map <FoodItem>(foodItemViewModel);

            _foodRepository.Add(toAdd);

            if (!_foodRepository.Save())
            {
                throw new Exception("Creating a fooditem failed on save.");
            }

            FoodItem newFoodItem = _foodRepository.GetSingle(toAdd.Id);

            _hubContext.Clients.All.SendAsync("food-added", _mapper.Map <FoodItemDto>(newFoodItem));
            return(CreatedAtRoute(nameof(GetSingleFood), new { id = newFoodItem.Id },
                                  _mapper.Map <FoodItemDto>(newFoodItem)));
        }