private dynamic ExpandSingleFoodItem(FoodItem foodItem) { var links = GetLinks(foodItem.Id); FoodItemDto item = Mapper.Map <FoodItemDto>(foodItem); var resourceToReturn = item.ToDynamic() as IDictionary <string, object>; resourceToReturn.Add("links", links); return(resourceToReturn); }
public async Task <BaseDtoResponse <FoodItemDto> > GetById(Guid id) { FoodItem item = await _foodItemRepository.GetById(id); if (item == null) { return(new BaseDtoResponse <FoodItemDto>("Food item Not Found")); } FoodItemDto result = _mapper.Map <FoodItem, FoodItemDto>(item); return(new BaseDtoResponse <FoodItemDto>(result)); }
// GET: FoodItem/Details/5 public ActionResult Details(int id) { string url = "fooditemdata/findfooditem/" + id; HttpResponseMessage httpResponse = client.GetAsync(url).Result; if (httpResponse.IsSuccessStatusCode) { FoodItemDto SelectedFoodItem = httpResponse.Content.ReadAsAsync <FoodItemDto>().Result; return(View(SelectedFoodItem)); } else { return(RedirectToAction("Error")); } }
public IActionResult AddNewFoodItem([FromBody] FoodItemDto foodItemDto) { if (foodItemDto == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } FoodItem foodItem = _foodRepository.Add(AutoMapper.Mapper.Map <FoodItem>(foodItemDto)); return(CreatedAtRoute("GetSingleFoodItem", new { id = foodItem.Id }, AutoMapper.Mapper.Map <FoodItemDto>(foodItem))); }
public async Task ShouldGetExistingFiById() { // arrange; // test data set contains this FI; var fiGuid = new Guid("007f91f1-779c-48d1-88dd-7a8aedd820a4"); var expected = new FoodItemDto { Name = "Meat bouillon", PictureUrl = null, FoodItemId = fiGuid }; // act; var res = await SendMediatorRequestInScope(new GetById.Query(fiGuid)); // assert; res.Should().BeEquivalentTo(expected); }
public IHttpActionResult FindFoodItem(int id) { FoodItem FoodItemInfo = db.FoodItems.Find(id); if (FoodItemInfo == null) { return(NotFound()); } FoodItemDto SelectedFoodItem = new FoodItemDto { Restaurant = FoodItemInfo.Restaurant, FoodItemID = FoodItemInfo.FoodItemID, FoodItemName = FoodItemInfo.FoodItemName, FoodItemDesc = FoodItemInfo.FoodItemDesc, FoodItemPrice = FoodItemInfo.FoodItemPrice }; return(Ok(SelectedFoodItem)); }
public IEnumerable <FoodItemDto> GetFoodItems() { List <FoodItem> FoodItems = db.FoodItems.ToList(); List <FoodItemDto> FoodItemDtos = new List <FoodItemDto> { }; foreach (var FoodItem in FoodItems) { FoodItemDto NewFoodItem = new FoodItemDto { Restaurant = FoodItem.Restaurant, FoodItemID = FoodItem.FoodItemID, FoodItemName = FoodItem.FoodItemName, FoodItemDesc = FoodItem.FoodItemDesc, FoodItemPrice = FoodItem.FoodItemPrice }; FoodItemDtos.Add(NewFoodItem); } return(FoodItemDtos); }
public IActionResult UpdateFoodItem(int id, [FromBody] FoodItemDto dto) { var foodItemToCheck = _foodRepository.GetSingle(id); if (foodItemToCheck == null) { return(NotFound()); } if (id != dto.Id) { return(BadRequest("ids do not match")); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var updatedFoodItem = _foodRepository.Update(id, AutoMapper.Mapper.Map <FoodItem>(dto)); return(Ok(AutoMapper.Mapper.Map <FoodItemDto>(updatedFoodItem))); }
public IActionResult UpdateDeviceSetup(int id, [FromBody] FoodItemDto dto) { DeviceSetup deviceSetupToCheck = _deviceSetupRepository.GetSingle(id); if (deviceSetupToCheck == null) { return(NotFound()); } if (id != dto.Id) { return(BadRequest("ids do not match")); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } var updatedItem = _deviceSetupRepository.Update(AutoMapper.Mapper.Map <DeviceSetup>(dto)); return(Ok(AutoMapper.Mapper.Map <DeviceSetupDto>(updatedItem))); }
public async Task <BaseDtoResponse <FoodItemDto> > Add(FoodItemCreateRequest request) { try { FoodItem model = _mapper.Map <FoodItemCreateRequest, FoodItem>(request); FoodItem item = await _foodItemRepository.Add(model); if (item != null) { FoodItemDto result = _mapper.Map <FoodItem, FoodItemDto>(item); return(new BaseDtoResponse <FoodItemDto>(result)); } else { return(new BaseDtoResponse <FoodItemDto>("Unable to create a new food item, try again")); } } catch (Exception ex) { return(new BaseDtoResponse <FoodItemDto>($"An error occurred when saving the food item: {ex.Message}")); } }
public async Task <BaseDtoResponse <FoodItemDto> > Delete(Guid id) { try { FoodItem item = await _foodItemRepository.GetById(id); if (item != null) { await _foodItemRepository.Delete(item); FoodItemDto result = _mapper.Map <FoodItem, FoodItemDto>(item); return(new BaseDtoResponse <FoodItemDto>(result)); } else { return(new BaseDtoResponse <FoodItemDto>("Unable to delete: item Not found")); } } catch (Exception ex) { return(new BaseDtoResponse <FoodItemDto>($"An error occurred when deleting the item: {ex.Message}")); } }
private void HandleImage(FoodItemDto viewModel, FoodItem singleById) { // save new image var newFileName = SaveImage(viewModel); if (!String.IsNullOrEmpty(newFileName)) { if (singleById.ImageString != _appSettingsAccessor.DummyImageName) { // if old image is there var oldimagePath = Path.Combine(_hostingEnvironment.WebRootPath, _appSettingsAccessor.ImageSaveFolder, singleById.ImageString); // delete old image if (System.IO.File.Exists(oldimagePath)) { System.IO.File.Delete(oldimagePath); } } // save db entry singleById.ImageString = newFileName; } }
public ActionResult AddFoodToList([FromBody] FoodItemDto viewModel) { if (viewModel == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } FoodItem item = _mapper.Map <FoodItem>(viewModel); item.Created = DateTime.Now; FoodItem newFoodItem = _foodRepository.Add(item); _chatHubContext.Clients.All.SendAsync("FoodAdded", newFoodItem); return(CreatedAtRoute( nameof(GetSingleFood), new { id = newFoodItem.Id }, _mapper.Map <FoodItemDto>(newFoodItem))); }
public IActionResult UpdateFoodInList(Guid foodItemId, [FromBody] FoodItemDto viewModel) { if (viewModel == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } FoodItem singleById = _foodRepository.GetSingle(foodItemId, null); if (singleById == null) { return(NotFound()); } singleById.ItemName = viewModel.ItemName; singleById.IsPublic = viewModel.IsPublic; if (ImageIsNewImage(viewModel)) { HandleImage(viewModel, singleById); } _foodRepository.Update(singleById); if (_foodListRepository.Save()) { return(Ok(Mapper.Map <FoodItemDto>(singleById))); } return(BadRequest()); }
// GET: FoodItem/Edit/5 public ActionResult Edit(int id) { UpdateFoodItem ViewModel = new UpdateFoodItem(); string url = "fooditemdata/findfooditem/" + id; HttpResponseMessage httpResponse = client.GetAsync(url).Result; if (httpResponse.IsSuccessStatusCode) { FoodItemDto SelectedFoodItem = httpResponse.Content.ReadAsAsync <FoodItemDto>().Result; ViewModel.FoodItem = SelectedFoodItem; url = "restaurantdata/GetRestaurants"; httpResponse = client.GetAsync(url).Result; IEnumerable <RestaurantDto> RestaurantList = httpResponse.Content.ReadAsAsync <IEnumerable <RestaurantDto> >().Result; ViewModel.Restaurants = RestaurantList; return(View(ViewModel)); } else { return(RedirectToAction("Error")); } }
public IActionResult AddFoodToList([FromBody] FoodItemDto viewModel) { if (viewModel == null) { return(BadRequest()); } if (!ModelState.IsValid) { return(BadRequest(ModelState)); } FoodItem item = Mapper.Map <FoodItem>(viewModel); item.Created = DateTime.Now; FoodItem newFoodItem = _foodRepository.Add(item); _coolMessageHubContext.Clients.All.InvokeAsync("FoodAdded", newFoodItem); return(CreatedAtRoute( "GetSingleFood", new { foodItemId = newFoodItem.Id }, Mapper.Map <FoodItemDto>(newFoodItem))); }
public Task FoodAdded(FoodItemDto foodItem) { return(Clients.All.InvokeAsync("foodAdded", foodItem)); }
public ResultMessage Update(FoodItemDto foodItem, int id) { //var validationResult = _validator.Validate(product); //if (!validationResult.IsValid) // return new ResultMessage // { // Status = HttpStatusCode.BadRequest, // ValidationMessages = validationResult.GetErrorsList() // }; try { _logger.LogInformation($"START: FOOD.Update: Name:{foodItem.Name}"); var oldFoodItem = _unitOfWork.FoodItemsRepository.GetById(id); if (oldFoodItem != null && !oldFoodItem.IsDraft) { oldFoodItem.Name = foodItem.Name; oldFoodItem.ArabicTxt = foodItem.ArabicTxt; oldFoodItem.Alcohol = foodItem.Alcohol; oldFoodItem.Amount = foodItem.Amount; oldFoodItem.B1 = foodItem.B1; oldFoodItem.B2 = foodItem.B2; oldFoodItem.B12 = foodItem.B12; oldFoodItem.B3 = foodItem.B3; oldFoodItem.B5 = foodItem.B5; oldFoodItem.B6 = foodItem.B6; oldFoodItem.Caffiene = foodItem.Caffiene; oldFoodItem.Calcuim = foodItem.Calcuim; oldFoodItem.Carbs = foodItem.Carbs; oldFoodItem.Cholesterol = foodItem.Cholesterol; oldFoodItem.Copper = foodItem.Copper; oldFoodItem.Cystine = foodItem.Cystine; oldFoodItem.Energy = foodItem.Energy; oldFoodItem.Fat = foodItem.Fat; oldFoodItem.Fiber = foodItem.Fiber; oldFoodItem.Folate = foodItem.Folate; oldFoodItem.Histidine = foodItem.Histidine; oldFoodItem.Iron = foodItem.Iron; oldFoodItem.Isoleucine = foodItem.Isoleucine; oldFoodItem.Leucine = foodItem.Leucine; oldFoodItem.Lysine = foodItem.Lysine; oldFoodItem.Magnesium = foodItem.Magnesium; oldFoodItem.Manganese = foodItem.Manganese; oldFoodItem.Methionine = foodItem.Methionine; oldFoodItem.Monounsaturated = foodItem.Monounsaturated; oldFoodItem.NetCarbs = foodItem.NetCarbs; oldFoodItem.Omega3 = foodItem.Omega3; oldFoodItem.Omega6 = foodItem.Omega6; oldFoodItem.Phenylalanine = foodItem.Phenylalanine; oldFoodItem.Phosphorus = foodItem.Phosphorus; oldFoodItem.Polyunsaturated = foodItem.Polyunsaturated; oldFoodItem.Potassium = foodItem.Potassium; oldFoodItem.Protein = foodItem.Protein; oldFoodItem.Saturated = foodItem.Saturated; oldFoodItem.Selenium = foodItem.Selenium; oldFoodItem.Sodium = foodItem.Sodium; oldFoodItem.Starch = foodItem.Starch; oldFoodItem.Sugars = foodItem.Sugars; oldFoodItem.Threonine = foodItem.Threonine; oldFoodItem.TransFats = foodItem.TransFats; oldFoodItem.Tryptophan = foodItem.Tryptophan; oldFoodItem.Tyrosine = foodItem.Tyrosine; oldFoodItem.Valine = foodItem.Valine; oldFoodItem.VitaminA = foodItem.VitaminA; oldFoodItem.VitaminC = foodItem.VitaminC; oldFoodItem.VitaminD = foodItem.VitaminD; oldFoodItem.VitaminE = foodItem.VitaminE; oldFoodItem.VitaminK = foodItem.VitaminK; oldFoodItem.Water = foodItem.Water; oldFoodItem.Zinc = foodItem.Zinc; oldFoodItem.UpdatedBy = foodItem.UpdatedBy; oldFoodItem.UpdatedAt = DateTime.Now; _unitOfWork.FoodItemsRepository.Update(oldFoodItem); _unitOfWork.Commit(); _logger.LogInformation($"END: FOOD.Update: Name:{foodItem.Name} --SUCCESS"); return(new ResultMessage { Status = HttpStatusCode.OK, Data = oldFoodItem.Adapt <FoodItemDto>() }); } else { _logger.LogInformation($"END: FOOD.Update: Name:{foodItem.Name} --NOTFOUND"); return(new ResultMessage { Status = HttpStatusCode.NotFound, ErrorCode = (int)FoodItemsErrorsCodeEnum.NotFoundError }); } } catch (Exception ex) { _logger.LogError(ex, string.Empty); return(new ResultMessage { Status = HttpStatusCode.InternalServerError, ErrorCode = (int)FoodItemsErrorsCodeEnum.UpdateError }); } }
private static bool ImageIsNewImage(FoodItemDto viewModel) { return(viewModel.ImageString.StartsWith(DataImagePngBase64Prefix)); }
public ActionResult Put(int id, [FromForm] FoodItemDto foodItemDto) { foodItemDto.UpdatedBy = GetCurrentUser().Id; return(GetStatusCodeResult(_neutrintsManager.Update(foodItemDto, id))); }
public ActionResult Post([FromForm] FoodItemDto foodItemDto) { foodItemDto.CreatedBy = GetCurrentUser().Id; return(GetStatusCodeResult(_neutrintsManager.Insert(foodItemDto))); }