示例#1
0
        /// <summary>
        /// Prikazuje popis poslova za određenog radnika za određeni dan
        /// </summary>
        public static DataTable Prikazi(DateTime datum_od, DateTime datum_do, string korisnik)
        {
            string upit = "select distinct naziv, od, do from korisnik_radno_mjesto inner join radno_mjesto on id=radno_mjesto" +
                          " inner join korisnik on korisnik = (select id_korisnik from korisnik where korisnicko_ime = '" + korisnik + "') where " +
                          "od >= '" + PretvorbaDatuma.PretvoriDatum(datum_od) + " 00:00' and do <= '" + PretvorbaDatuma.PretvoriDatum(datum_do) + " 00:00' order by od;";
            DataTable dt = new DataTable();

            Baza.Instance.DohvatiDataAdapter(upit).Fill(dt);
            return(dt);
        }
示例#2
0
        /// <summary>
        /// Dohvaća sve podatke o proizvodu. Vraća datatable.
        /// </summary>
        public static DataTable PrikaziStatistiku(DateTime od, DateTime d)
        {
            string upit = "select id_proizvod, naziv, (select sum(kolicina) from stavka_racuna inner join racun on (id_racun = racun) where proizvod=id_proizvod " +
                          "and datum>='" + PretvorbaDatuma.PretvoriDatum(od) + "' and datum<='" + PretvorbaDatuma.PretvoriDatum(d) + "')," +
                          "(select sum(kolicina) from stavka_racuna inner join racun on (id_racun = racun) where proizvod=id_proizvod " +
                          "and datum>='" + PretvorbaDatuma.PretvoriDatum(od) + "' and datum<='" + PretvorbaDatuma.PretvoriDatum(d) + "') * cijena from proizvod order by 4 desc;";
            DataTable dt = new DataTable();

            Baza.Instance.DohvatiDataAdapter(upit).Fill(dt);
            return(dt);
        }
示例#3
0
        /// <summary>
        /// Dohvaća sve podatke o filmu i vraća datatable.
        /// </summary>
        public static DataTable PrikaziStatistiku(DateTime od, DateTime d)
        {
            string upit = "select id_film, naziv, (select sum(kolicina) from stavka_racuna, karta, prikazivanje, racun where id_racun = racun and karta=karta.id_karta and karta.prikazivanje=prikazivanje.id_prikazivanje and prikazivanje.film=id_film " +
                          "and datum>='" + PretvorbaDatuma.PretvoriDatum(od) + "' and datum<='" + PretvorbaDatuma.PretvoriDatum(d) + "')," +
                          "(select sum(kolicina) from stavka_racuna, karta, prikazivanje, racun where id_racun = racun and karta=karta.id_karta and karta.prikazivanje=prikazivanje.id_prikazivanje and prikazivanje.film=id_film " +
                          "and datum>='" + PretvorbaDatuma.PretvoriDatum(od) + "' and datum<='" + PretvorbaDatuma.PretvoriDatum(d) + "') * cijena from film order by 4 desc;";
            DataTable dt = new DataTable();

            Baza.Instance.DohvatiDataAdapter(upit).Fill(dt);
            return(dt);
        }
示例#4
0
        /// <summary>
        /// Klikom na gumb "Spremi račun", svi podaci se spremaju u bazu: ako postoji rezervacija ona se poništava,
        /// kreira se novi račun i spremaju se stavke računa.
        /// </summary>
        private void gumbSpremiRacun_Click(object sender, EventArgs e)
        {
            string upit;

            if (rezervacija != -1)
            {
                Rezervacija r = new Rezervacija(Convert.ToInt32(rezervacija));
                r.PonistiRezervaciju();
                rezervacija = -1;
            }

            upit = "select id_korisnik from korisnik where korisnicko_ime = '" + korisnik + "';";
            int korisnikId = Convert.ToInt32(Baza.Instance.DohvatiVrijednost(upit));

            upit = "select pogodnost_id from klub_vjernosti where naziv = '" + popust.SelectedItem + "' ;";
            int klubVjernosti = Convert.ToInt32(Baza.Instance.DohvatiVrijednost(upit));

            upit = "insert into racun values ('" + brojRacuna.Text + "', '" + klubVjernosti + "', '" + PretvorbaDatuma.PretvoriDatum(DateTime.Now) + "', '" + korisnikId + "');";
            Baza.Instance.IzvrsiUpit(upit);

            foreach (DataGridViewRow row in ispisStavki.Rows)
            {
                upit = "select max(id_stavke) from stavka_racuna;";
                int stavkaId = Convert.ToInt32(Baza.Instance.DohvatiVrijednost(upit));
                stavkaId++;

                if (row.Cells[2].Value.ToString() == "FILM")
                {
                    upit = "insert into stavka_racuna (racun,karta,proizvod, kolicina, id_stavke) values ('" + brojRacuna.Text + "', '" + row.Cells[0].Value.ToString() + "', null, 1, '" + stavkaId + "');";
                }
                else
                {
                    upit = "insert into stavka_racuna (racun, karta, proizvod, kolicina, id_stavke) values ('" + brojRacuna.Text + "', null, '" + row.Cells[0].Value.ToString() + "', '" + row.Cells[2].Value.ToString() + "', '" + stavkaId + "')";
                }
                Baza.Instance.IzvrsiUpit(upit);
            }
            ispisStavki.DataSource = null;
            brojRacuna.Text        = (Convert.ToInt32(brojRacuna.Text) + 1).ToString();
            ukupnoBezPDV.Text      = "0 kn";
            sveukupno.Text         = "0 kn";
            MessageBox.Show("Račun je uspješno kreiran.", "Novi račun", MessageBoxButtons.OK, MessageBoxIcon.Information);
        }
示例#5
0
        /// <summary>
        /// Provjerava da li je rezervacija upotrebljiva
        /// </summary>
        /// <returns>Vraća 0 ako rezervacija nije upotrebljiva, odnosno 1 ako je upotrebljiva</returns>
        public int ProvjeriUpotrebljivost()
        {
            string upit = "select count(*) from rezervacija inner join prikazivanje on (id_prikazivanje=prikazivanje) " +
                          "where id_rezervacija='" + BrojRezervacije + "' and iskoristeno = 0 and vrijeme_prikazivanja >= '" + PretvorbaDatuma.PretvoriDatum(DateTime.Now) + "';";
            object ispravan = Baza.Instance.DohvatiVrijednost(upit);

            return(Convert.ToInt32(ispravan));
        }
示例#6
0
        public FormaOdabirPrikazivanja(string id)
        {
            InitializeComponent();

            string upit = "select count(*) from prikazivanje where film = '" + id + "' and vrijeme_prikazivanja >= '" + PretvorbaDatuma.PretvoriDatum(DateTime.Now) + "'; ";

            BrojPrikazivanja = Convert.ToInt32(Baza.Instance.DohvatiVrijednost(upit));

            if (BrojPrikazivanja != 0)
            {
                pretragaIspis.DataSource            = Klase.Prikazivanja.DohvatiPrikazivanja(id);
                pretragaIspis.Columns[0].HeaderText = "Šifra";
                pretragaIspis.Columns[1].HeaderText = "Dvorana";
                pretragaIspis.Columns[2].HeaderText = "Vrijeme";
                pretragaIspis.Columns[3].HeaderText = "Slobodno";
            }
        }
示例#7
0
        /// <summary>
        /// Dohvaća sva prikazivanja za određeni film i sprema ih u DataTable
        /// </summary>
        public static DataTable DohvatiPrikazivanja(string id)
        {
            string    upit = "select id_prikazivanje, (select naziv from dvorana where id_dvorana=dvorana), vrijeme_prikazivanja, ((select broj_mjesta from dvorana where dvorana = id_dvorana) - ((select count(*) from rezervacija where prikazivanje = id_prikazivanje and iskoristeno = 0)+(select count(*) from karta where prikazivanje = id_prikazivanje))) as slobodna_mjesta from prikazivanje where film = '" + id + "' and vrijeme_prikazivanja >= '" + PretvorbaDatuma.PretvoriDatum(DateTime.Now) + "'; ";
            DataTable dt   = new DataTable();

            Baza.Instance.DohvatiDataAdapter(upit).Fill(dt);
            return(dt);
        }