Esempio n. 1
0
        public IActionResult KupiUlaznicu(int id)
        {
            KorisnickiNalog korisnik = HttpContext.GetLogiraniKorisnik();
            MyContext       db       = new MyContext();

            Rezervacija     r     = db.Rezervacija.Where(x => x.RezervacijaID == id).FirstOrDefault();
            Prikazivanje    p     = db.Prikazivanje.Where(x => x.PrikazivanjeID == r.PrikazivanjeID).FirstOrDefault();
            List <Ulaznica> ul    = db.Ulaznica.Where(x => x.PrikazivanjeID == p.PrikazivanjeID).Include(x => x.Sjediste).Include(x => x.Prikazivanje).ThenInclude(x => x.Sala) /*.Select(x=>x.SjedisteID)*/.ToList();
            Ulaznica        u     = db.Ulaznica.Where(x => x.PrikazivanjeID == p.PrikazivanjeID).FirstOrDefault();
            List <Sjediste> sjed  = db.Sjediste.ToList();
            List <Sjediste> sjed2 = ul.Select(x => x.Sjediste).ToList();

            var lista = sjed.Except(sjed2);

            UlaznicaDodajVM model = new UlaznicaDodajVM()
            {
                Ulaznica = new Ulaznica()
                {
                    RezervacijaID = id
                },
                KupacId      = korisnik.KorisnickiNalogID,
                Kupac        = db.Kupac.Where(x => x.KorisnickiNalogID == korisnik.KorisnickiNalogID).Select(x => x.Ime + " " + x.Prezime).FirstOrDefault(),
                Prikazivanje = db.Rezervacija.Where(y => y.RezervacijaID == id).Include(y => y.Prikazivanje).ThenInclude(y => y.Predstava).Select(y => y.Prikazivanje.Predstava.Naziv + " / " + y.Prikazivanje.DatumPrikazivanja).FirstOrDefault(),
                Cijena       = db.Rezervacija.Where(y => y.RezervacijaID == id).Include(y => y.Prikazivanje).Select(y => y.Prikazivanje.Cijena).FirstOrDefault(),
                Sjedista     = lista.Select(m => new SelectListItem()
                {
                    Value = m.SjedisteID.ToString(),
                    Text  = /*m.Sala.Naziv + ";*/ "Red: " + m.Red + " ; Kolona: " + m.Kolona
                }).ToList(),
            };

            return(View(model));
        }
Esempio n. 2
0
        public IActionResult SnimiUlaznicu(UlaznicaDodajVM model)
        {
            KorisnickiNalog kupac = HttpContext.GetLogiraniKorisnik();
            MyContext       db    = new MyContext();

            Kupac        k = db.Kupac.Where(x => x.KorisnickiNalogID == kupac.KorisnickiNalogID).FirstOrDefault();
            Rezervacija  r = db.Rezervacija.Where(x => x.RezervacijaID == model.Ulaznica.RezervacijaID).FirstOrDefault();
            Prikazivanje p = db.Prikazivanje.Where(x => x.PrikazivanjeID == r.PrikazivanjeID).FirstOrDefault();

            Ulaznica u = model.Ulaznica;

            u.KupacID        = kupac.KorisnickiNalogID;
            u.Kupac          = db.Kupac.Where(x => x.KorisnickiNalogID == kupac.KorisnickiNalogID).FirstOrDefault();
            u.RezervacijaID  = model.Ulaznica.RezervacijaID;
            u.PrikazivanjeID = p.PrikazivanjeID;

            db.Ulaznica.Add(u);

            int cijena = Convert.ToInt32(p.Cijena);

            if (k.BrojTokena > cijena)
            {
                k.BrojTokena -= cijena;
                db.Kupac.Update(k);
                db.SaveChanges();
                db.Dispose();
                return(RedirectToAction("MojeUlaznice"));
            }
            else
            {
                TempData["error_poruka"] = "Nemate dovoljan broj tokena da platite ulaznicu!";
                return(RedirectToAction("MojeUlaznice"));
            }
        }
        public IActionResult UrediSnimi(PrikazivanjeUrediVM model)
        {
            MyContext    db = new MyContext();
            Prikazivanje u  = db.Prikazivanje.Where(x => x.PrikazivanjeID == model.PrikazivanjeID).Include(x => x.Sala).Include(x => x.Predstava).FirstOrDefault();

            if (u.DatumPrikazivanja <= DateTime.Today)
            {
                return(RedirectToAction("Prikazi/" + model.PrikazivanjeID));
            }
            else
            {
                u.PrikazivanjeID    = model.PrikazivanjeID;
                u.SalaID            = model.salaid;
                u.PredstavaID       = model.predstavaid;
                u.DatumPrikazivanja = model.datumPrikazivanja;
                u.Cijena            = model.Cijena;
                List <SelectListItem> sala = db.Sala.Select(x => new SelectListItem()
                {
                    Value = x.SalaID.ToString(),
                    Text  = x.Naziv
                }).ToList();
                sala = model.Sala;

                List <SelectListItem> predstava = db.Predstava.Select(x => new SelectListItem()
                {
                    Value = x.PredstavaID.ToString(),
                    Text  = x.Naziv
                }).ToList();
                predstava = model.Predstava;
                db.SaveChanges();
                db.Dispose();
                return(RedirectToAction("Prikazi/" + model.PrikazivanjeID));
            }
        }
        public IActionResult Uredi(int id)
        {
            MyContext db = new MyContext();

            Prikazivanje u = db.Prikazivanje.Where(x => x.PrikazivanjeID == id).Include(x => x.Sala).Include(x => x.Predstava).FirstOrDefault();

            PrikazivanjeUrediVM model = new PrikazivanjeUrediVM()
            {
                PrikazivanjeID = id,
                Sala           = db.Sala.Select(x => new SelectListItem()
                {
                    Value = x.SalaID.ToString(),
                    Text  = x.Naziv
                }).ToList(),
                salaid    = u.SalaID,
                Predstava = db.Predstava.Select(x => new SelectListItem()
                {
                    Value = x.PredstavaID.ToString(),
                    Text  = x.Naziv
                }).ToList(),
                predstavaid       = u.PredstavaID,
                datumPrikazivanja = u.DatumPrikazivanja,
                Cijena            = u.Cijena,
            };

            db.Dispose();
            return(View(model));
        }
        public async Task Init()
        {
            var          username  = APIService.Username;
            List <Kupac> KupacList = await _kupac.Get <List <Kupac> >(null);

            foreach (var k in KupacList)
            {
                if (k.KorisnickoIme == username)
                {
                    kupac = k;
                    break;
                }
            }
            var list = await _ulaznice.Get <IEnumerable <Ulaznica> >(new UlaznicaSearchRequest()
            {
                KupacId = kupac.KupacId
            });

            UlazniceList.Clear();
            foreach (var ulaznica in list)
            {
                Prikazivanje p = await _prikazivanje.GetById <Prikazivanje>(ulaznica.PrikazivanjeId);

                //if (p.DatumPrikazivanja < DateTime.Now)
                //    ulaznica.Color = "LightGray";
                //else
                //    ulaznica.Color = "LightGreen";
                UlazniceList.Add(ulaznica);
                qrCode = ulaznica.Qrkod;
            }
        }
 public PrikazivanjeDetailPage(Prikazivanje prikazivanje)
 {
     InitializeComponent();
     BindingContext = model = new PrikazivanjeDetailViewModel()
     {
         Prikazivanje = prikazivanje
     };
 }
 public UrediPrikazivanjePage(Prikazivanje prikazivanje)
 {
     InitializeComponent();
     BindingContext = prikazivanjeVM = new PrikazivanjeUrediVM()
     {
         Prikazivanje = prikazivanje
     };
     z = prikazivanje;
 }
