public async Task <IActionResult> GetReservering([FromRoute] int id) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } Reservering reservering = await _context.Reservering .Where(r => r.Id == id) .Include(r => r.ReserveringLabels) .ThenInclude(rl => rl.Label) .FirstOrDefaultAsync(); if (reservering == null) { return(NotFound()); } ReserveringViewModel reserveringVM = new ReserveringViewModel { Id = reservering.Id, Bedrag = reservering.Bedrag, Maand = reservering.Maand, Omschrijving = reservering.Omschrijving, Label = toLabelViewModelList(reservering.ReserveringLabels) }; return(Ok(reserveringVM)); }
public ActionResult Submit() { if (Session["event"] == null) { return(RedirectToAction("Index", "Home")); } ReserveringViewModel reservering = (ReserveringViewModel)Session["reservering"]; ReserveringRepository repo = new ReserveringRepository(new ReserveringContext()); AccountRepository arepo = new AccountRepository(new AccountContext()); List <int> plekids = reservering.Staanplaatsen.Select(x => x.Id).ToList(); repo.PlaatsReservering(reservering.Voornaam, reservering.Tussenvoegsel, reservering.Achternaam, reservering.Straat, reservering.Huisnummer, reservering.Woonplaats, reservering.DatumStart, reservering.DatumEind, reservering.Evenement.ID1, plekids, reservering.Accounts, reservering.Exemplaren); // Email foreach (AccountViewModel account in reservering.Accounts) { string message = "Beste " + account.Gebruikersnaam + ",<br><br>" + "Bedankt voor het reserveren bij " + reservering.Evenement.Naam + "<br>" + "Om uw account te activeren gaat u naar deze link: http://eyectc.com/reserveer/activeer?activatiehash=" + arepo.GetAllAccounts().First(x => x.Gebruikersnaam == account.Gebruikersnaam).Activatiehash + "<br><br>" + "Groeten,<br><br>" + "Het EyeCT4Events Team"; SendMail(account.Email, message); } return(Redirect("/reserveer/success")); }
// GET: Reservering/Create public ActionResult Create() { ReserveringViewModel Menusfilter = new ReserveringViewModel(); Menusfilter.Personen = 0; Menusfilter.Tijd = DateTime.Now.TimeOfDay; //Menusfilter.Reservering = //(from d in db.Reserveringen //where d.Datum_tijd >= DateTime.Now //select d).ToList(); //Menusfilter.Menus = //from c in db.Menus //select new SelectListItem //{ // Text = c.Naam + " " + c.Prijs, // Value = c.Id.ToString() //}; return(View(Menusfilter)); }
public ActionResult Add(int productid) { ReserveringViewModel reservering = (ReserveringViewModel)Session["reservering"]; if (reservering.Producten == null) { reservering.Producten = new List <Product>(); } if (reservering.Exemplaren == null) { reservering.Exemplaren = new List <ProductExemplaar>(); } if (productid != 0 || productid != null) { ProductRepository prepo = new ProductRepository(new ProductContext()); ProductExemplaarRepository erepo = new ProductExemplaarRepository(new ProductExemplaarContext()); Product p = prepo.GetAll().First(x => x.Id == productid); List <ProductExemplaar> exemplaren = erepo.GetByProduct(p.Id); if (exemplaren.Count != 0) { reservering.Exemplaren.Add(exemplaren[0]); reservering.Producten.Add(p); } } return(RedirectToAction("Materiaal", "Reserveer")); }
public ActionResult Edit(int?id) { ReserveringViewModel ReserveringVm = new ReserveringViewModel(); ReserveringVm.Menus = from c in db.Menus select new SelectListItem { Text = c.Naam + " " + c.Prijs, Value = c.Id.ToString() }; if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Reservering reservering = db.Reserveringen.Find(id); if (reservering == null) { return(HttpNotFound()); } // ReserveringVm.MenuId = reservering.Menu.Id; ReserveringVm.Personen = reservering.Personen; ReserveringVm.Datum = reservering.Datum; ReserveringVm.Tijd = reservering.BeginTijd; return(View(ReserveringVm)); }
public ActionResult Index(FormCollection collection) { ReserveringViewModel reservering = (ReserveringViewModel)Session["reservering"]; reservering.DatumStart = DateTime.ParseExact(collection["start"], "dd/MM/yyyy", CultureInfo.InvariantCulture); reservering.DatumEind = DateTime.ParseExact(collection["end"], "dd/MM/yyyy", CultureInfo.InvariantCulture); return(RedirectToAction("Plaats", "Reserveer")); }
public ActionResult Create() { var resVM = new ReserveringViewModel { Reservering = new Reservering(), SelectedDate = DateTime.Now.Date }; return(View(resVM)); }
// GET: Reserveer/Gegevens public ActionResult Gegevens() { if (Session["event"] == null) { return(RedirectToAction("Index", "Home")); } ReserveringViewModel reservering = (ReserveringViewModel)Session["reservering"]; ViewData["MaxPersonen"] = reservering.Staanplaatsen.Sum(x => x.Capaciteit); return(View(reservering)); }
public ActionResult Accounts() { ReserveringViewModel reservering = (ReserveringViewModel)Session["reservering"]; List <AccountViewModel> accounts = reservering.Accounts; if (Session["event"] == null) { return(RedirectToAction("Index", "Home")); } return(View(accounts)); }
public ActionResult Accounts(List <AccountViewModel> model) { ReserveringViewModel reservering = (ReserveringViewModel)Session["reservering"]; reservering.Accounts.Clear(); reservering.Accounts = model; if (Session["event"] == null) { return(RedirectToAction("Index", "Home")); } return(RedirectToAction("Materiaal")); }
public ActionResult Finish() { if (Session["event"] == null) { return(RedirectToAction("Index", "Home")); } ReserveringViewModel reservering = (ReserveringViewModel)Session["reservering"]; reservering.Dagen = Convert.ToInt32((reservering.DatumEind - reservering.DatumStart).TotalDays); reservering.TotaalPrijs = Convert.ToDouble(reservering.Producten.Sum(x => x.Prijs) + reservering.Staanplaatsen.Sum(x => x.Prijs * reservering.Dagen)); return(View(reservering)); }
// GET: Reserveer/Plaats public ActionResult Plaats() { if (Session["event"] == null) { return(RedirectToAction("Index", "Home")); } ReserveringViewModel reservering = (ReserveringViewModel)Session["reservering"]; StandplaatsRepository repo = new StandplaatsRepository(new StandplaatsContext()); ViewData["plaatsen"] = repo.GetFreeStaanplaatsenByLocatie(reservering.Evenement.Locatie, reservering.DatumStart, reservering.DatumEind); return(View(reservering)); }
public ActionResult Plaats(FormCollection collection) { ReserveringViewModel reservering = (ReserveringViewModel)Session["reservering"]; StandplaatsRepository repo = new StandplaatsRepository(new StandplaatsContext()); string[] plaatsids = collection["Plaatsen"].Split(','); List <Standplaats> plaatsen = new List <Standplaats>(); foreach (var s in plaatsids) { plaatsen.Add(repo.GetById(Convert.ToInt32(s))); } reservering.Staanplaatsen = plaatsen; return(RedirectToAction("Gegevens", "Reserveer")); }
//Send client to AddMenu view with Id of the selected reservering public ActionResult AddMenu(Reservering reservering) { if (reservering.Id != 0) { reservering = db.Reserverings.Where(i => i.Id == reservering.Id).FirstOrDefault(); ReserveringViewModel rmViewModel = new ReserveringViewModel() { Reservering = reservering, //toon alleen menus met gerechten //dit voorkomt dat er lege menus op de view komen te staan. Menus = db.Menus.Where(a => a.Gerechten.Count != 0).ToList() }; return(View(rmViewModel)); } return(RedirectToAction("Index")); }
// GET: Reserveer public ActionResult Index() { if (Session["event"] == null) { return(RedirectToAction("Index", "Home")); } if (Session["reservering"] == null) { Session["reservering"] = new ReserveringViewModel() { Evenement = (Event)Session["event"] }; } ReserveringViewModel reservering = (ReserveringViewModel)Session["reservering"]; return(View(reservering)); }
public ActionResult Edit([Bind(Include = "Id,MenuId,Menu,Prijs,Personen,Datum,Tijd")] ReserveringViewModel ReserveringVm) { Reservering r = (from Reserve in db.Reserveringen where Reserve.Id == ReserveringVm.Id select Reserve).First(); r.Personen = ReserveringVm.Personen; r.Datum = ReserveringVm.Datum; r.BeginTijd = ReserveringVm.Tijd; r.BeginDatum_tijd = ReserveringVm.Datum + ReserveringVm.Tijd; if (ModelState.IsValid) { // r.Menu = (from m in db.MenusList where m.Id == ReserveringVm.MenuId select m).FirstOrDefault(); // r.Prijs = r.Menu.Prijs; r.Totaal_Prijs = r.Prijs * r.Personen; //db.Entry(reservering).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(ReserveringVm)); }
// GET: Reserverings/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } ReserveringViewModel reserveringvm = new ReserveringViewModel { Reservering = db.Reserverings.Find(id), }; if (reserveringvm.Reservering != null) { reserveringvm.ReserveringID = (int)id; reserveringvm.SelectedDate = reserveringvm.Reservering.Datum; reserveringvm.SelectedHour = reserveringvm.Reservering.StartTijd.Value.Hour; return(View(reserveringvm)); } return(HttpNotFound()); }
public ActionResult Materiaal() { if (Session["event"] == null) { return(RedirectToAction("Index", "Home")); } ProductRepository prepo = new ProductRepository(new ProductContext()); ProductCatRepository crepo = new ProductCatRepository(new ProductCatContext()); List <Product> allProducts = prepo.GetAll(); List <ProductCatViewModel> productcats = new List <ProductCatViewModel>(); foreach (var productCat in crepo.GetAll()) { IEnumerable <Product> products = allProducts.Where(x => x.Categorie.Id == productCat.Id); productcats.Add(ModelToViewModel.ConvertProductCatToViewModel(productCat, products)); } ProductVerhuurViewModel model = new ProductVerhuurViewModel() { AllProducts = ModelToViewModel.ConvertProductToViewModelList(allProducts), ProductCats = productcats, SelectedProducts = new List <ProductViewModel>() }; ReserveringViewModel reservering = (ReserveringViewModel)Session["reservering"]; if (reservering.Producten == null) { reservering.Producten = new List <Product>(); } ViewData["producten"] = reservering.Producten; ViewData["totaalprijs"] = reservering.Producten.Sum(x => x.Prijs); return(View(model)); }
public ActionResult Gegevens(ReserveringViewModel model, FormCollection collection) { ReserveringViewModel reservering = (ReserveringViewModel)Session["reservering"]; reservering.Voornaam = model.Voornaam; if (String.IsNullOrEmpty(model.Tussenvoegsel)) { reservering.Tussenvoegsel = " "; } else { reservering.Tussenvoegsel = model.Tussenvoegsel; } reservering.Achternaam = model.Achternaam; reservering.Straat = model.Straat; reservering.Huisnummer = model.Huisnummer; reservering.Woonplaats = model.Woonplaats; reservering.Accounts = new List <AccountViewModel>(); for (int i = 0; i < Convert.ToInt32(collection["personen"]); i++) { reservering.Accounts.Add(new AccountViewModel()); } return(RedirectToAction("Accounts", "Reserveer")); }
public ActionResult Create(ReserveringViewModel reserveringVm) { TimeSpan extra = TimeSpan.FromHours(2); var Date = reserveringVm.Datum; var Time = reserveringVm.Tijd; var EndTIme = reserveringVm.Tijd.Add(extra); reserveringVm.Reservering = (from d in db.Reserveringen where d.Datum == Date && d.BeginTijd >= Time && d.BeginTijd < EndTIme || d.Datum == Date && d.EindTijd >= Time && d.EindTijd <= EndTIme select d).ToList(); reserveringVm.Menus = from c in db.Menus select new SelectListItem { Text = c.Naam + " " + c.Prijs, Value = c.Id.ToString() }; if (Request.Form["submit"] == "Pas datum en tijd aan") { reserveringVm.Personen = 0; } if (Request.Form["submit"] == "Create") { var manager = new UserManager <ApplicationUser>(new UserStore <ApplicationUser>(db)); var currentUser = manager.FindById(User.Identity.GetUserId()); Reservering r = new Reservering(); Tafel t = new Tafel(); //put input info in reservering table //r.Menu = (from m in db.MenusList where m.Id == reserveringVm.MenuId select m).FirstOrDefault(); r.MenusList = new List <Menu>(); for (int i = 0; i < reserveringVm.Personen; i++) { int menuid = Convert.ToInt32(Request.Form["Menu" + i]); r.MenusList.Add((from m in db.Menus where m.Id == menuid select m).FirstOrDefault()); } r.Personen = reserveringVm.Personen; r.BeginTijd = reserveringVm.Tijd; r.EindTijd = reserveringVm.Tijd.Add(extra); r.Datum = reserveringVm.Datum; r.BeginDatum_tijd = reserveringVm.Datum + reserveringVm.Tijd; r.EindDatum_tijd = reserveringVm.Datum + reserveringVm.Tijd.Add(extra); t.Datum = reserveringVm.Datum; t.TafelNummer = reserveringVm.Tafel_Nummer; //Get user info reserveringVm.contact_Id = currentUser.Id; reserveringVm.Contact_Naam = currentUser.Voornaam + " " + currentUser.Achternaam; reserveringVm.Contact_Email = currentUser.Email; reserveringVm.Contact_Telefoonnummer = currentUser.TelefoonNummer; reserveringVm.Prijs = r.MenusList.Sum(m => m.Prijs); //put the user info in reservering table r.contact_Id = reserveringVm.contact_Id; r.Contact_Email = reserveringVm.Contact_Email; r.Contact_Naam = reserveringVm.Contact_Naam; r.Contact_Telefoonnummer = reserveringVm.Contact_Telefoonnummer; r.Totaal_Prijs = reserveringVm.Prijs * reserveringVm.Personen; r.Prijs = reserveringVm.Prijs; r.Tafel_Nummer = reserveringVm.Tafel_Nummer; if (ModelState.IsValid) { db.Tafels.Add(t); db.SaveChanges(); db.Reserveringen.Add(r); db.SaveChanges(); return(RedirectToAction("Index")); } } return(View(reserveringVm)); }