예제 #1
0
        public void DodavanjeArtikalaNaRacun(Racun odabraniRacun, Artikli odabraniArtikl)
        {
            using (var db = new NjamiNjamEntities())
            {
                var upit = from s in db.Stavke_racuna
                           where odabraniRacun.ID == s.vk_racun
                           select s;

                foreach (var item in upit.Distinct().ToList())
                {
                    if (item.vk_artikl == odabraniArtikl.ID)
                    {
                        db.Stavke_racuna.Attach(item);
                        item.Kolicina++;
                        db.SaveChanges();

                        db.Artikli.Attach(odabraniArtikl);
                        odabraniArtikl.Kolicina--;
                        db.SaveChanges();
                        AzuriranjeRacuna(odabraniRacun, odabraniArtikl);
                        return;
                    }
                }

                Stavke_racuna stavke = new Stavke_racuna
                {
                    vk_racun  = odabraniRacun.ID,
                    vk_artikl = odabraniArtikl.ID,
                    Kolicina  = 1
                };

                db.Stavke_racuna.Add(stavke);
                db.SaveChanges();

                db.Artikli.Attach(odabraniArtikl);
                odabraniArtikl.Kolicina--;
                db.SaveChanges();
                AzuriranjeRacuna(odabraniRacun, odabraniArtikl);
            }
        }
예제 #2
0
        public void UkloniStavku(Stavke_racuna odabranaStavka, Racun odabraniRacun)
        {
            decimal popust = odabraniRacun.Popust;

            if (odabranaStavka != null)
            {
                if (MessageBox.Show("Da li ste sigurni?", "Upozorenje!", MessageBoxButtons.YesNo)
                    == System.Windows.Forms.DialogResult.Yes)
                {
                    if (odabranaStavka.Kolicina == 1)
                    {
                        using (var db = new NjamiNjamEntities())
                        {
                            db.Stavke_racuna.Attach(odabranaStavka);
                            if (popust > 0)
                            {
                                odabranaStavka.Racun.Cijena = odabranaStavka.Racun.Cijena - odabranaStavka.Artikli.Cijena + (odabranaStavka.Artikli.Cijena * popust / 100);
                                db.SaveChanges();
                            }
                            else
                            {
                                odabranaStavka.Racun.Cijena -= odabranaStavka.Artikli.Cijena;
                                db.SaveChanges();
                            }

                            db.Stavke_racuna.Attach(odabranaStavka);
                            odabranaStavka.Artikli.Kolicina++;
                            db.SaveChanges();

                            db.Stavke_racuna.Attach(odabranaStavka);
                            db.Stavke_racuna.Remove(odabranaStavka);
                            db.SaveChanges();
                        }
                    }
                    else
                    {
                        using (var db = new NjamiNjamEntities())
                        {
                            db.Stavke_racuna.Attach(odabranaStavka);
                            odabranaStavka.Kolicina--;
                            db.SaveChanges();

                            db.Racun.Attach(odabranaStavka.Racun);
                            if (popust > 0)
                            {
                                odabranaStavka.Racun.Cijena = odabranaStavka.Racun.Cijena - odabranaStavka.Artikli.Cijena + (odabranaStavka.Artikli.Cijena * popust / 100);
                                db.SaveChanges();
                            }
                            else
                            {
                                odabranaStavka.Racun.Cijena -= odabranaStavka.Artikli.Cijena;
                                db.SaveChanges();
                            }
                            db.SaveChanges();

                            db.Artikli.Attach(odabranaStavka.Artikli);
                            odabranaStavka.Artikli.Kolicina++;
                            db.SaveChanges();
                        }
                    }
                }
            }
        }