Ejemplo n.º 1
0
        public bool Update(int id, DrinkViewModel drinkViewModel)
        {
            Drink drink = VM_ToDrink(drinkViewModel);

            drink.Id = id;
            return(_drinksRepo.Update(drink));
        }
Ejemplo n.º 2
0
        public IActionResult Index(IEnumerable <string> selected)
        {
            drinks.Drinks = new List <DrinkViewModel>();
            string ingredientIds = string.Join(",", selected);

            ids = dataContext.DrinkIngredients.FromSqlRaw($"SELECT * from DrinkIngredients where IngredientId in ({ingredientIds})").ToList();

            foreach (DrinkIngredient drinkid in ids)
            {
                int id = drinkid.DrinkId;
                List <DrinksToIngredients> ingredients = dataContext.DrinksToIngredients.FromSqlRaw <DrinksToIngredients>($"SELECT * from DrinksToIngredientsView where DrinkId = {id}").ToList();
                DrinkViewModel             drink       = new DrinkViewModel();
                drink.DrinkId = id;

                drink.Ingredients = new List <DrinksToIngredients>();
                foreach (DrinksToIngredients e in ingredients)
                {
                    drink.Ingredients.Add(e);
                    drink.DrinkName = e.DrinkName;
                }
                drinks.Drinks.Add(drink);
            }


            SaveList(drinks);


            return(View(drinks));
        }
Ejemplo n.º 3
0
        public ActionResult Post(DrinkViewModel viewModel)
        {
            viewModel.DrinkTypes = _db.DrinkTypes.ToList();
            viewModel.Locations  = from a in _db.Locations
                                   select new Contract.DataContracts.Location
            {
                Id   = a.Id,
                Name = a.Name
            };

            var validaiton = _service.Add(new DrinkDto
            {
                Name              = viewModel.Drink.Name,
                Price             = viewModel.Drink.Price,
                LocationOfDrinkId = viewModel.LocationId,
                DrinkTypeId       = viewModel.DrinkTypeId
            });

            if (validaiton.IsSuccess)
            {
                viewModel.Message = "Success!";
                return(View(viewModel));
            }

            viewModel.Message = validaiton.ErrorMessage;
            return(View(viewModel));
        }
        public ViewResult List(string category)
        {
            DrinkViewModel drinkviewmodel = new DrinkViewModel();

            drinkviewmodel.Drinks = _drinkRepository.Drinks;
            int categoryid = 0;

            if (string.IsNullOrEmpty(category))
            {
                drinkviewmodel.CurentCategory = "All Drink Cateogory";
            }
            else
            {
                if (category == "Alcoholic")
                {
                    categoryid                    = _categoryRepository.Categories.Where(x => x.CategoryName == category).Select(x => x.CategoryId).FirstOrDefault();
                    drinkviewmodel.Drinks         = drinkviewmodel.Drinks.Where(x => x.CategoryId == categoryid).ToList();
                    drinkviewmodel.CurentCategory = category;
                }
                else if (category == "NonAlcoholic")
                {
                    categoryid                    = _categoryRepository.Categories.Where(x => x.CategoryName == category).Select(x => x.CategoryId).FirstOrDefault();
                    drinkviewmodel.Drinks         = drinkviewmodel.Drinks.Where(x => x.CategoryId == categoryid).ToList();
                    drinkviewmodel.CurentCategory = category;
                }
            }


            return(View(drinkviewmodel));
        }
Ejemplo n.º 5
0
 private Drink VM_ToDrink(DrinkViewModel drinkViewModel)
 {
     return(new Drink()
     {
         Name = drinkViewModel.Name, Volume = drinkViewModel.Volume, Alcoholic = drinkViewModel.Alcoholic, Carbonated = drinkViewModel.Carbonated
     });
 }
Ejemplo n.º 6
0
        public ActionResult Post()
        {
            var b         = _db.DrinkTypes;
            var viewModel = new DrinkViewModel
            {
                DrinkTypes = _db.DrinkTypes.ToList(),
                Locations  = from a in _db.Locations
                             select new Contract.DataContracts.Location
                {
                    Id   = a.Id,
                    Name = a.Name
                },

                Drink = new Drink()
            };

            try
            {
                return(View(viewModel));
            }
            catch (NullReferenceException ex)
            {
                return(Content("Null exception" + ex.Data));
            }
        }
