public async Task <TerminiDto> FindNextTerminiAsync(TerminiDto terminiDto) { try { // Fetching data from dal by passing parameter. //Termini currentTermini = await _unitOfWork.Termini.FirstOrDefaultAsync // (c => c.TerCliId.Equals(terminiDto.TerCliId) // && c.Termine.Equals(terminiDto.Termine) // && c.TerLingua.Equals(terminiDto.TerLingua)); Termini nextTermini = (await _unitOfWork.Termini.FindInOrderAsync ((c => c.TerCliId.Equals(terminiDto.TerCliId) && c.TerStato.Equals(terminiDto.TerStato) && c.TerLingua.Equals(terminiDto.TerLingua)), o => o.TerInsTimestamp, OrderType.Ascending) ).FirstOrDefault(); // Returning the retrieved data to controller end by mapping into dto object. return(_mapper.Map <Termini, TerminiDto>(nextTermini)); } catch (Exception) { throw; } }
public ActionResult DeleteConfirmed(int id) { Termini termini = db.Termini.Find(id); db.Termini.Remove(termini); db.SaveChanges(); return(RedirectToAction("Index")); }
private void sacuvajBtn_Clicked(object sender, EventArgs e) { if ((Convert.ToInt32(uslugaInput.Text) < 1 || Convert.ToInt32(uslugaInput.Text) > 5) || ((!String.IsNullOrEmpty(tretmanInput.Text)) && (Convert.ToInt32(tretmanInput.Text) < 1 || Convert.ToInt32(tretmanInput.Text) > 5))) { DisplayAlert("Greška", "Ocjena mora biti od 1 do 5.", "OK"); } else { HttpResponseMessage responseTermin = terminiService.GetResponse(odabraniTermin.TerminID.ToString()); if (responseTermin.IsSuccessStatusCode) { var jsonObject = responseTermin.Content.ReadAsStringAsync(); Termini termin = JsonConvert.DeserializeObject <Termini>(jsonObject.Result); UslugeOcjene uo = new UslugeOcjene() { FrizerID = Convert.ToInt32(termin.FrizerID), KlijentID = Convert.ToInt32(termin.KlijentID), UslugaID = Convert.ToInt32(termin.UslugaID), Ocjena = Convert.ToInt32(uslugaInput.Text), TerminID = Convert.ToInt32(termin.TerminID) }; HttpResponseMessage responseUsluge = uslugeOcjeneService.PostResponse(uo); termin.OcijenjenaUsluga = true; termin.OcijenjenTretman = true; HttpResponseMessage responseTerminPut = terminiService.PutResponse(termin.TerminID, termin); if (!String.IsNullOrEmpty(odabraniTermin.NazivTretmana)) { DodatniTretmaniOcjene dto = new DodatniTretmaniOcjene() { FrizerID = Convert.ToInt32(termin.FrizerID), KlijentID = Convert.ToInt32(termin.KlijentID), TretmanID = Convert.ToInt32(termin.TretmanID), Ocjena = Convert.ToInt32(tretmanInput.Text) }; HttpResponseMessage responseTretmani = dodatniTretmaniOcjeneService.PostResponse(dto); if (responseUsluge.IsSuccessStatusCode && responseTretmani.IsSuccessStatusCode) { DisplayAlert("Uspjeh", "Uspješno ste ocijenili uslugu i tretman.", "OK"); } } if (String.IsNullOrEmpty(odabraniTermin.NazivTretmana) && responseUsluge.IsSuccessStatusCode) { DisplayAlert("Uspjeh", "Uspješno ste ocijenili uslugu.", "OK"); } this.Navigation.PopAsync(); } } }
public ActionResult Edit([Bind(Include = "TerminID,Ime,Prezime,Mail,Telefon,Svrha,Opis,KorisnikID")] Termini termini) { if (ModelState.IsValid) { db.Entry(termini).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index")); } ViewBag.KorisnikID = new SelectList(db.Korisnik, "KorisnikID", "Ime", termini.KorisnikID); return(View(termini)); }
private async void Termini_SelectedIndexChanged(object sender, EventArgs e) { Termini t = this.Termini.SelectedItem as Termini; model.TerminID = t.TerminId; await model.ProvjeraSlobodnihMjesta(); brojslobodnihmjesta.Text = "Broj slobodnih mjesta za odabrani termin: " + model.BrojSlobodnihMjesta.ToString(); brojslobodnihmjesta.IsVisible = true; }
public IHttpActionResult PostTermini(Termini obj) { if (!ModelState.IsValid) { return(BadRequest()); } dm.Terminis.Add(obj); dm.SaveChanges(); return(CreatedAtRoute("DefaultApi", new { id = obj.TerminID }, obj)); }
private void btnRezervisi_Clicked(object sender, EventArgs e) { HttpResponseMessage responseGetKlijent = klijentiService.GetResponse(Global.prijavljeniKlijent.KlijentID.ToString()); if (responseGetKlijent.IsSuccessStatusCode) { var jsonObjectKlijent = responseGetKlijent.Content.ReadAsStringAsync(); Klijenti logirani = JsonConvert.DeserializeObject <Klijenti>(jsonObjectKlijent.Result); if (logirani.TerminiCount < 3) { Button btn = sender as Button; Termini_Result2 rezervacija = btn.BindingContext as Termini_Result2; HttpResponseMessage responseTermin = terminiService.GetResponse(rezervacija.TerminID.ToString()); if (responseTermin.IsSuccessStatusCode) { var jsonObject = responseTermin.Content.ReadAsStringAsync(); Termini termin = JsonConvert.DeserializeObject <Termini>(jsonObject.Result); termin.KlijentID = Global.prijavljeniKlijent.KlijentID; termin.UslugaID = (uslugaPicker.SelectedItem as Usluge_Result).UslugaID; termin.Zauzeto = true; if ((dodatniTretmaniPicker.SelectedItem as DodatniTretmani_Result) == null) { termin.TretmanID = null; } else { termin.TretmanID = (dodatniTretmaniPicker.SelectedItem as DodatniTretmani_Result).TretmanID; } HttpResponseMessage responseTerminPut = terminiService.PutResponse(termin.TerminID, termin); if (responseTerminPut.IsSuccessStatusCode) { btn.Text = "Rezervisano"; btn.IsEnabled = false; DisplayAlert("Uspjeh", "Termin je uspješno rezervisan.", "OK"); logirani.TerminiCount++; HttpResponseMessage responsePutKlijent = klijentiService.PutResponse(logirani.KlijentID, logirani); } } } else { DisplayAlert("Greška", "Nije moguće rezervisati više od 3 termina.", "OK"); } } }
// GET: Termini/Details/5 public ActionResult Details(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Termini termini = db.Termini.Find(id); if (termini == null) { return(HttpNotFound()); } return(View(termini)); }
//public IList<TerminiView> ListaTermina { get; set; } public TerminiView(Termini t) { //this.ListaTermina = new List<TerminiView>(); this.Id = t.Id; this.Od = t.Od; this.Do = t.Do; this.BrTrokrevetnih = t.BrTrokrevetnih; this.BrCetvorokrevetnih = t.BrCetvorokrevetnih; this.BrDuplex = t.BrDuplex; //foreach (ProdajeSe odProdajeSe in t.ProdajeSeOdeljenja) //{ // this.Odeljenja.Add(new OdeljenjeView(odProdajeSe.ProdajeOdeljenje)); //} }
public IzmijeniTermin(int terminid) { InitializeComponent(); HttpResponseMessage response = TerminiService.GetResponse(terminid.ToString()); if (response.StatusCode == System.Net.HttpStatusCode.NotFound) { t = null; } else if (response.IsSuccessStatusCode) { t = response.Content.ReadAsAsync <Termini>().Result; } }
public async Task <TerminiDto> FindAsync(string termini, string cliId) { try { // Fetching data from dal by passing parameter. Termini data = await _unitOfWork.Termini.FirstOrDefaultAsync(c => c.Termine.Equals(termini) && c.TerCliId.Equals(cliId)); // Returning the retrieved data to controller end by mapping into dto object. return(_mapper.Map <Termini, TerminiDto>(data)); } catch (Exception) { throw; } }
// GET: Terminis/Edit/5 public ActionResult Edit(int?id) { if (id == null) { return(new HttpStatusCodeResult(HttpStatusCode.BadRequest)); } Termini termini = db.Termini.Find(id); if (termini == null) { return(HttpNotFound()); } ViewBag.KorisnikID = new SelectList(db.Korisnik, "KorisnikID", "Ime", termini.KorisnikID); return(View(termini)); }
public ActionResult DeleteConfirmed(int id) { Termini termini = db.Termini.Find(id); var upiti = db.Upit.ToList(); foreach (Upit u in upiti) { if (u.TerminID == id) { db.Upit.Remove(u); } } db.Termini.Remove(termini); db.SaveChanges(); return(RedirectToAction("Index", "Home")); }
public IActionResult Get(int id) { TerminiProvider provider = new TerminiProvider(); Termini t = provider.GetTermini(id); if (t == null) { return(NotFound()); } //var json = JsonConvert.SerializeObject(t); var json = JsonConvert.SerializeObject(t, new JsonSerializerSettings() { ReferenceLoopHandling = Newtonsoft.Json.ReferenceLoopHandling.Ignore }); return(Ok(json)); }
public IHttpActionResult PutTermini(int id, Termini t) { if (!ModelState.IsValid) { return(BadRequest(ModelState)); } if (id != t.TerminID) { return(BadRequest()); } dm.esp_Termini_Update(id, t.Datum, t.Vrijeme, t.KlijentID, t.FrizerID, t.UslugaID, t.Zauzeto, t.TretmanID, t.OcijenjenaUsluga, t.OcijenjenTretman, t.prosaoTermin); dm.SaveChanges(); return(StatusCode(HttpStatusCode.NoContent)); }
public async Task <string> DeleteAsync(string termini) { try { // Retrieving the termini object based on termini (name) Termini data = await _unitOfWork.Termini.FirstOrDefaultAsync(c => c.Termine.Equals(termini)); // Updating the status as inactive rather than deleting. data.TerStato = "N"; // Soft deleting the termini record. await _unitOfWork.CompleteAsync(); // Returning the recently deleted termini object. return(termini); } catch (Exception) { throw; } }
public int RemoveTermini(int id) { try { ISession s = DataLayer.GetSession(); Termini t = s.Load <Termini>(id); s.Delete(t); s.Flush(); s.Close(); return(1); } catch (Exception exc) { return(-1); } }
public async Task <string> InsertAsync(TerminiDto terminiDto) { try { // Map dto to termini domain model. Termini termini = _mapper.Map <TerminiDto, Termini>(terminiDto); termini.TerInsTimestamp = DateTime.Now; termini.TerModTimestamp = DateTime.Now; _unitOfWork.Termini.Add(termini); await _unitOfWork.CompleteAsync(); return(termini.Termine); } catch (Exception) { throw; } }
private void dodajTerminBtn_Click(object sender, EventArgs e) { if (this.ValidateChildren()) { Termini t = new Termini(); t.Datum = datumDateTimePicker.Value; DateTime dt = vrijemeDateTimePicker.Value; TimeSpan st = new TimeSpan(dt.Hour, dt.Minute, 0); t.Vrijeme = st; t.Zauzeto = false; t.KlijentID = null; t.UslugaID = null; t.prosaoTermin = false; if (t == null) { t = new Termini(); } if (frizeriComboBox.SelectedIndex != 0) { t.FrizerID = Convert.ToInt32(frizeriComboBox.SelectedValue); } HttpResponseMessage response = TerminiService.PostResponse(t); if (response.IsSuccessStatusCode) { MessageBox.Show("Termin je uspjesno dodan."); DialogResult = DialogResult.OK; Close(); } else { MessageBox.Show(response.ReasonPhrase, Messages.error, MessageBoxButtons.OK, MessageBoxIcon.Error); } } }
private async void Button_Clicked(object sender, EventArgs e) { if (this.Termini.SelectedItem == null) { terminigreska.Text = "** Morate odabrati termin! **"; terminigreska.IsVisible = true; } else { terminigreska.Text = " "; terminigreska.IsVisible = false; } if (!terminigreska.IsVisible) { Termini t = this.Termini.SelectedItem as Termini; model.TerminID = t.TerminId; await model.RezervacijaTask(); await Navigation.PushAsync(new IzletiPage()); } }
public ActionResult Edit([Bind(Include = "TerminiID,ProfesorID,KolegijID,Dan_Tjedan,Vrijeme_Od,Vrijeme_Do")] Termini termini) { int a = (int)Session["Profesor"]; Profesor prof = db.Profesor.Find(a); if (ModelState.IsValid) { termini.ProfesorID = prof.ProfesorID; db.Entry(termini).State = EntityState.Modified; db.SaveChanges(); return(RedirectToAction("Index", "Termini")); } Kolegij kol = db.Kolegij.Find(termini.KolegijID); ViewBag.Kolegij = kol.Naziv; ViewBag.Profesor = prof.Ime_I_Prezime; ViewBag.KolegijID = new SelectList(db.Kolegij, "KolegijID", "Naziv", termini.KolegijID); ViewBag.ProfesorID = new SelectList(db.Profesor, "ProfesorID", "Ime_I_Prezime", termini.ProfesorID); return(View(termini)); }
public bool DodajTermin(TerminViewModel model) { try { using (dataContext connection = new dataContext()) { Termini termin = new Termini(); termin.TrenerId = model.TrenerId; termin.GrupaId = model.GrupaId; termin.BazenId = model.BazenId; termin.VrijemeDo = model.VrijemeDo; termin.VrijemeOd = model.VrijemeOd; connection.Termin.Add(termin); connection.SaveChanges(); return(true); } } catch (Exception) { return(false); } }
public bool Otkazi(Termini t, String soba, Klijent k) { ISession s = DataLayer.GetSession(); Klijent klijent = s.Query <Klijent>() .Where(v => v.Username.Equals(k.Username)) .Select(p => p).FirstOrDefault(); Termini termin = GetTermini(t.Id); Smestaj sm = s.Query <Termini>() .Where(v => v.Id == termin.Id) .Select(p => p.VezanZaSmestaj).FirstOrDefault(); Rezervacija rez = s.Query <Rezervacija>() .Where(v => v.KlijentR.Id == klijent.Id && v.SmestajR == sm) .Select(p => p).FirstOrDefault(); if (sm == null || rez == null) { return(false); // greska } RezervacijaProvider rezervacijaProv = new RezervacijaProvider(); KlijentProvider klijentProv = new KlijentProvider(); klijentProv.Mail(klijent, "Uspesno otkazana rezervacija letevonja-" + sm.Naziv); if (soba.Equals("cetvorokrevetna")) { s.Query <Termini>() .Where(v => v.Id == t.Id) .UpdateBuilder() .Set(c => c.BrCetvorokrevetnih, c => c.BrCetvorokrevetnih + 1) .Update(); } else if (soba.Equals("trokrevetna")) { s.Query <Termini>() .Where(v => v.Id == t.Id) .UpdateBuilder() .Set(c => c.BrTrokrevetnih, c => c.BrTrokrevetnih + 1) .Update(); } else if (soba.Equals("duplex")) { s.Query <Termini>() .Where(v => v.Id == t.Id) .UpdateBuilder() .Set(c => c.BrDuplex, c => c.BrDuplex + 1) .Update(); } else { return(false); } //ObrisiRezervaciju RezervacijaProvider r = new RezervacijaProvider(); r.RemoveRezervacija(rez.Id); PosaljiPonuduKlijentima(sm, soba, sm.Naziv); return(true); }
private void btnTermini_Click(object sender, EventArgs e) { this.Hide(); Termini termin = new Termini(LoginForm.LogiraniKorisnik); termin.ShowDialog(); }
public void Put(int id, [FromBody] Termini value) { }
private void PopuniPodatke() { //ZABETONIRANI PODACI Korisnik korisnik1 = new Korisnik { Aktivan = true, Email = "*****@*****.**", Ime = "Perica", JMBG = "2313212", KorisnickoIme = "perica123", Lozinka = "perica11", Pol = EPol.M, Prezime = "Peric", //SifraAdrese = adresa, TipKorisnika = ETipKorisnika.PACIJENT }; KorisniciPacijenti.Add(korisnik1); Pacijent pacijent4 = new Pacijent { //Korisnicko = korisnik1 }; Pacijenti.Add(pacijent4); Korisnik korisnik2 = new Korisnik { Aktivan = true, Email = "*****@*****.**", Ime = "jovica", JMBG = "2313212", KorisnickoIme = "jovica123", Lozinka = "perica11", Pol = EPol.M, Prezime = "Peric", //SifraAdrese = "23213", TipKorisnika = ETipKorisnika.PACIJENT }; KorisniciPacijenti.Add(korisnik2); Korisnik korisnik3 = new Korisnik { Aktivan = true, Email = "*****@*****.**", Ime = "Ado", JMBG = "233213", KorisnickoIme = "adminat", Lozinka = "adminat11", Pol = EPol.M, Prezime = "Adminic", //SifraAdrese = "34223423", TipKorisnika = ETipKorisnika.ADMINISTRATOR }; Korisnik korisnik4 = new Korisnik { Aktivan = true, Email = "*****@*****.**", Ime = "Leko", JMBG = "2332213", KorisnickoIme = "leko", Lozinka = "leko123", Pol = EPol.M, Prezime = "Lekaric", //SifraAdrese = "21323", TipKorisnika = ETipKorisnika.LEKAR }; Korisnici.Add(korisnik4); Pacijent pacijent = new Pacijent { //Korisnicko = korisnik2, //Termini = new ObservableCollection<string>(), }; Pacijenti.Add(pacijent); Korisnici.Add(korisnik3); Termin termin = new Termin { Aktivan = true, Datum = new DateTime(2020, 5, 1, 8, 30, 52), // Lekar = lekar, //Pacijent = pacijent, // Sifra = "232432432", Status = EStatusTermina.SLOBODAN }; Termini.Add(termin); Terapija terapija = new Terapija { Aktivan = true, Opis = "Sve okej", // Sifra = "332423", // Lekar = lekar, // Pacijent = pacijent }; Terapije.Add(terapija); /* DomZdravlja domZdravlja = new DomZdravlja * { * Naziv = "DOM ZDRAVLJA SECANJ", * Sifra = "255366", * // Adresa = adresa, * Aktivan = true * }; * DomoviZdravlja.Add(domZdravlja);*/ }
public bool Slobodan(Termini t, String soba, Klijent k) { ISession s = DataLayer.GetSession(); Termini termin = GetTermini(t.Id); Smestaj sm = s.Query <Termini>() .Where(v => v.Id == termin.Id) .Select(p => p.VezanZaSmestaj).FirstOrDefault(); KlijentProvider klijentProv = new KlijentProvider(); Klijent klijent = s.Query <Klijent>() .Where(v => v.Username.Equals(k.Username)) .Select(p => p).FirstOrDefault(); RezervacijaProvider rezervacijaProv = new RezervacijaProvider(); Rezervacija rezervacija = new Rezervacija(); rezervacija.KlijentR = klijent; rezervacija.SmestajR = sm; rezervacija.TerminiR = t; rezervacija.Soba = soba; //postoji smestaj onda trebamo ispitati da li je termin slobodan if (soba.Equals("cetvorokrevetna")) { //update termine if (termin.BrCetvorokrevetnih > 0) { s.Query <Termini>() .Where(v => v.Id == t.Id) .UpdateBuilder() .Set(c => c.BrCetvorokrevetnih, c => c.BrCetvorokrevetnih - 1) .Update(); if (t.Od.Month - DateTime.Now.Month > 2 && t.Od.Month - DateTime.Now.Month < 6) { klijentProv.Mail(klijent, "Rezervisan je traženi smeštaj-" + sm.Naziv + ". Cena smeštaja iznosi " + sm.CenaPoKrevetu * 1.4 * 120 + "din. Ukoliko se odlučite za naš prevoz, cena po osobi je " + sm.CenaPrevoza * 120 + "din"); } else { klijentProv.Mail(klijent, "Rezervisan je traženi smeštaj-" + sm.Naziv + ". Početna cena smeštaja iznosi " + sm.CenaPoKrevetu * 1.4 * 120 + "din dok je cena sa popustom " + sm.CenaPoKrevetu * 1.4 * 120 * 0.8 + "din. Ukoliko se odlučite za nas prevoz, cena po osobi je " + sm.CenaPrevoza * 120 + "din"); } } else { rezervacija.Cekanje = "da"; rezervacijaProv.AddRezervacija(rezervacija); //smestimo klijenta u red klijentProv.Mail(klijent, "Nažalost traženi smeštaj " + sm.Naziv + " je zauzet. Ukoliko se, oslobodi bićete obavešteni"); return(false); } } else if (soba.Equals("trokrevetna")) { if (termin.BrTrokrevetnih > 0) { s.Query <Termini>() .Where(v => v.Id == t.Id) .UpdateBuilder() .Set(c => c.BrTrokrevetnih, c => c.BrTrokrevetnih - 1) .Update(); if (t.Od.Month - DateTime.Now.Month > 2 && t.Od.Month - DateTime.Now.Month < 6) { klijentProv.Mail(klijent, "Rezervisan je traženi smeštaj-" + sm.Naziv + ". Cena smeštaja iznosi " + sm.CenaPoKrevetu * 1.3 * 120 + "din. Ukoliko se odlučite za naš prevoz, cena po osobi je " + sm.CenaPrevoza * 120 + "din"); } else { klijentProv.Mail(klijent, "Rezervisan je traženi smeštaj-" + sm.Naziv + ". Cena smeštaja iznosi " + sm.CenaPoKrevetu * 1.3 * 120 + "din dok je cena sa popustom " + sm.CenaPoKrevetu * 1.3 * 120 * 0.8 + "din. Ukoliko se odlučite za naš prevoz, cena po osobi je " + sm.CenaPrevoza * 120 + "din"); } } else { rezervacija.Cekanje = "da"; klijentProv.Mail(klijent, "Nažalost traženi smeštaj " + sm.Naziv + " je zauzet. Ukoliko se oslobodi, bićete obavešteni"); rezervacijaProv.AddRezervacija(rezervacija); return(false); } } else if (soba.Equals("duplex")) { if (termin.BrDuplex > 0) { s.Query <Termini>() .Where(v => v.Id == t.Id) .UpdateBuilder() .Set(c => c.BrDuplex, c => c.BrDuplex - 1) .Update(); if (t.Od.Month - DateTime.Now.Month > 2 && t.Od.Month - DateTime.Now.Month < 6) { klijentProv.Mail(klijent, "Rezervisan je trazeni smestaj-" + sm.Naziv + ". Cena smestaja iznosi " + sm.CenaPoKrevetu * 1.5 * 120 + "din. Ukoliko se odlucite za nas prevoz cena po osobi je " + sm.CenaPrevoza * 120 + "din"); } else { klijentProv.Mail(klijent, "Rezervisan je trazeni smestaj-" + sm.Naziv + ". Pocetna cena smestaja iznosi " + sm.CenaPoKrevetu * 1.5 * 120 + "din dok je cena sa popustom" + sm.CenaPoKrevetu * 1.5 * 120 * 0.8 + "din . Ukoliko se odlucite za nas prevoz cena po osobi je " + sm.CenaPrevoza * 120 + "din"); } } else { rezervacija.Cekanje = "da"; klijentProv.Mail(klijent, "Nazalost trazeni smestaj " + sm.Naziv + " je zauzet. Ukoliko se oslobodi bicete obavesteni"); rezervacijaProv.AddRezervacija(rezervacija); return(false); } } rezervacijaProv.AddRezervacija(rezervacija); return(true); }