public IActionResult DodijeliNagradu(int id)
        {
            MojDbContext db     = new MojDbContext();
            NagradnaIgra n      = db.NagradnaIgra.Where(u => u.NagradnaIgraID == id).FirstOrDefault();
            Random       random = new Random();
            var          kupci  = db.Kupac.ToList();
            int          broj   = kupci.Count();

            int[] Kupci = new int[broj];
            for (int i = 0; i < broj; i++)
            {
                Kupci[i] = kupci[i].KupacID;
            }
            int k = random.Next(0, broj);

            KupacNagradnaIgraDodajVM model = new KupacNagradnaIgraDodajVM()
            {
                KupacNagradnaIgra = new NagradnaIgraKupac(),
                KupacId           = Kupci[k],
                NagradnaIgraId    = n.NagradnaIgraID,
                Kupac             = db.Kupac.Select(y => new SelectListItem
                {
                    Value = y.KupacID.ToString(),
                    Text  = y.Korisnik.Ime + " " + y.Korisnik.Prezime
                }).ToList(),
                Nagradnaigra = db.NagradnaIgra.Select(x => new SelectListItem
                {
                    Value = x.NagradnaIgraID.ToString(),
                    Text  = x.Naziv
                }).ToList()
            };

            db.Dispose();
            return(View(model));
        }
Esempio n. 2
0
        public IHttpActionResult GetKupon(string KorisnikId)
        {
            int          korisnikId = Convert.ToInt32(KorisnikId);
            NagradnaVM   n          = new NagradnaVM();
            NagradnaIgra i          = new NagradnaIgra();

            i = ctx.NagradnaIgra.Where(x => x.KorisniciId == korisnikId && x.Iskoristen == false &&
                                       x.VaziDo > DateTime.Now).FirstOrDefault();

            if (i == null)
            {
                n.imaPopust = "ne";
            }

            else
            {
                n.KorisnikId = i.KorisniciId;
                n.Popust     = i.Popust.ToString() + " %";
                n.Sifra      = i.KuponKod;
                n.VrijediDo  = i.VaziDo.ToString("dd-MM-yyyy");
                n.imaPopust  = "da";
            }



            return(Ok(n));
        }
Esempio n. 3
0
        public IActionResult Dodaj(int ID)
        {
            Korisnik a = _db.Korisnik.Where(x => x.KorisnikId == HttpContext.GetLogiraniKorisnik().KorisnikId).FirstOrDefault();

            NagradnaIgraDodajVM model = new NagradnaIgraDodajVM
            {
                DatumPocetka   = DateTime.Now,
                DatumZavrsetka = DateTime.Now,

                Nagrade = _db.Nagrada.Select(i => new SelectListItem {
                    Value = i.NagradaID.ToString(), Text = i.Naziv
                }).ToList(),
                Administrator   = a.Ime + " " + a.Prezime,
                AdministratorID = a.KorisnikId,
                Klijenti        = _db.Klijent.Select(i => new SelectListItem {
                    Value = i.KlijentID.ToString(), Text = i.Ime + " " + i.Prezime
                }).ToList()
            };

            if (ID != 0)
            {
                NagradnaIgra t = _db.NagradnaIgra.Find(ID);
                model.NagradnaIgraID = t.NagradnaIgraID;
                model.DatumPocetka   = t.DatumPocetka;
                model.DatumZavrsetka = t.DatumZavrsetka;
                model.Opis           = t.Opis;

                model.NagradaID       = t.NagradaID;
                model.AdministratorID = t.KorisnikId;
                model.KlijentID       = t.KlijentID;
            }


            return(View(model));
        }
 public DodijeliNagraduPage(NagradnaIgra igra)
 {
     InitializeComponent();
     BindingContext = nagradaVM = new DodijeliNagraduVM {
         NagradnaIgra = igra
     };
     nagradnaIgra = igra;
 }
Esempio n. 5
0
 public NagradnaIgraDetailPage(NagradnaIgra NagradnaIgra)
 {
     InitializeComponent();
     BindingContext = model = new NagradnaIgraDetailViewModel()
     {
         NagradnaIgra = NagradnaIgra
     };
 }
Esempio n. 6
0
 public UrediNagradnaIgraPage(NagradnaIgra nagradnaIgra)
 {
     InitializeComponent();
     BindingContext = nagradnaIgraVM = new UrediNagradnaIgraVM()
     {
         NagradnaIgra = nagradnaIgra
     };
     u = nagradnaIgra;
 }
