/// <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; }
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); }
/// <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; } } } } }
/// <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(); }