Ejemplo n.º 7
0
        public void Post_Edit_Drink_Is_Null()
        {
            // Arrange
            Drink drink          = null;
            var   drinkViewModel = new DrinkViewModel()
            {
                ID       = -1,
                Name     = "Mirinda",
                Price    = 5.00M,
                Capacity = 0.5f
            };
            var id         = drinkViewModel.ID;
            var repository = Substitute.For <IDrinkRepository>();
            var mapper     = Substitute.For <IMapper>();
            var validator  = new ModelValidator <DrinkViewModel>(drinkViewModel);
            var controller = new DrinkController(repository, mapper);

            repository.Get(id).Returns(drink);

            // Act
            var result     = controller.Edit(drinkViewModel) as HttpNotFoundResult;
            var statusCode = result.StatusCode;
            var valid      = validator.IsValid();

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That(404, Is.EqualTo(statusCode));
            Assert.That(valid, Is.True);
        }
Ejemplo n.º 8
0
        public void Post_Create_Model_Is_Not_Valid()
        {
            // Arrange
            var drinkViewModel = new DrinkViewModel()
            {
                //Name = "Mirinda", // required field
                Price = 5.00M,
                //Capacity = 0.5f // required field
            };
            var repository = Substitute.For <IDrinkRepository>();
            var mapper     = Substitute.For <IMapper>();
            var controller = new DrinkController(repository, mapper);
            var validator  = new ModelValidator <DrinkViewModel>(drinkViewModel);

            // Act
            var valid = validator.IsValid();

            validator.AddToModelError(controller);
            var result     = controller.Create(drinkViewModel) as RedirectToRouteResult;
            var actionName = result.RouteValues.Values.ElementAt(0);
            var tempData   = controller.TempData["ModelIsNotValid"];

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That("Wystąpił błąd w formularzu, spróbuj ponownie.", Is.EqualTo(tempData));
            Assert.That("Index", Is.EqualTo(actionName));
            Assert.That(valid, Is.False);
        }
Ejemplo n.º 9
0
 public Drinks(string accessToken, string name)
 {
     InitializeComponent();
     dvm = new DrinkViewModel(name, accessToken);
     List.ItemsSource = dvm.Drinks;
     this.DataContext = dvm;
 }
Ejemplo n.º 10
0
        public IActionResult Details(int?ID)
        {
            var all = drinkcollection.GetAllDrinks();

            DVM = new List <DrinkViewModel>();

            if (ID != null)
            {
                for (int i = 0; i < all.Count; i++)
                {
                    if (ID == all[i].DrinkID)
                    {
                        var viewmodel = new DrinkViewModel()
                        {
                            DrinkID           = all[i].DrinkID,
                            Name              = all[i].Name,
                            Volume            = all[i].Volume,
                            AlcoholPercentage = all[i].AlcoholPercentage,
                            AmountStored      = all[i].AmountStored,
                            Price             = all[i].Price,
                            ImageLink         = all[i].ImageLink
                        };
                        DVM.Add(viewmodel);
                    }
                }
            }
            else
            {
                //Hier kan een exception komen voor meer voortgang.
            }

            return(View(DVM));
        }
Ejemplo n.º 11
0
        public void Post_Edit_Not_Valid()
        {
            // Arrange
            var drinkViewModel = new DrinkViewModel()
            {
                ID = 1,
                //Name = "Mirinda",
                Price = 5.00M,
                //Capacity = 0.5f
            };
            var repository = Substitute.For <IDrinkRepository>();
            var mapper     = Substitute.For <IMapper>();
            var controller = new DrinkController(repository, mapper);
            var validator  = new ModelValidator <DrinkViewModel>(drinkViewModel);

            // Act
            var valid = validator.IsValid();

            validator.AddToModelError(controller);
            var result   = controller.Edit(drinkViewModel) as ViewResult;
            var viewName = result.ViewName;
            var tempData = controller.TempData["ModelIsNotValid"];

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That(valid, Is.False);
            Assert.That("Index", Is.EqualTo(viewName));
            Assert.That("Wystąpił błąd w formularzu, spróbuj ponownie.", Is.EqualTo(tempData));
        }
