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); }
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)); }
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); }