示例#1
0
 public void DodajZalihe(string naziv, decimal kolicina, decimal kriticnaKolicina, RadioButton rbKilogram, RadioButton rbLitra, RadioButton rbKomad)
 {
     using (var db = new Entities17045_DB())
     {
         zalihe noveZalihe = new zalihe();
         noveZalihe.naziv             = naziv;
         noveZalihe.kolicina          = kolicina;
         noveZalihe.kriticna_kolicina = kriticnaKolicina;
         noveZalihe.datum             = DateTime.Now.ToShortDateString();
         if (rbKilogram.Checked)
         {
             noveZalihe.mjernaJedinica = "Kilogram";
         }
         if (rbLitra.Checked)
         {
             noveZalihe.mjernaJedinica = "Litra";
         }
         if (rbKomad.Checked)
         {
             noveZalihe.mjernaJedinica = "Komad";
         }
         db.zalihes.Add(noveZalihe);
         db.SaveChanges();
         MessageBox.Show("Uspješno ste dodali zalihu " + noveZalihe.naziv + "!");
     }
 }
示例#2
0
 public void BrisiZalihe(zalihe odabraneZalihe)
 {
     using (var db = new Entities17045_DB())
     {
         if (odabraneZalihe != null)
         {
             var A = db.sastojaks.Where(x => x.naziv == odabraneZalihe.naziv).FirstOrDefault();
             if (A != null)
             {
                 if (MessageBox.Show("Odabrana zaliha korištena je u nekom jelu! Ako ju obrišete, obrisat će se i sastojak u jelu. Želite li nastaviti?",
                                     "Upozorenje!", MessageBoxButtons.YesNo) == System.Windows.Forms.DialogResult.Yes)
                 {
                     db.zalihes.Attach(odabraneZalihe);
                     db.zalihes.Remove(odabraneZalihe);
                     db.sastojaks.Attach(A);
                     db.sastojaks.Remove(A);
                     db.SaveChanges();
                     MessageBox.Show("Uspješno ste obrisali zalihu " + odabraneZalihe.naziv + "!");
                 }
             }
             else
             {
                 db.zalihes.Attach(odabraneZalihe);
                 db.zalihes.Remove(odabraneZalihe);
                 db.SaveChanges();
                 MessageBox.Show("Uspješno ste obrisali zalihu " + odabraneZalihe.naziv + "!");
             }
         }
         else
         {
             MessageBox.Show("Greška! Niti jedna zaliha nije odabrana!");
         }
     }
 }
示例#3
0
 public void UvecajKolicinuZaliha(zalihe odabranaZaliha, decimal kolicina)
 {
     using (var db = new Entities17045_DB())
     {
         db.zalihes.Attach(odabranaZaliha);
         odabranaZaliha.kolicina = odabranaZaliha.kolicina + kolicina;
         db.SaveChanges();
         MessageBox.Show("Uspješno ste nadopunili zalihu " + odabranaZaliha.naziv + "!");
     }
 }
示例#4
0
        private void btnObrisi_Click_1(object sender, EventArgs e)
        {
            zalihe odabraneZalihe = zaliheBindingSource.Current as zalihe;

            NoveZalihe noveZalihe = new NoveZalihe();

            noveZalihe.BrisiZalihe(odabraneZalihe);

            txtPretraga.Clear();
            PrikaziZalihe();
            PromjeniBoju();
        }
示例#5
0
 public void UmanjiKolicinuZaliha(zalihe odabranaZaliha, decimal kolicina)
 {
     using (var db = new Entities17045_DB())
     {
         db.zalihes.Attach(odabranaZaliha);
         odabranaZaliha.kolicina = odabranaZaliha.kolicina - kolicina;
         if (odabranaZaliha.kolicina >= 0)
         {
             db.SaveChanges();
             MessageBox.Show("Uspješno ste umanjili zalihu " + odabranaZaliha.naziv + "!");
         }
         else
         {
             MessageBox.Show("Količina zaliha mora biti nula ili više!");
         }
     }
 }