Ejemplo n.º 12
0
 public ActionResult Edit(DrinkViewModel drink, HttpPostedFileBase image)
 {
     if (ModelState.IsValid)
     {
         if (image != null)
         {
             drink.ImageMimeType = image.ContentType;
             drink.ImageData     = new byte[image.ContentLength];
             image.InputStream.Read(drink.ImageData, 0, image.ContentLength);
         }
         orderService.SaveDrinkDTO(new DrinkDTO
         {
             ProductID     = drink.ProductID,
             Name          = drink.Name,
             Description   = drink.Description,
             Price         = drink.Price,
             iCount        = drink.iCount,
             BThereIsDrink = drink.BThereIsDrink,
             ImageData     = drink.ImageData,
             ImageMimeType = drink.ImageMimeType
         });
         TempData["message"] = string.Format("{0} has been saved", drink.Name);
         return(RedirectToAction("Drink"));
     }
     else
     {
         // there is something wrong with the data values
         return(View(drink));
     }
 }
Ejemplo n.º 13
0
        public void Post_Create_Model_Is_Valid()
        {
            // Arrange
            var drink = new Drink()
            {
                Name     = "Mirinda",
                Price    = 5.00M,
                Capacity = 0.5f
            };
            var drinkViewModel = new DrinkViewModel()
            {
                Name     = "Mirinda",
                Price    = 5.00M,
                Capacity = 0.5f
            };
            var repository = Substitute.For <IDrinkRepository>();
            var mapper     = Substitute.For <IMapper>();
            var controller = new DrinkController(repository, mapper);
            var validator  = new ModelValidator <DrinkViewModel>(drinkViewModel);

            mapper.Map <DrinkViewModel, Drink>(drinkViewModel).Returns(drink);
            repository.Insert(drink);
            repository.Save();

            // Act
            var valid      = validator.IsValid();
            var result     = controller.Create(drinkViewModel) as RedirectToRouteResult;
            var actionName = result.RouteValues.Values.ElementAt(0); //only action name

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That("Index", Is.EqualTo(actionName));
            Assert.That(valid, Is.True);
        }
Ejemplo n.º 14
0
        public ActionResult Create2(DrinkViewModel viewModel)
        {
            if (ModelState.IsValid)
            {
            }

            return(View());
        }
Ejemplo n.º 15
0
        public ActionResult Create2()
        {
            var size = db.Sizes.ToList();

            var viewModel = new DrinkViewModel
            {
                Sizes = size
            };

            return(View(viewModel));
        }
Ejemplo n.º 16
0
        // GET: Drinks/Edit/5
        public ActionResult Edit(int id)
        {
            DrinkViewModel drink = new DrinkViewModel(_drinksService.FindById(id));

            if (drink == null)
            {
                return(RedirectToAction("Index"));
            }
            ViewBag.DrinkId = id;
            return(View(drink));
        }
Ejemplo n.º 17
0
        public async Task <ActionResult> ChooseDrink(int orderID)
        {
            var order = await db.Orders.FindAsync(orderID);

            if (order.Submitted)
            {
                return(await Task.Run(() => RedirectToAction("Order")));
            }

            var drinkVM = new DrinkViewModel(order);

            return(await Task.Run(() => View(drinkVM)));
        }
