示例#1
0
 private void button1_Click(object sender, EventArgs e)
 {
     for (int i = 0; i < this.Controls.Count; i++)
     {
         if (Controls[i].GetType() == typeof(TextBox))
         {
             if (Controls[i].Text == "")
             {
                 MessageBox.Show("Sva polja osim datuma se moraju unjesti!");
                 return;
             }
         }
     }
     try
     {
         using (var db = new BazaProjekta2())
         {
             if (odabraniArtikl == null)
             {
                 if (DateTime.Today.ToString("d") == txtRok.Value.ToString("d"))
                 {
                     Artikli artikl = new Artikli
                     {
                         naziv    = txtNaziv.Text,
                         kolicina = int.Parse(txtKolicina.Text),
                         cijena   = Math.Round(float.Parse(txtCijena.Text), 2)
                     };
                     db.Artikli.Add(artikl);
                     db.SaveChanges();
                 }
                 else
                 {
                     Artikli artikl = new Artikli
                     {
                         naziv        = txtNaziv.Text,
                         kolicina     = int.Parse(txtKolicina.Text),
                         cijena       = Math.Round(float.Parse(txtCijena.Text), 2),
                         rok_trajanja = txtRok.Value
                     };
                     db.Artikli.Add(artikl);
                     db.SaveChanges();
                 }
             }
             else
             {
                 db.Artikli.Attach(odabraniArtikl);
                 odabraniArtikl.naziv    = txtNaziv.Text;
                 odabraniArtikl.cijena   = float.Parse(txtCijena.Text);
                 odabraniArtikl.kolicina = int.Parse(txtKolicina.Text);
                 db.SaveChanges();
             }
         }
         GC.Collect();
         this.Close();
     }
     catch (FormatException)
     {
         MessageBox.Show("Cijena i/ili količina nisu uneseni u obliku broja!");
     }
 }
示例#2
0
        private void ukupno(int d)
        {
            brojDokumenta = d;
            float zbroj = 0;
            BindingList <Stavke_dokumenta> stavke = null;

            using (var db = new BazaProjekta2())
            {
                stavke = new BindingList <Stavke_dokumenta>(db.Stavke_dokumenta.Where(x => x.id_dokumenta == d).ToList());
            }
            for (int i = 0; i < stavke.Count; i++)
            {
                using (var db = new BazaProjekta2())
                {
                    Artikli a = db.Artikli.Find(stavke[i].id_artikla);
                    zbroj += (float)a.cijena * stavke[i].kolicina;
                }
            }
            try
            {
                if (txtPopust.Text != "")
                {
                    int p = int.Parse(txtPopust.Text);
                    zbroj = zbroj - ((float)zbroj * (float)p / (float)100);
                }
            }
            catch (FormatException)
            {
                MessageBox.Show("Popust je unesen u krivom formatu: NIJE BROJ!");
            }
            txtUkupno.Text = zbroj.ToString();
        }
        private void toolStripMenuItem1_MouseUp(object sender, MouseEventArgs e)
        {
            Artikli    a           = dgvArtikli.SelectedRows[0].DataBoundItem as Artikli;
            NoviArtikl novi_artikl = new NoviArtikl(a);

            novi_artikl.ShowDialog();
            prikazArtikala();
        }
示例#4
0
        private void button3_Click(object sender, EventArgs e)
        {
            Artikli   odabraniArtikl = cbArtikl.SelectedItem as Artikli;
            Suradnici s        = cbDobavljac.SelectedItem as Suradnici;
            string    suradnik = null;

            if (s != null)
            {
                suradnik = s.oib;
            }
            else
            {
                MessageBox.Show("Dobavljač mora biti odabran!");
                return;
            }

            if (txtKolicina.Text == "")
            {
                MessageBox.Show("Niste unjeli količinu koju želite naručiti!");
                return;
            }
            if (cbArtikl.SelectedValue == null)
            {
                MessageBox.Show("Niste odabrali artikl!");
                return;
            }
            using (var db = new BazaProjekta2())
            {
                if (!postoji)
                {
                    d = new Dokumenti
                    {
                        korisnicko_ime = korisnik,
                        datum          = DateTime.Now.Date,
                        nacin_placanja = 1,
                        suradnik       = suradnik,
                        napomena       = "narudžbenica"
                    };
                    db.Dokumenti.Add(d);
                    db.SaveChanges();
                    postoji = true;
                }


                Dokumenti        d2 = db.Dokumenti.Attach(d);
                Stavke_dokumenta sd = new Stavke_dokumenta
                {
                    id_dokumenta = d2.id_dokumenta,
                    id_artikla   = odabraniArtikl.id_artikla,
                    kolicina     = int.Parse(txtKolicina.Text)
                };
                db.Stavke_dokumenta.Add(sd);
                db.SaveChanges();
                prikazStavaka(d.id_dokumenta);
            }
        }
 private void PotvrdiButton_Click(object sender, EventArgs e)
 {
     for (int i = 0; i < dgbRok.RowCount; i++)
     {
         if (dgbRok.Rows[i].Cells["ukloni"].Value != null)
         {
             Artikli uklonjeni = dgbRok.Rows[i].DataBoundItem as Artikli;
             using (var db = new BazaProjekta2())
             {
                 db.Artikli.Attach(uklonjeni);
                 uklonjeni.kolicina = 0;
                 db.SaveChanges();
             }
         }
     }
     prikazRoka();
 }
        private void toolStripMenuItem2_MouseUp(object sender, MouseEventArgs e)
        {
            Artikli a = dgvArtikli.SelectedRows[0].DataBoundItem as Artikli;

            using (var db = new BazaProjekta2())
            {
                db.Artikli.Attach(a);
                if (a.Dobavljaci_artikala.Count == 0 && a.Stavke_dokumenta.Count == 0)
                {
                    db.Artikli.Remove(a);
                    db.SaveChanges();
                }
                else
                {
                    MessageBox.Show("Odabrani artikl se ne može obrisati");
                }
            }
            prikazArtikala();
        }
