Пример #1
0
        public ActionResult finalizujBilet()
        {
            string miejsca  = Request.QueryString["miejsca"];
            string idseansu = Request.QueryString["idseansu"];


            int idseansu123 = Convert.ToInt16(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 == idseansu123
                               select new SeansInfoModel {
                Tytul = f.Tytul, Plakat = f.Plakat, cenanormalny = f.Cena_normalny, cenaulgowy = f.Cena_ulgowy
            }).ToList();



            string[] miejsceID = miejsca.Split(new char[] { ',' }, StringSplitOptions.RemoveEmptyEntries);
            TempData["miejsca"] = miejsceID;


            var lista = new List <string>();

            foreach (var item in miejsceID)
            {
                lista.Add(item);
            }


            var model = new biletModel();

            model.bilety            = lista;
            model.idseansu          = idseansu;
            model.numerbiletow      = lista;
            model.biletythis        = miejsceID;
            model.film              = info[0];
            Session["Film"]         = info[0].Tytul;
            Session["Plakat"]       = info[0].Plakat;
            Session["ulgowycena"]   = info[0].cenaulgowy;
            Session["normalnycena"] = info[0].cenanormalny;


            return(View(model));
        }
Пример #2
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 }));
        }