Пример #1
0
        private void PonistiKreiranuNarudzbu()
        {
            try
            {
                using (ApotekaDb context = new ApotekaDb())
                {
                    var listaStavkiNarudzbe = (from sn in context.stavkanarudzbes
                                               where sn.idNarudzbe == kreiranaNarudzba.idNarudzbe
                                               select sn).ToList();
                    foreach (stavkanarudzbe s in listaStavkiNarudzbe)
                    {
                        context.stavkanarudzbes.Remove(s);
                        context.SaveChanges();
                    }
                    narudzba nar = (from n in context.narudzbas
                                    where n.idNarudzbe == kreiranaNarudzba.idNarudzbe
                                    select n).FirstOrDefault();
                    context.narudzbas.Remove(nar);
                    context.SaveChanges();

                    OmoguciPolja(true);
                    nudKolicinaNaStavciNarudzbe.Value = 1;
                    dgvNarudzba.Rows.Clear();
                    dgvLijekovi.Rows.Clear();
                    tbUkupanIznos.Text = "0.00";
                }
            }
            catch (Exception)
            {
                string prk = "Došlo je do greške.";
                MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #2
0
        private void PonistiKreiranRacun()
        {
            try
            {
                using (ApotekaDb context = new ApotekaDb())
                {
                    var listaStavkiRacuna = (from sr in context.stavkaracunas
                                             where sr.idRacuna == kreiranRacun.idRacuna
                                             select sr).ToList();
                    foreach (stavkaracuna s in listaStavkiRacuna)
                    {
                        lijek ljk = (from lij in context.lijeks
                                     where lij.idLijeka == s.idLijeka
                                     select lij).FirstOrDefault();
                        ljk.kolicinaNaStanju = ljk.kolicinaNaStanju + s.kolicina;
                        context.SaveChanges();
                        int?idReceptaSaStavke = s.idRecepta;
                        context.stavkaracunas.Remove(s);
                        context.SaveChanges();
                        if (idReceptaSaStavke != null)
                        {
                            recept rcpt = (from rec in context.recepts
                                           where rec.idRecepta == idReceptaSaStavke
                                           select rec).FirstOrDefault();
                            context.recepts.Remove(rcpt);
                            context.SaveChanges();
                        }
                    }
                    racun rac = (from r in context.racuns
                                 where r.idRacuna == kreiranRacun.idRacuna
                                 select r).FirstOrDefault();
                    context.racuns.Remove(rac);
                    context.SaveChanges();

                    OmoguciPolja(true, false);
                    OcistiPoljaStavkeRacuna();
                    dgvRacun.Rows.Clear();
                    dgvLijekovi.Rows.Clear();
                    tsslStatusnaLabela.Text = "Račun je poništen.";
                    tbUkupanIznos.Text      = "0.00";
                }
            }
            catch (Exception)
            {
                string prk = "Došlo je do greške.";
                MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #3
0
        private void tsmiDodatiMjesto_Click(object sender, EventArgs e)
        {
            MjestoForma novoMjesto = new MjestoForma();

            novoMjesto.Text = "Unos mjesta";
            if (DialogResult.OK == novoMjesto.ShowDialog())
            {
                try
                {
                    using (ApotekaDb context = new ApotekaDb())
                    {
                        var m = new mjesto()
                        {
                            brojPoste = novoMjesto.BrojPoste,
                            naziv     = novoMjesto.Naziv,
                            drzava    = novoMjesto.Drzava
                        };
                        context.mjestoes.Add(m);
                        context.SaveChanges();
                        cbMjesto.Items.Clear();
                        PopuniComboBoxMjesta();
                    }
                    tsslStatusnaLabela.Text = "Uspješno unijeto novo mjesto.";
                }
                catch (Exception)
                {
                    string prk = "Došlo je do greške.";
                    MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Пример #4
0
        private void tsmiPromjenitiLozinku_Click(object sender, EventArgs e)
        {
            PromjenaLozinkeForma plForma = new PromjenaLozinkeForma(prijavljenZaposleni);

            if (DialogResult.OK == plForma.ShowDialog())
            {
                try
                {
                    using (ApotekaDb context = new ApotekaDb())
                    {
                        prijavljenZaposleni = (from z in context.zaposlenis
                                               where z.idZaposlenog == prijavljenZaposleni.idZaposlenog
                                               select z).FirstOrDefault();
                        prijavljenZaposleni.lozinka = Enkripcija.enkriptujLozinku(plForma.Lozinka);
                        context.SaveChanges();
                        tsslStatusnaLabela.Text = "Lozinka uspješno promjenjena.";
                    }
                }
                catch (Exception)
                {
                    string prk = "Došlo je do greške.";
                    MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Пример #5
0
 private void btnKreiratiRacun_Click(object sender, EventArgs e)
 {
     OmoguciPolja(false, true);
     PopuniTabeluLijekova("");
     dgvLijekovi.ClearSelection();
     tsmiLijekDetaljno.Enabled = false;
     try
     {
         using (ApotekaDb context = new ApotekaDb())
         {
             kreiranRacun = new racun();
             kreiranRacun.datumKreiranja = DateTime.Today;
             kreiranRacun.ukupanIznos    = 0;
             kreiranRacun.idZaposlenog   = prijavljenZaposleni.idZaposlenog;
             context.racuns.Add(kreiranRacun);
             context.SaveChanges();
         }
         tsslStatusnaLabela.Text = "Račun je otvoren.";
     }
     catch (Exception)
     {
         string prk = "Došlo je do greške.";
         MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }
Пример #6
0
 private void tsmiObrisatiZaposlenog_Click(object sender, EventArgs e)
 {
     if (DialogResult.Yes == MessageBox.Show("Da li želite obrisati zaposlenog " + odabraniZaposleni.ime + " " + odabraniZaposleni.prezime + "?", "Upozorenje", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button2))
     {
         try
         {
             using (ApotekaDb context = new ApotekaDb())
             {
                 odabraniZaposleni = (from z in context.zaposlenis
                                      where z.idZaposlenog == odabraniZaposleni.idZaposlenog
                                      select z).FirstOrDefault();
                 odabraniZaposleni.obrisano = true;
                 context.SaveChanges();
                 odabraniZaposleni       = null;
                 tsslStatusnaLabela.Text = "Nalog zaposlenog je uspješno obrisan.";
                 btnOcistiPoljaPretrage.PerformClick();
             }
         }
         catch (Exception)
         {
             string prk = "Došlo je do greške.";
             MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
 }
Пример #7
0
 private void tsmiObrisatiMjesto_Click(object sender, EventArgs e)
 {
     odabranoMjesto = (mjesto)dgvMjesta.SelectedRows[0].Tag;
     if (DialogResult.Yes == MessageBox.Show("Da li želite obrisati mjesto " + odabranoMjesto.naziv + "?", "Upozorenje", MessageBoxButtons.YesNo, MessageBoxIcon.Exclamation, MessageBoxDefaultButton.Button2))
     {
         try
         {
             using (ApotekaDb context = new ApotekaDb())
             {
                 string poruka = "";
                 var    zap    = (from z in context.zaposlenis
                                  where z.obrisano == false
                                  select z).ToList();
                 foreach (zaposleni zapos in zap)
                 {
                     if (zapos.idMjesta == odabranoMjesto.idMjesta)
                     {
                         poruka += "Nije moguće obrisati mjesto, jer postoje zaposleni iz tog mjesta.\n";
                         break;
                     }
                 }
                 var dobavljaci = (from d in context.dobavljacs
                                   where d.obrisano == false
                                   select d).ToList();
                 foreach (dobavljac dob in dobavljaci)
                 {
                     if (dob.idMjesta == odabranoMjesto.idMjesta)
                     {
                         poruka += "Nije moguće obrisati mjesto, jer postoje dobavljači iz tog mjesta.";
                         break;
                     }
                 }
                 if (string.IsNullOrEmpty(poruka))
                 {
                     context.mjestoes.Attach(odabranoMjesto);
                     odabranoMjesto.obrisano = true;
                     context.SaveChanges();
                     odabranoMjesto      = null;
                     statusnaLabela.Text = "Mjesto je uspješno obrisano.";
                     var mjesta = (from m in context.mjestoes
                                   where m.obrisano == false
                                   select m).ToList();
                     PopuniTabeluMjesta(mjesta);
                     PostaviRedneBrojeveUTabeli(dgvMjesta);
                     dgvMjesta.ClearSelection();
                 }
                 else
                 {
                     MessageBox.Show(poruka, "Poruka", MessageBoxButtons.OK, MessageBoxIcon.Information);
                 }
             }
         }
         catch (Exception)
         {
             string prk = "Došlo je do greške.";
             MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
 }
Пример #8
0
 private void tsmiObrisatiStavkuNarudzbe_Click(object sender, EventArgs e)
 {
     if (dgvNarudzba.SelectedRows.Count == 1)
     {
         stavkanarudzbe sNarudzbe = (stavkanarudzbe)dgvNarudzba.SelectedRows[0].Tag;
         if (DialogResult.Yes == MessageBox.Show("Da li želite obrisati stavku narudžbe?", "Pitanje", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2))
         {
             try
             {
                 using (ApotekaDb context = new ApotekaDb())
                 {
                     kreiranaNarudzba = (from kNar in context.narudzbas
                                         where kNar.idNarudzbe == kreiranaNarudzba.idNarudzbe
                                         select kNar).FirstOrDefault();
                     kreiranaNarudzba.ukupanIznos = kreiranaNarudzba.ukupanIznos - sNarudzbe.iznos;
                     context.SaveChanges();
                     tbUkupanIznos.Text = kreiranaNarudzba.ukupanIznos.ToString();
                     lijek ljk = (from lij in context.lijeks
                                  where lij.idLijeka == sNarudzbe.idLijeka
                                  select lij).FirstOrDefault();
                     stavkanarudzbe stavkaNarudzbe = (from sn in context.stavkanarudzbes
                                                      where sn.idLijeka == sNarudzbe.idLijeka && sn.idNarudzbe == sNarudzbe.idNarudzbe
                                                      select sn).FirstOrDefault();
                     context.stavkanarudzbes.Remove(stavkaNarudzbe);
                     context.SaveChanges();
                     dgvNarudzba.Rows.Remove(dgvNarudzba.SelectedRows[0]);
                     if (dgvNarudzba.Rows.Count > 0)
                     {
                         PostaviRedneBrojeveUTabeli(dgvNarudzba);
                     }
                     else
                     {
                         tsmiIzmjenitiStavkuNarudzbe.Enabled = false;
                         tsmiObrisatiStavkuNarudzbe.Enabled  = false;
                     }
                 }
             }
             catch (Exception)
             {
                 string prk = "Došlo je do greške.";
                 MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
     }
 }
Пример #9
0
        private void DobavljacForma_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (unosSacuvan)
            {
                string poruka = "";
                if (string.IsNullOrEmpty(tbNaziv.Text.Trim()))
                {
                    poruka += "Naziv nije unijet.\n";
                }
                if (string.IsNullOrEmpty(tbAdresa.Text.Trim()))
                {
                    poruka += "Adresa nije unijeta.\n";
                }
                if (cbMjesto.SelectedItem == null)
                {
                    poruka += "Mjesto nije izabrato.\n";
                }

                if (string.IsNullOrEmpty(poruka))
                {
                    try
                    {
                        using (ApotekaDb context = new ApotekaDb())
                        {
                            var dob = new dobavljac()
                            {
                                naziv      = tbNaziv.Text.Trim(),
                                adresa     = tbAdresa.Text.Trim(),
                                idMjesta   = ((mjesto)cbMjesto.SelectedItem).idMjesta,
                                telefon    = tbTelefon.Text.Trim(),
                                email      = tbEmail.Text.Trim(),
                                webSajt    = tbWebSajt.Text.Trim(),
                                regKodALMS = cbRegistrovanKodALMS.Checked
                            };
                            context.dobavljacs.Add(dob);
                            context.SaveChanges();
                            statusnaLabela.Text = "Uspješno unijet novi dobavljac.";
                            var dobavljaci = (from d in context.dobavljacs
                                              where d.obrisano == false
                                              select d).ToList();
                            PopuniTabeluDobavljaca(dobavljaci);
                        }
                    }
                    catch (Exception)
                    {
                        string prk = "Došlo je do greške.";
                        MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    e.Cancel = true;
                    MessageBox.Show(poruka, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                unosSacuvan = false;
            }
        }
Пример #10
0
        private void tsmiAktiviratiDeaktiviratiZaposlenog_Click(object sender, EventArgs e)
        {
            string poruka = "";

            if (odabraniZaposleni.aktivan)
            {
                poruka = "Da li želite deaktivirati zaposlenog " + odabraniZaposleni.ime + " " + odabraniZaposleni.prezime + "?";
            }
            else
            {
                poruka = "Da li želite aktivirati zaposlenog " + odabraniZaposleni.ime + " " + odabraniZaposleni.prezime + "?";
            }

            if (DialogResult.Yes == MessageBox.Show(poruka, "Pitanje", MessageBoxButtons.YesNo, MessageBoxIcon.Question))
            {
                try
                {
                    using (ApotekaDb context = new ApotekaDb())
                    {
                        odabraniZaposleni = (from z in context.zaposlenis
                                             where z.idZaposlenog == odabraniZaposleni.idZaposlenog
                                             select z).FirstOrDefault();
                        if (odabraniZaposleni.aktivan)
                        {
                            odabraniZaposleni.aktivan = false;
                        }
                        else
                        {
                            odabraniZaposleni.aktivan = true;
                        }
                        context.SaveChanges();
                        idOdabranogZaposlenog = odabraniZaposleni.idZaposlenog;
                        PopuniTabeluPretrazivanjem(false, false);
                        if (!odabraniZaposleni.aktivan)
                        {
                            tsslStatusnaLabela.Text = "Nalog zaposlenog " + odabraniZaposleni.ime + " " + odabraniZaposleni.prezime + " je deaktiviran.";
                        }
                        else
                        {
                            tsslStatusnaLabela.Text = "Nalog zaposlenog " + odabraniZaposleni.ime + " " + odabraniZaposleni.prezime + " je ponovo aktivan.";
                        }
                    }
                }
                catch (Exception)
                {
                    string prk = "Došlo je do greške.";
                    MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Пример #11
0
        private void tsmiIzmjenitiMjesto_Click(object sender, EventArgs e)
        {
            odabranoMjesto = (mjesto)dgvMjesta.SelectedRows[0].Tag;
            MjestoForma novoMjesto = new MjestoForma()
            {
                IdMjesta  = odabranoMjesto.idMjesta,
                Naziv     = odabranoMjesto.naziv,
                Drzava    = odabranoMjesto.drzava,
                BrojPoste = odabranoMjesto.brojPoste
            };

            novoMjesto.Text = "Izmjena mjesta";
            if (DialogResult.OK == novoMjesto.ShowDialog())
            {
                try
                {
                    using (ApotekaDb context = new ApotekaDb())
                    {
                        context.mjestoes.Attach(odabranoMjesto);
                        odabranoMjesto.brojPoste = novoMjesto.BrojPoste;
                        odabranoMjesto.naziv     = novoMjesto.Naziv;
                        odabranoMjesto.drzava    = novoMjesto.Drzava;
                        context.SaveChanges();
                        var mjesta = (from mj in context.mjestoes
                                      where mj.obrisano == false
                                      select mj).ToList();
                        dgvMjesta.Rows.Clear();
                        PopuniTabeluMjesta(mjesta);
                        PostaviRedneBrojeveUTabeli(dgvMjesta);
                    }
                    statusnaLabela.Text = "Mjesto je uspješno izmjenjeno.";
                }
                catch (Exception)
                {
                    string prk = "Došlo je do greške.";
                    MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
            }
        }
Пример #12
0
 private void btnKreiratiNarudzbu_Click(object sender, EventArgs e)
 {
     if (cbDobavljac.SelectedItem != null)
     {
         OmoguciPolja(false);
         PopuniTabeluLijekovaPretrazivanjem(false);
         dgvLijekovi.ClearSelection();
         dgvLijekovi.Select();
         tsmiLijekDetaljno.Enabled = false;
         try
         {
             using (ApotekaDb context = new ApotekaDb())
             {
                 kreiranaNarudzba = new narudzba();
                 DateTime baseDate = new DateTime(1970, 1, 1);
                 TimeSpan diff     = DateTime.Now - baseDate;
                 kreiranaNarudzba.datumKreiranja = DateTime.Today;
                 string miliSekundeKaoBrojNarudzbe = diff.TotalMilliseconds + "";
                 miliSekundeKaoBrojNarudzbe    = miliSekundeKaoBrojNarudzbe.Replace('.', '/');
                 kreiranaNarudzba.brojNarudzbe = miliSekundeKaoBrojNarudzbe;
                 kreiranaNarudzba.ukupanIznos  = 0;
                 kreiranaNarudzba.idZaposlenog = prijavljenZaposleni.idZaposlenog;
                 kreiranaNarudzba.idDobavljaca = ((dobavljac)cbDobavljac.SelectedItem).idDobavljaca;
                 context.narudzbas.Add(kreiranaNarudzba);
                 context.SaveChanges();
             }
         }
         catch (Exception)
         {
             string prk = "Došlo je do greške.";
             MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
     else
     {
         MessageBox.Show("Dobavljač nije izabran.", "Poruka", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
 }
Пример #13
0
 private void btnZakljucitiNarudzbu_Click(object sender, EventArgs e)
 {
     if (dgvNarudzba.Rows.Count == 0)
     {
         MessageBox.Show("Narudžba se ne može zaključiti jer ne sadrži niti jednu stavku.", "Poruka", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
     else if (cbDobavljac.SelectedItem == null)
     {
         MessageBox.Show("Dobavljač nije izabran.", "Poruka", MessageBoxButtons.OK, MessageBoxIcon.Information);
     }
     else
     {
         try
         {
             using (ApotekaDb context = new ApotekaDb())
             {
                 kreiranaNarudzba = (from n in context.narudzbas
                                     where n.idNarudzbe == kreiranaNarudzba.idNarudzbe
                                     select n).FirstOrDefault();
                 kreiranaNarudzba.idDobavljaca = ((dobavljac)cbDobavljac.SelectedItem).idDobavljaca;
                 context.SaveChanges();
                 OmoguciPolja(true);
                 brojacNarudzbi++;
                 nudKolicinaNaStavciNarudzbe.Value = 1;
                 dgvNarudzba.Rows.Clear();
                 dgvLijekovi.Rows.Clear();
                 tbUkupanIznos.Text = "0.00";
                 PopuniListuNarudzbi();
             }
         }
         catch (Exception)
         {
             string prk = "Došlo je do greške.";
             MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
         }
     }
 }
Пример #14
0
        private void btnDodatiStavkuNaRacun_Click(object sender, EventArgs e)
        {
            string poruka           = "";
            int    kolicinaNaStavci = 1;
            bool   korektnaKolicina = false;

            if (gbPodaciSaRecepta.Enabled)
            {
                if (string.IsNullOrEmpty(mtbJmbg.Text.Trim()))
                {
                    poruka += "JMBG nije unijet.\n";
                }
                if (mtbJmbg.Text.Length < 13 || mtbJmbg.Text.Contains(" "))
                {
                    poruka += "JMBG mora sadržavati 13 cifara.\n";
                }
                if (string.IsNullOrEmpty(tbPacijent.Text.Trim()))
                {
                    poruka += "Ime i prezime pacijenta nije unijeto.\n";
                }
                if (string.IsNullOrEmpty(tbAdresa.Text.Trim()))
                {
                    poruka += "Adresa pacijenta nije unijeto.\n";
                }
                if (string.IsNullOrEmpty(tbIzdatOdUstanove.Text.Trim()))
                {
                    poruka += "Ime ustanove koja je izdala recept nije unijeto.\n";
                }
                if (string.IsNullOrEmpty(tbIzdatOdDoktora.Text.Trim()))
                {
                    poruka += "Ime doktor koji je izdao recept nije unijeto.\n";
                }
            }
            if ((nudKolicinaNaStavciRacuna.Value.ToString()).Contains(".") || (nudKolicinaNaStavciRacuna.Value.ToString()).Contains(","))
            {
                poruka += "Količina na stavci mora biti cjelobrojni podatak veći od 1.";
                nudKolicinaNaStavciRacuna.Value = 1;
            }

            if (string.IsNullOrEmpty(poruka))
            {
                korektnaKolicina = int.TryParse(nudKolicinaNaStavciRacuna.Value.ToString(), out kolicinaNaStavci);
                if (!korektnaKolicina)
                {
                    poruka += "Količina na stavci mora biti cjelobrojni podatak veći od 1.";
                }
                if (kolicinaNaStavci < 1)
                {
                    poruka += "Količina na stavci mora biti cjelobrojni podatak veći od 1.";
                }
            }
            if (kolicinaNaStavci > odabraniLijek.kolicinaNaStanju)
            {
                poruka += "Unesena količina lijeka nije na stanju.";
            }
            try
            {
                using (ApotekaDb context = new ApotekaDb())
                {
                    if (string.IsNullOrEmpty(poruka))
                    {
                        if (!izmjenaStavkeRacuna)
                        {
                            recept       rec     = new recept();
                            stavkaracuna sRacuna = new stavkaracuna();
                            sRacuna.kolicina = kolicinaNaStavci;
                            sRacuna.iznos    = odabraniLijek.prodajnaCijena * kolicinaNaStavci;
                            sRacuna.idLijeka = odabraniLijek.idLijeka;
                            sRacuna.idRacuna = kreiranRacun.idRacuna;
                            if (gbPodaciSaRecepta.Enabled)
                            {
                                rec.jmbg            = mtbJmbg.Text;
                                rec.pacijent        = tbPacijent.Text;
                                rec.adresa          = tbAdresa.Text;
                                rec.izdatOdUstanove = tbIzdatOdUstanove.Text;
                                rec.izdatOdDoktora  = tbIzdatOdDoktora.Text;
                                rec.datumIzdavanja  = dtpDatumIzdavanja.Value;
                                rec.nazivLijeka     = odabraniLijek.naziv;
                                rec.kolicina        = kolicinaNaStavci;
                                rec.napomena        = tbNapomena.Text.Trim();
                                context.recepts.Add(rec);
                                context.SaveChanges();
                                sRacuna.idRecepta = rec.idRecepta;
                            }
                            context.stavkaracunas.Add(sRacuna);
                            context.SaveChanges();
                            odabraniLijek = (from lij in context.lijeks
                                             where lij.idLijeka == odabraniLijek.idLijeka
                                             select lij).FirstOrDefault();
                            odabraniLijek.kolicinaNaStanju = odabraniLijek.kolicinaNaStanju - kolicinaNaStavci;
                            context.SaveChanges();
                            kreiranRacun = (from kRac in context.racuns
                                            where kRac.idRacuna == kreiranRacun.idRacuna
                                            select kRac).FirstOrDefault();
                            kreiranRacun.ukupanIznos = kreiranRacun.ukupanIznos + sRacuna.iznos;
                            tbUkupanIznos.Text       = kreiranRacun.ukupanIznos.ToString();
                            context.SaveChanges();
                            DodajStavkuUTabeluRacun(sRacuna);
                            PopuniTabeluLijekova("");
                            OmoguciPolja(false, true);
                            OcistiPoljaStavkeRacuna();
                            tsmiIzmjenitiStavkuRacuna.Enabled = true;
                            dodavanjeStavkeRacuna             = false;
                            tsslStatusnaLabela.Text           = "Stavka računa je dodata.";
                        }
                        else
                        {
                            stavkaracuna sracuna = (stavkaracuna)dgvRacun.SelectedRows[0].Tag;
                            if (sracuna.idRecepta != null)
                            {
                                gbPodaciSaRecepta.Enabled = true;
                                recept rcpt = (from rec in context.recepts
                                               where rec.idRecepta == sracuna.idRecepta
                                               select rec).FirstOrDefault();
                                rcpt.jmbg            = mtbJmbg.Text;
                                rcpt.pacijent        = tbPacijent.Text;
                                rcpt.adresa          = tbAdresa.Text;
                                rcpt.izdatOdUstanove = tbIzdatOdUstanove.Text;
                                rcpt.izdatOdDoktora  = tbIzdatOdDoktora.Text;
                                rcpt.datumIzdavanja  = dtpDatumIzdavanja.Value;
                                rcpt.kolicina        = kolicinaNaStavci;
                                rcpt.napomena        = tbNapomena.Text;
                                context.SaveChanges();
                            }
                            lijek ljk = (from lij in context.lijeks
                                         where lij.idLijeka == sracuna.idLijeka
                                         select lij).FirstOrDefault();
                            kreiranRacun = (from kRac in context.racuns
                                            where kRac.idRacuna == kreiranRacun.idRacuna
                                            select kRac).FirstOrDefault();
                            kreiranRacun.ukupanIznos = kreiranRacun.ukupanIznos - (ljk.prodajnaCijena * sracuna.kolicina);
                            kreiranRacun.ukupanIznos = kreiranRacun.ukupanIznos + (ljk.prodajnaCijena * kolicinaNaStavci);
                            tbUkupanIznos.Text       = kreiranRacun.ukupanIznos.ToString();
                            context.SaveChanges();

                            ljk.kolicinaNaStanju = ljk.kolicinaNaStanju + (sracuna.kolicina - kolicinaNaStavci);
                            context.SaveChanges();
                            stavkaracuna stavkaRacuna = (from sr in context.stavkaracunas
                                                         where sr.idLijeka == sracuna.idLijeka && sr.idRacuna == sracuna.idRacuna
                                                         select sr).FirstOrDefault();
                            stavkaRacuna.kolicina = kolicinaNaStavci;
                            stavkaRacuna.iznos    = ljk.prodajnaCijena * kolicinaNaStavci;
                            context.SaveChanges();
                            DataGridViewRow row = dgvRacun.SelectedRows[0];
                            row.Tag = stavkaRacuna;
                            row.SetValues(ljk.naziv, ljk.prodajnaCijena, stavkaRacuna.kolicina, stavkaRacuna.iznos);
                            OmoguciPolja(false, true);
                            PopuniTabeluLijekova("");
                            OcistiPoljaStavkeRacuna();
                            tsmiIzmjenitiStavkuRacuna.Enabled = true;
                            izmjenaStavkeRacuna         = false;
                            btnDodatiStavkuNaRacun.Text = "Dodati";
                            tsslStatusnaLabela.Text     = "Stavka računa je izmjenjena.";
                        }
                    }
                    else
                    {
                        MessageBox.Show(poruka, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }
            catch (Exception)
            {
                string prk = "Došlo je do greške.";
                MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #15
0
        private void btnSacuvati_Click(object sender, EventArgs e)
        {
            string poruka = "";

            if (string.IsNullOrEmpty(mtbJmbg.Text.Trim()))
            {
                poruka += "JMBG nije unijet.\n";
            }
            if (mtbJmbg.Text.Length < 13 || mtbJmbg.Text.Contains(" "))
            {
                poruka += "JMBG mora sadržavati 13 cifara.\n";
            }
            if (string.IsNullOrEmpty(tbIme.Text.Trim()))
            {
                poruka += "Ime nije unijeto.\n";
            }
            if (string.IsNullOrEmpty(tbPrezime.Text.Trim()))
            {
                poruka += "Prezime nije unijeto.\n";
            }
            if (string.IsNullOrEmpty(tbAdresa.Text.Trim()))
            {
                poruka += "Adresa nije unijeta.\n";
            }
            if (string.IsNullOrEmpty(tbStrucnaSprema.Text.Trim()))
            {
                poruka += "Stručna sprema nije unijeta.\n";
            }

            try
            {
                using (ApotekaDb context = new ApotekaDb())
                {
                    var zap = (from z in context.zaposlenis
                               select z).ToList();
                    foreach (zaposleni zp in zap)
                    {
                        if (zp.jmbg.Equals(mtbJmbg.Text) && zp.idZaposlenog != odabraniZaposleni.idZaposlenog)
                        {
                            poruka += "Postoji zaposleni sa unesenim JMBG.\n";
                            break;
                        }
                    }

                    if (string.IsNullOrEmpty(poruka))
                    {
                        odabraniZaposleni = (from z in context.zaposlenis
                                             where z.idZaposlenog == odabraniZaposleni.idZaposlenog
                                             select z).FirstOrDefault();
                        if (cbUloga.Enabled)
                        {
                            if (cbUloga.SelectedItem.Equals("menadzer"))
                            {
                                odabraniZaposleni.uloga = 2;
                            }
                            else
                            {
                                odabraniZaposleni.uloga = 1;
                            }
                        }
                        odabraniZaposleni.jmbg               = mtbJmbg.Text;
                        odabraniZaposleni.ime                = tbIme.Text.Trim();
                        odabraniZaposleni.prezime            = tbPrezime.Text.Trim();
                        odabraniZaposleni.adresa             = tbAdresa.Text.Trim();
                        odabraniZaposleni.idMjesta           = ((mjesto)cbMjesto.SelectedItem).idMjesta;
                        odabraniZaposleni.telefon            = tbTelefon.Text.Trim();
                        odabraniZaposleni.email              = tbEmail.Text.Trim();
                        odabraniZaposleni.strucnaSprema      = tbStrucnaSprema.Text.Trim();
                        odabraniZaposleni.farmaceutskoZvanje = tbFarmaceutskoZvanje.Text.Trim();
                        odabraniZaposleni.opisPosla          = tbOpisPosla.Text.Trim();
                        odabraniZaposleni.sefApoteke         = cbSefApoteke.Checked;
                        context.SaveChanges();
                        idOdabranogZaposlenog = odabraniZaposleni.idZaposlenog;
                        PopuniTabeluPretrazivanjem(false, false);
                        OmoguciPoljaZaUnosZaposlenog(false);
                        dgvZaposleni.Focus();
                        tsmiDodatiZaposlenog.Enabled = true;
                        if (odabraniZaposleni.uloga != 10)
                        {
                            DodajAdminStavkuUComboBox(true);
                        }
                        tsslStatusnaLabela.Text = "Podaci o zaposlenom su izmjenjeni.";
                    }
                    else
                    {
                        MessageBox.Show(poruka, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }
            catch (Exception)
            {
                string prk = "Došlo je do greške.";
                MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #16
0
 private void tsmiObrisatiStavkuRacuna_Click(object sender, EventArgs e)
 {
     if (dgvRacun.SelectedRows.Count == 1)
     {
         stavkaracuna sracuna = (stavkaracuna)dgvRacun.SelectedRows[0].Tag;
         if (DialogResult.Yes == MessageBox.Show("Da li želite obrisati stavku računa?", "Pitanje", MessageBoxButtons.YesNo, MessageBoxIcon.Question, MessageBoxDefaultButton.Button2))
         {
             try
             {
                 using (ApotekaDb context = new ApotekaDb())
                 {
                     kreiranRacun = (from kRac in context.racuns
                                     where kRac.idRacuna == kreiranRacun.idRacuna
                                     select kRac).FirstOrDefault();
                     kreiranRacun.ukupanIznos = kreiranRacun.ukupanIznos - sracuna.iznos;
                     context.SaveChanges();
                     tbUkupanIznos.Text = kreiranRacun.ukupanIznos.ToString();
                     lijek ljk = (from lij in context.lijeks
                                  where lij.idLijeka == sracuna.idLijeka
                                  select lij).FirstOrDefault();
                     ljk.kolicinaNaStanju = ljk.kolicinaNaStanju + sracuna.kolicina;
                     context.SaveChanges();
                     PopuniTabeluLijekova("");
                     stavkaracuna stavkaRacuna = (from sr in context.stavkaracunas
                                                  where sr.idLijeka == sracuna.idLijeka && sr.idRacuna == sracuna.idRacuna
                                                  select sr).FirstOrDefault();
                     bool imaRecept           = stavkaRacuna.idRecepta != null;
                     int? idReceptaZaBrisanje = 0;
                     if (imaRecept)
                     {
                         idReceptaZaBrisanje = stavkaRacuna.idRecepta;
                     }
                     context.stavkaracunas.Remove(stavkaRacuna);
                     context.SaveChanges();
                     if (imaRecept)
                     {
                         recept rcpt = (from rec in context.recepts
                                        where rec.idRecepta == idReceptaZaBrisanje
                                        select rec).FirstOrDefault();
                         if (rcpt != null)
                         {
                             context.recepts.Remove(rcpt);
                             context.SaveChanges();
                         }
                     }
                     dgvRacun.Rows.Remove(dgvRacun.SelectedRows[0]);
                     if (dgvRacun.Rows.Count > 0)
                     {
                         PostaviRedneBrojeveUTabeli(dgvRacun);
                     }
                     else
                     {
                         tsmiIzmjenitiStavkuRacuna.Enabled = false;
                         tsmiObrisatiStavkuRacuna.Enabled  = false;
                     }
                     tsslStatusnaLabela.Text = "Stavka računa je obrisana.";
                 }
             }
             catch (Exception)
             {
                 string prk = "Došlo je do greške.";
                 MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
             }
         }
     }
 }
Пример #17
0
        private void btnDodatiStavkuNarudzbe_Click(object sender, EventArgs e)
        {
            string poruka           = "";
            int    kolicinaNaStavci = 1;
            bool   korektnaKolicina = false;

            if ((nudKolicinaNaStavciNarudzbe.Value.ToString()).Contains(".") || (nudKolicinaNaStavciNarudzbe.Value.ToString()).Contains(","))
            {
                poruka += "Količina na stavci mora biti cjelobrojni podatak veći od 1.";
                nudKolicinaNaStavciNarudzbe.Value = 1;
            }

            if (string.IsNullOrEmpty(poruka))
            {
                korektnaKolicina = int.TryParse(nudKolicinaNaStavciNarudzbe.Value.ToString(), out kolicinaNaStavci);
                if (!korektnaKolicina)
                {
                    poruka += "Količina na stavci mora biti cjelobrojni podatak veći od 1.";
                }
                if (kolicinaNaStavci < 1)
                {
                    poruka += "Količina na stavci mora biti cjelobrojni podatak veći od 1.";
                }
            }
            try
            {
                using (ApotekaDb context = new ApotekaDb())
                {
                    if (string.IsNullOrEmpty(poruka))
                    {
                        if (!izmjenaStavkeNarudzbe)
                        {
                            stavkanarudzbe sNarudzbe = new stavkanarudzbe();
                            sNarudzbe.kolicina   = kolicinaNaStavci;
                            sNarudzbe.iznos      = odabraniLijek.nabavnaCijena * kolicinaNaStavci;
                            sNarudzbe.idLijeka   = odabraniLijek.idLijeka;
                            sNarudzbe.idNarudzbe = kreiranaNarudzba.idNarudzbe;
                            context.stavkanarudzbes.Add(sNarudzbe);
                            context.SaveChanges();
                            kreiranaNarudzba = (from kNar in context.narudzbas
                                                where kNar.idNarudzbe == kreiranaNarudzba.idNarudzbe
                                                select kNar).FirstOrDefault();
                            kreiranaNarudzba.ukupanIznos = kreiranaNarudzba.ukupanIznos + sNarudzbe.iznos;
                            tbUkupanIznos.Text           = kreiranaNarudzba.ukupanIznos.ToString();
                            context.SaveChanges();
                            DodajStavkuUTabeluNarudzba(sNarudzbe);
                            OmoguciPolja(false);
                            nudKolicinaNaStavciNarudzbe.Value   = 1;
                            tsmiIzmjenitiStavkuNarudzbe.Enabled = true;
                            dodavanjeStavkeNarudzbe             = false;
                        }
                        else
                        {
                            stavkanarudzbe sNarudzbe = (stavkanarudzbe)dgvNarudzba.SelectedRows[0].Tag;
                            lijek          ljk       = (from lij in context.lijeks
                                                        where lij.idLijeka == sNarudzbe.idLijeka
                                                        select lij).FirstOrDefault();
                            kreiranaNarudzba = (from kNar in context.narudzbas
                                                where kNar.idNarudzbe == kreiranaNarudzba.idNarudzbe
                                                select kNar).FirstOrDefault();
                            kreiranaNarudzba.ukupanIznos = kreiranaNarudzba.ukupanIznos - (ljk.nabavnaCijena * sNarudzbe.kolicina);
                            kreiranaNarudzba.ukupanIznos = kreiranaNarudzba.ukupanIznos + (ljk.nabavnaCijena * kolicinaNaStavci);
                            tbUkupanIznos.Text           = kreiranaNarudzba.ukupanIznos.ToString();
                            context.SaveChanges();
                            stavkanarudzbe stavkaNarudzbe = (from sNar in context.stavkanarudzbes
                                                             where sNar.idLijeka == sNarudzbe.idLijeka && sNar.idNarudzbe == sNarudzbe.idNarudzbe
                                                             select sNar).FirstOrDefault();
                            stavkaNarudzbe.kolicina = kolicinaNaStavci;
                            stavkaNarudzbe.iznos    = ljk.nabavnaCijena * kolicinaNaStavci;
                            context.SaveChanges();
                            DataGridViewRow row = dgvNarudzba.SelectedRows[0];
                            row.Tag = stavkaNarudzbe;
                            row.SetValues(ljk.naziv, ljk.nabavnaCijena, stavkaNarudzbe.kolicina, stavkaNarudzbe.iznos);
                            OmoguciPolja(false);
                            nudKolicinaNaStavciNarudzbe.Value   = 1;
                            tsmiIzmjenitiStavkuNarudzbe.Enabled = true;
                            izmjenaStavkeNarudzbe        = false;
                            btnDodatiStavkuNarudzbe.Text = "Dodati";
                        }
                    }
                    else
                    {
                        MessageBox.Show(poruka, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }
            catch (Exception)
            {
                string prk = "Došlo je do greške.";
                MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #18
0
        private void btnSacuvati_Click(object sender, EventArgs e)
        {
            string poruka = "";

            if (string.IsNullOrEmpty(tbNaziv.Text.Trim()))
            {
                poruka += "Naziv nije unijet.\n";
            }
            if (string.IsNullOrEmpty(tbAdresa.Text.Trim()))
            {
                poruka += "Ime nije unijeto.\n";
            }
            if (string.IsNullOrEmpty(tbTelefon.Text.Trim()))
            {
                poruka += "Telefon nije unijeto.\n";
            }
            if (string.IsNullOrEmpty(tbStandard.Text.Trim()))
            {
                poruka += "Standard nije unijet.\n";
            }
            if (string.IsNullOrEmpty(tbIzdatOd.Text.Trim()))
            {
                poruka += "Izdat od nije unijeto.\n";
            }
            if (string.IsNullOrEmpty(tbPodrucjePrimjene.Text.Trim()))
            {
                poruka += "Područje primjene nije unijeto.\n";
            }
            if (cbMjesto.SelectedItem == null)
            {
                poruka += "Mjesto nije izabrato.\n";
            }
            try
            {
                using (ApotekaDb context = new ApotekaDb())
                {
                    if (string.IsNullOrEmpty(poruka))
                    {
                        apot = (apoteka)(from a in context.apotekas
                                         where a.idApoteke == 1
                                         select a).FirstOrDefault();
                        sertif = (sertifikat)(from s in context.sertifikats
                                              where s.idApoteke == apot.idApoteke
                                              select s).FirstOrDefault();
                        apot.nazivApoteke   = tbNaziv.Text.Trim();
                        apot.adresa         = tbAdresa.Text.Trim();
                        apot.telefon        = tbTelefon.Text.Trim();
                        apot.email          = tbEmail.Text.Trim();
                        apot.webSajt        = tbWebSajt.Text.Trim();
                        apot.radnoVrijeme   = tbRadnoVrijeme.Text.Trim();
                        apot.idMjesta       = ((mjesto)cbMjesto.SelectedItem).idMjesta;
                        apot.datumOsnivanja = dtpDatumOsnivanja.Value;
                        apot.dezurnaApoteka = cbDezurnaApoteka.Checked;
                        context.SaveChanges();
                        sertif.standard            = tbStandard.Text.Trim();
                        sertif.izdatOd             = tbIzdatOd.Text.Trim();
                        sertif.podrucjePrimjene    = tbPodrucjePrimjene.Text.Trim();
                        sertif.datumIsteka         = dtpDatumIsteka.Value;
                        sertif.datumSertifikovanja = dtpDatumSertifikovanja.Value;
                        statusnaLabela.Text        = "Podaci o apoteci su uspješno izmjenjeni.";
                        context.SaveChanges();
                        lbFokus.Select();
                        OmoguciPoljaNaFormi(false, gbPodaciOApoteci);
                        OmoguciPoljaNaFormi(false, gbPodaciOSertifikatu);
                        btnIzmjeniti.Enabled = true;
                        btnSacuvati.Enabled  = false;
                        btnOdustati.Enabled  = false;
                    }
                    else
                    {
                        MessageBox.Show(poruka, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
            }
            catch (Exception)
            {
                string prk = "Došlo je do greške.";
                MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Пример #19
0
        private void UnosZaposlenogForma_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (unosSacuvan)
            {
                string poruka = "";
                if (string.IsNullOrEmpty(mtbJmbg.Text.Trim()))
                {
                    poruka += "JMBG nije unijet.\n";
                }
                if (mtbJmbg.Text.Length < 13 || mtbJmbg.Text.Contains(" "))
                {
                    poruka += "JMBG mora sadržavati 13 cifara.\n";
                }
                if (string.IsNullOrEmpty(tbIme.Text.Trim()))
                {
                    poruka += "Ime nije unijeto.\n";
                }
                if (string.IsNullOrEmpty(tbPrezime.Text.Trim()))
                {
                    poruka += "Prezime nije unijeto.\n";
                }
                if (string.IsNullOrEmpty(tbAdresa.Text.Trim()))
                {
                    poruka += "Adresa nije unijeta.\n";
                }
                if (cbMjesto.SelectedItem == null)
                {
                    poruka += "Mjesto nije izabrato.\n";
                }
                if (cbUloga.SelectedItem == null)
                {
                    poruka += "Uloga zaposlenog nije izabrata.\n";
                }
                if (string.IsNullOrEmpty(tbStrucnaSprema.Text.Trim()))
                {
                    poruka += "Stručna sprema nije unijeta.\n";
                }
                if (string.IsNullOrEmpty(tbKorisnickoIme.Text.Trim()))
                {
                    poruka += "Korisničko ime nije unijeto.\n";
                }
                if (string.IsNullOrEmpty(tbLozinka.Text.Trim()))
                {
                    poruka += "Lozinka nije unijeta.\n";
                }
                if (string.IsNullOrEmpty(tbPonovljenaLozinka.Text.Trim()))
                {
                    poruka += "Ponovljena lozinka nije unijeta.\n";
                }
                if (!string.IsNullOrEmpty(tbLozinka.Text.Trim()) && !string.IsNullOrEmpty(tbPonovljenaLozinka.Text.Trim()))
                {
                    if (!(tbLozinka.Text.Trim()).Equals(tbPonovljenaLozinka.Text.Trim()))
                    {
                        poruka += "Lozinke se ne poklapaju.\n";
                    }
                }
                foreach (zaposleni zp in listaZaposlenih)
                {
                    if (zp.jmbg.Equals(mtbJmbg.Text))
                    {
                        poruka += "Postoji zaposleni sa unesenim JMBG.\n";
                        break;
                    }
                }

                foreach (zaposleni zp in listaZaposlenih)
                {
                    if (zp.korisnickoIme.Equals(tbKorisnickoIme.Text.Trim()))
                    {
                        poruka += "Postoji zaposleni sa unesenim korisničkim imenom.\n";
                        break;
                    }
                }
                if (string.IsNullOrEmpty(poruka))
                {
                    try
                    {
                        using (ApotekaDb context = new ApotekaDb())
                        {
                            int ulogaZap = 1;
                            if (cbUloga.SelectedItem.Equals("menadzer"))
                            {
                                ulogaZap = 2;
                            }
                            var z = new zaposleni()
                            {
                                jmbg               = mtbJmbg.Text.Trim(),
                                ime                = tbIme.Text.Trim(),
                                prezime            = tbPrezime.Text.Trim(),
                                adresa             = tbAdresa.Text.Trim(),
                                idMjesta           = ((mjesto)cbMjesto.SelectedItem).idMjesta,
                                telefon            = tbTelefon.Text.Trim(),
                                email              = tbEmail.Text.Trim(),
                                strucnaSprema      = tbStrucnaSprema.Text.Trim(),
                                farmaceutskoZvanje = tbFarmaceutskoZvanje.Text.Trim(),
                                sefApoteke         = cbSefApoteke.Checked,
                                opisPosla          = tbOpisPosla.Text.Trim(),
                                korisnickoIme      = tbKorisnickoIme.Text.Trim(),
                                lozinka            = Enkripcija.enkriptujLozinku(tbLozinka.Text.Trim()),
                                uloga              = ulogaZap,
                                aktivan            = true
                            };
                            context.zaposlenis.Add(z);
                            context.SaveChanges();
                            statusnaLabela.Text = "Uspješno unijet novi zaposleni.";
                            listaZaposlenih     = (from zap in context.zaposlenis
                                                   where zap.obrisano == false
                                                   orderby zap.prezime
                                                   select zap).ToList();
                            PopuniTabeluZaposlenih(listaZaposlenih);
                        }
                    }
                    catch (Exception)
                    {
                        string prk = "Došlo je do greške.";
                        MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    e.Cancel = true;
                    MessageBox.Show(poruka, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                unosSacuvan = false;
            }
        }
Пример #20
0
        private void LijekForma_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (unosSacuvan)
            {
                decimal nabavnaCijenaUnos  = 0;
                decimal prodajnaCijenaUnos = 0;
                bool    neuspjesnaNabavna  = false;
                bool    neuspjesnaProdajna = false;
                string  poruka             = "";
                if (string.IsNullOrEmpty(tbNaziv.Text.Trim()))
                {
                    poruka += "Naziv nije unijet.\n";
                }
                if (string.IsNullOrEmpty(tbProizvodjac.Text.Trim()))
                {
                    poruka += "Proizvođač nije unijet.\n";
                }
                if (string.IsNullOrEmpty(tbPakovanje.Text.Trim()))
                {
                    poruka += "Pakovanje nije unijeto.\n";
                }
                if (string.IsNullOrEmpty(tbNetoKolicina.Text.Trim()))
                {
                    poruka += "Neto količina nije unijeta.\n";
                }
                if (dtpDozvolaVaziOd.Value > dtpDozvolaVaziDo.Value)
                {
                    poruka += "Datum od kad važi dozvola ne može biti poslije datuma isteka iste.\n";
                }
                if (!decimal.TryParse(tbNabavnaCijena.Text.Trim(), out nabavnaCijenaUnos))
                {
                    neuspjesnaNabavna = true;
                    poruka           += "Nabavna cijena mora biti pozitivan broj.\n";
                }
                if (!neuspjesnaNabavna && nabavnaCijenaUnos < 0)
                {
                    poruka += "Nabavna cijena mora biti pozitivan broj.\n";
                }
                if (!decimal.TryParse(tbProdajnaCijena.Text.Trim(), out prodajnaCijenaUnos))
                {
                    neuspjesnaProdajna = true;
                    poruka            += "Prodajna cijena mora biti pozitivan broj.\n";
                }
                if (!neuspjesnaProdajna && prodajnaCijenaUnos < 0)
                {
                    poruka += "Prodajna cijena mora biti pozitivan broj.\n";
                }

                if (string.IsNullOrEmpty(poruka))
                {
                    try
                    {
                        using (ApotekaDb context = new ApotekaDb())
                        {
                            var l = new lijek()
                            {
                                naziv             = tbNaziv.Text.Trim(),
                                proizvodjac       = tbProizvodjac.Text.Trim(),
                                pakovanje         = tbPakovanje.Text.Trim(),
                                izdavanjeNaRecept = cbIzdavanjeNaRecept.Checked,
                                netoKolicina      = tbNetoKolicina.Text.Trim(),
                                dozvolaVaziOd     = dtpDozvolaVaziOd.Value,
                                dozvolaVaziDo     = dtpDozvolaVaziDo.Value,
                                nabavnaCijena     = nabavnaCijenaUnos,
                                prodajnaCijena    = prodajnaCijenaUnos,
                                kolicinaNaStanju  = 0,
                                namjena           = tbNamjena.Text.Trim(),
                                idApoteke         = 1
                            };
                            context.lijeks.Add(l);
                            context.SaveChanges();
                            statusnaLabela.Text = "Uspješno unijet novi lijek.";
                            var lijekovi = (from ljk in context.lijeks
                                            where ljk.obrisano == false
                                            select ljk).ToList();
                            PopuniTabeluLijekova(lijekovi);
                        }
                    }
                    catch (Exception)
                    {
                        string prk = "Došlo je do greške.";
                        MessageBox.Show(prk, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                else
                {
                    e.Cancel = true;
                    MessageBox.Show(poruka, "Greška", MessageBoxButtons.OK, MessageBoxIcon.Error);
                }
                unosSacuvan = false;
            }
        }