예제 #1
0
        public IActionResult Index()
        {
            string userID = User.FindFirst(ClaimTypes.NameIdentifier).Value;

            IEnumerable <Boeking> listBoeking = boekingService.GetXForUser(userID, 10);

            foreach (var item in listBoeking)
            {
                IEnumerable <TreinritReis> treinritReis = treinritReisService.FindByReisId(item.ReisId);
                Treinrit treinrit    = treinritService.FindById(treinritReis.First().TreinritId);
                var      vertekDatum = treinrit.Vertrek;

                var dateNow = DateTime.UtcNow;

                if (vertekDatum < dateNow)
                {
                    if (item.Status != "Voltooid")
                    {
                        item.Status = "Voltooid";
                        boekingService.Update(item);
                    }
                }
            }

            foreach (var item in listBoeking)
            {
                IEnumerable <TreinritReis> treinritReis = treinritReisService.FindByReisId(item.ReisId);
                Treinrit treinrit    = treinritService.FindById(treinritReis.First().TreinritId);
                var      vertekDatum = treinrit.Vertrek;

                var dateNow = DateTime.UtcNow;

                if (vertekDatum < dateNow)
                {
                    if (item.Status != "Voltooid")
                    {
                        item.Status = "Voltooid";
                        boekingService.Update(item);
                    }
                }


                item.Reis                 = reisService.FindById(item.ReisId);
                item.Reis.Vertrekstad     = stadService.FindById(item.Reis.VertrekstadId);
                item.Reis.Bestemmingsstad = stadService.FindById(item.Reis.BestemmingsstadId);
                item.Reis.TreinritReis    = treinritReisService.FindByReisId(item.ReisId);

                foreach (var rit in item.Reis.TreinritReis)
                {
                    rit.Treinrit = treinritService.FindById(Convert.ToInt16(rit.TreinritId));
                }
            }

            return(View(listBoeking));
        }
예제 #2
0
        public IActionResult Index(ReisVM reisVM)
        {
            if (ModelState.IsValid)
            {
                //Data uit de VM halen
                Stad     vertrekstad  = stadService.FindById(reisVM.VerstrekStadId);
                Stad     aankomststad = stadService.FindById(reisVM.AankomstStadId);
                DateTime date         = reisVM.VertrekDatum;

                if (!((date - DateTime.Now).TotalDays < 14))
                {
                    ViewBag.lstStad = new SelectList(stadService.GetAll(), "Id", "Naam");
                    ViewBag.Error   = "U kan alleen reizen boeken binnen 14 dagen.";
                    return(View());
                }
                if (date < DateTime.Now)
                {
                    ViewBag.lstStad = new SelectList(stadService.GetAll(), "Id", "Naam");
                    ViewBag.Error   = "Uw vertrekdatum moet in de toekomst zijn.";
                    return(View());
                }

                Boolean bussiness = reisVM.BussinessClass;
                String  naam      = reisVM.Naam;
                int     aantal    = reisVM.Aantal;

                //Reis maken
                (Reis reis, String error) = reisService.MakeReis(naam, bussiness, vertrekstad, aankomststad, date, aantal);

                if (error.Equals(""))
                {
                    return(View("ShowReis", reis)); // later mss met ajax en de partial in reis
                }
                else
                {
                    ViewBag.lstStad = new SelectList(stadService.GetAll(), "Id", "Naam");
                    ViewBag.Error   = error;
                    return(View());
                }
            }
            ViewBag.lstStad = new SelectList(stadService.GetAll(), "Id", "Naam");
            return(View());
        }