示例#7
0
        private void button4_Click(object sender, EventArgs e)
        {
            for (int i = 0; i < dgvNarudzbe.RowCount; i++)
            {
                if (dgvNarudzbe.Rows[i].Cells["zaprimljeno"].Value != null)
                {
                    int idDokument = (int)dgvNarudzbe.Rows[i].Cells[0].Value;
                    List <Stavke_dokumenta> stavkeDokumenta = null;
                    Artikli artikl = null;
                    using (var db = new BazaProjekta2())
                    {
                        stavkeDokumenta = new List <Stavke_dokumenta>(db.Stavke_dokumenta.Where(x => x.id_dokumenta == idDokument).ToList());
                        foreach (Stavke_dokumenta item in stavkeDokumenta)
                        {
                            int provjera = db.Artikli.Count(x => x.id_artikla == item.id_artikla && x.kolicina == 0);
                            if (provjera > 0)
                            {
                                artikl = db.Artikli.Where(x => x.id_artikla == item.id_artikla).FirstOrDefault();

                                db.Artikli.Attach(artikl);
                                artikl.kolicina += item.kolicina;
                                db.SaveChanges();
                                Dokumenti dokument = db.Dokumenti.Where(x => x.id_dokumenta == idDokument).FirstOrDefault();
                                db.Dokumenti.Attach(dokument);
                                dokument.realiziran = 1;
                                db.SaveChanges();
                            }
                            else
                            {
                                MessageBox.Show("Određenog artikla iz narudžbenice još ima na skladištu. Preporuča se da se po narudžbi naručuje jedna proizvod!");
                            }
                        }
                    }
                    if (artikl != null)
                    {
                        DodajRok forma = new DodajRok(artikl);
                        forma.ShowDialog();
                    }
                }
            }
            GC.Collect();
            this.Close();
        }
示例#8
0
        private void button1_Click(object sender, EventArgs e)
        {
            if (dgvStavke.RowCount == 0)
            {
                MessageBox.Show("Nije moguće izdati račun bez stavaka!");
                return;
            }
            BindingList <Stavke_dokumenta> stavke = null;

            using (var db = new BazaProjekta2())
            {
                stavke = new BindingList <Stavke_dokumenta>(db.Stavke_dokumenta.Where(x => x.id_dokumenta == d.id_dokumenta).ToList());
            }
            for (int i = 0; i < stavke.Count; i++)
            {
                using (var db = new BazaProjekta2())
                {
                    Artikli a = db.Artikli.Find(stavke[i].id_artikla);
                    db.Artikli.Attach(a);
                    a.kolicina -= stavke[i].kolicina;
                    db.SaveChanges();
                    db.Dokumenti.Attach(d);
                    d.iznos_racuna = Math.Round(float.Parse(txtUkupno.Text), 2);
                    if (txtPopust.Text != "")
                    {
                        d.popust = Math.Round(float.Parse(txtPopust.Text) / (float)100, 2);
                    }
                    else
                    {
                        d.popust = 0;
                    }

                    db.SaveChanges();
                }
            }
            izdavanje = true;
            this.Close();
        }
