public void UpdateDish(int restaurantId, int dishId, IDish dish) { RestaurantEntity restaurantEntity = _dbContext .Restaurants .Include(r => r.Dishes) .FirstOrDefault(r => r.Id == restaurantId); if (restaurantEntity is null) { throw new NotFoundException("Restaurant not found."); } DishEntity dishEntity = restaurantEntity .Dishes .FirstOrDefault(d => d.Id == dishId); if (dishEntity is null) { throw new NotFoundException("Dish not found."); } dishEntity = _mapper.Map(dish, dishEntity); _dbContext.Dishes.Update(dishEntity); _dbContext.SaveChanges(); }
public ControllerMessage Update(DishEditDTO dishEditDTO) { string message = String.Empty; bool success = Validate(dishEditDTO, ref message); if (success) { try { DishEntity dishEntity = unitOfWork.Dishes.Get(dishEditDTO.OldName); dishEntity.Name = dishEditDTO.NewName; dishEntity.Price = dishEditDTO.Price; unitOfWork.Commit(); message = "Dish changed"; } catch (Exception ex) { success = false; message = ExceptionMessageBuilder.BuildMessage(ex); } } return(new ControllerMessage(success, message)); }
public ControllerMessage Delete(string dishName) { string message = String.Empty; bool success = true; try { DishEntity dishEntity = unitOfWork.Dishes.Get(dishName); if (dishEntity != null) { unitOfWork.Dishes.Remove(dishEntity); unitOfWork.Commit(); message = "Dish deleted"; } else { success = false; message = "Dish not found"; } } catch (Exception ex) { success = false; message = ExceptionMessageBuilder.BuildMessage(ex); } return(new ControllerMessage(success, message)); }
public void DeleteDish(int id) { DishEntity dish = db.Dishes.Find(id); if (dish != null) { db.Dishes.Remove(dish); } }
public void UpdateDish(DishEntity dish) { DishEntity oldDish = db.Dishes.Where(item => item.ID == dish.ID).FirstOrDefault(); oldDish.CookingTime = dish.CookingTime; oldDish.Cuisine = dish.Cuisine; oldDish.Name = dish.Name; oldDish.WeightInGrams = dish.WeightInGrams; }
public ControllerMessage UpdateRecipes(DishEditDTO dishEditDTO) { string message = String.Empty; bool success = Validate(dishEditDTO, ref message); if (success) { try { DishEntity dishEntity = unitOfWork.Dishes.Get(dishEditDTO.OldName); IEnumerable <string> added = dishEditDTO.Recipes .Select(recipe => recipe.Name) .Where(recipeName => !dishEntity.Recipes.Select(recipe => recipe.Name).Contains(recipeName)); IEnumerable <string> deleted = dishEntity.Recipes .Select(recipe => recipe.Name) .Where(recipeName => !dishEditDTO.Recipes.Select(recipe => recipe.Name).Contains(recipeName)) .ToList(); foreach (DishRecipeEditDTO recipe in dishEditDTO.Recipes.Where(recipe => added.Contains(recipe.Name))) { if (!unitOfWork.Recipes.Exists(recipe.Name)) { RecipeEntity recipeEntity = new RecipeEntity { Name = recipe.Name, Description = recipe.Description, Dish = dishEntity, RecipeIngredients = recipe.Ingredients.Select(ingredient => new RecipeIngredientEntity { Portion = ingredient.Portion, Ingredient = unitOfWork.Ingredients.Get(ingredient.Ingredient) }) .ToList() }; unitOfWork.Recipes.Add(recipeEntity); } } foreach (string recipeName in deleted) { RecipeEntity recipeEntity = dishEntity.Recipes.Single(recipe => recipe.Name == recipeName); unitOfWork.Recipes.Remove(recipeEntity); } unitOfWork.Commit(); message = "Dish's recipes changed"; } catch (Exception ex) { success = false; message = ExceptionMessageBuilder.BuildMessage(ex); } } return(new ControllerMessage(success, message)); }
public Dish(DishEntity ObjEntity) { Init(); Fields = ObjEntity; if (Fields.ID != null && Fields.ID != default(Guid)) { IsNew = false; } InitBaseFields(); }
public ControllerMessage Add(RecipeAddDTO recipeAddDTO) { string message = String.Empty; bool success = Validate(recipeAddDTO, ref message); if (success) { try { DishEntity dish = unitOfWork.Dishes.Get(recipeAddDTO.DishName); if (dish != null) { RecipeEntity recipeEntity = new RecipeEntity { Name = recipeAddDTO.Name, Description = recipeAddDTO.Description, Dish = dish, RecipeIngredients = new List <RecipeIngredientEntity>() }; foreach (IngredientPortion ingredientPortion in recipeAddDTO.Ingredients) { IngredientEntity ingredientEntity = unitOfWork.Ingredients.Get(ingredientPortion.Ingredient); if (ingredientEntity != null) { recipeEntity.RecipeIngredients.Add(new RecipeIngredientEntity { Ingredient = ingredientEntity, Recipe = recipeEntity, Portion = ingredientPortion.Portion }); } } unitOfWork.Recipes.Add(recipeEntity); unitOfWork.Commit(); message = "Recipe added"; } else { success = false; message = "Dish not found"; } } catch (Exception ex) { success = false; message = ExceptionMessageBuilder.BuildMessage(ex); } } return(new ControllerMessage(success, message)); }
private void InitBaseFields() { if (Fields == null) { Fields = new DishEntity(); } if (Fields.ID == null) { Fields.ID = Guid.NewGuid(); } }
public void SaveDishes(IList <DishEntity> dishesToSave) { if (dishesToSave == null || !dishesToSave.Any()) { return; } var sqlParam = DishEntity.BindDishTable("@dishes", dishesToSave); dbContext.ExecuteNonQuery("SaveDishes", Timeout, sqlParam); }
public DataControllerMessage <DishEditDTO> Get(string dishName) { string message = String.Empty; bool success = true; DishEditDTO data = null; try { DishEntity dishEntity = unitOfWork.Dishes.Get(dishName); if (dishEntity != null) { data = new DishEditDTO { NewName = dishEntity.Name, OldName = dishEntity.Name, Price = dishEntity.Price, CategoryName = dishEntity.Category.Name }; foreach (RecipeEntity recipeEntity in dishEntity.Recipes) { DishRecipeEditDTO dishRecipe = new DishRecipeEditDTO { Name = recipeEntity.Name, Description = recipeEntity.Description }; var ingredients = recipeEntity.RecipeIngredients.Select(ri => new IngredientPortion { Ingredient = ri.Ingredient.Name, Portion = ri.Portion }) .OrderBy(ingredient => ingredient.Ingredient); dishRecipe.Ingredients.AddRange(ingredients); data.Recipes.Add(dishRecipe); } } else { success = false; message = "Dish not found"; } } catch (Exception ex) { success = false; message = ExceptionMessageBuilder.BuildMessage(ex); } return(new DataControllerMessage <DishEditDTO>(success, message, data)); }
private static void FillDishEntityObject(DishEntity Fields, DataRow row) { //Base Fields.ID = (row["ID"] != DBNull.Value) ? (Guid?)row["ID"] : null; //DishEntity Fields.StallID = (Guid)row["StallId"]; Fields.Name = row["Name"].ToString(); Fields.Description = row["Description"].ToString(); Fields.Photo = null; Fields.Price = float.Parse(row["Price"].ToString()); Fields.OutOfOrder = (bool)row["OutOfOrder"]; }
public async Task <SuccessResponseModel> AddAsync(AdminAddDishModel model) { DishEntity dish = _mapper.Map <DishEntity>(model); await _context.Dishes.AddAsync(dish); await _context.SaveChangesAsync(); await AddAdditionals(dish.Id, dish.Additionals, model.Additionals); return(new SuccessResponseModel { Id = dish.Id }); }
internal static List <DishEntity> MapDishAsListOfEntities(DataSet dsFields) { List <DishEntity> lst = new List <DishEntity>(); DishEntity entityObject; foreach (DataRow row in dsFields.Tables[0].Rows) { entityObject = new DishEntity(); FillDishEntityObject(entityObject, row); lst.Add(entityObject); } return(lst); }
public async Task <Dish> AddOrUpdateDish( [HttpTrigger(AuthorizationLevel.Anonymous, "put", "post", Route = "dishes")] HttpRequest req, [Table("Potluck")] CloudTable cloudTable, ILogger log) { string requestBody = await new StreamReader(req.Body).ReadToEndAsync(); var data = JsonConvert.DeserializeObject <Dish>(requestBody); DishEntity dish = new DishEntity(data.User, data.DishType); dish.DishName = data.DishName; TableOperation addOrUpdateOperation = TableOperation.InsertOrReplace(dish); await cloudTable.ExecuteAsync(addOrUpdateOperation); return(data); }
public async Task DeleteDish( [HttpTrigger(AuthorizationLevel.Anonymous, "delete", Route = "dishes")] HttpRequest req, [Table("Potluck")] CloudTable cloudTable, ILogger log) { string requestBody = await new StreamReader(req.Body).ReadToEndAsync(); var data = JsonConvert.DeserializeObject <Dish>(requestBody); DishEntity dish = new DishEntity(data.User, data.DishType); dish.DishName = data.DishName; dish.ETag = "*"; TableOperation deleteOperation = TableOperation.Delete(dish); await cloudTable.ExecuteAsync(deleteOperation); return; }
public static DishModel CreateFromEntity(DishEntity d) { if (d == null) { return null; } return new DishModel { DishId = d.DishId, DishName = d.DishName, Description = d.Description, Ingredients = d.Ingredients, Price = d.Price, ThumbNailPictureKey = d.ThumbNailPictureKey, ProviderId = d.ProviderId, Type = d.DishType.ToString(), WaitingTimeInMins = d.WaitingTimeInMins, Available = d.Available }; }
public static DishModel CreateFromEntity(DishEntity d) { if (d == null) { return(null); } return(new DishModel { DishId = d.DishId, DishName = d.DishName, Description = d.Description, Ingredients = d.Ingredients, Price = d.Price, ThumbNailPictureKey = d.ThumbNailPictureKey, ProviderId = d.ProviderId, Type = d.DishType.ToString(), WaitingTimeInMins = d.WaitingTimeInMins, Available = d.Available }); }
public ControllerMessage Add(DishAddDTO dishAddDTO) { string message = String.Empty; bool success = Validate(dishAddDTO, ref message); if (success) { try { CategoryEntity category = unitOfWork.Categories.Get(dishAddDTO.CategoryName); if (category != null) { DishEntity dishEntity = new DishEntity { Name = dishAddDTO.Name, Price = dishAddDTO.Price, Category = category }; unitOfWork.Dishes.Add(dishEntity); unitOfWork.Commit(); message = "Dish added"; } else { success = false; message = "Category not found"; } } catch (Exception ex) { success = false; message = ExceptionMessageBuilder.BuildMessage(ex); } } return(new ControllerMessage(success, message)); }
public IDish GetDishById(int restaurantId, int dishId) { RestaurantEntity restaurantEntity = _dbContext .Restaurants .Include(r => r.Dishes) .FirstOrDefault(r => r.Id == restaurantId); if (restaurantEntity is null) { throw new NotFoundException("Restaurant not found."); } DishEntity dishEntity = restaurantEntity .Dishes .FirstOrDefault(d => d.Id == dishId); if (dishEntity is null) { throw new NotFoundException("Dish not found."); } return(_mapper.Map <IDish>(dishEntity)); }
public ControllerMessage UpdateMenu(MenuDTO menu) { string message = String.Empty; bool success = true; try { foreach (CategoryMenuDTO categoryDTO in menu.Categories.Where(category => category.OldName != category.NewName)) { CategoryEntity categoryEntity = unitOfWork.Categories.Get(categoryDTO.OldName); if (categoryEntity != null) { categoryEntity.Name = categoryDTO.NewName; } } foreach (DishMenuDTO dishDTO in menu.Categories.SelectMany(category => category.Dishes)) { DishEntity dishEntity = unitOfWork.Dishes.Get(dishDTO.OldName); if (dishEntity != null) { dishEntity.Name = dishDTO.NewName; dishEntity.Price = dishDTO.Price; } } unitOfWork.Commit(); message = "Saved changes"; } catch (Exception ex) { success = false; message = ExceptionMessageBuilder.BuildMessage(ex); } return(new ControllerMessage(success, message)); }
public void AddDish(DishEntity dish) { db.Dishes.Add(dish); }
public void DeleteDish(DishEntity dish) { DishEntity x = db.Dishes.Where(item => item.ID == dish.ID).FirstOrDefault(); db.Dishes.Remove(x); }
public static Dish ToDto(this DishEntity dish) => new()
public void CreateDish(DishEntity newDish) { dbContext.Entry(newDish.Restaurant).State = EntityState.Unchanged; dbContext.Dishes.Add(newDish); }
public bool UpdateDish(DishEntity dish) { dbContext.Entry(dish.Restaurant).State = EntityState.Unchanged; dbContext.Dishes.Update(dish); return(true); }