예제 #1
0
        private void btn_vestina_Click(object sender, EventArgs e)
        {
            try
            {
                ISession s = DataLayer.GetSession();

                //Ucitavaju se podaci o akrobati sa zadatim maticnim br
                Akrobate a = s.Load <Akrobate>(123456789101);
                Veština  v = s.Load <Veština>(11);

                Poseduje po = new Poseduje();
                po.Poseduje_veština  = v;
                po.Poseduje_akrobate = a;
                MessageBox.Show("proba");

                s.Save(po);

                s.Flush();
                MessageBox.Show("Uspešno");
                s.Close();
            }

            catch (Exception ec)
            {
                MessageBox.Show(ec.Message);
            }
        }
예제 #2
0
        private void OnDelete()
        {
            using (var db = new BazaZaLiguEntities())
            {
                Stadion stadion_zaBrisanje = db.Stadions.Find(Selektovani_stadion.S.id_stadiona);
                if (!izvrsiProvere(stadion_zaBrisanje))
                {
                    //nije ispunio uslove brisanje, ne brisi
                    return;
                }

                //brisi iz klubova
                List <Poseduje> posedujeLista = stadion_zaBrisanje.Posedujes.ToList();
                foreach (Poseduje pos in posedujeLista)
                {
                    Poseduje            poseduje = db.Posedujes.Where(x => x.klub_naziv == pos.klub_naziv && x.stadion_id_stadiona == pos.stadion_id_stadiona).FirstOrDefault();
                    List <Obezbedjenje> radnici  = poseduje.Obezbedjenjes.ToList();
                    foreach (Obezbedjenje item in radnici)
                    {
                        Obezbedjenje radnik = db.Obezbedjenjes.Find(item.id_radnika);
                        radnik.Posedujes.Remove(poseduje);
                        db.Entry(radnik).State = System.Data.Entity.EntityState.Modified;
                    }
                    db.Posedujes.Remove(poseduje);
                    db.SaveChanges();
                }

                db.Entry(stadion_zaBrisanje).State = System.Data.Entity.EntityState.Deleted;
                db.SaveChanges();
                stadioni.Remove(Selektovani_stadion);
                OnPropertyChanged("stadioni");
                MessageBox.Show("Uspesno ste obrisali stadion", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                LogReport(stadion_zaBrisanje);
            }
        }
예제 #3
0
        private void OnUpdate()
        {
            if (validate())
            {
                using (var db = new BazaZaLiguEntities())
                {
                    Obezbedjenje novi_radnik = db.Obezbedjenjes.Find(Selektovani_radnik.Radnik.id_radnika);
                    novi_radnik.ime_radnika     = Selektovani_radnik.Radnik.ime_radnika;
                    novi_radnik.prezime_radnika = Selektovani_radnik.Radnik.prezime_radnika;
                    novi_radnik.drzava          = Selektovani_radnik.Radnik.drzava;

                    novi_radnik.Posedujes.Clear();
                    db.Entry(novi_radnik).State = System.Data.Entity.EntityState.Modified;
                    foreach (Poseduje_Selektovan poseduje in Poseduju)
                    {
                        if (poseduje.IsSelected)
                        {
                            Poseduje noviStadionKlub = db.Posedujes.Where(x =>
                                                                          x.klub_naziv == poseduje.P.klub_naziv && x.stadion_id_stadiona == poseduje.P.stadion_id_stadiona).FirstOrDefault();

                            novi_radnik.Posedujes.Add(noviStadionKlub);
                        }
                    }
                    db.Entry(novi_radnik).State = System.Data.Entity.EntityState.Modified;
                    db.SaveChanges();
                    ucitajRadnike();
                    ucitajPoseduje();
                    MessageBox.Show("Uspesno ste promenili radnika", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                }
            }
        }
예제 #4
0
        private void OnDelete()
        {
            using (var db = new BazaZaLiguEntities())
            {
                Obezbedjenje radnik_zaBrisanje = db.Obezbedjenjes.Find(Selektovani_radnik.Radnik.id_radnika);
                if (radnik_zaBrisanje != null)
                {
                    List <Poseduje> poseduje = radnik_zaBrisanje.Posedujes.ToList();
                    foreach (Poseduje item in poseduje)
                    {
                        Poseduje pos = db.Posedujes.Where(x => x.klub_naziv == item.klub_naziv && x.stadion_id_stadiona == item.stadion_id_stadiona).FirstOrDefault();
                        pos.Obezbedjenjes.Remove(radnik_zaBrisanje);
                        db.SaveChanges();
                    }


                    db.Entry(radnik_zaBrisanje).State = System.Data.Entity.EntityState.Deleted;
                    db.SaveChanges();
                    radnici.Remove(Selektovani_radnik);
                    OnPropertyChanged("radnici");
                    MessageBox.Show("Uspesno ste obrisali radnika", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                    LogReport(radnik_zaBrisanje);
                }
            }
        }
예제 #5
0
        public void OnDodajKlub()
        {
            if (validate())
            {
                List <Stadion> stadioni_zaDodavanje = new List <Stadion>();
                using (var db = new BazaZaLiguEntities())   // dodaj selektovane stadione
                {
                    foreach (Stadion_Selektovan stadion in stadioni)
                    {
                        if (stadion.IsSelected)
                        {
                            Stadion stadionProvera = db.Stadions.Find(stadion.S.id_stadiona);

                            stadioni_zaDodavanje.Add(stadionProvera);
                        }
                    }
                }

                using (var db = new BazaZaLiguEntities())
                {
                    Klub novi_klub = new Klub()
                    {
                        naziv = Klub_prop.naziv, grad = Klub_prop.grad, vrednost = Klub_prop.vrednost
                    };
                    foreach (Stadion item in stadioni_zaDodavanje)
                    {
                        Stadion  stadion_dodaj = db.Stadions.Find(item.id_stadiona);
                        Poseduje p1            = new Poseduje()
                        {
                            Klub = novi_klub, Stadion = stadion_dodaj, klub_naziv = novi_klub.naziv, stadion_id_stadiona = item.id_stadiona
                        };
                        db.Posedujes.Add(p1);
                    }

                    if (SelektovanaLiga != "" && SelektovanaLiga != null && SelektovanaLiga != "None")
                    {
                        Liga liga_dodaj = db.Ligas.Where(x => x.naziv_lige == SelektovanaLiga).FirstOrDefault();
                        novi_klub.liga_id_lige = liga_dodaj.id_lige;
                        novi_klub.Liga         = liga_dodaj;
                        //liga_dodaj.broj_klubova++;
                    }

                    db.Klubs.Add(novi_klub);


                    db.SaveChanges();
                    MessageBox.Show("Klub je uspesno dodat", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                    LogReport(novi_klub);
                }
            }
        }
예제 #6
0
        private void OnAdd()
        {
            if (validate())
            {
                using (var db = new BazaZaLiguEntities())
                {
                    // dodaj selektovane stadione
                    List <Klub> klub_zaDodavanje = new List <Klub>();
                    foreach (Klub_Selektovan klub in klubovi)
                    {
                        if (klub.IsSelected)
                        {
                            Klub klubProvera = db.Klubs.Find(klub.K.naziv);
                            klub_zaDodavanje.Add(klubProvera);
                        }
                    }
                    //id logic
                    int     nextID    = 0;
                    Stadion proveraID = null;
                    do
                    {
                        proveraID = db.Stadions.Where(x => x.id_stadiona == nextID + 1).FirstOrDefault();
                        nextID++;
                    }while (proveraID != null);

                    Stadion novi_stadion = new Stadion()
                    {
                        id_stadiona = nextID, naziv_stadiona = Stadion_prop.naziv_stadiona, grad = Stadion_prop.grad, kapacitet = Stadion_prop.kapacitet
                    };

                    db.Stadions.Add(novi_stadion);
                    db.SaveChanges();
                    foreach (Klub klub in klub_zaDodavanje)
                    {
                        Poseduje poseduje = new Poseduje()
                        {
                            Klub = klub, Stadion = novi_stadion
                        };
                        db.Posedujes.Add(poseduje);
                        db.SaveChanges();
                    }
                    MessageBox.Show("Uspesno ste dodali stadion", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                    LogReport(novi_stadion);
                }
            }
        }
예제 #7
0
        private void OnAdd()
        {
            if (validate())
            {
                using (var db = new BazaZaLiguEntities())
                {
                    // dodaj selektovane stadione sa klubovima
                    List <Poseduje> poseduje_zaDodavanje = new List <Poseduje>();
                    foreach (Poseduje_Selektovan poseduje in stadioni_klubovi)
                    {
                        if (poseduje.IsSelected)
                        {
                            Poseduje posedujeProvera = db.Posedujes.Where(x => x.klub_naziv == poseduje.P.klub_naziv && x.stadion_id_stadiona == poseduje.P.stadion_id_stadiona).FirstOrDefault();
                            poseduje_zaDodavanje.Add(posedujeProvera);
                        }
                    }

                    if (poseduje_zaDodavanje.Count <= 0) // nije odabrao nijedan stadion
                    {
                        MessageBox.Show("Potrebno je odabrati barem 1 stadion !", "Oprez", MessageBoxButton.OK, MessageBoxImage.Warning);
                        return;
                    }
                    //id logic
                    int          nextID    = 0;
                    Obezbedjenje proveraID = null;
                    do
                    {
                        proveraID = db.Obezbedjenjes.Where(x => x.id_radnika == nextID + 1).FirstOrDefault();
                        nextID++;
                    }while (proveraID != null);

                    Obezbedjenje novi_radnik = new Obezbedjenje()
                    {
                        id_radnika = nextID, ime_radnika = Radnik_prop.ime_radnika, prezime_radnika = Radnik_prop.prezime_radnika, drzava = Radnik_prop.drzava
                    };
                    novi_radnik.Posedujes = poseduje_zaDodavanje;

                    db.Obezbedjenjes.Add(novi_radnik);
                    db.SaveChanges();
                    MessageBox.Show("Uspesno ste dodali radnika", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                    LogReport(novi_radnik);
                }
            }
        }
예제 #8
0
        private void OnUpdate()
        {
            if (validate())
            {
                using (var db = new BazaZaLiguEntities())
                {
                    Stadion novi_stadion = db.Stadions.Find(Selektovani_stadion.S.id_stadiona);
                    novi_stadion.naziv_stadiona = Selektovani_stadion.S.naziv_stadiona;
                    novi_stadion.grad           = Selektovani_stadion.S.grad;
                    novi_stadion.kapacitet      = Selektovani_stadion.S.kapacitet;


                    List <Poseduje> provera_poseduje = db.Posedujes.Where(x => x.stadion_id_stadiona == novi_stadion.id_stadiona).ToList();
                    List <string>   stariKlubovi     = new List <string>(); //bili su ranije selektovani
                    foreach (var item in provera_poseduje)
                    {
                        stariKlubovi.Add(item.Klub.naziv);
                    }


                    //novi_stadion.Posedujes.Clear();
                    //
                    foreach (Klub_Selektovan klub in Klubovi)
                    {
                        if (klub.IsSelected)
                        {
                            if (!stariKlubovi.Contains(klub.K.naziv)) //Nije bio selektovan, sad jeste
                            {
                                Klub     kl       = db.Klubs.Find(klub.K.naziv);
                                Poseduje poseduje = new Poseduje()
                                {
                                    Klub = kl, Stadion = novi_stadion
                                };
                                db.Posedujes.Add(poseduje);
                                db.SaveChanges();
                            }
                        }
                        else if (stariKlubovi.Contains(klub.K.naziv)) //bio je selektovan, sad nije
                        {
                            // radnici dobiju otkaz, brisi ako samo tu rade
                            Poseduje            item    = provera_poseduje.Where(x => x.klub_naziv == klub.K.naziv && x.stadion_id_stadiona == novi_stadion.id_stadiona).FirstOrDefault();
                            List <Obezbedjenje> radnici = item.Obezbedjenjes.ToList();
                            foreach (Obezbedjenje obez in radnici) //radnici , obezbedjenje
                            {
                                Obezbedjenje obezbedjenje = db.Obezbedjenjes.Find(obez.id_radnika);
                                if (obezbedjenje.Posedujes.Count < 2) //brisi radnike koji rade samo tu
                                {
                                    db.Obezbedjenjes.Remove(obezbedjenje);
                                    db.SaveChanges();
                                }
                            }
                            db.Posedujes.Remove(item);  //brisi vezu izmedju stadiona i kluba
                            db.SaveChanges();
                        }
                    }
                    db.Entry(novi_stadion).State = System.Data.Entity.EntityState.Modified;
                    db.SaveChanges();
                    ucitajStadione();
                    ucitajKlubove();
                    Kapacitet = "";
                    OnPropertyChanged("Kapacitet");
                    MessageBox.Show("Uspesno ste promenili stadion", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                }
            }
        }