Exemplo n.º 1
0
        public ProdanaKartaVM Insert(ProdaneKarteInsertRequest request)
        {
            KupljeneKarte  kupljeneKarte   = new KupljeneKarte();
            ProdanaKartaVM kupljeneKarteVM = new ProdanaKartaVM();

            _mapper.Map(request, kupljeneKarte);

            try
            {
                _context.Add(kupljeneKarte);
                _context.SaveChanges();
            }
            catch (Exception e)
            {
                Console.WriteLine(e.Message);
            }

            kupljeneKarteVM.BrojRacuna     = kupljeneKarte.BrojRacuna;
            kupljeneKarteVM.DatumProdaje   = kupljeneKarte.DatumProdaje;
            kupljeneKarteVM.KonacnaCijena  = kupljeneKarte.KonacnaCijena;
            kupljeneKarteVM.KorisnikId     = kupljeneKarte.KupacId;
            kupljeneKarteVM.Popust         = kupljeneKarte.Popust;
            kupljeneKarteVM.RezervacijaId  = kupljeneKarte.RezervacijaId;
            kupljeneKarteVM.ProdanaKartaId = kupljeneKarte.ProdanaKartaId;

            return(kupljeneKarteVM);
        }
Exemplo n.º 2
0
        private async void Rezervisi_Clicked(object sender, EventArgs e)
        {
            //Insertanje Karte - Begin
            Random rnd = new Random();

            int brojSjedista = rnd.Next(1, 30);
            int brojVagona   = rnd.Next(1, 10);

            KartaInsertRequest karta = new KartaInsertRequest();

            karta.RedniBrojSjedista = brojSjedista;
            karta.RedniBrojVagona   = brojVagona;

            KarteVM karteVM = new KarteVM();

            karteVM = await _KarteService.Insert <KarteVM>(karta);

            //Insertanje Karte - End

            //Insertanje Rezervacije - Begin
            RezervacijeInsertRequest rezervacijeInsertRequest = new RezervacijeInsertRequest();

            rezervacijeInsertRequest.DatumRezervacije = DateTime.Now;
            rezervacijeInsertRequest.KartaId          = karteVM.KartaId;
            rezervacijeInsertRequest.KupacId          = Global.PrijavljeniKupac.KupacId; //Dorada (Ubaciti ID od kupca preko Glabal classe)
            rezervacijeInsertRequest.Kompletirana     = false;
            rezervacijeInsertRequest.PutovanjeId      = model.PutovanjeId;

            RezervacijeVM rezervacijeVM = new RezervacijeVM();

            rezervacijeVM = await _RezervacijeService.Insert <RezervacijeVM>(rezervacijeInsertRequest);

            //Insertanje Rezervacije - Begin

            //Insertanje Prodane karte - Begin
            string brojRacuna = BrojRacunaHelper.GenerisiBrojRacuna();

            ProdaneKarteInsertRequest prodaneKarteInsertRequest = new ProdaneKarteInsertRequest();

            prodaneKarteInsertRequest.BrojRacuna    = brojRacuna;
            prodaneKarteInsertRequest.DatumProdaje  = DateTime.Now;
            prodaneKarteInsertRequest.RezervacijaId = rezervacijeVM.RezervacijaId;
            prodaneKarteInsertRequest.Popust        = 0;
            prodaneKarteInsertRequest.KupacId       = Global.PrijavljeniKupac.KupacId; //Dorada (Ubaciti ID od kupca preko Glabal classe)
            prodaneKarteInsertRequest.KonacnaCijena = model.FinalnaCijena;

            ProdanaKartaVM prodanaKartaVM = new ProdanaKartaVM();

            prodanaKartaVM = await _ProdaneKarteService.Insert <ProdanaKartaVM>(prodaneKarteInsertRequest);

            //Insertanje Prodane karte - End

            //Insertanje Pretrage - Begin

            PretragaInsertRequest pretragaInsertRequest = new PretragaInsertRequest();

            pretragaInsertRequest.RezervacijaID = rezervacijeVM.RezervacijaId;;
            pretragaInsertRequest.RelacijaId    = model.Putovanje.RelacijaID;
            pretragaInsertRequest.KupacId       = Global.PrijavljeniKupac.KupacId;

            PretragaVM pretragaVM = new PretragaVM();

            pretragaVM = await _PretrageService.Insert <PretragaVM>(pretragaInsertRequest);

            //Insertanje Pretrage -  End



            await Navigation.PushAsync(new StripePaymentGatwayPage(model.FinalnaCijena));
        }