Esempio n. 7
0
        public IActionResult Obrisi(int ID)
        {
            NagradnaIgra x = _db.NagradnaIgra.Find(ID);

            _db.NagradnaIgra.Remove(x);
            _db.SaveChanges();


            return(Redirect("/NagradnaIgra/Index"));
        }
Esempio n. 8
0
        public IHttpActionResult PostNagradnaIgra(NagradnaIgra ng)
        {
            if (!ModelState.IsValid)
            {
                return(BadRequest(ModelState));
            }
            ng.KuponKod = Constants.GenerateUniqueKod(6);
            ctx.NagradnaIgra.Add(ng);
            ctx.SaveChanges();

            return(Ok(ng));
        }
        public IActionResult DodijeliNagradu(int id)
        {
            MyContext db = new MyContext();

            NagradnaIgra n = db.NagradnaIgra.Where(x => x.NagradnaIgraID == id).FirstOrDefault();

            Random random = new Random();

            var list       = db.Kupac.ToList();
            int brojKupaca = list.Count;

            int[] nizKupci = new int[list.Count];
            for (int i = 0; i < list.Count; i++)
            {
                nizKupci[i] = list[i].KupacID;
            }

            int _kupac = random.Next(0, brojKupaca);

            KupacNagradnaIgraDodajVM model = new KupacNagradnaIgraDodajVM()
            {
                KupacNagradnaIgra = new KupacNagradnaIgra(),
                kupacId           = nizKupci[_kupac],
                nagradnaIgraId    = n.NagradnaIgraID,
                Kupac             = db.Kupac.Select(x => new SelectListItem()
                {
                    Value = x.KupacID.ToString(),
                    Text  = x.Ime + " " + x.Prezime
                }).ToList(),
                NagradnaIgra = db.NagradnaIgra.Select(x => new SelectListItem()
                {
                    Value = x.NagradnaIgraID.ToString(),
                    Text  = x.Naziv
                }).ToList(),
            };



            //Kupac x = await _apiServiceKupac.GetById<Kupac>(req.KupacId);
            //int brojTokenaZaPoklon = random.Next(5, 20);
            //x.BrojTokena += brojTokenaZaPoklon;
            //await _apiServiceKupac.Update<Kupac>(req.KupacId, x);

            //KupacNagradnaIgra kn = model.KupacNagradnaIgra;
            //db.KupacNagradnaIgra.Add(kn);
            //db.SaveChanges();
            db.Dispose();
            return(View(model));
        }
