//[Authorize]
 public ActionResult Annuleer(int?id)
 {
     if (id.HasValue)
     {
         NieuweAfspraakPM pm = new NieuweAfspraakPM();
         pm.Klanten        = new SelectList(ks.GetKlanten().Select(u => new { ID = u.ID, Naam = u.Naam + " " + u.Voornaam }), "ID", "Naam");
         pm.Masseurs       = new SelectList(afs.GetMasseurs().Select(m => new { ID = m.ID, Naam = m.Naam }), "ID", "Naam");
         pm.SoortAfspraken = new SelectList(afs.GetMassages().Select(ms => new { ID = ms.ID, Naam = ms.Naam }), "ID", "Naam");
         pm.Arrangementen  = new SelectList(afs.GetArrangementen().Select(ar => new { ID = ar.ID, Naam = ar.Naam }), "ID", "Naam");
         pm.Extras         = new SelectList(afs.GetExtras().Select(e => new { ID = e.ID, Naam = e.Naam }), "ID", "Naam");
         Afspraak a = afs.GetAfspraakByID(id.Value);
         pm.Afspraak               = a;
         pm.Afspraak.ID            = a.ID;
         pm.Datum                  = a.DatumTijdstip.Date;
         ViewBag.Datum             = a.DatumTijdstip;
         pm.Tijdstip               = Convert.ToDateTime(a.DatumTijdstip.ToString("HH:mm"));
         pm.Afspraak.DatumTijdstip = a.DatumTijdstip;
         pm.Afspraak.Verplaatsing  = a.Verplaatsing;
         a.Notitie                 = pm.Afspraak.Notitie;
         a.Duur           = pm.Afspraak.Duur;
         a.SoloDuo        = pm.Afspraak.SoloDuo;
         a.SoortAfspraak  = pm.Afspraak.SoortAfspraak;
         a.Arrangement    = pm.Afspraak.Arrangement;
         a.AantalPersonen = pm.Afspraak.AantalPersonen;
         a.Klant          = pm.Afspraak.Klant;
         a.Archief        = pm.Afspraak.Archief;
         a.Geannuleerd    = pm.Afspraak.Geannuleerd;
         a.Masseur        = pm.Afspraak.Masseur;
         return(View(pm));
     }
     else
     {
         return(RedirectToAction("Index"));
     }
 }
