private void btnIzmeniPonudu(object sender, EventArgs e) { double cena; if (lstPonude.SelectedItem == null) { MessageBox.Show("Niste odabrali ponudu!"); } else if (!double.TryParse(txtCenaDan.Text, out cena)) { MessageBox.Show("Neispravan unos cene!"); } else { Ponuda p = new Ponuda(int.Parse(cmbIdAutaPonuda.SelectedItem.ToString()), dtDatumOd.Value, dtDatumDo.Value, cena); admin.ObrisiPonudu(uzorakPonuda); if (!admin.DodajPonudu(p)) { MessageBox.Show("Preklopljen datum!"); } else { admin.DodajPonudu(uzorakPonuda); lstPonude.Items.Clear(); foreach (Ponuda pon in admin.ListaPonuda) { lstPonude.Items.Add(pon.ToString()); } MessageBox.Show("Uspesno izmenjen datum!"); } } }
private void btnPrikaziTermine_Click(object sender, EventArgs e) { bool ima = false; odabranePonude = new List <Ponuda>(); odabraneRezervacije = new List <Rezervacija>(); if (cmbMarka.SelectedItem != null && cmbModel.SelectedItem != null && cmbGodiste.SelectedItem != null) { foreach (Automobil a in listaAuta) { if (a.Marka == cmbMarka.SelectedItem.ToString() && a.Model == cmbModel.SelectedItem.ToString() && a.Godiste.ToString() == cmbGodiste.SelectedItem.ToString() && a.Pogon.ToString() == cmbPogon.SelectedItem.ToString() && a.Kubikaza.ToString() == cmbKubikaza.SelectedItem.ToString() && a.Karoserija.ToString() == cmbKaroserija.SelectedItem.ToString() && a.BrVrata.ToString() == cmbVrata.SelectedItem.ToString() && a.Gorivo.ToString() == cmbGorivo.SelectedItem.ToString() && a.Menjac.ToString() == cmbMenjac.SelectedItem.ToString()) { foreach (Ponuda p in listaPonuda) { if (p.IdAuta == a.Id) { odabranePonude.Add(p); ima = true; } } foreach (Rezervacija r in listaRezervacija) { if (r.IdAutomobila == a.Id) { odabraneRezervacije.Add(r); } } } } } if (!ima) { MessageBox.Show("Nema termina za izabrane kriterijume auta!"); lstTermini.Items.Clear(); } else { Ponuda.Sortiraj(odabranePonude); Rezervacija.Sortiraj(odabraneRezervacije); RacunajPonude(); IspisiPonude(); } }
private void btnObrisiPonudu(object sender, EventArgs e) { if (lstPonude.SelectedItem == null) { MessageBox.Show("Morate izabrati odredjenu ponudu!"); } else { Ponuda p = new Ponuda(int.Parse(cmbIdAutaPonuda.SelectedItem.ToString()), dtDatumOd.Value, dtDatumDo.Value, int.Parse(txtCenaDan.Text)); admin.ObrisiPonudu(p); MessageBox.Show("Uspesno obrisano!"); lstPonude.Items.Clear(); foreach (Ponuda pon in admin.ListaPonuda) { lstPonude.Items.Add(pon.ToString()); } txtCenaDan.Text = ""; } }
private void lstPonude_SelectedIndexChanged(object sender, EventArgs e) { if (!radioDodajPonudu.Checked && lstPonude.SelectedItem != null && admin.ListaAuta != null) { string procitanaPonuda = lstPonude.SelectedItem.ToString(); DateTime dOdProcitan = DateTime.Now, dDoProcitan = DateTime.Now; int maxId = admin.ListaAuta[0].Id; foreach (Automobil a in admin.ListaAuta) { if (a.Id > maxId) { maxId = a.Id; } } Ponuda trazena = null; foreach (Ponuda p in admin.ListaPonuda) { if (p.ToString() == procitanaPonuda) { trazena = p; } } uzorakPonuda = trazena; cmbIdAutaPonuda.SelectedItem = trazena.IdAuta; dtDatumOd.Value = trazena.Datum_od; dtDatumDo.Value = trazena.Datum_do; txtCenaDan.Text = trazena.CenaDan.ToString(); if (radioBrisiPonudu.Checked) { txtCenaDan.Enabled = false; } } }
private void RacunajPonude() { izabranePonude = new List <Ponuda>(); DateTime ponPocetak, ponKraj, rezPocetak, rezKraj; for (int i = 0; i < odabranePonude.Count; i++) { bool provera = true; bool cela = true; for (int j = 0; j < odabraneRezervacije.Count; j++) { if (odabranePonude[i].IdAuta == odabraneRezervacije[j].IdAutomobila) { provera = false; ponPocetak = odabranePonude[i].Datum_od.Date; ponKraj = odabranePonude[i].Datum_do.Date; rezPocetak = odabraneRezervacije[j].DatumOd.Date; rezKraj = odabraneRezervacije[j].DatumDo.Date; if (ponPocetak >= rezPocetak && ponKraj <= rezKraj) { cela = false; break; } else if (ponPocetak >= rezPocetak && ponPocetak <= rezKraj && ponKraj > rezKraj) { cela = false; odabranePonude[i] = new Ponuda(odabranePonude[i].IdAuta, rezKraj.AddDays(1).Date, ponKraj, odabranePonude[i].CenaDan); if (j == odabraneRezervacije.Count - 1) { izabranePonude.Add(odabranePonude[i]); break; } else if (ponKraj < odabraneRezervacije[j + i].DatumOd.Date || odabraneRezervacije[j + 1].IdAutomobila != odabranePonude[i].IdAuta) { izabranePonude.Add(odabranePonude[i]); break; } } else if (ponPocetak <= rezPocetak && ponKraj >= rezKraj) { cela = false; odabranePonude[i] = new Ponuda(odabranePonude[i].IdAuta, rezKraj.AddDays(1).Date, ponKraj, odabranePonude[i].CenaDan); izabranePonude.Add(new Ponuda(odabranePonude[i].IdAuta, ponPocetak.Date, rezPocetak.AddDays(-1).Date, odabranePonude[i].CenaDan)); if (j == odabraneRezervacije.Count - 1) { izabranePonude.Add(odabranePonude[i]); break; } else if (ponKraj < odabraneRezervacije[j + 1].DatumOd.Date || odabraneRezervacije[j + 1].IdAutomobila != odabranePonude[i].IdAuta) { izabranePonude.Add(odabranePonude[i]); break; } } else if (ponPocetak <= rezPocetak && ponKraj <= rezKraj && ponKraj > rezPocetak) { cela = false; izabranePonude.Add(new Ponuda(odabranePonude[i].IdAuta, ponPocetak, rezPocetak.AddDays(-1).Date, odabranePonude[i].CenaDan)); break; } } } if (provera || cela) { izabranePonude.Add(odabranePonude[i]); } } }