Esempio n. 8
0
 private void BunifuImageButton2_Click(object sender, EventArgs e)
 {
     if (Meni.Visible)
     {
         Sakrivanje.HideSync(Meni);
         Refresh();
     }
     else
     {
         Prikazivanje.ShowSync(Meni);
         Refresh();
     }
 }
        public IActionResult Snimi(PrikazivanjeDodajVM model)
        {
            MyContext    db = new MyContext();
            Prikazivanje p  = model.Prikazivanje;

            if (p.DatumPrikazivanja <= DateTime.Today)
            {
                TempData["error_poruka"] = "Datum prikazivanja treba biti veci od danasnjeg dana";
                return(RedirectToAction("Prikazi"));
            }
            else
            {
                db.Prikazivanje.Add(p);
                db.SaveChanges();
                db.Dispose();
                return(RedirectToAction("Prikazi"));
            }
        }
Esempio n. 10
0
        public IActionResult OtkaziRezervaciju(int id)
        {
            MyContext    db = new MyContext();
            Rezervacija  r  = db.Rezervacija.Find(id);
            Prikazivanje p  = db.Prikazivanje.Where(x => x.PrikazivanjeID == r.PrikazivanjeID).FirstOrDefault();

            if ((p.DatumPrikazivanja - DateTime.Now).TotalDays < 3)
            {
                TempData["error_poruka2"] = "Greška! Rezervaciju je moguće otkazati 3 dana prije prikazivanja!";
                return(RedirectToAction("MojeRezervacije"));
            }
            else
            {
                db.Rezervacija.Remove(r);
                db.SaveChanges();
                db.Dispose();
                return(RedirectToAction("MojeRezervacije"));
            }
        }
        public IActionResult Obrisi(int id)
        {
            MyContext    db = new MyContext();
            Prikazivanje p  = db.Prikazivanje.Find(id);

            List <Rezervacija> r = db.Rezervacija.Where(x => x.PrikazivanjeID == p.PrikazivanjeID).ToList();

            foreach (var y in r)
            {
                var             rez = y.RezervacijaID;
                List <Ulaznica> ul  = db.Ulaznica.Where(x => x.RezervacijaID == rez).ToList();
                foreach (var yz in ul)
                {
                    db.Ulaznica.Remove(yz);
                }
                db.Rezervacija.Remove(y);
            }
            db.Prikazivanje.Remove(p);
            db.SaveChanges();
            db.Dispose();
            return(RedirectToAction("Prikazi"));
        }
        public async Task Init()
        {
            IsBusy = true;

            UlaznicaUpsertRequest req = new UlaznicaUpsertRequest();

            req.KupacId        = rezervacija.KupacId;
            req.PrikazivanjeId = rezervacija.PrikazivanjeId;
            req.SjedisteId     = odabranoSjedalo.SjedisteId;
            req.RezervacijaId  = rezervacija.RezervacijaId;

            Kupac x = await _kupac.GetById <Kupac>(req.KupacId);

            Prikazivanje y = await _prikazivanje.GetById <Prikazivanje>(req.PrikazivanjeId);

            int z = Convert.ToInt32(y.Cijena);

            if (x.BrojTokena < z)
            {
                await Application.Current.MainPage.DisplayAlert("Greška", "Nedovoljan broj tokena", "OK");

                return;
            }

            Ulaznica ulaznica = await _ulaznica.Insert <Ulaznica>(req);

            qrCode = ulaznica.Qrkod;


            await Application.Current.MainPage.DisplayAlert(" ", "Izvršeno", "OK");


            x.BrojTokena -= z;

            await _kupac.Update <Kupac>(req.KupacId, x);
        }