Ejemplo n.º 2
0
        public IActionResult Add(Afspraak afspraak)
        {
            if (ModelState.IsValid)
            {
                _context.Afspraak.Add(afspraak);
                _context.SaveChanges();

                /*var message = new MimeMessage();
                 * message.From.Add(new MailboxAddress("HoneyMoonShop", "*****@*****.**"));
                 * //message.To.Add(new MailboxAddress(@afspraak.Naam, @afspraak.Email));
                 * message.Subject = "Afspraak Bevestiging HoneyMoonShop";
                 * message.Body = new TextPart("plain")
                 * {
                 *  //Text = "Geachte " + @afspraak.Naam + "," + "\n" + "\n" + "Uw Afspraak op " + @afspraak.AfspraakDatum + " is in goede orde ontvangen." + "\n" + "\n" + "Met vriendelijke groet," +
                 *  //"\n" + "HoneyMoonShop"
                 * };
                 *
                 * using (SmtpClient client = new SmtpClient())//TODO takes too much time, should be multi threading
                 * {
                 *  client.Connect("smtp.live.com", 587);
                 *  client.Authenticate("*****@*****.**", "Honeymoon"); //TODO betere security
                 *  client.Send(message);
                 *  client.Disconnect(true);
                 * }*/
            }
            return(RedirectToAction("/AfspraakGeslaagd"));
        }
        public ActionResult DatePickerVoltooid(int tel, String achternaam, DateTime datum, String email)
        {
            Afspraak afspraak = new Afspraak()
            {
                Achternaam     = achternaam,
                TelefoonNummer = tel,
                DatumTijd      = datum,
                EmailAdres     = email
            };

            if (ModelState.IsValid)
            {
                HoneyMoonShopContext context = new HoneyMoonShopContext();
                context.Afspraak.Add(afspraak);
                context.SaveChanges();
            }
            else
            {
                TempData["Message"] = "Er is iets mis gegaan. Ga terug en probeer het nog een keer, of bel om telefonisch eeen afspraak te maken.";
            }
            // puts the afspraak into the database

            // go to the voltooid view
            return(View());
        }
        public IActionResult DatePickerDatum()
        {
            using (var context = new HoneyMoonShopContext())
            {
                DateTime localDate = DateTime.Now;

                //voegd de jurkafspraak toe aan de model als de pagina is geladen vanuit de artiekelpagina vna een jurk
                List <DateTime> datumsDisabled = new List <DateTime>(); //alle datums die niet bezet zijn en geen feestdagen zijn
                List <DateTime> feestdagen     = new List <DateTime>(); //de feestdagen of andere datums die niet beschikbaar zijn.(hardcoded)
                var             datumsBezet    = context.Afspraak.Where(a => a.DatumTijd > localDate).Select(a => a.DatumTijd).ToList();
                datumsBezet = datumsBezet.Distinct().ToList();
                Afspraak afspraak = new Afspraak();

                for (int i = 0; i < datumsBezet.Count(); i++)
                {
                    //als de datum (jaar maand en dag hetzelfde) meer dan 2 keer voorkomt, dan word deze toegevoegd aan de disabled dates
                    //misschien kan dit zonder de database simpeler?
                    if (context.Afspraak.Where(a => a.DatumTijd.Day == datumsBezet[i].Day && a.DatumTijd.Month == datumsBezet[i].Month && a.DatumTijd.Year == datumsBezet[i].Year).ToList().Count() > 2)
                    {
                        datumsDisabled.Add(datumsBezet[i]);
                    }
                }
                datumsDisabled = datumsDisabled.Union(feestdagen).ToList(); //alle datums die disabled moeten zijn
                //viewdata's die door de view opgevraagd kunnen worden.
                ViewData["datumsDisabled"] = datumsDisabled;
                return(View(afspraak));
            }
        }
        public IActionResult Overzicht(AfspraakVm viewModel)
        {
            var nieuweKlant       = new Klant();
            var nieuweBehandeling = new Behandeling();
            var nieuweAfspraak    = new Afspraak();

            if (_context.Klanten.FirstOrDefault(k => k.Emailadres == viewModel.Emailadres) != null)
            {
                Debug.WriteLine("gekend");
                nieuweAfspraak.KlantGegevensId = _context.Klanten.FirstOrDefault(k => k.Emailadres == viewModel.Emailadres).KlantId;
            }
            else
            {
                nieuweKlant.Voornaam         = viewModel.Voornaam;
                nieuweKlant.Achternaam       = viewModel.Achternaam;
                nieuweKlant.Telefoonnummer   = viewModel.Telefoonnummer;
                nieuweKlant.Emailadres       = viewModel.Emailadres;
                nieuweAfspraak.KlantGegevens = nieuweKlant;
                _context.Add(nieuweKlant);
            }

            nieuweBehandeling.Geslacht           = viewModel.Geslacht;
            nieuweBehandeling.GekozenBehandeling = viewModel.Behandeling;
            var      StartDateTime = Convert.ToDateTime(viewModel.Datum + " " + viewModel.Tijdstip);
            DateTime EndDateTime;

            if (nieuweBehandeling.Geslacht == "Dames")
            {
                EndDateTime = StartDateTime.Add(BehandelingenDames.Single(b => b.Behandeling == nieuweBehandeling.GekozenBehandeling).Tijdsduur);
                TimeSpan Duur = EndDateTime - StartDateTime;
                nieuweBehandeling.DuurTijd = Duur;
                nieuweBehandeling.Duur     = Duur.ToString();
            }
            else if (nieuweBehandeling.Geslacht == "Heren")
            {
                EndDateTime = StartDateTime.Add(BehandelingenHeren.Single(b => b.Behandeling == nieuweBehandeling.GekozenBehandeling).Tijdsduur);
                TimeSpan Duur = EndDateTime - StartDateTime;
                nieuweBehandeling.DuurTijd = Duur;
                nieuweBehandeling.Duur     = Duur.ToString();
            }
            else if (nieuweBehandeling.Geslacht == "Kinderen")
            {
                EndDateTime = StartDateTime.Add(BehandelingenKinderen.Single(b => b.Behandeling == nieuweBehandeling.GekozenBehandeling).Tijdsduur);
                TimeSpan Duur = EndDateTime - StartDateTime;
                nieuweBehandeling.DuurTijd = Duur;
                nieuweBehandeling.Duur     = Duur.ToString();
            }
            _context.Add(nieuweBehandeling);

            nieuweAfspraak.BehandelingGegevens = nieuweBehandeling;
            viewModel.Tijdsduur      = nieuweAfspraak.BehandelingGegevens.DuurTijd.ToString();
            nieuweAfspraak.Datum     = viewModel.Datum;
            nieuweAfspraak.Tijdstip  = viewModel.Tijdstip;
            nieuweAfspraak.Opmerking = viewModel.Opmerkingen;

            _context.Add(nieuweAfspraak);
            _context.SaveChanges();

            return(new RedirectToActionResult("Bevestiging", "Afspraak", viewModel));
        }