示例#9
0
        private void export()
        {
            string    putanja  = "C:\\Users\\marin\\Desktop\\r16054\\PDF\\";
            Suradnici suradnik = null;

            using (var db = new BazaProjekta2())
            {
                suradnik = db.Suradnici.Where(x => x.oib == dokument.suradnik).FirstOrDefault();
            }
            FileStream stream = new FileStream(putanja + "Narudzbenica_br" + dokument.id_dokumenta, FileMode.Create);
            Document   doc    = new Document(PageSize.A4, 2f, 2f, 2f, 0f);

            PdfWriter.GetInstance(doc, stream);
            doc.Open();
            string zaglavlje = "Pošiljatelj: Tvrtka d.o.o." + Environment.NewLine + "Datum: " + DateTime.Today.Date + Environment.NewLine + "Primatelj:" + suradnik.naziv + Environment.NewLine + "Adresa:" + suradnik.adresa + Environment.NewLine + "Kontakt:" + suradnik.kontakt + Environment.NewLine + Environment.NewLine;

            doc.Add(new Paragraph(zaglavlje));
            PdfPTable table = new PdfPTable(2);

            table.AddCell("Artikl");
            table.AddCell("Kolicina");

            for (int i = 0; i < dgvStavke.RowCount; i++)
            {
                Artikli a = null;
                using (var db = new BazaProjekta2())
                {
                    int artiklID = int.Parse(dgvStavke.Rows[i].Cells[1].Value.ToString());
                    a = db.Artikli.Where(x => x.id_artikla == artiklID).FirstOrDefault();
                    table.AddCell(a.naziv.ToString());
                    table.AddCell(dgvStavke.Rows[i].Cells[2].Value.ToString());
                }
            }
            doc.Add(table);
            doc.Close();
            stream.Close();
            MessageBox.Show("Narudžbenica je exportirana na mjestu: " + putanja + "Narudzbenica_br" + dokument.id_dokumenta);
        }
示例#10
0
        private void button1_Click(object sender, EventArgs e)
        {
            if (txtMin.Text == "")
            {
                MessageBox.Show("Niste unjeli minimalnu količinu za artikl");
                return;
            }
            if (txtMax.Text == "")
            {
                MessageBox.Show("Niste unjeli maksimalnu količinu za artikl");
                return;
            }
            Artikli odabraniArtikl = cbArtikli.SelectedItem as Artikli;

            using (var db = new BazaProjekta2())
            {
                db.Artikli.Attach(odabraniArtikl);
                odabraniArtikl.min_kolicina = int.Parse(txtMin.Text);
                odabraniArtikl.max_kolicina = int.Parse(txtMax.Text);
                db.SaveChanges();
            }
            GC.Collect();
            this.Close();
        }
示例#11
0
 public DodajRok(Artikli a)
 {
     InitializeComponent();
     artikl = a;
 }
示例#12
0
        private void dodaj_Click(object sender, EventArgs e)
        {
            if (cbArtikl.SelectedValue == null)
            {
                MessageBox.Show("Niste odabrali artikl");
                return;
            }
            if (txtKolicina.Text == "")
            {
                MessageBox.Show("Niste unjeli količinu artikla!");
                return;
            }
            btnPregledIStorniranje.Enabled = false;
            Artikli         odabraniArtikl = cbArtikl.SelectedItem as Artikli;
            Nacini_placanja np             = cbPlacanje.SelectedItem as Nacini_placanja;
            Suradnici       s        = cbKupac.SelectedItem as Suradnici;
            int             placanje = np.id_nacina_placanja;
            string          suradnik = null;

            if (s != null)
            {
                suradnik = s.oib;
            }
            try
            {
                if (odabraniArtikl.kolicina <= int.Parse(txtKolicina.Text))
                {
                    MessageBox.Show("Nema dovoljne količine odabranog artikla na skladišti");
                }
                else

                {
                    using (var db = new BazaProjekta2())
                    {
                        if (!postoji)
                        {
                            d = new Dokumenti
                            {
                                korisnicko_ime = korisnik,
                                datum          = DateTime.Now.Date,
                                nacin_placanja = placanje,
                                suradnik       = suradnik,
                                napomena       = "račun"
                            };
                            db.Dokumenti.Add(d);
                            db.SaveChanges();
                            postoji = true;
                        }


                        Dokumenti        d2 = db.Dokumenti.Attach(d);
                        Stavke_dokumenta sd = new Stavke_dokumenta
                        {
                            id_dokumenta = d2.id_dokumenta,
                            id_artikla   = odabraniArtikl.id_artikla,
                            kolicina     = int.Parse(txtKolicina.Text)
                        };
                        db.Stavke_dokumenta.Add(sd);
                        db.SaveChanges();
                        prikazStavaka(d.id_dokumenta);
                        ukupno(d.id_dokumenta);
                    }
                }
            }
            catch (FormatException)
            {
                MessageBox.Show("Unesena vrijednost nije broj!");
            }
        }
示例#13
0
 public NoviArtikl(Artikli a)
 {
     InitializeComponent();
     odabraniArtikl = a;
 }