Esempio n. 1
0
        /// <summary>
        /// Rukuje događajem klika na gumb btnRezerviraj. Provjerava popunjenost obrasca, te sprema rezervaciju u bazu.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnRezerviraj_Click(object sender, EventArgs e)
        {
            if (txtRegistracija.Text == "")
            {
                MessageBox.Show("Niste odabrali vozilo!");
            }
            else
            {
                if (DateTime.Compare(dtpDatumIVrijemePocetka.Value, DateTime.Today.AddDays(1)) == 0)
                {
                    Iznajmljivanje iznajmljivanje = new Iznajmljivanje();
                    iznajmljivanje.KlijentID       = txtOIB.Text;
                    iznajmljivanje.VoziloID        = txtRegistracija.Text;
                    iznajmljivanje.DatumPocetka    = dtpDatumIVrijemePocetka.Value;
                    iznajmljivanje.DatumKraja      = dtpDatumIVrijemeKraja.Value;
                    iznajmljivanje.BrojDana        = int.Parse((dtpDatumIVrijemeKraja.Value - dtpDatumIVrijemePocetka.Value).Days.ToString());
                    iznajmljivanje.DjelatnikID     = Korisnik.PrijavljeniKorisnik.KorisnikID;
                    iznajmljivanje.JedinicnaCijena = double.Parse(txtCijenaPoDanu.Text);
                    iznajmljivanje.Naplaceno       = false;
                    Vozilo    vozilo    = null;
                    TipMotora tipMotora = null;
                    using (RentACarEntities db = new RentACarEntities())
                    {
                        vozilo    = (from v in db.Vozilo where v.VoziloID == txtRegistracija.Text select v).FirstOrDefault();
                        tipMotora = (from tm in db.TipMotora where tm.TipMotoraID == vozilo.TipMotoraID select tm).FirstOrDefault();
                    }
                    iznajmljivanje.Naziv        = vozilo.Naziv + " " + tipMotora.Naziv;
                    iznajmljivanje.Opis         = "Iznajmljivanje vozila " + iznajmljivanje.Naziv + " na " + iznajmljivanje.BrojDana.ToString() + " dana s cijenom od " + iznajmljivanje.JedinicnaCijena.ToString() + "kn po danu.";
                    iznajmljivanje.UkupnaCijena = iznajmljivanje.BrojDana * iznajmljivanje.JedinicnaCijena;
                    iznajmljivanje.RacunID      = null;
                    using (RentACarEntities db = new RentACarEntities())
                    {
                        db.Iznajmljivanje.Add(iznajmljivanje);
                        db.SaveChanges();
                    }
                    MessageBox.Show("Iznajmljivanje vozila obavljeno!");
                }
                else
                {
                    Rezervacija rezervacija = new Rezervacija();
                    rezervacija.KorisnikID       = txtOIB.Text;
                    rezervacija.DatumPocetka     = dtpDatumIVrijemePocetka.Value;
                    rezervacija.DatumKraja       = dtpDatumIVrijemeKraja.Value;
                    rezervacija.DatumRezervacije = DateTime.Now;
                    rezervacija.VoziloID         = txtRegistracija.Text;
                    rezervacija.Opis             = txtNapomena.Text;
                    rezervacija.JedinicnaCijena  = double.Parse(txtCijenaPoDanu.Text);
                    rezervacija.BrojDana         = int.Parse(txtBrojDana.Text);
                    using (RentACarEntities db = new RentACarEntities())
                    {
                        db.Rezervacija.Add(rezervacija);
                        db.SaveChanges();
                    }
                    MessageBox.Show("Rezervacija vozila obavljena!");
                }
            }

            this.Close();
        }
 /// <summary>
 /// Konstruktor klase frmPregledIznajmljivanja.cs. Popunjava DataGridView dgv PregledIznajmljivanja.
 /// </summary>
 /// <param name="sifraRacuna"></param>
 public frmPregledIznajmljivanja(int sifraRacuna)
 {
     InitializeComponent();
     voziloBindingSource.DataSource         = Vozilo.DohvatiVozila();
     korisnikBindingSource.DataSource       = Korisnik.DohvatiSveKorisnike();
     iznajmljivanjeBindingSource.DataSource = Iznajmljivanje.DohvatiIznajmljivanjaZaRacun();
     this.sifraRacuna = sifraRacuna;
 }