Esempio n. 10
0
        public IActionResult Snimi(NagradnaIgraDodajVM vm)
        {
            if (!ModelState.IsValid)
            {
                NagradnaIgraDodajVM model = new NagradnaIgraDodajVM
                {
                    DatumPocetka   = DateTime.Now,
                    DatumZavrsetka = DateTime.Now,

                    Nagrade = _db.Nagrada.Select(i => new SelectListItem {
                        Value = i.NagradaID.ToString(), Text = i.Naziv
                    }).ToList(),
                    Administrator   = vm.Administrator,
                    AdministratorID = vm.AdministratorID,
                    Klijenti        = _db.Klijent.Select(i => new SelectListItem {
                        Value = i.KlijentID.ToString(), Text = i.Ime + " " + i.Prezime
                    }).ToList()
                };

                return(View("Dodaj", model));
            }
            if (vm.NagradnaIgraID == 0)
            {
                NagradnaIgra x = new NagradnaIgra
                {
                    NagradnaIgraID = vm.NagradnaIgraID,
                    DatumPocetka   = vm.DatumPocetka,
                    DatumZavrsetka = vm.DatumZavrsetka,
                    Opis           = vm.Opis,
                    NagradaID      = vm.NagradaID,
                    KorisnikId     = vm.AdministratorID,
                    KlijentID      = vm.KlijentID
                };
                _db.NagradnaIgra.Add(x);
            }
            else
            {
                NagradnaIgra t = _db.NagradnaIgra.Find(vm.NagradnaIgraID);
                t.NagradnaIgraID = vm.NagradnaIgraID;
                t.DatumPocetka   = vm.DatumPocetka;
                t.DatumZavrsetka = vm.DatumZavrsetka;
                t.Opis           = vm.Opis;
                t.NagradaID      = vm.NagradaID;
                t.KorisnikId     = vm.AdministratorID;
                t.KlijentID      = vm.KlijentID;
            }
            _db.SaveChanges();
            return(Redirect("/NagradnaIgra/Index"));
        }
        public IActionResult UrediSnimi(NagradnaIgraUrediVM model)
        {
            MojDbContext db   = new MojDbContext();
            NagradnaIgra igra = db.NagradnaIgra.Where(u => u.NagradnaIgraID == model.Id).FirstOrDefault();

            igra.NagradnaIgraID = model.Id;
            igra.Naziv          = model.Naziv;
            igra.Opis           = model.Opis;
            igra.Pocetak        = model.Pocetak;
            igra.Kraj           = model.Kraj;

            db.SaveChanges();
            db.Dispose();
            return(RedirectToAction(nameof(Index)));
        }
        public IActionResult UrediSnimi(NagradnaIgraUrediVM model)
        {
            MyContext    db   = new MyContext();
            NagradnaIgra igra = db.NagradnaIgra.Where(x => x.NagradnaIgraID == model.id).FirstOrDefault();

            igra.NagradnaIgraID = model.id;
            igra.Naziv          = model.Naziv;
            igra.Opis           = model.Opis;
            igra.Pocetak        = model.Pocetak;
            igra.Kraj           = model.Kraj;

            db.SaveChanges();
            db.Dispose();
            return(RedirectToAction("Prikazi/" + model.id));
        }
        public IActionResult Obrisi(int id)
        {
            MojDbContext             db    = new MojDbContext();
            NagradnaIgra             nova  = db.NagradnaIgra.Find(id);
            List <NagradnaIgraKupac> kupci = db.NagradnaIgraKupac.Where(i => i.NagradnaIgraId == id).ToList();

            foreach (var b in kupci)
            {
                db.NagradnaIgraKupac.Remove(b);
            }
            db.NagradnaIgra.Remove(nova);
            db.SaveChanges();
            db.Dispose();
            return(RedirectToAction("Index"));
        }
        public IActionResult Uredi(int id)
        {
            MojDbContext        db    = new MojDbContext();
            NagradnaIgra        a     = db.NagradnaIgra.Where(i => i.NagradnaIgraID == id).FirstOrDefault();
            NagradnaIgraUrediVM model = new NagradnaIgraUrediVM
            {
                Id      = a.NagradnaIgraID,
                Naziv   = a.Naziv,
                Pocetak = a.Pocetak,
                Kraj    = a.Kraj,
                Opis    = a.Opis
            };

            db.Dispose();
            return(View(model));
        }
        public IActionResult Obrisi(int id)
        {
            MyContext    db = new MyContext();
            NagradnaIgra n  = db.NagradnaIgra.Find(id);

            List <KupacNagradnaIgra> kniList = db.KupacNagradnaIgra.Where(x => x.NagradnaIgraID == id).ToList();

            foreach (var kni in kniList)
            {
                db.KupacNagradnaIgra.Remove(kni);
            }

            db.NagradnaIgra.Remove(n);
            db.SaveChanges();
            db.Dispose();
            return(RedirectToAction("Prikazi"));
        }
        public IActionResult Snimi(NagradnaIgraDodajVM model)
        {
            Korisnik     uposlenik = HttpContext.GetLogiraniKorisnik();
            MojDbContext db        = new MojDbContext();
            NagradnaIgra n         = new NagradnaIgra
            {
                Naziv      = model.NagradnaIgra.Naziv,
                Opis       = model.NagradnaIgra.Opis,
                Pocetak    = model.NagradnaIgra.Pocetak,
                Kraj       = model.NagradnaIgra.Kraj,
                KorisnikID = uposlenik.KorisnikID
            };

            db.NagradnaIgra.Add(n);
            db.SaveChanges();
            db.Dispose();
            return(RedirectToAction("Index"));
        }
        public IActionResult Uredi(int id)
        {
            MyContext db = new MyContext();

            NagradnaIgra n = db.NagradnaIgra.Where(x => x.NagradnaIgraID == id).FirstOrDefault();

            NagradnaIgraUrediVM model = new NagradnaIgraUrediVM()
            {
                id      = n.NagradnaIgraID,
                Naziv   = n.Naziv,
                Pocetak = n.Pocetak,
                Kraj    = n.Kraj,
                Opis    = n.Opis
            };

            db.Dispose();
            return(View(model));
        }
        public IActionResult Snimi(NagradnaIgraDodajVM model)
        {
            KorisnickiNalog admin = HttpContext.GetLogiraniKorisnik();
            MyContext       db    = new MyContext();
            NagradnaIgra    n     = new NagradnaIgra
            {
                Naziv   = model.NagradnaIgra.Naziv,
                Opis    = model.NagradnaIgra.Opis,
                Pocetak = model.NagradnaIgra.Pocetak,
                Kraj    = model.NagradnaIgra.Kraj,
                AdminID = admin.KorisnickiNalogID,
                Admin   = db.Admin.Where(x => x.KorisnickiNalogID == admin.KorisnickiNalogID).FirstOrDefault(),
            };

            db.NagradnaIgra.Add(n);
            db.SaveChanges();
            db.Dispose();
            return(RedirectToAction("Prikazi"));
        }
