private void btnRezervacijaDodaj_Click(object sender, EventArgs e) { Kupac k = cbRezervacijaKupacDodaj.SelectedItem as Kupac; Ponuda p = cbRezervacijaPonudaDodaj.SelectedItem as Ponuda; int cena; try { cena = p.CenaDana * brojDana(datRezervacijaOdDodaj.Value, datRezervacijaDoDodaj.Value); } catch { return; } if (proveraDatuma(datRezervacijaOdDodaj.Value, datRezervacijaDoDodaj.Value)) { MessageBox.Show("Datumi nisu korektno popunjeni!"); txtRezervacijaCenaInfoDodaj.Text = "Greška!"; return; } Ponuda p1 = new Ponuda(p.IdAuta, p.DatumOd, datRezervacijaOdDodaj.Value.Date.AddDays(-1), p.CenaDana); Ponuda p2 = new Ponuda(p.IdAuta, datRezervacijaDoDodaj.Value.Date.AddDays(1), p.DatumDo, p.CenaDana); if ((datRezervacijaOdDodaj.Value.Date - p.DatumOd).TotalDays > 0) { ponude.Add(p1); } if ((p.DatumDo - datRezervacijaDoDodaj.Value.Date).TotalDays > 0) { ponude.Add(p2); } ponude.Remove(p); FileStream fsp = new FileStream("ponude.xml", FileMode.Create); SoapFormatter sfp = new SoapFormatter(); foreach (Ponuda ponuda in ponude) { sfp.Serialize(fsp, ponuda); } fsp.Close(); Rezervacija r = new Rezervacija(p.IdAuta, k.Uid, datRezervacijaOdDodaj.Value, datRezervacijaDoDodaj.Value, cena); rezervacije.Add(r); MessageBox.Show("Uspešno dodata rezervacija!"); FileStream fs = new FileStream("rezervacije.xml", FileMode.Append); SoapFormatter sf = new SoapFormatter(); sf.Serialize(fs, rezervacije.Last()); fs.Close(); rezervacije.ResetBindings(); cbRezervacijaKupacDodaj.SelectedIndex = -1; cbRezervacijaPonudaDodaj.SelectedIndex = -1; rezervacijeKorisnici(); }
private void btnRezervisi_Click(object sender, EventArgs e) { if (cbMarka.SelectedIndex == -1) { MessageBox.Show("Izaberite automobil!"); return; } if (!datDo.Enabled && cbMarka.SelectedIndex != -1) { MessageBox.Show("Izaberite ponudu iz liste!"); return; } Ponuda p = ponudeRadna[lsPonude.SelectedIndex]; if (datOd.Value.Date > datDo.Value.Date) { MessageBox.Show("Datumi nisu korektno popunjeni!"); txtCena.Text = "Greška!"; return; } Ponuda p1 = new Ponuda(p.IdAuta, p.DatumOd, datOd.Value.Date.AddDays(-1), p.CenaDana); Ponuda p2 = new Ponuda(p.IdAuta, datDo.Value.Date.AddDays(1), p.DatumDo, p.CenaDana); if ((datOd.Value.Date - p.DatumOd).TotalDays > 0) { ponude.Add(p1); } if ((p.DatumDo - datDo.Value.Date).TotalDays > 0) { ponude.Add(p2); } ponude.Remove(p); FileStream fsp = new FileStream("ponude.xml", FileMode.Create); SoapFormatter sfp = new SoapFormatter(); foreach (Ponuda ponuda in ponude) { sfp.Serialize(fsp, ponuda); } fsp.Close(); Rezervacija r = new Rezervacija(p.IdAuta, idKupca, datOd.Value, datDo.Value, int.Parse(txtCena.Text)); rezervacije.Add(r); MessageBox.Show("Uspešna rezervacija!"); FileStream fs = new FileStream("rezervacije.xml", FileMode.Append); SoapFormatter sf = new SoapFormatter(); sf.Serialize(fs, rezervacije.Last()); fs.Close(); Close(); }
private void LsRezLista_SelectedIndexChanged(object sender, EventArgs e) { Rezervacija r = lsRezLista.SelectedItem as Rezervacija; datRezOdIzmena.Value = r.DatumOd; datRezDoIzmena.Value = r.DatumDo; txtCenaRezIzmena.Text = r.Cena.ToString(); foreach (Automobil a in vozila) { if (a.Id == r.IdAuta) { txtAutoOtkaz.Text = a.ToString(); } } }
private void otkazivanjeRezervacije() { Rezervacija r = lsRezLista.SelectedItem as Rezervacija; int rCenaDana = (int)(r.Cena / ((r.DatumDo.Date - r.DatumOd.Date).TotalDays + 1)); Ponuda pp = new Ponuda(r.IdAuta, r.DatumOd, r.DatumDo, rCenaDana); for (int i = 0; i < ponude.Count; i++) { if (ponude[i].IdAuta == pp.IdAuta && ponude[i].CenaDana == pp.CenaDana) { if (pp.DatumOd.Date.AddDays(-1) == ponude[i].DatumDo.Date) { pp.DatumOd = ponude[i].DatumOd; ponude.RemoveAt(i); i = -1; continue; } if (pp.DatumDo.Date.AddDays(1) == ponude[i].DatumOd.Date) { pp.DatumDo = ponude[i].DatumDo; ponude.RemoveAt(i); i = -1; continue; } } } ponude.Add(pp); FileStream fsp = new FileStream("ponude.xml", FileMode.Create); SoapFormatter sfp = new SoapFormatter(); foreach (Ponuda ponuda in ponude) { sfp.Serialize(fsp, ponuda); } fsp.Close(); rezervacije.Remove(r); FileStream fs = new FileStream("rezervacije.xml", FileMode.Create); SoapFormatter sf = new SoapFormatter(); foreach (Rezervacija rez in rezervacije) { sf.Serialize(fs, rez); } fs.Close(); refreshListe(); }