public async Task <ActionResult <BrzaRezervacijaDestinacija> > Rezervisi(BrzaRezervacijaDestinacija rezervacija) { BrzaRezervacijaDestinacija brza = _context.BrzeRezervacijeDestinacije.Where(x => x.Id == rezervacija.Id).FirstOrDefault(); if (rezervacija.RowVersion.Length != brza.RowVersion.Length) { return(BadRequest()); } for (int i = 0; i < brza.RowVersion.Length; i++) { if (brza.RowVersion[i] != rezervacija.RowVersion[i]) { return(BadRequest()); } } RezervacijaDestinacije rez = new RezervacijaDestinacije(); rez.IdKlijenta = rezervacija.IdKlijenta; rez.IdAirCompany = rezervacija.IdAirCompany; rez.IdDestinacije = rezervacija.IdDestinacije; rez.Cena = rezervacija.NovaCena; rez.KrajnjiDatum = rezervacija.KrajnjiDatum; rez.PocetniDatum = rezervacija.PocetniDatum; rez.Zavrseno = false; rezervacija.Zavrseno = true; _context.Entry(rezervacija).State = EntityState.Modified; _context.RezervacijeDestinacija.Add(rez); try { await _context.SaveChangesAsync(); } catch (Exception e) { } return(Ok()); }
public double ukupnaCena(BrzaRezervacijaDestinacija rezervacija) { DateTime pocetni = rezervacija.PocetniDatum; DateTime krajnji = rezervacija.KrajnjiDatum; RentACarServis rentACar = _context.RentACarServisi.Find(rezervacija.IdAirCompany); double ukupnaCena = rentACar.cenaPrviDan; if (pocetni != krajnji) { TimeSpan ts = new TimeSpan(1, 0, 0, 0); while (pocetni != krajnji) { pocetni += ts; ukupnaCena += rentACar.cenaSledeciDan; } } return(ukupnaCena); }
public async Task <ActionResult <BrzaRezervacijaDestinacija> > AddBrzaRezervacijaDestinacije(BrzaRezervacijaDestinacija rezervacija) { AirCompany rentservis = _context.AvioKompanije.Find(rezervacija.IdAirCompany); //rezervacija.PocetnaCena = servis.ukupnaCena(rezervacija); //rezervacija.NovaCena = rezervacija.PocetnaCena - rezervacija.PocetnaCena * rezervacija.Popust / 100; _context.BrzeRezervacijeDestinacije.Add(rezervacija); // servis.dodajDatumeDestinaciji(rezervacija); await _context.SaveChangesAsync(); return(CreatedAtAction("GetBrzaRezervacijaVozila", new { id = rezervacija.Id }, rezervacija)); }