Ejemplo n.º 6
0
        public async Task <IActionResult> PutEvent([FromRoute] int id, [FromBody] Afspraak afspraak)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            if (id != afspraak.Id)
            {
                return(BadRequest());
            }

            _context.Entry(afspraak).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!EventExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
Ejemplo n.º 7
0
        public async Task <IActionResult> Edit(int id, [Bind("ID,AfspraakDatum,AfspraakTijd,Email,Naam,Nieuwsbrief,TelNr,TrouwDatum")] Afspraak afspraak)
        {
            if (id != afspraak.ID)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(afspraak);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!AfspraakExists(afspraak.ID))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction("Index"));
            }
            return(View(afspraak));
        }
Ejemplo n.º 8
0
        public void AddAfspraak(Afspraak a)
        {
            List <Afspraak> afspraak = repoAfspraken.GetDuurEnTijdstip(a);

            if (afspraak.Count() == 0)
            {
                repoAfspraken.Insert(a);
                repoAfspraken.SaveChanges();

                try
                {
                    Sessie k = repoSessie.GetByKlantID(a.Klant.ID);
                    k.AantalSessies++;
                    repoSessie.Update(k);
                    repoSessie.SaveChanges();
                }
                catch (Exception ex)
                {
                    repoSessie.Insert(new Sessie()
                    {
                        AantalSessies = 1, Klant = a.Klant
                    });
                    repoSessie.SaveChanges();
                }
            }
            else
            {
                a.Geannuleerd = true;
            }
        }
        public ViewResult Edit(int afspraakId)
        {
            Afspraak afspraak = repository.Afspraken
                                .FirstOrDefault(p => p.AfspraakId == afspraakId);

            return(View(afspraak));
        }
Ejemplo n.º 10
0
        public async Task <IActionResult> Edit(int id, [Bind("Id,AfspraakSoort,Datum,Tijd,Gebruiker")] Afspraak afspraak)
        {
            if (id != afspraak.Id)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try
                {
                    _context.Update(afspraak);
                    await _context.SaveChangesAsync();
                }
                catch (DbUpdateConcurrencyException)
                {
                    if (!AfspraakExists(afspraak.Id))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction("Index"));
            }
            return(View(afspraak));
        }
        public async Task <IActionResult> Edit(int id, [Bind("AfspraakId,Email,Naam,Nieuwsbrief,Telefoonnummer,Tijd,TrouwDatum")] Afspraak afspraak)
        {
            if (id != afspraak.AfspraakId)
            {
                return(NotFound());
            }

            if (ModelState.IsValid)
            {
                try {
                    HoneyMoonDb.Update(afspraak);
                    await HoneyMoonDb.SaveChangesAsync();
                } catch (DbUpdateConcurrencyException) {
                    if (!AfspraakExists(afspraak.AfspraakId))
                    {
                        return(NotFound());
                    }
                    else
                    {
                        throw;
                    }
                }
                return(RedirectToAction("Index"));
            }
            return(View(afspraak));
        }
Ejemplo n.º 12
0
        public void AfspraakToevoegen()
        {
            Afspraak afspraak = new Afspraak()
            {
                ID            = 4,
                AfspraakDatum = new DateTime(2017, 08, 21),
                Naam          = "Jan",
                TrouwDatum    = new DateTime(2017, 09, 09),
                TelNr         = 0312214974,
                Email         = "*****@*****.**",
                Nieuwsbrief   = true
            };

            //er zijn 2 mock object nodig
            var mockDbContext     = new Mock <ApplicationDbContext>();
            var mockDbSetAfspraak = new Mock <DbSet <Afspraak> >();

            // Als afspraak uit de DBcontext opgevraagd ook een mock object teruggeven
            mockDbContext.Setup(x => x.Afspraak).Returns(mockDbSetAfspraak.Object);

            AfspraakController ac = new AfspraakController(mockDbContext.Object);

            var result = ac.Add(afspraak);

            // Checken of wat toegevoegd is wel een afspraak is.
            mockDbSetAfspraak.Verify(m => m.Add(It.IsAny <Afspraak>()), Times.Once());

            // Test of email en naam klopt
            mockDbSetAfspraak.Verify(m => m.Add(It.Is <Afspraak>(a => a.Email == "*****@*****.**" && a.Naam == "Jan")));

            // Check of afspraak 1x toegevoegd wordt
            mockDbContext.Verify(m => m.SaveChanges(), Times.Once());
        }
        public IActionResult DatePickerGegevens(DateTime tijd)
        {
            Afspraak afs = new Afspraak {
                DatumTijd = tijd
            };

            return(View(afs));
        }