Esempio n. 3
0
        public static Vozilo DohvatiVoziloPoIznajmljivanju(Iznajmljivanje iznajmljivanje)
        {
            Vozilo vozilo = new Vozilo();

            using (RentACarEntities db = new RentACarEntities())
            {
                vozilo = (from v in db.Vozilo where v.VoziloID == iznajmljivanje.VoziloID select v).First();
            }
            return(vozilo);
        }
Esempio n. 4
0
        /// <summary>
        /// Na promjenu odabranog zaposlenika mijenjaju se i iznajmljivanja koja su njegova
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void cmbZaposlenik_SelectedIndexChanged(object sender, EventArgs e)
        {
            try
            {
                dgvIznajmljivanja.DataSource = Iznajmljivanje.IznajmljivanjaRadnika(cmbZaposlenik.SelectedValue.ToString());
                txtBrojIznajmljivanja.Text   = Iznajmljivanje.IznajmljivanjaRadnika(cmbZaposlenik.SelectedValue.ToString()).Count.ToString();

                dgvIznajmljivanja.Columns["Korisnik"].Visible  = false;
                dgvIznajmljivanja.Columns["Korisnik1"].Visible = false;
                dgvIznajmljivanja.Columns["Racun"].Visible     = false;
                dgvIznajmljivanja.Columns["Vozilo"].Visible    = false;
            }
            catch
            {
            }
        }
        /// <summary>
        /// Rukuje događajem klika na gumb btnDodajStavku. Sprema parametre u varijable i zatvara formu frmPregledIznajmljivanja.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnDodajStavku_Click(object sender, EventArgs e)
        {
            Iznajmljivanje iznajmljivanje = (Iznajmljivanje)iznajmljivanjeBindingSource.Current;

            if (iznajmljivanje != null)
            {
                using (RentACarEntities db = new RentACarEntities())
                {
                    db.Iznajmljivanje.Attach(iznajmljivanje);
                    iznajmljivanje.RacunID   = this.sifraRacuna;
                    iznajmljivanje.Naplaceno = true;
                    UkupnaSuma = iznajmljivanje.BrojDana * iznajmljivanje.JedinicnaCijena;
                    db.SaveChanges();
                }
            }
            this.Close();
        }
        private void NajveciProfit()
        {
            List <Vozilo> listaVozila = Vozilo.SvaVozila();

            foreach (var item in listaVozila)
            {
                BindingList <Iznajmljivanje> listaIznajmljivanja = Iznajmljivanje.Iznajmljivanja();
                foreach (var item2 in listaIznajmljivanja)
                {
                    if (item2.VoziloID == item.VoziloID)
                    {
                        double suma = item.CijenaPoDanu * listaIznajmljivanja.Count;
                        if (double.Parse(txtProfitMaxBroj.Text) < suma)
                        {
                            txtProfitMaxBroj.Text = suma.ToString();
                            txtProfitMaxIme.Text  = item.Naziv;
                        }
                    }
                }
            }
        }
Esempio n. 7
0
        /// <summary>
        /// Rukuje događajem klika na gumb te briše odabrano vozilo ak vozilo nije iznajmljeno ili rezervirano
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void btnBrisiVozilo_Click(object sender, EventArgs e)
        {
            Vozilo vozilo = voziloBindingSource.Current as Vozilo;

            using (RentACarEntities db = new RentACarEntities())
            {
                db.Vozilo.Attach(vozilo);
                if (Iznajmljivanje.ProvjeriZauzetostVozila(vozilo.VoziloID) == true && Rezervacija.ProvjeriZauzetostVozila(vozilo.VoziloID))
                {
                    db.Vozilo.Remove(vozilo);
                    db.SaveChanges();
                }
                else if (Iznajmljivanje.ProvjeriZauzetostVozila(vozilo.VoziloID) == false)
                {
                    MessageBox.Show("Vozilo je iznajmljeno te ga nije moguće izbrisati", "GREŠKA", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else if (Rezervacija.ProvjeriZauzetostVozila(vozilo.VoziloID) == false)
                {
                    MessageBox.Show("Vozilo je rezervirano te ga nije moguće izbrisati", "GREŠKA", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
            OsvjeziPrikazVozila();
        }