Ejemplo n.º 18
0
        public ActionResult Create([Bind(Exclude = "ID")] DrinkViewModel drinkViewModel)
        {
            if (!ModelState.IsValid)
            {
                TempData["ModelIsNotValid"] = "Wystąpił błąd w formularzu, spróbuj ponownie.";
                return(RedirectToAction("Index"));
            }
            var result = _mapper.Map <DrinkViewModel, Drink>(drinkViewModel);

            _repository.Insert(result);
            _repository.Save();
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 19
0
        public ActionResult Create(DrinkViewModel drink)//need to have zero constructor for this binding to work
        {
            if (ModelState.IsValid)
            {
                Drink createdDrink = _drinksService.Create(drink);

                return(PartialView("_drinkPartial", createdDrink));
            }
            else
            {
                return(BadRequest());
            }
        }
Ejemplo n.º 20
0
        public ActionResult Create(DrinkViewModel drink)//need to have zero constructor for this binding to work
        {
            if (ModelState.IsValid)
            {
                _drinksService.Create(drink);

                return(RedirectToAction(nameof(Index)));
            }
            else
            {
                return(View(drink));
            }
        }
Ejemplo n.º 21
0
        public ActionResult Edit(int id, DrinkViewModel drink)
        {
            if (ModelState.IsValid)
            {
                _drinksService.Update(id, drink);

                return(RedirectToAction(nameof(Index)));
            }
            else
            {
                ViewBag.DrinkId = id;
                return(View(drink));
            }
        }
Ejemplo n.º 22
0
 public static Drink ToDrinkModel(this DrinkViewModel viewModel) => new Drink
 {
     id                                               = viewModel.id,
     Name                                             = viewModel.Name,
     Category                                         = viewModel.Category,
     Description                                      = viewModel.Description,
     Grades                                           = viewModel.Grades,
     Milliliters                                      = viewModel.Milliliters,
     Logo                                             = viewModel.Logo != null?ToLogoModel(viewModel.Logo) : null,
                                      Price           = viewModel.Price,
                                      Stock           = viewModel.Stock,
                                      userId          = viewModel.userId,
                                      establishmentId = viewModel.establishmentId
 };
        public IActionResult Drinks()
        {
            DVM = new List <DrinkViewModel>();
            var all = drinkColl.GetAllDrinks();

            foreach (var drink in all)
            {
                DrinkViewModel viewModel = new DrinkViewModel()
                {
                    DrinkID = drink.DrinkID, Name = drink.Name, Volume = drink.Volume, AlcoholPercentage = drink.AlcoholPercentage, AmountStored = drink.AmountStored, Price = drink.Price, ImageLink = drink.ImageLink
                };
                DVM.Add(viewModel);
            }
            return(View(DVM));
        }
Ejemplo n.º 24
0
        public async Task <JsonResult> Create(DrinkViewModel model)
        {
            var user = HttpContext.Session.Get <User>(Constants.SessionKeyState);

            int rolId = user.Role.Id;

            model.userId          = user.Id;
            model.establishmentId = user.Establishment.id;

            var entity = model.ToDrinkModel();

            var response = _drinkAgent.CreateDrink(entity);

            return(await Task.FromResult(Json(response)));
        }
        public IActionResult Create(DrinkViewModel drinkViewModel)
        {
            var        tempID     = 0;
            DrinkModel drinkModel = new DrinkModel(tempID, drinkViewModel.Name, drinkViewModel.Volume, drinkViewModel.AlcoholPercentage, drinkViewModel.AmountStored, drinkViewModel.Price, drinkViewModel.ImageLink);

            if (!drinkVal.isCustomerNew(drinkModel, drinkColl.GetAllDrinks()))
            {
                drinkColl.Create(drinkModel);
                return(RedirectToAction("Drinks", "Admin"));
            }
            else
            {
                TempData["drinkerror"] = "Drink already exists";
                return(RedirectToAction("CreateDrinkPage", "Admin"));
            }
        }
Ejemplo n.º 26
0
        public IActionResult Index(string SearchText)
        {
            DVM = new List <DrinkViewModel>();

            var drinkResults = drinkcollection.SearchForDrinks(SearchText);

            foreach (var drink in drinkResults)
            {
                DrinkViewModel viewModel = new DrinkViewModel()
                {
                    DrinkID = drink.DrinkID, Name = drink.Name, Volume = drink.Volume, AlcoholPercentage = drink.AlcoholPercentage, AmountStored = drink.AmountStored, Price = drink.Price, ImageLink = drink.ImageLink
                };
                DVM.Add(viewModel);
            }

            return(View(DVM));
        }
Ejemplo n.º 27
0
        public async Task <IActionResult> Index(string category)
        {
            this.telemetryClient.TrackEvent("DrinkListEvent");

            IEnumerable <Drink> drinks = null;

            try
            {
                if (!string.IsNullOrEmpty(category))
                {
                    drinks = await _drinkRepository.Find(x => string.Compare(x.Category.Name, category, System.StringComparison.OrdinalIgnoreCase) == 0)
                             .OrderByDescending(x => x.Id).ToListAsync();
                }
                else
                {
                    var cacheDrinks = await _cache.GetStringAsync("drinklist");

                    if (cacheDrinks == null)
                    {
                        drinks = await _drinkRepository.GetAll();

                        _cache.SetString("drinklist", JsonConvert.SerializeObject(drinks));
                    }
                    else
                    {
                        drinks = JsonConvert.DeserializeObject <List <Drink> >(cacheDrinks);
                    }
                }
            }
            catch (ApplicationException ex)
            {
                this.telemetryClient.TrackException(ex);
            }
            catch (Exception ex)
            {
                this.telemetryClient.TrackException(ex);
            }

            DrinkViewModel drinkViewModel = new DrinkViewModel()
            {
                Drinks = drinks
            };

            return(View(drinkViewModel));
        }
Ejemplo n.º 28
0
        public ActionResult Edit(DrinkViewModel drinkViewModel)
        {
            if (!ModelState.IsValid)
            {
                TempData["ModelIsNotValid"] = "Wystąpił błąd w formularzu, spróbuj ponownie.";
                return(View("Index"));
            }
            var drink = _repository.Get(drinkViewModel.ID);

            if (drink == null)
            {
                return(HttpNotFound());
            }
            var result = _mapper.Map <DrinkViewModel, Drink>(drinkViewModel, drink);

            _repository.Update(result);
            _repository.Save();
            return(RedirectToAction("Index"));
        }
Ejemplo n.º 29
0
        public void Good_Get_Edit()
        {
            // Arrange
            var drink = new Drink()
            {
                ID       = 1,
                Name     = "Mirinda",
                Price    = 5.00M,
                Capacity = 0.5f
            };
            var drinkViewModel = new DrinkViewModel()
            {
                Name     = "Mirinda",
                Price    = 5.00M,
                Capacity = 0.5f
            };
            var id         = 1;
            var repository = Substitute.For <IDrinkRepository>();
            var mapper     = Substitute.For <IMapper>();

            var fakeController = new FakeController();

            fakeController.PrepareFakeAjaxRequest();
            var controller = new DrinkController(repository, mapper);

            controller.ControllerContext = fakeController.GetControllerContext <DrinkController>(new RouteData(), controller);

            repository.Get(id).Returns(drink);
            mapper.Map <Drink, DrinkViewModel>(drink).Returns(drinkViewModel);

            // Act
            var result      = controller.Edit(id) as PartialViewResult;
            var viewName    = result.ViewName;
            var model       = result.Model;
            var ajaxRequest = controller.Request.IsAjaxRequest();

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That("_EditPartial", Is.EqualTo(viewName));
            Assert.That(model, !Is.Null);
            Assert.That(ajaxRequest, Is.True);
        }
Ejemplo n.º 30
0
        public void Get_Edit_Not_Ajax_Request()
        {
            // Arrange
            var drink = new Drink()
            {
                ID       = 1,
                Name     = "Mirinda",
                Price    = 5.00M,
                Capacity = 0.5f
            };
            var drinkViewModel = new DrinkViewModel()
            {
                Name     = "Mirinda",
                Price    = 5.00M,
                Capacity = 0.5f
            };
            var id         = 1;
            var repository = Substitute.For <IDrinkRepository>();
            var mapper     = Substitute.For <IMapper>();

            var fakeController = new FakeController();

            fakeController.PrepareFakeRequest();
            var controller = new DrinkController(repository, mapper);

            controller.ControllerContext = fakeController.GetControllerContext <DrinkController>(new RouteData(), controller);

            repository.Get(id).Returns(drink);
            mapper.Map <Drink, DrinkViewModel>(drink).Returns(drinkViewModel);

            // Act
            var result      = controller.Edit(id) as RedirectToRouteResult;
            var ajaxRequest = controller.Request.IsAjaxRequest();
            var actionName  = result.RouteValues.Values.ElementAt(0);

            // Assert
            Assert.That(result, !Is.Null);
            Assert.That(ajaxRequest, Is.False);
            Assert.That("Index", Is.EqualTo(actionName));
        }