예제 #1
0
 public IActionResult Edit(int id, [Bind("Id, StanBiletu, SeansId, KlientId")] Bilety bilet)
 {
     if (ModelState.IsValid)
     {
         UnitOfWork.BiletyRepository.Update(bilet);
         UnitOfWork.Save();
         return(RedirectToAction(nameof(Index)));
     }
     return(View("Index"));
 }
        public IActionResult BuyTicket(int?id)
        {
            Bilety bilet = new Bilety
            {
                StanBiletu = "zapłacony",
                SeansId    = (int)id,
                KlientId   = LoggedUserId,
                Klient     = UnitOfWork.KlienciRepository.GetById(LoggedUserId),
                Seans      = UnitOfWork.SeanseRepository.GetById((int)id)
            };

            UnitOfWork.BiletyRepository.Create(bilet);
            UnitOfWork.Save();

            return(View(bilet));
        }
예제 #3
0
        public ActionResult finalizujBilet(biletModel biletmodel)
        {
            var tempmiejsce = TempData["miejsca"] as string[];

            foreach (var jednomiejsce in tempmiejsce)
            {
                int  n;
                bool isNumeric = int.TryParse(jednomiejsce, out n);
                if (!isNumeric)
                {
                    return(RedirectToAction("index", "Home", new { msg = "Cos poszlo nie tak 1001" }));
                }
            }



            var cos   = biletmodel.bilety;
            var seans = Convert.ToInt16(biletmodel.idseansu);
            var info  = (from s in db.Seanse
                         join f in db.Filmy on s.Id_Filmu equals f.Id_Filmu
                         where s.Id_Seansu == seans
                         select new CenyModel {
                nazwa = f.Tytul, plakat = f.Plakat, normalny = f.Cena_normalny, ulgowy = f.Cena_ulgowy
            }).ToList();
            var infooo = info[0];


            var rezerwacje = new Rezerwacje();

            rezerwacje.Id_Seansu     = seans;
            rezerwacje.Czy_zaplacone = false;
            db.Rezerwacje.Add(rezerwacje);
            db.SaveChanges();

            int numberrezerwacji = rezerwacje.Id_Rezerwacji;


            // bilety

            //string[] arraymiejsca = biletmodel.numerbiletow.ToArray();
            //string[] arraymiejsca



            //string[] arraymiejsce;
            //int sd = 0;
            //foreach (var item in biletmodel.numerbiletow)
            //{
            //    arraymiejsce[sd] = item;
            //    sd++;
            //}



            int cena = 0;
            int asd  = 0;

            foreach (var item in biletmodel.bilety)
            {
                Bilety bilety = new Bilety();
                if (item == "Ulgowy")
                {
                    bilety.Rodzaj = item;
                    bilety.Cena   = infooo.ulgowy.ToString();
                    cena         += infooo.ulgowy;
                }
                else
                {
                    bilety.Rodzaj = item;
                    bilety.Cena   = infooo.normalny.ToString();
                    cena         += infooo.normalny;
                }

                bilety.Id_Miejsca     = Convert.ToInt16(tempmiejsce[asd]);
                bilety.Id_Uzytkownika = User.Identity.GetUserId();
                bilety.Id_Rezerwacji  = Convert.ToInt16(numberrezerwacji);
                asd++;

                db.Bilety.Add(bilety);
                db.SaveChanges();


                var idseansu = Convert.ToInt16(biletmodel.idseansu);



                foreach (var jednomiejsce in tempmiejsce)
                {
                    int miejsce  = Convert.ToInt16(jednomiejsce);
                    var queryone = db.Miejsca.FirstOrDefault(da => da.Id_Seansu == idseansu && da.Nr_Miejsca == miejsce);

                    if (queryone != null)
                    {
                        queryone.Status = true;
                    }
                }

                db.SaveChanges();
            }



            //return View(biletmodel);
            return(RedirectToAction("drukujBilet", "Seanse", new { idrezerwacji = numberrezerwacji }));
        }