public void CreateGrocery([FromBody] GroceryDTO groceryDTO) { var category = _categoryService.GetCategoryById(groceryDTO.CategoryId); var grocery = new Grocery { GroceryName = groceryDTO.GroceryName, Category = category }; _groceryService.Create(grocery); }
public IHttpActionResult PostGrocery(int clusterId, GroceryDTO grocery) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Cluster cluster = UnitOfWork.ClusterRepository.GetByID(clusterId); if (cluster == null) { return(NotFound()); } else if (cluster.ApplicationUsers.FirstOrDefault(x => x.Id == UserRecord.Id) == null) { return(Unauthorized()); } Category category = null; if (grocery.Category != null) { category = UnitOfWork.CategoryRepository.Get(x => x.Name == grocery.Category).FirstOrDefault(); if (category == null) { return(BadRequest("Category name is unknown")); } } Grocery entity = new Grocery() { Name = grocery.Name, Description = grocery.Description, Category = category, Picture = grocery.Picture, }; var clusterGrocery = new ClusterGrocery() { Cluster = cluster, Grocery = entity, Quantity = grocery.Quantity, Name = entity.Name, UpdateTime = DateTime.Now }; UnitOfWork.ClusterGroceriesRepository.Insert(clusterGrocery); UnitOfWork.Save(); return(CreatedAtRoute("GetGrocery", new { clusterId = clusterId, id = entity.Id }, Mapper.Map <GetGroceryDTO>(clusterGrocery))); }