示例#6
0
        private void btnSpremiUmanjiti_Click(object sender, EventArgs e)
        {
            if (txtKolicinaUmanjiti.Text != "")
            {
                try
                {
                    decimal temp = Convert.ToDecimal(txtKolicinaUmanjiti.Text);
                }
                catch
                {
                    MessageBox.Show("Količina sadrži samo brojeve!");
                    return;
                }
            }
            if (txtKolicinaUmanjiti.Text != "" && txtKolicinaUmanjiti.Text.Contains(","))
            {
                MessageBox.Show("Količina se unosi s točkom, a ne zarezom");
                return;
            }
            if (txtKolicinaUmanjiti.Text != "")
            {
                zalihe odabranaZaliha = zaliheBindingSource.Current as zalihe;
                if (odabranaZaliha != null)
                {
                    NoveZalihe noveZalihe = new NoveZalihe();
                    noveZalihe.UmanjiKolicinuZaliha(odabranaZaliha, decimal.Parse(txtKolicinaUmanjiti.Text));

                    PrikaziZalihe();
                    PromjeniBoju();
                }
                else
                {
                    MessageBox.Show("Morate odabrati jednu zalihu u datagridview-u!");
                }
            }
            else
            {
                MessageBox.Show("Potrebno je unijeti sve podatke!");
            }
            txtPretraga.Clear();
            txtKolicinaUmanjiti.Clear();
        }
示例#7
0
        public void IzdajRacun(racun odabraniRacun, float zaPlatiti, string popisStavki, string imeZaposlenika)
        {
            string         Naziv           = "";
            decimal        Iznos           = 0;
            List <decimal> listaZaUmanjiti = new List <decimal>();
            List <string>  listaNaziva     = new List <string>();

            using (var db = new Entities17045_DB())
            {
                var A = db.racun_jelo.Where(x => x.id_racun == odabraniRacun.id).ToList();
                foreach (var item in A)
                {
                    var C = item.jelo.sastojaks.Where(x => x.jelo.naziv == item.jelo.naziv).ToList();
                    foreach (var ite in C)
                    {
                        listaNaziva.Add(ite.naziv.ToString());
                        listaZaUmanjiti.Add((decimal)item.kolicina * (decimal)ite.kolicina);
                    }
                }
                for (int i = 0; i < listaNaziva.Count(); i++)
                {
                    Naziv = listaNaziva[i];
                    var B = db.zalihes.FirstOrDefault(x => x.naziv == Naziv);
                    if (B != null)
                    {
                        Iznos = listaZaUmanjiti[i];
                        zalihe odabranaZaliha = B;
                        db.zalihes.Attach(odabranaZaliha);
                        odabranaZaliha.kolicina = (decimal)odabranaZaliha.kolicina - Iznos;
                        odabranaZaliha.datum    = DateTime.Now.ToShortDateString();
                        if (odabranaZaliha.kolicina >= 0)
                        {
                            db.SaveChanges();
                        }
                        else
                        {
                            MessageBox.Show("Nema dovoljno potrebnih sastojaka na zalihi!");
                            return;
                        }
                    }
                }
            }
            listaNaziva.Clear();
            listaZaUmanjiti.Clear();

            using (var db = new Entities17045_DB())
            {
                db.racuns.Attach(odabraniRacun);
                odabraniRacun.iznos = zaPlatiti;
                db.SaveChanges();
            }

            //Kreiranje računa u PDF-u
            string    nazivDatoteke = "Racun" + odabraniRacun.id.ToString() + ".pdf";
            Document  racunPDF      = new Document(iTextSharp.text.PageSize.LETTER, 20, 15, 42, 35);
            PdfWriter writer        = PdfWriter.GetInstance(racunPDF, new FileStream(nazivDatoteke, FileMode.Create));

            racunPDF.Open();
            Paragraph header = new Paragraph("\n\nŠifra racuna: " + odabraniRacun.id.ToString() + "     ||     Vrijeme: " + odabraniRacun.datum_vrijeme.ToString()
                                             + "     ||     Zaposlenik: " + imeZaposlenika + "\n\n\n");

            header.Alignment = Element.ALIGN_CENTER;
            Paragraph stavke = new Paragraph(popisStavki + "\n\n");

            stavke.IndentationLeft = 30;
            Paragraph footer = new Paragraph("Iznos za platiti: " + odabraniRacun.iznos.ToString() + " kn");

            footer.IndentationLeft = 30;
            racunPDF.Add(header);
            racunPDF.Add(stavke);
            racunPDF.Add(footer);
            racunPDF.Close();

            //Otvaranje PDF-a
            System.Diagnostics.Process.Start(nazivDatoteke);
        }