public ActionResult ReportChartPie() { var orders = db.Orders.Include(o => o.ApplicationUser).Include(o => o.DailyMenu) .OrderBy(o => o.DailyMenuID).GroupBy(o => o.DailyMenuID) .Select(o => new RenderPie { MenuId = o.Key.Value, Orders = o.ToList().Count().ToString() }).ToList(); List <string> listMenuName = new List <string>(); List <string> listCount = new List <string>(); foreach (var item in orders) { int id = item.MenuId; DailyMenu dm = db.DailyMenus.FirstOrDefault(d => d.DailyMenuID == id); listMenuName.Add(dm.DailyMenuName); listCount.Add(item.Orders); } var myChart = new Chart(width: 600, height: 400, theme: ChartTheme.Blue) .AddTitle("Отчет о заказах меню") .AddSeries( name: "Отчет", chartType: "Pie", xValue: listMenuName, yValues: listCount) .Write(); return(null); }
public void InvokeDataCommitOnce_WhenThePassedArgumentsAreValid() { //Arrange var dataMock = new Mock <IHomeMadeFoodData>(); var recipesServiceMock = new Mock <IRecipesService>(); DailyMenuService dailyMenuService = new DailyMenuService(dataMock.Object, recipesServiceMock.Object); Guid recipeId = Guid.NewGuid(); IEnumerable <Guid> recipesIds = new List <Guid>() { recipeId }; DateTime date = new DateTime(2017, 5, 5); Guid dailyMenuId = Guid.NewGuid(); var ingredients = new List <Ingredient>() { new Ingredient() { Id = Guid.NewGuid(), Name = "IngredientName", FoodCategoryId = Guid.NewGuid(), RecipeId = recipeId, QuantityInMeasuringUnit = 0.200, PricePerMeasuringUnit = 1.29m } }; var recipe = new Recipe() { Id = recipeId, Title = "Title Of A New Recipe", Describtion = "This is a decsribtion", Instruction = "Instructions of the recipe", DishType = DishType.MainDish, Ingredients = ingredients }; var recipes = new List <Recipe>() { recipe }; DailyMenu dailyMenu = new DailyMenu() { Id = dailyMenuId, Date = date, DayOfWeek = date.DayOfWeek }; recipesServiceMock.Setup(x => x.GetAllRecipes()).Returns(recipes); dataMock.Setup(x => x.DailyMenus.Add(dailyMenu)); //Act dailyMenuService.AddDailyMenu(date, recipesIds); //Assert dataMock.Verify(x => x.SaveChanges(), Times.Once); }
public ActionResult UserProfile(ManageMessageId?message) { ViewBag.StatusMessage = message == ManageMessageId.ChangePasswordSuccess ? "Ваш пароль изменен." : ""; string userId = User.Identity.GetUserId(); var user = (new ApplicationDbContext()).Users.Include(s => s.Orders).FirstOrDefault(s => s.Id == userId); List <Order> order = db.Orders.Where(t => t.UserId.Equals(userId)).ToList(); List <UserOrderHelper> dailyMenus = new List <UserOrderHelper>(); for (int i = 0; i < order.Count; i++) { var c = order[i].DailyMenuID.Value; DailyMenu dailyMenu = db.DailyMenus.Where(t => t.DailyMenuID.Equals(c)).FirstOrDefault(); DateTime date = order[i].Date; UserOrderHelper helper = new UserOrderHelper(dailyMenu, date); dailyMenus.Add(helper); } dynamic mymodel = new ExpandoObject(); mymodel.User = user; mymodel.DailyMenus = dailyMenus; return(View(mymodel)); }
public async Task <ICollection <DailyMenu> > GetRestoMenus(int nextDays) { List <DailyMenu> menus = new List <DailyMenu>(nextDays); DateTime date = DateTime.Now; int i = 0; bool dsvFuckedUp = false; // In case DSV is _really_ late filling in the menus while (i <= nextDays && !dsvFuckedUp) { date = date.AddDays(1); try { DailyMenu menu = await GetRestoMenu(date); if (menu != null) { menus.Add(menu); i++; } } catch (DataSourceException ex) { dsvFuckedUp = true; } } return(menus); }
public void DeleteDailyMenu(DailyMenu menu) { Guard.WhenArgument(menu, "menu").IsNull().Throw(); this.data.DailyMenus.Delete(menu); this.data.SaveChanges(); }
public void RedirectToActionIndex__WhenDailyMenuIsSuccessfullyDeleted() { //Arrange var dailyMenusServiceMock = new Mock <IDailyMenuService>(); var recipesServiceMock = new Mock <IRecipesService>(); var mappingServiceMock = new Mock <IMappingService>(); var controller = new DailyMenusController(recipesServiceMock.Object, dailyMenusServiceMock.Object, mappingServiceMock.Object); var id = Guid.NewGuid(); DateTime date = DateTime.Today; DayOfWeek dayOfWeek = date.DayOfWeek; DailyMenu dailyMenu = new DailyMenu() { Id = id, Date = date, DayOfWeek = dayOfWeek }; dailyMenusServiceMock.Setup(x => x.GetDailyMenuById(id)).Returns(dailyMenu); dailyMenusServiceMock.Setup(x => x.DeleteDailyMenu(dailyMenu)); //Act & Assert controller.WithCallTo(x => x.DeleteDailyMenuConfirm(id)) .ShouldRedirectTo(x => x.Index()); }
private PublicDalilyMenuViewModel GetPublicDailyMenuViewModel(DailyMenu menu) { var menuModel = this.mappingService.Map <PublicDalilyMenuViewModel>(menu); menuModel.Salads = menu.Recipes.Where(x => x.DishType == DishType.Salad) .Select(this.mappingService.Map <PublicRecipeViewModel>) .ToList(); menuModel.BigSalads = menu.Recipes.Where(x => x.DishType == DishType.BigSalad) .Select(this.mappingService.Map <PublicRecipeViewModel>); menuModel.Soups = menu.Recipes.Where(x => x.DishType == DishType.Soup) .Select(this.mappingService.Map <PublicRecipeViewModel>) .ToList(); menuModel.MainDishes = menu.Recipes.Where(x => x.DishType == DishType.MainDish) .Select(this.mappingService.Map <PublicRecipeViewModel>) .ToList(); menuModel.Vegetarian = menu.Recipes.Where(x => x.DishType == DishType.Vegetarian) .Select(this.mappingService.Map <PublicRecipeViewModel>) .ToList(); menuModel.Pasta = menu.Recipes.Where(x => x.DishType == DishType.Pasta) .Select(this.mappingService.Map <PublicRecipeViewModel>) .ToList(); menuModel.BBQ = menu.Recipes.Where(x => x.DishType == DishType.BBQ) .Select(this.mappingService.Map <PublicRecipeViewModel>) .ToList(); return(menuModel); }
public bool InsertAllDailyMenuOfWeek(Week week) { try { foreach (var item in (new AgeGroupDAO().ListAll())) { for (DateTime date = week.StartDate; date <= week.EndDate; date = date.AddDays(1)) { DailyMenu entity = new DailyMenu(); entity.WeekID = week.WeekID; entity.Date = date; entity.AgeGroupID = item.AgeGroupID; entity.IsForm = false; entity.Status = false; if (InsertDailyMenu(entity) <= 0) { return(false); } } } return(true); } catch { return(false); } }
//*[@id="daily"]/div[2]/div[1] private static List <DailyMenu> GetDailyMenusForWeek(HtmlNode menu) { var days = menu.SelectNodes("./div[@class=\"menu-div\"]").ToArray(); var dailyMenus = new List <DailyMenu>(); int day = 0; for (var i = 0; i < days.Length; i++) { var soups = GetSoups(days[i]); if (string.IsNullOrEmpty(soups.First().Name)) { break; } var dailyMenu = new DailyMenu(DateTime.Today) { Soups = soups, Meals = GetMeals(days[i]) }; dailyMenus.Add(dailyMenu); day++; } return(dailyMenus); }
public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } DailyMenu dailyMenu = db.DailyMenus.Include(d => d.Dishes).FirstOrDefault(d => d.DailyMenuID == id); List <Dish> dishes = dailyMenu.Dishes.ToList(); List <UserResponce> responses = db.UserResponces.Include(u => u.ApplicationUser).Where(t => t.DailyMenuID == id).ToList(); var userId = User.Identity.GetUserId(); if (dailyMenu == null) { return(HttpNotFound()); } dynamic model = new ExpandoObject(); model.DailyMenu = dailyMenu; model.Dishes = dishes; model.Responses = responses; model.Id = userId; return(View(model)); }
public ActionResult DeleteConfirmed(int id) { DailyMenu dailyMenu = db.DailyMenus.Find(id); db.DailyMenus.Remove(dailyMenu); db.SaveChanges(); return(RedirectToAction("Index")); }
public ActionResult Edit([Bind(Include = "ID,DayName")] DailyMenu dailyMenu) { if (ModelState.IsValid) { db.Entry(dailyMenu).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(dailyMenu)); }
public ActionResult Order(int id) { string userId = User.Identity.GetUserId(); DailyMenu dailyMenu = db.DailyMenus.FirstOrDefault(d => d.DailyMenuID == id); Order order = new Order { DailyMenuID = id, UserId = userId, Date = DateTime.Now, DateString = DateTime.Now.ToShortDateString(), FinalyPrice = dailyMenu.Price, Count = 1 }; return(View(order)); }
public void RedirectToActionIndex_WithTheCorrectModel__WhenModelStateIsValid() { //Arrange var dailyMenusServiceMock = new Mock <IDailyMenuService>(); var recipesServiceMock = new Mock <IRecipesService>(); var mappingServiceMock = new Mock <IMappingService>(); var controller = new DailyMenusController(recipesServiceMock.Object, dailyMenusServiceMock.Object, mappingServiceMock.Object); Guid id = Guid.NewGuid(); DateTime date = DateTime.Today; DayOfWeek dayOfWeek = date.DayOfWeek; var recipeId = Guid.Empty; var recipesIds = new List <Guid>() { recipeId }; DailyMenu dailyMenu = new DailyMenu() { Id = id, Date = date, DayOfWeek = dayOfWeek }; DailyMenuViewModel dailyMenuViewModel = new DailyMenuViewModel() { Id = dailyMenu.Id, Date = dailyMenu.Date, DayOfWeek = dailyMenu.DayOfWeek }; var selectedMenu = dailyMenuViewModel; var allMenus = new AddDailyMenuViewModel(); var dailyMenus = new List <DailyMenu>(); dailyMenusServiceMock.Setup(x => x.GetDailyMenuById(id)).Returns(dailyMenu); dailyMenusServiceMock.Setup(x => x.GetAllDailyMenus()).Returns(dailyMenus); mappingServiceMock.Setup(x => x.Map <DailyMenuViewModel>(dailyMenu)).Returns(dailyMenuViewModel); mappingServiceMock.Setup(x => x.Map <AddDailyMenuViewModel>(dailyMenus)).Returns(allMenus); var model = new EditDailyMenuViewModel() { Id = id, SelectedDate = DateTime.Today, SelectedDailyMenuViewModel = selectedMenu, DailyMenuViewModelWithAllRecipes = allMenus }; //Act & Assert controller.WithCallTo(x => x.EditDailyMenu(id)) .ShouldRenderView("EditDailyMenu"); //Act & Assert controller.WithCallTo(x => x.EditDailyMenu(id, date, recipesIds)) .ShouldRedirectTo(x => x.Index()); }
/// <summary> /// Update daily menu for restaurants /// </summary> public void UpdateRestorauntsMenu() { Restaurant lipaRestaurant = _restaurantQueryRepository.Query(new RestaurantQueryModel { Name = Constants.POD_LIPOM_NAME }) .Map(x => x.Items.First()) .Reduce(_ => throw new System.Exception()); Restaurant hedoneRestaurant = _restaurantQueryRepository.Query(new RestaurantQueryModel { Name = Constants.HEDONE_NAME }) .Map(x => x.Items.First()) .Reduce(_ => throw new System.Exception()); Restaurant teglasRestaurant = _restaurantQueryRepository.Query(new RestaurantQueryModel { Name = Constants.TEGLAS_NAME }) .Map(x => x.Items.First()) .Reduce(_ => throw new System.Exception()); Restaurant indexRestaurant = _restaurantQueryRepository.Query(new RestaurantQueryModel { Name = Constants.INDEX_NAME }) .Map(x => x.Items.First()) .Reduce(_ => throw new System.Exception()); DailyMenu lipaDailyMenu = _dailyMenuQueryRepository.Query(new DailyMenuQueryModel { RestaurantId = lipaRestaurant.Id }) .Map(x => x.Items.FirstOrDefault()) .Reduce(_ => throw new System.Exception()); DailyMenu hedoneDailyMenu = _dailyMenuQueryRepository.Query(new DailyMenuQueryModel { RestaurantId = hedoneRestaurant.Id }) .Map(x => x.Items.FirstOrDefault()) .Reduce(_ => throw new System.Exception()); DailyMenu teglasDailyMenu = _dailyMenuQueryRepository.Query(new DailyMenuQueryModel { RestaurantId = teglasRestaurant.Id }) .Map(x => x.Items.FirstOrDefault()) .Reduce(_ => throw new System.Exception()); DailyMenu indexDailyMenu = _dailyMenuQueryRepository.Query(new DailyMenuQueryModel { RestaurantId = indexRestaurant.Id }) .Map(x => x.Items.FirstOrDefault()) .Reduce(_ => throw new System.Exception()); // Get food from sheet, update database for new and changed and update daily menu var restaurantOffers = _sheetsApi.GetOffers(DateTime.Today).ToList(); var updateDate = DateTime.Today; UpdateRestaurant(restaurantOffers, lipaRestaurant, lipaDailyMenu, updateDate); UpdateRestaurant(restaurantOffers, hedoneRestaurant, hedoneDailyMenu, updateDate); UpdateRestaurant(restaurantOffers, teglasRestaurant, teglasDailyMenu, updateDate); UpdateRestaurant(restaurantOffers, lipaRestaurant, lipaDailyMenu, updateDate); }
public void ReturnDaliMenu_WhenIdIsValid() { //Arrange var dataMock = new Mock <IHomeMadeFoodData>(); var recipesServiceMock = new Mock <IRecipesService>(); DailyMenuService dailyMenuService = new DailyMenuService(dataMock.Object, recipesServiceMock.Object); Guid dailyMenuId = Guid.NewGuid(); Guid recipeId = Guid.NewGuid(); var ingredients = new List <Ingredient>() { new Ingredient() { Id = Guid.NewGuid(), Name = "IngredientName", FoodCategoryId = Guid.NewGuid(), RecipeId = recipeId, QuantityInMeasuringUnit = 0.200, PricePerMeasuringUnit = 1.29m } }; var recipe = new Recipe() { Id = recipeId, Title = "Title Of A New Recipe", Describtion = "This is a decsribtion", Instruction = "Instructions of the recipe", DishType = DishType.MainDish, Ingredients = ingredients }; DailyMenu dailyMenu = new DailyMenu() { Id = dailyMenuId, Date = DateTime.Today, DayOfWeek = DateTime.Today.DayOfWeek, Recipes = new List <Recipe>() { recipe } }; dataMock.Setup(c => c.DailyMenus.GetById(dailyMenuId)).Returns(dailyMenu); //Act DailyMenu dailyMenuResult = dailyMenuService.GetDailyMenuById(dailyMenuId); //Assert Assert.AreSame(dailyMenu, dailyMenuResult); }
public DailyMenu GetDailyMenuById(Guid id) { Guard.WhenArgument(id, "id").IsEmptyGuid().Throw(); DailyMenu menu = this.data.DailyMenus.GetById(id); if (menu == null) { return(null); } return(menu); }
public void Show(DailyMenu daily_menu) { if (daily_menu == null) { return; } SetAllExpansion(false); SetAllSelection(false); daily_menu.Select(); ItemSelectionChanged(daily_menu); }
public static bool IsOk(this DailyMenu menu) { foreach (CurrentMenu m in menu.currentMenus) { //if (!CurrentMenuValidator.IsOk(m)) if (!m.IsOk()) { return(false); } } WriteLine($"DailyMenuValidator"); return(true); }
public void InvokeDataCommitOnce_WhenThePassedArgumentsAreValid() { var dataMock = new Mock <IHomeMadeFoodData>(); var recipesServiceMock = new Mock <IRecipesService>(); DailyMenuService dailyMenuService = new DailyMenuService(dataMock.Object, recipesServiceMock.Object); Guid dailyMenuId = Guid.NewGuid(); Guid recipeId = Guid.NewGuid(); var ingredients = new List <Ingredient>() { new Ingredient() { Id = Guid.NewGuid(), Name = "IngredientName", FoodCategoryId = Guid.NewGuid(), RecipeId = recipeId, QuantityInMeasuringUnit = 0.200, PricePerMeasuringUnit = 1.29m } }; var recipe = new Recipe() { Id = recipeId, Title = "Title Of A New Recipe", Describtion = "This is a decsribtion", Instruction = "Instructions of the recipe", DishType = DishType.MainDish, Ingredients = ingredients }; DailyMenu dailyMenu = new DailyMenu() { Id = dailyMenuId, Date = DateTime.Today, DayOfWeek = DateTime.Today.DayOfWeek, Recipes = new List <Recipe>() { recipe } }; dataMock.Setup(x => x.DailyMenus.Delete(It.IsAny <DailyMenu>())); //Act dailyMenuService.DeleteDailyMenu(dailyMenu); //Assert dataMock.Verify(x => x.SaveChanges(), Times.Once); }
public void AddMenu(DailyMenu menu) { foreach (Food food in menu.foods) { ProcedureManager.Prepare(procedureName) .AddValue(ProcedureFields.ProcessType, ProcessType.Insert) .AddValue(ProcedureFields.Date, menu.date) .AddValue(ProcedureFields.Name, food.name) .AddValue(ProcedureFields.Calorie, food.calorie) .AddValue(ProcedureFields.Contents, food.contents) .AddValue(ProcedureFields.ImageSrc, food.imageSrc) .Execute(); } }
public ActionResult Delete(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } DailyMenu dailyMenu = db.DailyMenus.Find(id); if (dailyMenu == null) { return(HttpNotFound()); } return(View(dailyMenu)); }
private IList <DailyMenu> GetDailyMenus(HtmlNode menu) { var days = menu.SelectNodes(".//tbody").ToArray(); var dailyMenus = new List <DailyMenu>(); for (var i = 0; i < days.Length; i++) { var dailyMenu = new DailyMenu(DateTime.Now); dailyMenu.Soups = GetSoups(days[i]); dailyMenu.Meals = GetMeals(days[i]); dailyMenus.Add(dailyMenu); } return(dailyMenus); }
private static List <DailyMenu> GetDailyMenus(HtmlNode menu) { var days = menu.SelectNodes(".//tbody").ToArray(); var dailyMenus = new List <DailyMenu>(); for (var i = 0; i < days.Length; i++) { var dailyMenu = new DailyMenu(StartOfWeek().AddDays(i)); dailyMenu.Soups = GetSoups(days[i]); dailyMenu.Meals = GetMeals(days[i]); dailyMenus.Add(dailyMenu); } return(dailyMenus); }
public ActionResult Create(int id) { DailyMenu dailyMenu = db.DailyMenus.FirstOrDefault(h => h.DailyMenuID == id); UserResponce response = new UserResponce { DailyMenuID = id, UserId = User.Identity.GetUserId(), Date = DateTime.Now, Estimation = 5, Responce = "" }; return(View(response)); }
public int InsertDailyMenu(DailyMenu entity) { try { dailyMenus = db.GetTable <DailyMenu>(); dailyMenus.InsertOnSubmit(entity); db.SubmitChanges(); return(1); } catch { return(0); } }
public ActionResult Create([Bind(Include = "ID,DayName,CurrentMenu")] DailyMenu dailyMenu) { //if (string.IsNullOrEmpty(dailyMenu.DayName)) //how to correctly validate? //{ // ModelState.AddModelError(dailyMenu.DayName, "Empty Day name!"); //} if (ModelState.IsValid) { db.DailyMenus.Add(dailyMenu); db.SaveChanges(); return(RedirectToAction("Index")); } return(View(dailyMenu)); }
private IList <DailyMenu> GetDailyMenus(HtmlNode menu) { var dailyMenus = new List <DailyMenu>(); var days = menu.SelectNodes("//div").Where(x => x.Attributes.Contains("class") && x.Attributes["class"].Value.Contains("menicka")).ToArray(); for (var i = 0; i < days.Length; i++) { var dailyMenu = new DailyMenu(DateTime.Now); dailyMenu.Soups = GetSoups(days[i]); dailyMenu.Meals = GetMeals(days[i]); dailyMenus.Add(dailyMenu); } return(dailyMenus); }
public void AddMenu(DailyMenu menu) { Border border = new Border(); border.BorderThickness = new Thickness(0, 0, 0, 1); border.BorderBrush = Brushes.Gray; DockPanel dockPanel = new DockPanel(); dockPanel.Children.Add(GetDateStackPanel(menu.date)); dockPanel.Children.Add(GetFoodsStackPanel(menu.foods)); dockPanel.Children.Add(GetCaloriesStackPanel(menu.foods)); border.Child = dockPanel; border.Width = 400; gridFoodList.Children.Add(border); }
public void RenderTheRightView_EditDailyMenu_WhenValidGuidIdIsPassed() { //Arrange var dailyMenusServiceMock = new Mock <IDailyMenuService>(); var recipesServiceMock = new Mock <IRecipesService>(); var mappingServiceMock = new Mock <IMappingService>(); var controller = new DailyMenusController(recipesServiceMock.Object, dailyMenusServiceMock.Object, mappingServiceMock.Object); Guid id = Guid.NewGuid(); DateTime date = DateTime.Today; DayOfWeek dayOfWeek = date.DayOfWeek; DailyMenu dailyMenu = new DailyMenu() { Id = id, Date = date, DayOfWeek = dayOfWeek }; DailyMenuViewModel dailyMenuViewModel = new DailyMenuViewModel() { Id = dailyMenu.Id, Date = dailyMenu.Date, DayOfWeek = dailyMenu.DayOfWeek }; var selectedMenu = dailyMenuViewModel; var allMenus = new AddDailyMenuViewModel(); var dailyMenus = new List <DailyMenu>(); dailyMenusServiceMock.Setup(x => x.GetDailyMenuById(id)).Returns(dailyMenu); dailyMenusServiceMock.Setup(x => x.GetAllDailyMenus()).Returns(dailyMenus); mappingServiceMock.Setup(x => x.Map <DailyMenuViewModel>(dailyMenu)).Returns(dailyMenuViewModel); mappingServiceMock.Setup(x => x.Map <AddDailyMenuViewModel>(dailyMenus)).Returns(allMenus); var model = new EditDailyMenuViewModel() { Id = id, SelectedDate = DateTime.Today, SelectedDailyMenuViewModel = selectedMenu, DailyMenuViewModelWithAllRecipes = allMenus }; //Act & Assert controller.WithCallTo(x => x.EditDailyMenu(id)) .ShouldRenderView("EditDailyMenu"); }