示例#1
0
 /// <summary>
 /// Konstruktor koji se poziva kada se odabrani korisnik mijenja.
 /// </summary>
 /// <param name="korisnik">Korisnik koji se mijenja</param>
 /// <param name="id">ID trenutno prijavljenog korisnika</param>
 public frmDodajKorisnika(korisnik korisnik, int id)
 {
     InitializeComponent();
     redakZaIzmjenu      = korisnik;
     prijavljeniKorisnik = id;
     this.Text           = "Izmjena korisnika";
 }
示例#2
0
        /// <summary>
        /// Briše korisnika ako nema zapisa u dnevniku, a u suprotnom briše i zapise ukoliko je korisnik to potvrdio.
        /// </summary>
        /// <param name="korisnikBindingSource">Naziv vezanog izvora podataka</param>
        static public void IzbrisiKorisnika(BindingSource korisnikBindingSource)
        {
            korisnik korisnik = korisnikBindingSource.Current as korisnik;

            if (Izvjestaji.ProvjeriIzvjestaj(korisnik.id_korisnik))
            {
                if (MessageBox.Show("Za ovog korisnika postoji izvještaj. Želite li obrisati i izvještaj?", "Upozorenje!", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
                {
                    Izvjestaji.IzbrisiIzvjestaj(korisnik.id_korisnik);
                    using (var db = new EntitiesSettings())
                    {
                        db.korisnik.Attach(korisnik);
                        db.korisnik.Remove(korisnik);
                        db.SaveChanges();
                    }
                    MessageBox.Show("Uspješno ste izbrisali korisnika i njegov izvještaj.", "Uspjeh", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    PrikaziKorisnike(korisnikBindingSource);
                }
            }
            else
            {
                if (MessageBox.Show("Jeste li sigurni da želite obrisati ovog korisnika?", "Upozorenje!", MessageBoxButtons.YesNo, MessageBoxIcon.Question) == System.Windows.Forms.DialogResult.Yes)
                {
                    using (var db = new EntitiesSettings())
                    {
                        db.korisnik.Attach(korisnik);
                        db.korisnik.Remove(korisnik);
                        db.SaveChanges();
                    }
                    MessageBox.Show("Uspješno ste izbrisali korisnika.", "Uspjeh", MessageBoxButtons.OK, MessageBoxIcon.Information);
                    PrikaziKorisnike(korisnikBindingSource);
                }
            }
        }
示例#3
0
        /// <summary>
        /// Na temelju LINQ upita pronalazi i proslijeđuje podatke izvještaju za odabranog korisnika.
        /// </summary>
        /// <param name="odabraniKorisnik">Korisnik odabran za ispis izvješća</param>
        /// <param name="rtvDnevnik">Pregledavač izvještaja na formi</param>
        static public void PrikaziIzvjestaj(korisnik odabraniKorisnik, ReportViewer rtvDnevnik)
        {
            korisnik korisnik = odabraniKorisnik;

            using (var db = new EntitiesSettings())
            {
                var upit = (from p in db.promjena
                            join k in db.korisnik on p.id_korisnik equals k.id_korisnik
                            join l in db.plan on p.id_plan equals l.id_plan
                            where p.id_korisnik == korisnik.id_korisnik
                            select new
                {
                    Korisnik = k.korisnicko_ime,
                    Plan = l.naziv,
                    Datum = p.datum,
                    Radnja = p.radnja,
                    Administrator = k.administrator
                }).ToList();

                rtvDnevnik.LocalReport.DataSources.Clear();
                ReportDataSource izvorPodataka = new ReportDataSource("dsIzvjestaj", upit);
                rtvDnevnik.LocalReport.DataSources.Add(izvorPodataka);
                rtvDnevnik.LocalReport.ReportEmbeddedResource = "oplan.rptDnevnik.rdlc";
                rtvDnevnik.RefreshReport();
            }
        }
示例#4
0
        private void btnIzvjestaj_Click(object sender, EventArgs e)
        {
            korisnik odabraniKorisnik = korisnikBindingSource.Current as korisnik;

            if (Izvjestaji.ProvjeriIzvjestaj(odabraniKorisnik.id_korisnik))
            {
                frmDnevnik formaDnevnik = new frmDnevnik(odabraniKorisnik);
                formaDnevnik.ShowDialog();
            }
            else
            {
                MessageBox.Show("Ovaj korisnik nema unosa u dnevniku rada.", "Izvještaj", MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }
示例#5
0
        /// <summary>
        /// Određuje naslov forme koja prikazuje izvještaj za određenog korisnika.
        /// </summary>
        /// <param name="korisnik">Odabrani korisnik</param>
        /// <returns>Tekst koji predstavlja naslov forme.</returns>
        public string IspisiNaslov(korisnik korisnik)
        {
            string naslovForme = "Dnevnik rada: ";

            if (korisnik.administrator == "Da")
            {
                naslovForme += "Administrator ";
            }
            else
            {
                naslovForme += "Korisnik ";
            }
            return(naslovForme + korisnik.korisnicko_ime);
        }
示例#6
0
 /// <summary>
 /// Provjerava postoji li korisničko ime u bazi podataka.
 /// </summary>
 /// <param name="korisnickoIme">Korisničko ime u tekstualnom obliku.</param>
 ///<returns>True ako korisničko ime postoji, false ako ne postoji.</returns>
 static public bool ProvjeriKorisnickoIme(string korisnickoIme)
 {
     using (var db = new EntitiesSettings())
     {
         korisnik = (from k in db.korisnik
                     where k.korisnicko_ime == korisnickoIme
                     select k).FirstOrDefault <korisnik>();
         if (korisnik == null)
         {
             return(false);
         }
         else
         {
             return(true);
         }
     }
 }
示例#7
0
        private void btnSpremi_Click(object sender, EventArgs e)
        {
            string administrator = "";

            if (rdbDa.Checked == true)
            {
                administrator = "Da";
            }
            else
            {
                administrator = "Ne";
            }

            if (string.IsNullOrEmpty(txtKorime.Text) && string.IsNullOrEmpty(txtLozinka.Text))
            {
                MessageBox.Show("Polja su prazna!", "Pogreška", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
            else
            {
                string poruka = ProvjeraUnosa.ProvjeriOblik(txtKorime.Text, txtLozinka.Text);
                if (poruka != null)
                {
                    MessageBox.Show(poruka, "Pogreška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                else
                {
                    if (redakZaIzmjenu == null)
                    {
                        if (!ProvjeraKorisnika.ProvjeriKorisnickoIme(txtKorime.Text))
                        {
                            using (var db = new EntitiesSettings())
                            {
                                korisnik korisnik = new korisnik
                                {
                                    korisnicko_ime = txtKorime.Text,
                                    lozinka        = txtLozinka.Text,
                                    administrator  = administrator
                                };
                                db.korisnik.Add(korisnik);
                                db.SaveChanges();
                            }
                            MessageBox.Show("Uspješno ste dodali korisnika.", "Uspjeh", MessageBoxButtons.OK, MessageBoxIcon.Information);
                            this.Close();
                        }
                        else
                        {
                            MessageBox.Show("Korisničko ime već postoji!", "Pogreška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                    }
                    else
                    {
                        if (ProvjeraKorisnika.ProvjeriKorisnickoIme(txtKorime.Text) && redakZaIzmjenu.korisnicko_ime != txtKorime.Text)
                        {
                            MessageBox.Show("Korisničko ime već postoji!", "Pogreška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                        }
                        else
                        {
                            using (var db = new EntitiesSettings())
                            {
                                db.korisnik.Attach(redakZaIzmjenu);

                                redakZaIzmjenu.korisnicko_ime = txtKorime.Text;
                                redakZaIzmjenu.lozinka        = txtLozinka.Text;
                                redakZaIzmjenu.administrator  = administrator;

                                db.SaveChanges();
                            }
                            MessageBox.Show("Uspješno ste izmijenili korisnika.", "Uspjeh", MessageBoxButtons.OK, MessageBoxIcon.Information);
                        }
                    }
                }
            }
        }
示例#8
0
 /// <summary>
 /// Konstruktor u kojem se proslijeđuje korisnik odabran za ispis dnevnika rada.
 /// </summary>
 /// <param name="trenutniKorisnik">Korisnik koji je odabran za ispis</param>
 public frmDnevnik(korisnik trenutniKorisnik)
 {
     InitializeComponent();
     odabraniKorisnik = trenutniKorisnik;
     this.Text        = IspisiNaslov(odabraniKorisnik);
 }