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); }
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))); }
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")); } }
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))); }