Exemplo n.º 3
0
        public List <ProdanaKartaVM> Get(ProdaneKarteSearchRequest request)
        {
            List <Putovanja> PutovanjaDB = new List <Putovanja>();

            List <ProdanaKartaVM> prodaneKarte = new List <ProdanaKartaVM>();

            List <KupljeneKarte> kupljeneKartes = new List <KupljeneKarte>();

            List <Rezervacije> Rezervacijes = new List <Rezervacije>();

            if (request.PolaznaZeljeznickaStanica == 0 && request.OdredisnaljeznickaStanica == 0)
            {
                kupljeneKartes = _context.KupljeneKarte.Where(w => w.DatumProdaje.Value.Year == request.DatumKarte.Year && w.DatumProdaje.Value.Month == request.DatumKarte.Month && w.DatumProdaje.Value.Day == request.DatumKarte.Day).ToList();
            }
            else
            {
                if (request.PolaznaZeljeznickaStanica != 0)
                {
                    PutovanjaDB = _context.Putovanja.Where(w => w.Relacija.ZeljeznickaStanicaOdid == request.PolaznaZeljeznickaStanica).ToList();
                }
                else
                {
                    PutovanjaDB = _context.Putovanja.Where(w => w.Relacija.ZeljeznickaStanicaDoid == request.OdredisnaljeznickaStanica).ToList();
                }



                foreach (var item in PutovanjaDB)
                {
                    List <Rezervacije> RezervacijesTmp = new List <Rezervacije>();

                    RezervacijesTmp = _context.Rezervacije.Where(w => w.PutovanjeId == item.PutovanjeId).ToList();

                    if (RezervacijesTmp.Count > 0)
                    {
                        Rezervacijes.AddRange(RezervacijesTmp);
                    }
                }


                foreach (var item in Rezervacijes)
                {
                    List <KupljeneKarte> karteTmp = new List <KupljeneKarte>();

                    karteTmp = _context.KupljeneKarte.Where(w => w.RezervacijaId == item.RezervacijaId &&
                                                            (w.DatumProdaje.Value.Year == request.DatumKarte.Year && w.DatumProdaje.Value.Month == request.DatumKarte.Month && w.DatumProdaje.Value.Day == request.DatumKarte.Day))
                               .ToList();

                    if (karteTmp != null)
                    {
                        kupljeneKartes.AddRange(karteTmp);
                    }
                }
            }

            foreach (var item in kupljeneKartes)
            {
                ProdanaKartaVM prodanaTemp = new ProdanaKartaVM();

                prodanaTemp.BrojRacuna    = item.BrojRacuna;
                prodanaTemp.DatumProdaje  = item.DatumProdaje;
                prodanaTemp.Relacija      = _context.Rezervacije.Where(w => w.RezervacijaId == item.RezervacijaId).Select(s => s.Putovanje.Relacija.ZeljeznickaStanicaOd.Naziv + " - " + s.Putovanje.Relacija.ZeljeznickaStanicaDo.Naziv).FirstOrDefault();
                prodanaTemp.KonacnaCijena = item.KonacnaCijena;
                prodanaTemp.KorisnikId    = item.KupacId;
                prodanaTemp.Popust        = item.Popust;
                prodanaTemp.ImeKupca      = _context.Kupci.Where(w => w.KupacId == item.KupacId).Select(s => s.Ime).FirstOrDefault();
                prodanaTemp.PrezimeKupca  = _context.Kupci.Where(w => w.KupacId == item.KupacId).Select(s => s.Prezime).FirstOrDefault();

                prodaneKarte.Add(prodanaTemp);
            }

            return(prodaneKarte);
        }