コード例 #1
0
        //odabrana parcela -> prikaz prijavljenih gostiju u zadnjem smještaju
        private void odabirParcele_SelectedIndexChanged(object sender, EventArgs e)
        {
            ispisSviGosti.Items.Clear();
            ispisOdabraniGosti.Items.Clear();
            parcela odabranaParcela = odabirParcele.SelectedItem as parcela;

            using (KampiralisteEntiteti kontekst = new KampiralisteEntiteti())
            {
                if (odabranaParcela != null)
                {
                    ispisRacuna.Clear();
                    kontekst.parcelas.Attach(odabranaParcela);

                    odabraniSmjestaj = odabranaParcela.smjestajs.LastOrDefault() as smjestaj;

                    ispisOznakeSmjestaja.Text = odabraniSmjestaj.oznaka;

                    var upit = from prijava in kontekst.prijavas
                               where prijava.smjestaj.id == odabraniSmjestaj.id && prijava.racun == null
                               select prijava;
                    this.listaPrijava = new BindingList <prijava>(upit.ToList());

                    foreach (var item in listaPrijava)
                    {
                        ispisSviGosti.Items.Add(item as prijava);
                    }
                }
            }
        }
コード例 #2
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();
            }
        }
コード例 #3
0
        /// <summary>
        /// Pohrana smještaja u bazu podataka.
        /// </summary>
        /// <param name="brojOsoba"></param>
        private void PohraniSmjestaj(int brojOsoba)
        {
            vrsta_smjestaja smjestaj         = unosVrstaSmjestaja.SelectedItem as vrsta_smjestaja;
            parcela         parcelaSmjestaja = unosParcele.SelectedItem as parcela;

            smjestaj noviSmjestaj = new smjestaj
            {
                vrsta_smjestaja = smjestaj,
                oznaka          = unosOznakaSmjestaja.Text,
                parcela         = parcelaSmjestaja,
                broj_osoba      = brojOsoba
            };

            parcelaSmjestaja.slobodno = false;

            this.kontekst.smjestajs.Add(noviSmjestaj);
            this.kontekst.SaveChanges();
        }
コード例 #4
0
        /// <summary>
        /// Ažurira podatke o prijavi i pohranjuje u bzau.
        /// </summary>
        private void AzurirajPrijavu()
        {
            kontekst.prijavas.Attach(this.azurirajPrijavu);

            AzurirajGosta(this.azurirajPrijavu.gost1);

            status_osobe noviStatusOsobe = unosStatusOsobe.SelectedItem as status_osobe;
            string       noviOrgDolaska  = unosOsobno.Checked ? "O" : "A";
            smjestaj     noviSmjestaj    = odabirSmjestajaUnos.SelectedItem as smjestaj;

            this.azurirajPrijavu.status_osobe         = noviStatusOsobe;
            this.azurirajPrijavu.organizacija_dolaska = noviOrgDolaska;
            this.azurirajPrijavu.datum_prijave        = DateTime.Parse(unosDatumDolaska.Text);
            this.azurirajPrijavu.datum_odjave         = DateTime.Parse(unosDatumOdlaska.Text);
            this.azurirajPrijavu.smjestaj             = noviSmjestaj;

            kontekst.SaveChanges();
        }
コード例 #5
0
        // storniranje racuna -> dohvacanje prijava, postavljanje racuna na null i ponovno zauzimanje parcele
        private void akcijaStornirajRacun_Click(object sender, EventArgs e)
        {
            BindingList <prijava> listaPrijava = new BindingList <prijava>();
            racun odabraniRacun = racunBindingSource.Current as racun;

            if (odabraniRacun != null)
            {
                if (MessageBox.Show("Sigurno želite stornirati odabrani račun?", "Upozorenje!", MessageBoxButtons.YesNo, MessageBoxIcon.Warning) == DialogResult.Yes)
                {
                    using (var baza = new KampiralisteEntiteti())
                    {
                        baza.racuns.Attach(odabraniRacun);

                        var upit = from prijava in baza.prijavas
                                   where prijava.racun.id == odabraniRacun.id
                                   select prijava;

                        listaPrijava = new BindingList <prijava>(upit.ToList());

                        foreach (var item in listaPrijava)
                        {
                            item.racun_id = null;
                        }
                        odabraniSmjestaj = odabraniRacun.smjestaj as smjestaj;
                        ZauzmiParcelu();

                        baza.racuns.Remove(odabraniRacun);
                        baza.SaveChanges();
                    }
                }
            }
            else
            {
                MessageBox.Show("Potrebno je odabrati račun koji se želi stornirati!");
            }
            PrikaziRacune();
        }