示例#1
0
        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!");
                }
            }
        }
示例#2
0
        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();
            }
        }
示例#3
0
 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 = "";
     }
 }
示例#4
0
        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;
                }
            }
        }
示例#5
0
        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]);
                }
            }
        }