Esempio n. 19
0
        public static HttpStatusCode IzdajRacun(int korpaId, string popust = "")
        {
            MContext ctx = new MContext();

            // Dohvacanje korpe / narudzbe za koju se izdaje racun
            Korpa        korpa = ctx.Korpa.FirstOrDefault(x => x.Id == korpaId);
            NagradnaIgra igra  = null;

            if (popust != "")
            {
                igra = ctx.NagradnaIgra.FirstOrDefault(item => item.KuponKod == popust && item.Iskoristen == false);

                if (igra == null)
                {
                    return(HttpStatusCode.Conflict);
                }

                if (DateTime.Now > igra.VaziDo)
                {
                    return(HttpStatusCode.Gone);
                }
            }

            // Provjera da li korpa postoji
            if (korpa != null)
            {
                #region Slanje racuna na email

                // Dohvatit sve podatke o korpi u svrhu formiranja racuna
                KorpaVm korpaVm = GetAllAboutKorpa(korpaId, false, false);

                string body = "";

                // Pohrana racuna u bazu podataka
                Racun racun = new Racun
                {
                    KorpaId      = korpaVm.KorpaId,
                    Datum        = DateTime.Now,
                    UkupnaCijena = (float)korpaVm.UkupnaCijena,
                };

                // Ukoliko korisnik ima kupon sa sifrom
                if (igra != null)
                {
                    racun.Popust           = igra.Popust;
                    racun.CijenaSaPopustom = racun.UkupnaCijena - racun.UkupnaCijena * (igra.Popust / 100);
                    igra.Iskoristen        = true;
                }
                else
                {
                    racun.CijenaSaPopustom = racun.UkupnaCijena;
                }

                racun.Korpa = korpa;
                ctx.Racun.Add(racun);

                korpa.Racun   = racun;
                korpa.RacunId = racun.KorpaId;
                ctx.SaveChanges();

                // Kreiranje body dijela za slanje emaila
                body = "Poštovani " + korpaVm.Korisnik.Ime + " " + korpaVm.Korisnik.Prezime + ", <br/><br/>" +
                       "Naručeno: " + korpaVm.UkupnoSalata + " salata, <br/><b>Ukupan iznos: </b>" + racun.UkupnaCijena + " KM<br/>";

                body += igra != null ? "<b>Cijena sa popustom:</b> " + racun.CijenaSaPopustom + " KM (" + igra.Popust + " % popusta)<br/><br/><br/>" : "";

                string bodyDetail = "";
                int    counter    = 0;
                foreach (var item in korpaVm.ListSalate)
                {
                    counter++;
                    string bodySastojciSporedni = "";

                    foreach (var sastojak in item.ListSastojciSporedni)
                    {
                        bodySastojciSporedni += sastojak.Naziv + ", ";
                    }
                    bodyDetail += "<hr/>" + counter + ".)" + " Glavni sastojak: " + item.GlavniSastojak.Naziv +
                                  "<br/>Sporedni: " +
                                  bodySastojciSporedni + "<br/>Dressing: " + item.DresingSastojak.Naziv + "<br/>Količina: " +
                                  item.Kolicina + " komada<br/>Cijena salate: " + item.UkupnaCijena + " KM";
                }

                body += "<br/>================Detalji narudžbe===============<br/>" + bodyDetail;

                // Salje se racun u obliku emaila, korisniku koji je narucio
                AccountHelper.Sendemail(new EmailVm
                {
                    To      = korpaVm.Korisnik.Email,
                    Body    = body,
                    Subject = "Express Salad Bar racun"
                });

                #endregion

                // Oznacavanje korpe finiliziranom, sada korisnik moze komentarisati svoju narudzbu
                korpa.Finilizirana = true;
                korpa.Zavrsena     = true;

                // Snimanje promijena
                ctx.SaveChanges();

                return(HttpStatusCode.OK);
            }

            return(HttpStatusCode.NotFound);
        }