public OcjeniSmjestajRequest Ocjeni(OcjeniSmjestajRequest request) { Ocjena o = new Ocjena { Iznos = request.Ocjena, KlijentId = request.KlijentId, Komentar = request.Komentar, SmjestajId = request.SmjestajId }; Smjestaj s = _context.Smjestaj.Find(request.SmjestajId); double Prosjek = new double(); List <Ocjena> Ocjene = _context.Ocjena.Where(x => x.SmjestajId == s.SmjestajId).ToList(); if (Ocjene != null && Ocjene.Count > 0) { Ocjene.Add(o); Prosjek = Ocjene.Average(x => x.Iznos); s.Zvijezde = Convert.ToInt32(Prosjek); } else { s.Zvijezde = request.Ocjena; } _context.Ocjena.Add(o); _context.SaveChanges(); return(request); }
public async Task <IActionResult> Edit(int id, [Bind("Id,DestinacijaId,Naziv,Opis,Adresa,Slika")] Smjestaj smjestaj) { if (id != smjestaj.Id) { return(NotFound()); } if (ModelState.IsValid) { try { _context.Update(smjestaj); await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!SmjestajExists(smjestaj.Id)) { return(NotFound()); } else { throw; } } return(RedirectToAction("List")); } ViewData["DestinacijaId"] = new SelectList(_context.Destinacija, "Id", "Grad", smjestaj.DestinacijaId); return(View(smjestaj)); }
public IActionResult DodajGostaSobi(RezervisanSmjestajDodajGostaSobiVM model) { //PROVJERA KAPACITETA Smjestaj s = new Smjestaj(); s = db.Smjestaj.Where(x => x.Id == model.SmjestajId).FirstOrDefault(); List <RezervisanSmjestaj> lista = db.RezervisanSmjestaj.Where(x => x.SmjestajId == model.SmjestajId).ToList(); if (lista.Count > (s.BrojKreveta + 1)) { return(RedirectToAction("IndexOdabranogSmjestaja", new { CheckINId = model.CheckInId, model.SmjestajId, poruka = "Nemoguće dodat gosta u smještaj , maximalni kapacitet dostignut", greska = true })); } //PROVJERA JEL POSTOJI APSOLUTNO ISTI REZERVISANSMJESTAJ (ISTI CHECKIN,GOSTID,SMJESTAJID) if (db.RezervisanSmjestaj.Where(x => x.CheckINId == model.CheckInId && x.GostId == model.GostId && x.SmjestajId == model.SmjestajId).Any()) { return(RedirectToAction("IndexOdabranogSmjestaja", new { CheckINId = model.CheckInId, model.SmjestajId, poruka = "Nemoguće dodat istog gosta u smještaj", greska = true })); } RezervisanSmjestaj ss = new RezervisanSmjestaj(); ss.CheckINId = model.CheckInId; ss.GostId = model.GostId; ss.SmjestajId = model.SmjestajId; db.RezervisanSmjestaj.Add(ss); db.SaveChanges(); return(RedirectToAction("IndexOdabranogSmjestaja", new { CheckINId = model.CheckInId, model.SmjestajId })); }
public ActionResult DeleteConfirmed(string id) { Smjestaj smjestaj = db.Smjestaj.Find(id); db.Smjestaj.Remove(smjestaj); db.SaveChanges(); return(RedirectToAction("Index")); }
// public IActionResult Dodaj() // { // RezervisanSmjestajDodajVM model = new RezervisanSmjestajDodajVM(); // izmjenit vm , vracat ce se ko partial view na IndexOdabranogSmjestaja tu ce se birat gost koji boravi i msm da ce se trebat provjeravat kapacitet sobe // var CheckINI = // db.CheckIN // .Select(s => new // { // s.Id, // Polje = string.Format("Gost nosilac: {0} Datum Dolaska {1} Datum Odlaska: {2} /// Broj djece:{3} Broj odraslih: {4}", s.Gost.Ime + s.Gost.Prezime, s.DatumDolaska, s.DatumOdlaska, s.BrojDjece, s.BrojOdraslih) // }) // .ToList(); // var Smjestaji = // db.Smjestaj // .Where(x=>x.Zauzeto==false).Select(s => new // { // s.Id, // Polje = string.Format("Vrsta smjestaja : {0} Sprat: {1}", s.VrstaSmjestaja.Naziv, s.Sprat) // }) //.ToList(); // var Gosti = // db.Gost // .Select(s => new // { // s.Id, // Polje = string.Format("Gost: {0} Telefon: {1}", s.Ime + s.Prezime, s.Telefon) // }) //.ToList(); // model.Checkini = new SelectList(CheckINI, "Id", "Polje"); // model.Smjestaji = new SelectList(Smjestaji, "Id", "Polje"); // model.Gosti = new SelectList(Gosti, "Id", "Polje"); // return View(model); // } // [HttpPost] // public IActionResult Dodaj(RezervisanSmjestajDodajVM model) // { // RezervisanSmjestaj s = new RezervisanSmjestaj(); // s.CheckINId = model.CheckIN.Id; // s.GostId = model.Gost.Id; // s.SmjestajId = model.Smjestaj.Id; // ZauzmiSmjestaj(model.Smjestaj.Id); // db.RezervisanSmjestaj.Add(s); // db.SaveChanges(); // return RedirectToAction("Index"); // } public void ZauzmiSmjestaj(int id) { Smjestaj s = new Smjestaj(); s = db.Smjestaj.Where(x => x.Id == id).FirstOrDefault(); s.Zauzeto = true; db.Smjestaj.Update(s); }
public ActionResult Edit([Bind(Include = "ID,Vrsta,Cijena,Kvadratura,Lokacija,PogododnoStudentima,Opis,BrojCimera,Datum")] Smjestaj smjestaj) { if (ModelState.IsValid) { db.Entry(smjestaj).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } return(View(smjestaj)); }
public SmjestajInsertRequest Insert(SmjestajInsertRequest request) { if (request.IzdavacId > 0) { Smjestaj s = _mapper.Map <Smjestaj>(request); _context.Smjestaj.Add(s); _context.SaveChanges(); } return(request); }
public SmjestajModel Update(SmjestajModel request) { Smjestaj s = _context.Smjestaj.Find(request.SmjestajId); s.Naziv = request.Naziv; s.Opis = request.Opis; s.KontaktTelefon = request.KontaktTelefon; s.Email = request.Email; _context.SaveChanges(); return(request); }
public async Task <IActionResult> Create([Bind("Id,DestinacijaId,Naziv,Opis,Adresa,Slika")] Smjestaj smjestaj) { if (ModelState.IsValid) { _context.Add(smjestaj); await _context.SaveChangesAsync(); return(RedirectToAction("List")); } ViewData["DestinacijaId"] = new SelectList(_context.Destinacija, "Id", "Grad", smjestaj.DestinacijaId); return(View(smjestaj)); }
// GET: Smjestajs/Delete/5 public ActionResult Delete(string id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Smjestaj smjestaj = db.Smjestaj.Find(id); if (smjestaj == null) { return(HttpNotFound()); } return(View(smjestaj)); }
public IActionResult Obrisi(int SmjestajID) { Smjestaj k = _db.Smjestaj.Find(SmjestajID); if (k == null) { return(RedirectToAction(nameof(Index))); } else { _db.Remove(k); _db.SaveChanges(); } return(RedirectToAction(nameof(Index))); }
public void Delete(int id) { var query = (from smjestaj in _context.Smjestaj.Where(x => x.SmjestajId == id) join soba in _context.Soba on smjestaj.SmjestajId equals soba.SobaId join rezervacijasoba in _context.RezervacijaSoba on soba.SobaId equals rezervacijasoba.SobaId join Rezervacija in _context.Rezervacija on rezervacijasoba.RezervacijaId equals Rezervacija.RezervacijaId where Rezervacija.StatusRezervacijeId != 1 && Rezervacija.StatusRezervacijeId != 1002 select new RezervacijaModel() { StatusRezervacijeId = Rezervacija.StatusRezervacijeId }).ToList(); if (query.Any()) { throw new UserException("Nije dozvoljeno uklanjati rezervisane smještaje"); } else { OkolinaService okolinaService = new OkolinaService(_context, _mapper); foreach (OkolinaSmjestaj os in _context.OkolinaSmjestaj.Where(x => x.SmjestajId == id)) { okolinaService.Delete(os.OkolinaSmjestajId); } UslugaService uslugaService = new UslugaService(_context, _mapper); foreach (UslugaSmjestaj us in _context.UslugaSmjestaj.Where(x => x.SmjestajId == id)) { uslugaService.Delete(us.UslugaSmjestajId); } SobaService sobaService = new SobaService(_context, _mapper); foreach (Soba s in _context.Soba.Where(x => x.SmjestajId == id)) { sobaService.Delete(s.SobaId); } Smjestaj obj = _context.Smjestaj.Find(id); _context.Smjestaj.Remove(obj); _context.SaveChanges(); } }
public IActionResult Snimi(SmjestajUrediVM input) { if (!ModelState.IsValid) { input.Grad = _db.Gradovi.Select(a => new SelectListItem { Value = a.Id.ToString(), Text = a.NazivGrada }).ToList(); return(View("Dodaj", input)); } Smjestaj k; if (input.SmjestajID == 0) { k = new Smjestaj(); _db.Add(k); } else { k = _db.Smjestaj.Find(input.SmjestajID); } if (input.Slika != null) { var memoryStream = new MemoryStream(); input.Slika.CopyTo(memoryStream); var j = memoryStream.ToArray(); k.Slika = j; } k.Id = input.SmjestajID; k.NazivSmjestaja = input.NazivSmjestaja; k.OpisSmjestaja = input.OpisSmjestaja; k.GradID = input.GradID; k.CijenaNocenja = input.CijenaNocenja; k.Tip_sobe = input.Tip_sobe; _db.SaveChanges(); return(RedirectToAction(nameof(Index))); }
public IActionResult IndexOdabranogSmjestaja(int CheckINId, int SmjestajId, string poruka, bool?greska) { CheckIN c = db.CheckIN.Include(x => x.Gost).Where(x => x.Id == CheckINId).FirstOrDefault(); Smjestaj s = db.Smjestaj.Include(x => x.VrstaSmjestaja).Where(x => x.Id == SmjestajId).FirstOrDefault(); RezervisanSmjestajIndexOdabranogSmjestajaVM model = new RezervisanSmjestajIndexOdabranogSmjestajaVM(); if (greska == true) { ViewBag.Poruka = poruka; } model.DatumDolaska = c.DatumDolaska.ToShortDateString(); model.DatumOdlaska = (c.DatumOdlaska == null) ? "-" : (DateTime.Parse(c.DatumOdlaska.ToString()).ToShortDateString()); model.GostNosioc = c.Gost.Ime + " " + c.Gost.Prezime; model.PodaciOSmjestaju = s.BrojSmjestaja + " " + s.VrstaSmjestaja.Naziv; model.SmjestajId = s.Id; model.CheckINId = c.Id; return(View(model)); }
public RezervacijaModel GetById(int id) { if (id > 0) { RezervacijaModel model = new RezervacijaModel(); Rezervacija r = _context.Rezervacija.Find(id); model = _mapper.Map <RezervacijaModel>(r); model.RezervacijaDoShort = r.RezervacijaDo.ToShortDateString(); model.RezervacijaOdShort = r.RezervacijaOd.ToShortDateString(); model.DatumRezervacijeShort = r.DatumRezervacije.ToShortDateString(); model.StatusRezervacijeNaziv = _context.StatusRezervacije.Find(r.StatusRezervacijeId).Naziv; model.Sobe = new List <SobaModel>(); List <RezervacijaSoba> rezervacijaSoba = _context.RezervacijaSoba.Where(x => x.RezervacijaId == r.RezervacijaId).ToList(); foreach (RezervacijaSoba rs in rezervacijaSoba) { Soba s = _context.Soba.Find(rs.SobaId); model.Sobe.Add(_mapper.Map <SobaModel>(s)); } Smjestaj smjestaj = _context.Smjestaj.Where(x => x.SmjestajId == model.Sobe[0].SmjestajId).FirstOrDefault(); model.NazivSmjestaja = smjestaj.Naziv; model.AdresaSmjestaja = smjestaj.Adresa + ", " + _context.Grad.Find(smjestaj.GradId).Naziv; model.SmjestajId = smjestaj.SmjestajId; Klijent k = _context.Klijent.Find(r.KlijentId); Korisnik korisnik = _context.Korisnik.Find(k.KorisnikId); model.ImeKlijenta = korisnik.Ime; model.PrezimeKlijenta = korisnik.Prezime; model.KorisnickoImeKlijenta = korisnik.KorisnickoIme; model.Uplate = _mapper.Map <List <UplataModel> >(_context.Uplata.Where(x => x.RezervacijaId == id).ToList()); return(model); } else { return(null); } }
public List <RezervacijaModel> GetAllForIzdavac(RezervacijaSearchRequest search) { Izdavac i = _context.Izdavac.Where(x => x.KorisnikId == search.KlijentId).FirstOrDefault(); List <RezervacijaModel> Lista = new List <RezervacijaModel>(); List <Smjestaj> Smjestaji = new List <Smjestaj>(); Smjestaji = _context.Smjestaj.Where(x => x.IzdavacId == i.IzdavacId).ToList(); var Sobe = _context.Soba.Where(x => Smjestaji.Any(s => s.SmjestajId == x.SmjestajId)); var rs = _context.RezervacijaSoba.Where(x => Sobe.Any(s => s.SobaId == x.SobaId)); var final = _context.Rezervacija.Where(x => rs.Any(s => s.RezervacijaId == x.RezervacijaId)); List <RezervacijaModel> Konacna = new List <RezervacijaModel>(); foreach (Rezervacija r in final) { RezervacijaModel model = _mapper.Map <RezervacijaModel>(r); model.RezervacijaDoShort = r.RezervacijaDo.ToShortDateString(); model.RezervacijaOdShort = r.RezervacijaOd.ToShortDateString(); model.DatumRezervacijeShort = r.DatumRezervacije.ToShortDateString(); model.StatusRezervacijeNaziv = _context.StatusRezervacije.Find(r.StatusRezervacijeId).Naziv; RezervacijaSoba rezervacijaSoba = rs.Where(x => x.RezervacijaId == r.RezervacijaId).FirstOrDefault(); Soba soba = Sobe.Where(x => x.SobaId == rezervacijaSoba.SobaId).FirstOrDefault(); Smjestaj s = Smjestaji.Where(x => x.SmjestajId == soba.SmjestajId).FirstOrDefault(); model.NazivSmjestaja = s.Naziv; model.AdresaSmjestaja = s.Adresa + ", " + _context.Grad.Find(s.GradId).Naziv; model.SmjestajId = s.SmjestajId; Klijent k = _context.Klijent.Find(r.KlijentId); Korisnik korisnik = _context.Korisnik.Find(k.KorisnikId); model.ImeKlijenta = korisnik.Ime; model.PrezimeKlijenta = korisnik.Prezime; model.KorisnickoImeKlijenta = korisnik.KorisnickoIme; Konacna.Add(model); } return(Konacna); }
public IActionResult Uredi(int SmjestajID) { Smjestaj k = _db.Smjestaj.Find(SmjestajID); if (k == null) { return(RedirectToAction(nameof(Index))); } SmjestajUrediVM model = new SmjestajUrediVM(); model.Grad = _db.Gradovi.Select(o => new SelectListItem(o.NazivGrada, o.Id.ToString())).ToList(); model.GradID = k.GradID; model.NazivSmjestaja = k.NazivSmjestaja; model.OpisSmjestaja = k.OpisSmjestaja; model.CijenaNocenja = k.CijenaNocenja; model.Tip_sobe = k.Tip_sobe; return(View(model)); }
public IActionResult Snimi(NoviSmjestajVM s) { Zaposlenik k = HttpContext.GetLogiraniKorisnik(); if (k == null || k.isAdministrator == false) { TempData["error_poruka"] = "Nemate pravo pristupa."; return(RedirectToAction("Index", "Autentifikacija", new { area = " " })); } if (!ModelState.IsValid) { NapuniCmb(s); return(View("DodajSmjestaj", s)); } Smjestaj temp; if (s.Id == 0) { temp = new Smjestaj(); db.Smjestaj.Add(temp); } else { temp = db.Smjestaj.Find(s.Id); } temp.BrojSmjestaja = s.BrojSmjestaja ?? 0;//Ovako radimo da bi nam izbacilo 0 sa viewa temp.Sprat = s.Sprat ?? 0; temp.BrojKreveta = s.BrojKreveta ?? 0; temp.Kvadratura = s.Kvadratura ?? 0; temp.Zauzeto = s.Zauzeto; temp.Cijena = s.Cijena ?? 0; temp.VrstaSmjestajaId = s.VrstaSmjestajaId; db.SaveChanges(); return(RedirectToAction("PrikaziSmjestaj")); }
public IActionResult Uredi(int id) { Zaposlenik k = HttpContext.GetLogiraniKorisnik(); if (k == null || k.isAdministrator == false) { TempData["error_poruka"] = "Nemate pravo pristupa."; return(RedirectToAction("Index", "Autentifikacija", new { area = " " })); } NoviSmjestajVM Model = new NoviSmjestajVM(); Smjestaj s = new Smjestaj(); s = db.Smjestaj.Find(id); Model.Id = s.Id; Model.BrojSmjestaja = s.BrojSmjestaja; Model.BrojKreveta = s.BrojKreveta; Model.Kvadratura = s.Kvadratura; Model.Sprat = s.Sprat; Model.VrstaSmjestajaId = s.VrstaSmjestajaId; Model.Zauzeto = s.Zauzeto; Model.Cijena = s.Cijena; List <SelectListItem> _stavke = new List <SelectListItem>(); _stavke.Add(new SelectListItem { Value = null, Text = "Odaberite vrstu" }); _stavke.AddRange(db.VrstaSmjestaja.Select(x => new SelectListItem { Value = x.Id.ToString(), Text = x.Naziv })); Model._vrstaStavke = _stavke; return(View(Model)); }
public List <RezervacijaModel> Get(RezervacijaSearchRequest search) { Klijent k = _context.Klijent.Where(x => x.KorisnikId == search.KlijentId).FirstOrDefault(); var lista = _context.Rezervacija.Where(x => x.KlijentId == k.KlijentId).ToList(); List <RezervacijaModel> Konacna = new List <RezervacijaModel>(); foreach (Rezervacija r in lista) { RezervacijaModel model = _mapper.Map <RezervacijaModel>(r); model.RezervacijaDoShort = r.RezervacijaDo.ToShortDateString(); model.RezervacijaOdShort = r.RezervacijaOd.ToShortDateString(); model.DatumRezervacijeShort = r.DatumRezervacije.ToShortDateString(); model.StatusRezervacijeNaziv = _context.StatusRezervacije.Find(r.StatusRezervacijeId).Naziv; RezervacijaSoba rs = _context.RezervacijaSoba.Where(x => x.RezervacijaId == r.RezervacijaId).FirstOrDefault(); Soba soba = _context.Soba.Find(rs.SobaId); Smjestaj s = _context.Smjestaj.Find(soba.SmjestajId); model.NazivSmjestaja = s.Naziv; model.AdresaSmjestaja = s.Adresa + ", " + _context.Grad.Find(s.GradId).Naziv; Konacna.Add(model); } return(Konacna); }
public static void dodajSmjestaj(Smjestaj s) { smjestaji.Add(s); }
public static async Task <Osoba> dajKorisnika(string username, string password) { try { IMobileServiceTable <tabela> Korisnici = App.MobileService.GetTable <tabela>(); IEnumerable <tabela> tabela = await Korisnici.ReadAsync(); foreach (var element in tabela) { if (element.korisnickoime.Equals(username) && element.sifra.Equals(password)) { //List<Smjestaj> smjestaji = new List<Smjestaj>(); Smjestaj smjestaj = new Smjestaj(); IMobileServiceTable <tabela1> Smjestaji = App.MobileService.GetTable <tabela1>(); IEnumerable <tabela1> tabelaR = await Smjestaji.ReadAsync(); foreach (var elementR in tabelaR) { if (elementR.idvlasnika.Equals(element.id)) { smjestaj.BrojCimera = elementR.brojcimera; smjestaj.Cijena = elementR.cijena; //fali datum smjestaj.datum smjestaj.Kvadratura = elementR.kvadratura; smjestaj.Lokacija = elementR.lokacija; smjestaj.Opis = elementR.dodatniopis; String pomocna = elementR.vrstasmjestaja; VrstaSmejstaja vrsta = kojaVrstaSmjestaja(pomocna); smjestaj.Vrsta = vrsta; break;//ne treba kada bude lista //TODO: dodati jos } } List <Smjestaj> regSmjestaji = new List <Smjestaj>(); regSmjestaji.Add(smjestaj); Osoba o = new Osoba() { Ime = element.ime, Prezime = element.prezime, Username = element.korisnickoime, Spol = dajMiSpol(element.spol), ID = element.id, Mail = element.email, Password = element.sifra, Telefon = element.broj, Adresa = element.adresa, //datumrodjenja //TODO: ostatak ctrl space RegistrovaniSmjestaji = regSmjestaji //registorvanerezervacije? }; return(o); } } } catch (Exception e) { throw; } return(new Osoba()); // nece se nikada izvrsiti }
public SmjestajModelFull GetFullSmjestaj(int id) { Smjestaj s = _context.Smjestaj.Find(id); if (s != null) { SmjestajModelFull model = new SmjestajModelFull { Naziv = s.Naziv, IzdavacId = s.IzdavacId, GradId = s.GradId, GradNaziv = _context.Grad.Find(s.GradId).Naziv, Adresa = s.Adresa, Distanca = s.Distanca, Email = s.Email, KontaktTelefon = s.KontaktTelefon, Opis = s.Opis, Zvijezde = s.Zvijezde }; UslugaService uslugaService = new UslugaService(_context, _mapper); UslugaSearchRequest uslugaSearch = new UslugaSearchRequest { SmjestajId = id }; model.ListaUsluga = uslugaService.Get(uslugaSearch); SobaService sobaService = new SobaService(_context, _mapper); SobaSearchRequest sobaSearch = new SobaSearchRequest { SmjestajId = id }; model.ListaSoba = sobaService.Get(sobaSearch); Korisnik k = (from izdavac in _context.Izdavac.Where(x => x.IzdavacId == s.IzdavacId) join korisnik in _context.Korisnik on izdavac.KorisnikId equals korisnik.KorisnikId select new Korisnik() { KorisnickoIme = korisnik.KorisnickoIme }).FirstOrDefault(); model.IzdavacIme = k.KorisnickoIme; model.ListSlika = new List <SlikaModel>(); foreach (Slika Slika in _context.Slika.Where(x => x.SmjestajId == id).ToList()) { SlikaModel slikaModel = new SlikaModel(); slikaModel.SmjestajId = id; slikaModel.SlikaFile = Slika.SlikaFile; model.ListSlika.Add(slikaModel); } return(model); } SmjestajModelFull PrazanModel = new SmjestajModelFull { Response = "Smještaj nije pronađen!" }; return(PrazanModel); }