Пример #1
0
        /// <summary>
        /// Pohrana prijave za danog gosta u bazu podataka.
        /// </summary>
        /// <param name="prijaviGosta">Objekt tipa gost za kojeg se unosi prijava.</param>
        private void PohraniPrijavu(gost prijaviGosta)
        {
            string       orgDolaska       = unosOsobno.Checked ? "O" : "A";
            smjestaj     odabraniSmjestaj = odabirSmjestajaUnos.SelectedItem as smjestaj;
            status_osobe odabraniStatus   = unosStatusOsobe.SelectedItem as status_osobe;

            if (String.IsNullOrEmpty(unosDatumDolaska.Text) || String.IsNullOrEmpty(unosDatumOdlaska.Text))
            {
                throw new KampiralisteException("Nisu uneseni podaci prijave!", this.Name);
            }
            else
            {
                DateTime datumPrijave = DateTime.Parse(unosDatumDolaska.Text);
                DateTime datumOdjave  = DateTime.Parse(unosDatumOdlaska.Text);

                prijava prijavaGosta = new prijava
                {
                    gost1                = prijaviGosta,
                    datum_prijave        = datumPrijave,
                    datum_odjave         = datumOdjave,
                    organizacija_dolaska = orgDolaska,
                    status_osobe         = odabraniStatus,
                    zaposlenik           = this.prijavljeniZaposlenik,
                    smjestaj             = odabraniSmjestaj
                };

                kontekst.prijavas.Add(prijavaGosta);
                kontekst.SaveChanges();
            }
        }
Пример #2
0
 /// <summary>
 /// Konstruktor forme prilikom ažuriranja prijave.
 /// </summary>
 /// <param name="ulazPrijava">Objekt klase prijava koji se ažurira</param>
 /// <param name="ulazniKontekst">Kontekst baze podataka</param>
 public PrijavaGostaForma(prijava ulazPrijava, KampiralisteEntiteti ulazniKontekst, zaposlenik prijavljeni)
 {
     InitializeComponent();
     this.kontekst              = ulazniKontekst;
     this.azurirajPrijavu       = ulazPrijava;
     this.prijavljeniZaposlenik = prijavljeni;
     this.kontekst.zaposleniks.Attach(this.prijavljeniZaposlenik);
 }
        /// <summary>
        /// Na dupli klik zčitava se odabrana prijava u formu PrijavaGostaForma.
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void aktivnePrijaveListBox_MouseDoubleClick(object sender, MouseEventArgs e)
        {
            prijava           azurirajPrijavu           = aktivnePrijaveListBox.SelectedItem as prijava;
            PrijavaGostaForma instancaPrijavaGostaForma = new PrijavaGostaForma(azurirajPrijavu, kontekst, this.prijavljeniZaposlenik);

            instancaPrijavaGostaForma.ShowDialog();

            UcitajPrijave(1);
            unosDolazakUzlazno.Checked = true;
        }
        /// <summary>
        /// Funkcija za brisanje prijave, a ukoliko gost vezan za prijavu ima jednu ili nula prijava briše se
        /// i gost.
        /// </summary>
        /// <param name="prijavaZaBrisanje">Objekt tipa klase prijava koji će biti obrisan</param>
        private void ObrisiPrijavu(prijava prijavaZaBrisanje)
        {
            gost gostZaBrisanje = prijavaZaBrisanje.gost1;
            int  brojPrijava    = gostZaBrisanje.prijavas.Count();

            kontekst.gosts.Attach(gostZaBrisanje);
            kontekst.prijavas.Attach(prijavaZaBrisanje);
            if (brojPrijava < 2)
            {
                kontekst.gosts.Remove(gostZaBrisanje);
            }
            kontekst.prijavas.Remove(prijavaZaBrisanje);
            kontekst.SaveChanges();

            MessageBox.Show("Gost uspješno obrisan", "Poruka o brisanju", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
        /// <summary>
        /// Događaj na desni klik na opciju uredi unutar meni-a. Meni se otvara desnim klikom na
        /// listu aktivnih prijava
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void urediToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (aktivnePrijaveListBox.SelectedItem != null)
            {
                prijava           azurirajPrijavu           = aktivnePrijaveListBox.SelectedItem as prijava;
                PrijavaGostaForma instancaPrijavaGostaForma = new PrijavaGostaForma(azurirajPrijavu, kontekst, this.prijavljeniZaposlenik);
                instancaPrijavaGostaForma.ShowDialog();

                UcitajPrijave(1);
                unosDolazakUzlazno.Checked = true;
            }
            else
            {
                MessageBox.Show("Morate odabrati prijavu koju želite urediti!", "Brisanje", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
        /// <summary>
        /// Događaj na desni klik na opciju obriši unutar meni-a. Meni se otvara desnim klikom na
        /// listu aktivnih prijava
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        private void obrišiToolStripMenuItem_Click(object sender, EventArgs e)
        {
            if (aktivnePrijaveListBox.SelectedItem != null)
            {
                prijava obrisiPrijavu = aktivnePrijaveListBox.SelectedItem as prijava;
                string  poruka        = "Sigurno želite obrisati prijavu za gosta ";
                poruka += obrisiPrijavu.gost1.ime + " " + obrisiPrijavu.gost1.prezime + "? ";
                DialogResult brisanjePotvrda = MessageBox.Show(poruka, "Brisanje", MessageBoxButtons.YesNo, MessageBoxIcon.Warning);

                if (brisanjePotvrda == DialogResult.Yes)
                {
                    ObrisiPrijavu(obrisiPrijavu);
                }

                UcitajPrijave(1);
                unosDolazakUzlazno.Checked = true;
            }
            else
            {
                MessageBox.Show("Morate odabrati prijavu koju želite obrisati!", "Brisanje", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }