// konstruktor za ažuriranje zaposlenika, trenutni zaposlenik je odabrani zaposlenik u data grid viewu na IspisZaposlenikaUC
 // polja će se popuniti njegovim informacijama i mogu se mijenjati i spremiti
 public DodajZaposlenikaForma(Zaposlenik zaposlenik)
 {
     InitializeComponent();
     stariZaposlenik     = zaposlenik;
     cmbUloga.DataSource = zaposlenikRepozitorij.DohvatiUlogeZaposlenika();
     tvrtka = PrijavaForma.prijavljeniZaposlenik.Tvrtka;
 }
Example #2
0
        public Zaposlenik DohvatiZaposlenika(SqlDataReader dr, List <Uloga> listaUloga, List <Tvrtka> listaTvrtki)
        {
            Uloga      uloga      = null;
            Tvrtka     tvrtka     = null;
            Zaposlenik zaposlenik = null;

            if (dr != null)
            {
                uloga                      = new Uloga();
                tvrtka                     = new Tvrtka();
                zaposlenik                 = new Zaposlenik();
                zaposlenik.OIB             = dr["oib"].ToString();
                zaposlenik.Ime             = dr["ime"].ToString();
                zaposlenik.Prezime         = dr["prezime"].ToString();
                zaposlenik.StrucnaSprema   = dr["stručna_sprema"].ToString();
                zaposlenik.DatumZaposlenja = DateTime.Parse(dr["datum_zaposlenja"].ToString());
                zaposlenik.BrojTelefona    = dr["broj_telefona"].ToString();
                zaposlenik.Adresa          = dr["adresa"].ToString();
                zaposlenik.Email           = dr["email"].ToString();
                zaposlenik.Lozinka         = dr["lozinka"].ToString();
                zaposlenik.Uloga           = listaUloga.Find(item => item.Uloga_id == int.Parse(dr["uloga_id"].ToString()));;
                zaposlenik.KorisnickoIme   = dr["korisničko_ime"].ToString();
                zaposlenik.Tvrtka          = listaTvrtki.FirstOrDefault(item => item.Tvrtka_id == int.Parse(dr["tvrtka_id"].ToString()));
            }
            return(zaposlenik);
        }
        //Metoda koja vraća rutu u koju su pohranjeni svi podaci u kontroli IspisRutaUC na pritisak tipke Dodaj nakon zatvaranja
        //DodajRutuForma i zatim se pomoću klase RutaRepozotorij upisuje nova ruta u bazu
        public Ruta VratiRutu()
        {
            Zaposlenik selektiran  = cmbBoxZaposlenik.SelectedItem as Zaposlenik;
            Vozilo     selektirano = cmbBoxVozilo.SelectedItem as Vozilo;
            Ruta       ruta        = new Ruta();

            if (staraRuta != null)
            {
                ruta.Ruta_id = staraRuta.Ruta_id;
            }
            if (selektiran != null && selektirano != null && txtBoxPolazište.Text != "" && txtBoxOdredište.Text != "" && txtBoxBrojOtpremnice.Text != "")
            {
                ruta.Zaposlenik_id       = selektiran.OIB;
                ruta.Kreirao             = PrijavaForma.oib;
                ruta.Vozilo_registracija = selektirano.Registracija;
                ruta.Polazište           = txtBoxPolazište.Text;
                ruta.Odredište           = txtBoxOdredište.Text;
                ruta.Broj_otpremnice     = txtBoxBrojOtpremnice.Text;
                DateTime polazak = dtpPolazakDatum.Value.Date + dtpPolazakSat.Value.TimeOfDay;
                DateTime dolazak = dtpdolazakDatum.Value.Date + dtpDolazakSat.Value.TimeOfDay;
                ruta.Datum_i_vrijeme_polaska   = polazak.ToString();
                ruta.Očekivano_vrijeme_dolaska = dolazak.ToString();
                return(ruta);
            }
            else
            {
                return(null);
            }
        }
Example #4
0
        //metoda koja brise zaposlenika
        public int ObrisiZaposlenika(Zaposlenik zaposlenik)
        {
            string sql = $"DELETE zaposlenik WHERE oib = {zaposlenik.OIB}";
            int    i   = Database.Instance.IzvrsiUpit(sql);

            return(i);
        }
Example #5
0
        // metoda koja prima zaposlenika od IspisZaposlenikaUC i azurira ga
        public int AzurirajZaposlenika(Zaposlenik zaposlenik)
        {
            string datum = zaposlenik.DatumZaposlenja.ToString("yyyyMMdd");
            string sql   = $"UPDATE zaposlenik SET uloga_id={zaposlenik.Uloga.Uloga_id}, ime='{zaposlenik.Ime}', prezime='{zaposlenik.Prezime}', stručna_sprema='{zaposlenik.StrucnaSprema}', datum_zaposlenja='{datum}', broj_telefona='{zaposlenik.BrojTelefona}', adresa='{zaposlenik.Adresa}', email='{zaposlenik.Email}', lozinka='{zaposlenik.Lozinka}', korisničko_ime='{zaposlenik.KorisnickoIme}' WHERE oib={zaposlenik.OIB}";
            int    i     = Database.Instance.IzvrsiUpit(sql);

            return(i);
        }
Example #6
0
        // metoda koja dodaje zaposlenika primljenog IspisZaposlenikaUC i dodaje ga u bazu
        public int DodajZaposlenika(Zaposlenik noviZaposlenik)
        {
            string datum = noviZaposlenik.DatumZaposlenja.ToString("yyyyMMdd");
            string sql   = $"INSERT INTO zaposlenik (oib, uloga_id, ime, prezime, stručna_sprema, datum_zaposlenja, broj_telefona, adresa, email, lozinka, korisničko_ime, tvrtka_id) VALUES ({noviZaposlenik.OIB}, {noviZaposlenik.Uloga.Uloga_id}, '{noviZaposlenik.Ime}', '{noviZaposlenik.Prezime}', '{noviZaposlenik.StrucnaSprema}', '{datum}', '{noviZaposlenik.BrojTelefona}', '{noviZaposlenik.Adresa}', '{noviZaposlenik.Email}', '{noviZaposlenik.Lozinka}', '{noviZaposlenik.KorisnickoIme}', '{noviZaposlenik.Tvrtka.Tvrtka_id}')";
            int    i     = Database.Instance.IzvrsiUpit(sql);

            return(i);
        }
Example #7
0
        public static string ProvjeraUnosaZaposlenika(Zaposlenik zaposlenik, Zaposlenik stariZaposlenik)
        {
            ZaposlenikRepozitorij repozitorij      = new ZaposlenikRepozitorij();
            List <Zaposlenik>     listaZaposlenika = new List <Zaposlenik>();

            listaZaposlenika = repozitorij.DohvatiZaposlenike();
            string error = "";

            if (stariZaposlenik == null)
            {
                if (zaposlenik.OIB.Length != 13)
                {
                    error += "OIB mora imati 13 znakova!\n";
                }
                else if (listaZaposlenika.Find(item => item.OIB == zaposlenik.OIB) != null)
                {
                    error += "Korisnik s unesenim OIB-om već postoji\n";
                }
            }
            if (zaposlenik.KorisnickoIme.Length < 1)
            {
                error += "Unesite korisničko ime!\n";
            }
            else if (listaZaposlenika.Find(item => item.KorisnickoIme == zaposlenik.KorisnickoIme) != null /*&& zaposlenik.KorisnickoIme!=stariZaposlenik.KorisnickoIme*/)
            {
                error += "Korisnik s unesenim korisničkim imenom već postoji!\n";
            }
            if (zaposlenik.Ime.Length < 1)
            {
                error += "Unesite ime!\n";
            }
            if (zaposlenik.Prezime.Length < 1)
            {
                error += "Unesite Prezime!\n";
            }
            if (zaposlenik.StrucnaSprema.Length < 1)
            {
                error += "Unesite stručnu spremu!\n";
            }
            if (zaposlenik.Adresa.Length < 1)
            {
                error += "Unesite adresu!\n";
            }
            if (zaposlenik.BrojTelefona.Length < 1)
            {
                error += "Unesite broj telefona!\n";
            }
            if (zaposlenik.Email.Length < 1)
            {
                error += "Unesite email!\n";
            }

            if (zaposlenik.Lozinka.Length < 1)
            {
                error += "Unesite lozinku!\n";
            }
            return(error);
        }
Example #8
0
        public List <Zaposlenik> DohvatiVozačeRuta()
        {
            List <Zaposlenik> listaZaposlenika = new List <Zaposlenik>();
            //string sqlUpit = $"SELECT * FROM zaposlenik left join ruta on zaposlenik.oib=ruta.zaposlenik_oib where '{DodajRutuForma.vrijemePolaska.ToString("yyyy-MM-dd HH:mm:ss")}' > očekivano_vrijeme_dolaska and '{DodajRutuForma.vrijemeDolaska.ToString("yyyy-MM-dd HH:mm:ss")}' > očekivano_vrijeme_dolaska";
            string        sqlUpit = $"SELECT * from zaposlenik z where not exists ( select 1 from ruta r where '{DodajRutuForma.vrijemePolaska.ToString("yyyy-MM-dd HH:mm:ss")}' < r.očekivano_vrijeme_dolaska and '{DodajRutuForma.vrijemeDolaska.ToString("yyyy-MM-dd HH:mm:ss")}' > r.datum_i_vrijeme_polaska and zaposlenik_oib=oib) and uloga_id=3 and tvrtka_id={PrijavaForma.prijavljeniZaposlenik.Tvrtka.Tvrtka_id}";
            SqlDataReader dr      = Database.Instance.DohvatiDataReader(sqlUpit);

            while (dr.Read())
            {
                Zaposlenik zaposlenik = DohvatiZaposlenikaRuta(dr);
                listaZaposlenika.Add(zaposlenik);
            }
            dr.Close();
            return(listaZaposlenika);
        }
Example #9
0
        public GlavnaForma(Zaposlenik zaposlenik)
        {
            InitializeComponent();
            ispisRutaUC2.Hide();
            ispisVozilaUC1.Hide();
            ispisZapisnikaUC2.Hide();
            statistikaUC2.Hide();
            emailUC1.Hide();
            ispisZaposlenikaUC1.Hide();
            profilUC1.Hide();
            profilUC2.Hide();
            ispisTvrtkiUC1.Hide();
            helpProvider1.HelpNamespace = path2;
            prijavljeniZaposlenik       = zaposlenik;
            lblUsername.Text            = zaposlenik.KorisnickoIme;
            if (zaposlenik.Tvrtka == null)
            {
                lblTvrka.Text = "";
            }
            else
            {
                lblTvrka.Text = zaposlenik.Tvrtka.Naziv;
            }


            if (prijavljeniZaposlenik.Uloga.Uloga_id == 2)
            {
                btnEmail.Hide();
            }

            if (prijavljeniZaposlenik.Uloga.Uloga_id == 3)
            {
                btnZaposlenici.Hide();
                btnEmail.Hide();
                btnVozila.Hide();
            }
            if (prijavljeniZaposlenik.Uloga.Uloga_id == 4)
            {
                btnZaposlenici.Hide();
                btnEmail.Hide();
                btnVozila.Hide();
                btnRute.Hide();
                btnZapisnici.Hide();
                btnStatistika.Hide();
                pctBoxProfil.Hide();
                ispisTvrtkiUC1.Show();
            }
        }
Example #10
0
        private void btnUcitajPodatke_Click(object sender, EventArgs e)
        {
            Zaposlenik zaposlenik = PrijavaForma.prijavljeniZaposlenik;

            txtOib.Text              = zaposlenik.OIB;
            txtUloga.Text            = zaposlenik.Uloga.Naziv;
            txtIme.Text              = zaposlenik.Ime;
            txtPrezime.Text          = zaposlenik.Prezime;
            txtStrucnaSprema.Text    = zaposlenik.StrucnaSprema;
            txtAdresa.Text           = zaposlenik.Adresa;
            txtBrojTelefona.Text     = zaposlenik.BrojTelefona;
            txtEmail.Text            = zaposlenik.Email;
            txtLozinka.Text          = zaposlenik.Lozinka;
            txtKorisnickoIme.Text    = zaposlenik.KorisnickoIme;
            dtpDatumZaposlenja.Value = zaposlenik.DatumZaposlenja;
            IspisiInfo();
        }
Example #11
0
        public List <Zaposlenik> DohvatiZaposlenikeTvrtke()
        {
            List <Uloga>      listaUloga        = new List <Uloga>();
            TvrtkaRepozitorij tvrtkaRepozitorij = new TvrtkaRepozitorij();
            List <Tvrtka>     listaTvrtki       = tvrtkaRepozitorij.DohvatiTvrtke();

            listaUloga = DohvatiUlogeZaposlenika();
            List <Zaposlenik> listaZaposlenika = new List <Zaposlenik>();
            string            sqlUpit          = $"SELECT * FROM zaposlenik WHERE tvrtka_id={PrijavaForma.prijavljeniZaposlenik.Tvrtka.Tvrtka_id}";
            SqlDataReader     dr = Database.Instance.DohvatiDataReader(sqlUpit);

            while (dr.Read())
            {
                Zaposlenik zaposlenik = DohvatiZaposlenika(dr, listaUloga, listaTvrtki);
                listaZaposlenika.Add(zaposlenik);
            }
            dr.Close();
            return(listaZaposlenika);
        }
        // metoda koja vraća zaposlenika u kojeg su pohranjeni svi podaci kontroli IspisVozilaUC koja na prisitak tipke Spremi zatvara formu
        // i pomoću klase ZaposlenikRepozitorij dodaje novog zaposlenika u bazu
        public Zaposlenik VratiZaposlenika()
        {
            Uloga      uloga      = cmbUloga.SelectedItem as Uloga;
            Zaposlenik zaposlenik = new Zaposlenik();

            zaposlenik.OIB             = txtOib.Text;
            zaposlenik.Uloga           = uloga;
            zaposlenik.Ime             = txtIme.Text;
            zaposlenik.Prezime         = txtPrezime.Text;
            zaposlenik.StrucnaSprema   = txtStrucnaSprema.Text;
            zaposlenik.DatumZaposlenja = dtpDatumZaposlenja.Value;
            zaposlenik.BrojTelefona    = txtBrojTelefona.Text;
            zaposlenik.Adresa          = txtAdresa.Text;
            zaposlenik.Email           = txtEmail.Text;
            zaposlenik.KorisnickoIme   = txtKorisnickoIme.Text;
            zaposlenik.Lozinka         = txtLozinka.Text;
            zaposlenik.Tvrtka          = tvrtka;
            return(zaposlenik);
        }
Example #13
0
        private void btnLogin_Click(object sender, EventArgs e)
        {
            Zaposlenik zaposlenik = new Zaposlenik();

            zaposlenik = Validacija.IzvrsiPrijavu(txtBoxUsername.Text, txtBoxPassword.Text);
            if (zaposlenik != null)
            {
                uloga = zaposlenik.Uloga.Uloga_id;
                oib   = zaposlenik.OIB;
                prijavljeniZaposlenik = zaposlenik;
                this.Hide();
                GlavnaForma glavnaforma = new GlavnaForma(zaposlenik);
                glavnaforma.Show();
            }
            else
            {
                txtBoxPassword.Text = "";
                txtBoxUsername.Text = "";
                lblError.Text       = "Neispravni podaci!";
            }
        }
Example #14
0
        //metoda koja traži zaposlenika s unesenim koricničim imenom u listi zaposlenika i provjerava točnost lozinke
        public static Zaposlenik ValidirajPodatke(string korisnickoIme, string lozinka, List <Zaposlenik> listaZaposlenika)
        {
            Zaposlenik validiraniZaposlenik = null;

            validiraniZaposlenik = listaZaposlenika.Find(item => item.KorisnickoIme == korisnickoIme);
            if (validiraniZaposlenik != null)
            {
                if (validiraniZaposlenik.Lozinka == lozinka)
                {
                    return(validiraniZaposlenik);
                }
                else
                {
                    return(null);
                }
            }
            else
            {
                return(null);
            }
        }
Example #15
0
        public Zaposlenik DohvatiZaposlenikaRuta(SqlDataReader dr)
        {
            Uloga      uloga      = null;
            Zaposlenik zaposlenik = null;

            if (dr != null)
            {
                uloga                      = new Uloga();
                zaposlenik                 = new Zaposlenik();
                zaposlenik.OIB             = dr["oib"].ToString();
                zaposlenik.Ime             = dr["ime"].ToString();
                zaposlenik.Prezime         = dr["prezime"].ToString();
                zaposlenik.StrucnaSprema   = dr["stručna_sprema"].ToString();
                zaposlenik.DatumZaposlenja = DateTime.Parse(dr["datum_zaposlenja"].ToString());
                zaposlenik.BrojTelefona    = dr["broj_telefona"].ToString();
                zaposlenik.Adresa          = dr["adresa"].ToString();
                zaposlenik.Email           = dr["email"].ToString();
                zaposlenik.Lozinka         = dr["lozinka"].ToString();
                zaposlenik.KorisnickoIme   = dr["korisničko_ime"].ToString();
            }
            return(zaposlenik);
        }
 //Dohvaća sve rute za pojedinog zaposlenika
 public List <Ruta> DohvatiRute(Zaposlenik zaposlenik)
 {
     return(null);
 }
Example #17
0
 public PromjenaKorisnickogImenaForma(Zaposlenik prijavljeniZaposlenik)
 {
     InitializeComponent();
     zaposlenik = prijavljeniZaposlenik;
 }
Example #18
0
 public PromjenaLozinkeForma(Zaposlenik prijavljeniZaposlenik)
 {
     InitializeComponent();
     zaposlenik = prijavljeniZaposlenik;
 }