Ejemplo n.º 14
0
        public ActionResult DeleteConfirmed(int id)
        {
            Afspraak afspraak = db.AfspraakSet.Find(id);

            db.AfspraakSet.Remove(afspraak);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
        public override void Init(object initData) //async
        {
            base.Init(initData);

            huidigeAfspraak = initData as Afspraak;
            LoadItemState();
            AfspraakGeboortedatum = DateTime.Now;
        }
Ejemplo n.º 16
0
        public void UpdateAnnuleer(Afspraak a)
        {
            repoAfspraken.UpdateAnnuleer(a);
            repoAfspraken.SaveChanges();
            Sessie k = repoSessie.GetByKlantID(a.Klant.ID);

            k.AantalSessies--;
            repoSessie.Update(k);
            repoSessie.SaveChanges();
        }
        public IActionResult Delete(int afspraakId)
        {
            Afspraak deletedAfspraak = repository.DeleteAfspraak(afspraakId);

            if (deletedAfspraak != null)
            {
                //TempData["message"] = $"{deletedJurk.Artikelnummer} was deleted";
            }
            return(RedirectToAction("Crud"));
        }
Ejemplo n.º 18
0
 public ActionResult Edit([Bind(Include = "Id,Datum,VerzekerdeId")] Afspraak afspraak)
 {
     if (ModelState.IsValid)
     {
         db.Entry(afspraak).State = EntityState.Modified;
         db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     ViewBag.VerzekerdeId = new SelectList(db.VerzekerdeSet, "Id", "NaamVerzekerde", afspraak.VerzekerdeId);
     return(View(afspraak));
 }
Ejemplo n.º 19
0
        public async Task <IActionResult> Create([Bind("ID,AfspraakDatum,AfspraakTijd,Email,Naam,Nieuwsbrief,TelNr,TrouwDatum")] Afspraak afspraak)
        {
            if (ModelState.IsValid)
            {
                _context.Add(afspraak);
                await _context.SaveChangesAsync();

                return(RedirectToAction("Index"));
            }
            return(View(afspraak));
        }
Ejemplo n.º 20
0
        public ActionResult Create([Bind(Include = "Id,Datum,VerzekerdeId")] Afspraak afspraak)
        {
            if (ModelState.IsValid)
            {
                db.AfspraakSet.Add(afspraak);
                db.SaveChanges();
                return(RedirectToAction("Index"));
            }

            ViewBag.VerzekerdeId = new SelectList(db.VerzekerdeSet, "Id", "NaamVerzekerde", afspraak.VerzekerdeId);
            return(View(afspraak));
        }
        //[HttpPost]
        //[ValidateAntiForgeryToken]
        public IActionResult DatumSelecteren([Bind("AfspraakDatum")] Afspraak afspraak)
        {
            if (ModelState.IsValid)
            {
                //HoneyMoonDb.Add(afspraak);
                //HoneyMoonDb.SaveChanges();

                HttpContext.Session.SetString("AfspraakDatum", afspraak.AfspraakDatum.ToString());
                return(RedirectToAction("TijdSelecteren"));
            }
            return(View(afspraak));
        }
Ejemplo n.º 22
0
        public Afspraak DeleteAfspraak(int afspraakId)
        {
            Afspraak dbEntry = context.Afspraak
                               .FirstOrDefault(p => p.AfspraakId == afspraakId);

            if (dbEntry != null)
            {
                context.Afspraak.Remove(dbEntry);
                context.SaveChanges();
            }
            return(dbEntry);
        }
Ejemplo n.º 23
0
        public async Task <IActionResult> PostEvent([FromBody] Afspraak afspraak)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }

            _context.Afspraak.Add(afspraak);
            await _context.SaveChangesAsync();

            return(CreatedAtAction("GetEvent", new { id = afspraak.Id }, afspraak));
        }
