public Destinacija dodajDatumeDestinaciji(BrzaRezervacijaVozila rezervacija) { DateTime pocetni = rezervacija.PocetniDatum; DateTime krajnji = rezervacija.KrajnjiDatum; Destinacija destinacija = _context.Destinacije.Find(rezervacija); if (pocetni != krajnji) { TimeSpan ts = new TimeSpan(1, 0, 0, 0); destinacija.PretvoriUListu(); while (pocetni != krajnji) { destinacija.ZauzetiDatumi.Add(pocetni); pocetni += ts; } } destinacija.PretvoriUJson(); _context.Entry(destinacija).State = EntityState.Modified; try { // _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { } return(destinacija); }
//public async Task DodajUBazuVozilo(Vozilo vozilo) //{ // _context.Entry(vozilo).State = EntityState.Modified; // try // { // //await _context.SaveChangesAsync(); // } // catch (DbUpdateConcurrencyException e) // { // //return false; // } //} public Vozilo dodajDatumeVozilu(BrzaRezervacijaVozila rezervacija) { DateTime pocetni = rezervacija.PocetniDatum; DateTime krajnji = rezervacija.KrajnjiDatum; Vozilo vozilo = _context.Vozila.Find(rezervacija.IdVozila); if (pocetni != krajnji) { TimeSpan ts = new TimeSpan(1, 0, 0, 0); vozilo.PretvoriUListu(); while (pocetni != krajnji) { vozilo.ZauzetiDatumi.Add(pocetni); pocetni += ts; } } vozilo.PretvoriUJson(); _context.Entry(vozilo).State = EntityState.Modified; try { // _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { } return(vozilo); }
public async Task <ActionResult <BrzaRezervacijaVozila> > Rezervisi(BrzaRezervacijaVozila rezervacija) { BrzaRezervacijaVozila brza = _context.BrzeRezervacijeVozila.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()); } } RezervacijaVozila rez = new RezervacijaVozila(); rez.IdKlijenta = rezervacija.IdKlijenta; rez.IdRentACar = rezervacija.IdRentACar; rez.IdVozila = rezervacija.IdVozila; 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.RezervacijeVozila.Add(rez); try { await _context.SaveChangesAsync(); } catch (Exception e) { } return(Ok()); }
public double ukupnaCena(BrzaRezervacijaVozila rezervacija) { DateTime pocetni = rezervacija.PocetniDatum; DateTime krajnji = rezervacija.KrajnjiDatum; RentACarServis rentACar = _context.RentACarServisi.Find(rezervacija.IdRentACar); 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 <IActionResult> UpdateBrzaRezervacijaVozila(BrzaRezervacijaVozila rezervacija) { _context.Entry(rezervacija).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!BrzaRezervacijaDestinacijaExists(rezervacija.Id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task <ActionResult <BrzaRezervacijaVozila> > AddBrzaRezervacijaVozila(BrzaRezervacijaVozila rezervacija) { RentACarServis rentservis = _context.RentACarServisi.Find(rezervacija.IdRentACar); rezervacija.PocetnaCena = servis.ukupnaCena(rezervacija); rezervacija.NovaCena = rezervacija.PocetnaCena - rezervacija.PocetnaCena * rezervacija.Popust / 100; _context.BrzeRezervacijeVozila.Add(rezervacija); servis.dodajDatumeVozilu(rezervacija); await _context.SaveChangesAsync(); return(CreatedAtAction("GetBrzaRezervacijaVozila", new { id = rezervacija.Id }, rezervacija)); }