Ejemplo n.º 24
0
 public async Task <bool> Bewaar(Afspraak afspraak)
 {
     try
     {
         afspraak.Id = AutoIncrement();
         await Task.Run(() => _dbAfspraken.Add(afspraak));
     }
     catch (Exception)
     {
         return(false);
     }
     return(true);
 }
        public IActionResult DatePickerBevestigen(String naam, DateTime tijd, DateTime Trouwdatum, int tel, String email)
        {
            Models.Afspraak afs = new Afspraak()
            {
                Achternaam     = naam,
                DatumTijd      = tijd,
                Trouwdatum     = Trouwdatum,
                TelefoonNummer = tel,
                EmailAdres     = email
            };

            return(View(afs));
        }
 public IActionResult Edit(Afspraak afspraak)
 {
     if (ModelState.IsValid)
     {
         repository.SaveAfspraak(afspraak);
         //TempData["message"] = $"{jurk.Artikelnummer} has been saved";
         return(RedirectToAction("Crud"));
     }
     else
     {
         // there is something wrong with the data values
         return(View(afspraak));
     }
 }
Ejemplo n.º 27
0
        // GET: Afspraken/Details/5
        public ActionResult Details(int?id)
        {
            if (id == null)
            {
                return(new HttpStatusCodeResult(HttpStatusCode.BadRequest));
            }
            Afspraak afspraak = db.AfspraakSet.Find(id);

            if (afspraak == null)
            {
                return(HttpNotFound());
            }
            return(View(afspraak));
        }
        // POST: Afspraak/Create
        // To protect from overposting attacks, please enable the specific properties you want to bind to, for
        // more details see http://go.microsoft.com/fwlink/?LinkId=317598.


        //[HttpPost]
        //[ValidateAntiForgeryToken]
        public IActionResult GegevensInvullen([Bind("AfspraakId,Email,Naam,Nieuwsbrief,Telefoonnummer,Tijd,TrouwDatum,HerhaalEmail,AfspraakDatum ")] Afspraak afspraak)
        {
            if (ModelState.IsValid)
            {
                //HoneyMoonDb.Add(afspraak);
                //HoneyMoonDb.SaveChanges();
                HttpContext.Session.SetString("Naam", afspraak.Naam);
                HttpContext.Session.SetString("TrouwDatum", afspraak.TrouwDatum.ToString());
                HttpContext.Session.SetInt32("TelNr", afspraak.Telefoonnummer);
                HttpContext.Session.SetString("Email", afspraak.Email);
                HttpContext.Session.SetString("AfspraakDatum", afspraak.AfspraakDatum.ToString());
                return(RedirectToAction("GegevensBevestigen"));
            }
            return(View(afspraak));
        }
        public IActionResult GegevensBevestigen(Afspraak afspraak)
        {
            afspraak = new Afspraak()
            {
                Naam           = HttpContext.Session.GetString("Naam"),
                TrouwDatum     = DateTime.Parse(HttpContext.Session.GetString("TrouwDatum")),
                Telefoonnummer = (int)HttpContext.Session.GetInt32("TelNr"),
                Email          = HttpContext.Session.GetString("Email"),
                AfspraakDatum  = DateTime.Parse(HttpContext.Session.GetString("AfspraakDatum"))
            };



            return(View(afspraak));
        }
Ejemplo n.º 30
0
        public IActionResult GegevensInvullen([Bind("AfspraakId,Email,Naam,Telefoonnummer,TrouwDatum,HerhaalEmail, AfspraakDatum, Tijd, Nieuwsbrief")] Afspraak afspraak, BeschikbareTijden tijden)
        {
            //HoneyMoonDb.Add(afspraak);
            //HoneyMoonDb.SaveChanges();

            HttpContext.Session.SetString("Naam", afspraak.Naam);
            HttpContext.Session.SetString("TrouwDatum", afspraak.TrouwDatum.ToString());
            HttpContext.Session.SetInt32("TelNr", afspraak.Telefoonnummer);
            HttpContext.Session.SetString("Email", afspraak.Email);
            HttpContext.Session.SetString("HerhaalEmail", afspraak.HerhaalEmail);
            HttpContext.Session.SetString("AfspraakDatum", afspraak.AfspraakDatum.ToString());
            HttpContext.Session.SetString("Nieuwsbrief", afspraak.Nieuwsbrief.ToString());
            HttpContext.Session.SetInt32("Tijd", afspraak.Tijd);
            return(RedirectToAction("GegevensBevestigen"));
        }