Example #1
0
        private void ucitajTrenereILige()
        {
            Naziv_lige    = new ObservableCollection <string>();
            Naziv_Trenera = new ObservableCollection <string>();

            using (var db = new BazaZaLiguEntities())
            {
                foreach (Liga item in db.Ligas)
                {
                    //sve lige
                    Naziv_lige.Add(item.naziv_lige);
                }
                Naziv_lige.Add("");     //za davanje otkaza iz lige

                foreach (Trener item in db.Treners)
                {
                    Vodi zauzetiTrener = db.Vodis.Where(x => x.trener_id_trenera == item.id_trenera).FirstOrDefault();
                    //svi slobodni treneri
                    if (zauzetiTrener == null)
                    {
                        Naziv_Trenera.Add(item.ime_trenera);
                    }
                }


                Naziv_Trenera.Add("");
            }

            OnPropertyChanged("Naziv_lige");
            OnPropertyChanged("Naziv_Trenera");
        }
        public ShowTrenerViewModel()
        {
            string role = (string)Application.Current.Properties["Role"];

            if (role != "Admin")
            {
                Visibility = Visibility.Hidden;
            }
            else
            {
                Visibility = Visibility.Visible;
            }

            treneri       = new ObservableCollection <Trener_Selektovan>();
            DeleteCommand = new MyICommand(OnDelete);
            IspisCommand  = new MyICommand(Stampaj);

            using (var db = new BazaZaLiguEntities())
            {
                foreach (Trener item in db.Treners)
                {
                    Trener_Selektovan trener = new Trener_Selektovan()
                    {
                        T = item
                    };
                    Vodi klubTrenera = db.Vodis.Where(x => x.trener_id_trenera == item.id_trenera).FirstOrDefault();
                    if (klubTrenera != null)
                    {
                        trener.Naziv_Kluba = klubTrenera.klub_naziv;
                    }
                    treneri.Add(trener);
                }
            }
            OnPropertyChanged("treneri");
        }
        public void OnDelete()
        {
            using (var db = new BazaZaLiguEntities())
            {
                //brisi iz vodi
                Vodi provera_vodi = db.Vodis.Where(x => x.trener_id_trenera == Selektovani_trener.T.id_trenera).FirstOrDefault();
                if (provera_vodi != null)
                {
                    foreach (Igrac igrac in db.Igracs)
                    {
                        if (igrac.naziv_kluba == provera_vodi.klub_naziv)
                        {
                            igrac.Vodi            = null;
                            db.Entry(igrac).State = System.Data.Entity.EntityState.Modified;
                        }
                    }
                    db.Entry(provera_vodi).State = System.Data.Entity.EntityState.Deleted;
                    db.SaveChanges();
                }

                Trener trener_brisanje = db.Treners.Find(Selektovani_trener.T.id_trenera);
                if (trener_brisanje != null)
                {
                    db.Entry(trener_brisanje).State = System.Data.Entity.EntityState.Deleted;
                    treneri.Remove(Selektovani_trener);
                }

                db.SaveChanges();
                MessageBox.Show("Uspesno ste obrisali Trenera", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                LogReport(trener_brisanje);
            }
        }
        public void OnUpdate()
        {
            if (validate())
            {
                using (var db = new BazaZaLiguEntities())
                {
                    Trener trener_update = db.Treners.Find(Selektovani_trener.T.id_trenera);

                    if (trener_update != null)
                    {
                        trener_update.ime_trenera     = Selektovani_trener.T.ime_trenera;
                        trener_update.prezime_trenera = Selektovani_trener.T.prezime_trenera;
                        trener_update.drzava          = Selektovani_trener.T.drzava;

                        if (trener_update.Vodis.Count > 0) //sudio je negde
                        {
                            Vodi stariKlub = db.Vodis.Where(x => x.trener_id_trenera == trener_update.id_trenera).FirstOrDefault();
                            foreach (Igrac igrac in db.Igracs)
                            {
                                if (igrac.naziv_kluba == stariKlub.klub_naziv)
                                {
                                    igrac.Vodi            = null;
                                    db.Entry(igrac).State = System.Data.Entity.EntityState.Modified;
                                }
                            }
                            db.Vodis.Remove(stariKlub);
                            db.SaveChanges();
                        }
                        if (Selektovani_trener.Naziv_Kluba != "" && Selektovani_trener.Naziv_Kluba != null) //odabrao je nekog
                        {
                            Vodi noviVodi = new Vodi()
                            {
                                trener_id_trenera = trener_update.id_trenera
                            };
                            Klub noviKlub = db.Klubs.Where(x => x.naziv == Selektovani_trener.Naziv_Kluba).FirstOrDefault();
                            noviVodi.klub_naziv = noviKlub.naziv;
                            db.Vodis.Add(noviVodi);
                            db.SaveChanges();
                            foreach (Igrac igrac in db.Igracs)
                            {
                                if (igrac.naziv_kluba == noviKlub.naziv)
                                {
                                    igrac.Vodi            = noviVodi;
                                    db.Entry(igrac).State = System.Data.Entity.EntityState.Modified;
                                }
                            }
                        }

                        db.Entry(trener_update).State = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();
                        ucitajTrenera();
                        ucitajKlubove();
                        Selektovani_trener = null;
                        OnPropertyChanged("Selektovani_trener");
                        MessageBox.Show("Uspesno ste promenili trenera", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                        //Ne refreshuje lepo combobox
                    }
                }
            }
        }
Example #5
0
        private void ucitajKlubove()
        {
            KlubUpdate = new ObservableCollection <Klub_Selektovan>();
            using (var db = new BazaZaLiguEntities())
            {
                foreach (Klub item in db.Klubs)
                {
                    Klub_Selektovan klubS = new Klub_Selektovan()
                    {
                        K = item
                    };
                    KlubUpdate.Add(klubS);

                    if (item.Liga != null)
                    {
                        klubS.Naziv_lige = item.Liga.naziv_lige;
                    }
                    //trener
                    Vodi vod = db.Vodis.Where(x => x.klub_naziv == item.naziv).FirstOrDefault();
                    if (vod != null)
                    {
                        Trener trener = db.Treners.Find(vod.trener_id_trenera);
                        klubS.Trener = trener.ime_trenera;
                    }
                    //broj navijaca
                    klubS.Broj_Navijaca = 0;
                    if (item.Navijacs != null)
                    {
                        klubS.Broj_Navijaca = item.Navijacs.Count;
                    }
                }
            }
            OnPropertyChanged("KlubUpdate");
        }
        public ShowKlubViewModel()
        {
            string role = (string)Application.Current.Properties["Role"];

            if (role != "Admin")
            {
                Visibility = Visibility.Hidden;
            }
            else
            {
                Visibility = Visibility.Visible;
            }

            DeleteCommand = new MyICommand(onDelete);
            IspisCommand  = new MyICommand(Stampaj);
            klubovi       = new ObservableCollection <Klub_Selektovan>();

            using (var db = new BazaZaLiguEntities())
            {
                foreach (Klub item in db.Klubs)
                {
                    double          starost = prosekStarosti(item);
                    Klub_Selektovan klubS   = new Klub_Selektovan()
                    {
                        K = item, Prosecna_Starost = (float)starost
                    };
                    if (item.Liga != null)
                    {
                        klubS.Naziv_lige = item.Liga.naziv_lige;
                    }
                    else
                    {
                        klubS.Naziv_lige = "";
                    }
                    //trener
                    Vodi vod = db.Vodis.Where(x => x.klub_naziv == item.naziv).FirstOrDefault();
                    if (vod != null)
                    {
                        Trener trener = db.Treners.Find(vod.trener_id_trenera);
                        klubS.Trener = trener.ime_trenera + " " + trener.prezime_trenera;
                    }
                    else
                    {
                        klubS.Trener = "";
                    }
                    //broj navijaca
                    klubS.Broj_Navijaca = 0;
                    if (item.Navijacs != null)
                    {
                        klubS.Broj_Navijaca = item.Navijacs.Count;
                    }


                    klubovi.Add(klubS);
                }
            }
            OnPropertyChanged("klubovi");
        }
Example #7
0
        public void OnAdd()
        {
            if (validate())
            {
                using (var db = new BazaZaLiguEntities())
                {
                    //id logic
                    int    nextID    = 0;
                    Trener proveraID = null;
                    do
                    {
                        proveraID = db.Treners.Where(x => x.id_trenera == nextID + 1).FirstOrDefault();
                        nextID++;
                    }while (proveraID != null);

                    Klub   novi_klub   = db.Klubs.Find(SelektovaniKlub);
                    Trener novi_trener = new Trener()
                    {
                        id_trenera = nextID, ime_trenera = Trener_prop.ime_trenera, prezime_trenera = Trener_prop.prezime_trenera, drzava = Trener_prop.drzava
                    };
                    db.Treners.Add(novi_trener);

                    if (SelektovaniKlub != "" && SelektovaniKlub != null && SelektovaniKlub != "None")
                    {
                        Vodi novi_vodi = new Vodi()
                        {
                            trener_id_trenera = novi_trener.id_trenera, klub_naziv = novi_klub.naziv, Klub = novi_klub, Trener = novi_trener
                        };
                        db.Vodis.Add(novi_vodi);
                        foreach (Igrac igrac in db.Igracs)
                        {
                            if (igrac.naziv_kluba == novi_klub.naziv)
                            {
                                igrac.Vodi            = novi_vodi;
                                db.Entry(igrac).State = System.Data.Entity.EntityState.Modified;
                            }
                        }
                    }

                    db.SaveChanges();
                    MessageBox.Show("Uspesno dodan trener", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                    Trener_prop.ime_trenera = Trener_prop.prezime_trenera = SelektovaniKlub = "";       //works fine
                    OnPropertyChanged("Trener_prop");
                    ucitajSlobodneKlubove();
                    LogReport(novi_trener);
                }
            }
        }
 private void ucitajKlubove()
 {
     Naziv_Klubova = new ObservableCollection <string>();
     using (var db = new BazaZaLiguEntities())
     {
         foreach (Klub item in db.Klubs)
         {
             //svi slobodni klubovi
             Vodi vodi = db.Vodis.Where(x => x.klub_naziv == item.naziv).FirstOrDefault();
             if (vodi == null)
             {
                 Naziv_Klubova.Add(item.naziv);
             }
         }
         Naziv_Klubova.Add("");     //za davanje otkaza iz kluba
     }
     OnPropertyChanged("Naziv_Klubova");
 }
 private void ucitajTrenera()
 {
     treneri = new ObservableCollection <Trener_Selektovan>();
     using (var db = new BazaZaLiguEntities())
     {
         foreach (Trener item in db.Treners)
         {
             Trener_Selektovan trener = new Trener_Selektovan()
             {
                 T = item
             };
             Vodi klubTrenera = db.Vodis.Where(x => x.trener_id_trenera == item.id_trenera).FirstOrDefault();
             if (klubTrenera != null)
             {
                 trener.Naziv_Kluba = klubTrenera.klub_naziv;
             }
             treneri.Add(trener);
         }
     }
     OnPropertyChanged("treneri");
 }
        public void OnUpdate()
        {
            if (validate())
            {
                using (var db = new BazaZaLiguEntities())
                {
                    double prosek_golova = 0;
                    Igrac  igrac_update  = db.Igracs.Find(Selektovani_igrac.igrac.id_igraca);

                    if (igrac_update != null)
                    {
                        igrac_update.ime_igraca         = Selektovani_igrac.igrac.ime_igraca;
                        igrac_update.prezime_igraca     = Selektovani_igrac.igrac.prezime_igraca;
                        igrac_update.odigranih_utakmica = Selektovani_igrac.igrac.odigranih_utakmica;
                        igrac_update.postignutih_golova = Selektovani_igrac.igrac.postignutih_golova;
                        igrac_update.godine_igraca      = Selektovani_igrac.igrac.godine_igraca;

                        if (igrac_update.odigranih_utakmica != 0 || igrac_update.postignutih_golova != 0)
                        {
                            prosek_golova = (double)db.Database.SqlQuery <double>($"SELECT [dbo].[Prosek]({igrac_update.postignutih_golova},{igrac_update.odigranih_utakmica})").FirstOrDefault();
                            prosek_golova = Math.Round(prosek_golova, 2);
                        }
                        igrac_update.prosek_golova = prosek_golova;

                        if (Selektovani_igrac.Prethodni_klub == Selektovani_igrac.igrac.naziv_kluba || (Selektovani_igrac.Prethodni_klub == null && (Selektovani_igrac.igrac.naziv_kluba == "" || Selektovani_igrac.igrac.naziv_kluba == null))) // nije promenio
                        {
                            db.Entry(igrac_update).State = System.Data.Entity.EntityState.Modified;
                            db.SaveChanges();

                            MessageBox.Show("Uspesno ste promenili igraca", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                            return;
                        }
                        else if (Selektovani_igrac.igrac.naziv_kluba == "" || Selektovani_igrac.igrac.naziv_kluba == null) //dao je otkaz u klubu
                        {
                            Klub stariKlub = db.Klubs.Where(x => x.naziv == selektovani_igrac.igrac.vodi_naziv).FirstOrDefault();
                            if (stariKlub != null)
                            {
                                Vodi stari_trener = db.Vodis.Where(x => x.klub_naziv == stariKlub.naziv).FirstOrDefault();
                                stari_trener.Igracs.Remove(Selektovani_igrac.igrac);
                                stariKlub.Igracs.Remove(Selektovani_igrac.igrac);
                            }
                            igrac_update.naziv_kluba     = null;
                            db.Entry(igrac_update).State = System.Data.Entity.EntityState.Modified;
                            db.SaveChanges();

                            igrac_update.Vodi = null;
                        }
                        else    //odabrao je drugi klub
                        {
                            igrac_update.naziv_kluba = Selektovani_igrac.igrac.naziv_kluba;
                            Klub novi_klub_igraca = db.Klubs.Find(igrac_update.naziv_kluba);
                            igrac_update.Klub = novi_klub_igraca;

                            Vodi stari_trener = db.Vodis.Where(x => x.klub_naziv == Selektovani_igrac.igrac.vodi_naziv).FirstOrDefault();
                            if (stari_trener != null)
                            {
                                stari_trener.Igracs.Remove(Selektovani_igrac.igrac);
                                db.SaveChanges();
                            }

                            Vodi trener_Novog_Kluba = db.Vodis.Where(x => x.klub_naziv == novi_klub_igraca.naziv).FirstOrDefault();
                            igrac_update.Vodi = trener_Novog_Kluba;

                            //generise sledeci ID:
                            int nextID = 0;
                            transferistorija proveraIDa = null;
                            do
                            {
                                proveraIDa = db.transferistorijas.Where(x => x.id == nextID + 1).FirstOrDefault();
                                nextID++;
                            }while (proveraIDa != null);
                            transferistorija transfer = new transferistorija()
                            {
                                id = nextID, Igrac = igrac_update, klub = igrac_update.naziv_kluba
                            };
                            transfer.datum = DateTime.Now.ToShortDateString();
                            db.transferistorijas.Add(transfer);
                            db.SaveChanges();
                        }


                        db.Entry(igrac_update).State = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();

                        MessageBox.Show("Uspesno ste promenili igraca", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                    }
                }

                ucitajKlubove();
            }
        }
Example #11
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                ISession sesija = DataLayer.DataLayer.GetSession();

                Projekat proj = new Projekat();

                if (nazivProjekta.Text == "")
                {
                    throw new Exception("Unesite ime projekta!");
                }
                else
                {
                    proj.ime = nazivProjekta.Text;
                }
                proj.datumPocetka   = datumOd.Value;
                proj.datumZavrsetka = datumDo.Value;

                // Insource projekat
                if (tipIzrade.SelectedIndex == 0)
                {
                    proj.izrada = "insource";

                    if (leaderList.SelectedIndex == -1)
                    {
                        throw new Exception("Izaberite vođu projekta");
                    }

                    var SefID = ((DropDownItem)leaderList.SelectedItem).NumVal;
                    var sef   = sesija.Load <Zaposleni>(SefID);

                    Vodi vodi = new Vodi()
                    {
                        sef = sef, projekat = proj, vodiOd = vodiOdDatePicker.Value, vodiDo = vodiDoDatePicker.Value
                    };
                    proj.vodi.Add(vodi);
                    //    sesija.Save(vodi);
                }
                else if (tipIzrade.SelectedIndex == 1)
                {
                    proj.izrada      = "outsource";
                    proj.nazivFirme  = imeFirme.Text;
                    proj.adresaFirme = adresaFirme.Text;
                }
                else
                {
                    throw new Exception("Izaberite tip izrade!");
                }

                // Dodavanje radnika na projekat
                foreach (var selectedItem in radeNaProjektuList.Items)
                {
                    var       radnikId = ((DropDownItem)selectedItem).NumVal;
                    Zaposleni radnik   = sesija.Load <Zaposleni>(radnikId);
                    // Po defaultu svi radnici pri kreiranju projekta dobijaju da rade od pocetka do kraja na njemu
                    var radi = new RadiNa {
                        projekat = proj, radnik = radnik, datum_pocetka = datumOd.Value, datum_zavrsetka = datumDo.Value
                    };
                    proj.radnici.Add(radi);
                }


                sesija.Save(proj);

                // Commit and close
                sesija.Flush();
                sesija.Close();

                MessageBox.Show("Uspešno ste dodali novi projekat");

                SviProjektiForm pF = new SviProjektiForm();
                pF.MdiParent = this.MdiParent;
                pF.Show();

                this.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Example #12
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                ISession sesija = DataLayer.DataLayer.GetSession();

                IQuery sql = sesija.CreateQuery("FROM Zaposleni as z WHERE z.pozicija LIKE ? ");
                sql.SetString(0, "%senior%");
                this.sefovi = sql.List <Zaposleni>();

                IQuery sql2 = sesija.CreateQuery("From Zaposleni");
                this.zaposleni = sql.List <Zaposleni>();


                // Ako je submitovana forma za unos
                if (Request.ServerVariables["REQUEST_METHOD"] == "POST")
                {
                    // Form validation

                    var      naziv          = Request.Form["nazivProjekta"];
                    var      izrada         = Request.Form["izrada"];
                    DateTime datumPocetka   = Convert.ToDateTime(Request.Form["datumPocetka"]);
                    DateTime datumZavrsetka = Convert.ToDateTime(Request.Form["datumZavrsetka"]);

                    Projekat proj = new Projekat()
                    {
                        ime = naziv, izrada = izrada, datumPocetka = datumPocetka, datumZavrsetka = datumZavrsetka
                    };

                    if (naziv.Length < 3)
                    {
                        throw new Exception("Naziv projekta isuviše kratak");
                    }

                    // Dodavanje selektovanih radnika na projekat
                    var selRad = Request.Form["radniciProjekta"];

                    char[]   delimiters         = { ',' };
                    string[] selektovaniRadnici = selRad.Split(delimiters);

                    foreach (var radnikID in selektovaniRadnici)
                    {
                        var radnik = sesija.Load <Zaposleni>(Convert.ToInt32(radnikID));
                        // Po defaultu svi radnici pri kreiranju projekta dobijaju da rade od pocetka do kraja na njemu
                        var radi = new RadiNa {
                            projekat = proj, radnik = radnik, datum_pocetka = datumPocetka, datum_zavrsetka = datumZavrsetka
                        };
                        proj.radnici.Add(radi);
                    }

                    if (izrada == "insource")
                    {
                        var       sefID  = Convert.ToInt32(Request.Form["sef"]);
                        Zaposleni sef    = sesija.Load <Zaposleni>(sefID);
                        DateTime  vodiOd = Convert.ToDateTime(Request.Form["vodiOd"]);
                        DateTime  vodiDo = Convert.ToDateTime(Request.Form["vodiDo"]);

                        Vodi vodi = new Vodi()
                        {
                            sef = sef, projekat = proj, vodiOd = vodiOd, vodiDo = vodiDo
                        };
                        proj.vodi.Add(vodi);
                    }
                    else if (izrada == "outsource")
                    {
                        var nazivFirme  = Request.Form["nazivFirme"];
                        var adresaFirme = Request.Form["adresaFirme"];
                        proj.nazivFirme  = nazivFirme;
                        proj.adresaFirme = adresaFirme;
                    }
                    else
                    {
                        throw new Exception("Greška pri izboru tipa izrade");
                    }

                    sesija.Save(proj);
                    sesija.Flush();
                    sesija.Close();

                    Response.Redirect("/SviProjekti");
                }
                // Ako nije submitovana forma, prikazujemo formu
                else
                {
                }



                sesija.Flush();
                sesija.Close();
            }
            catch (Exception ex)
            {
                displayError = true;
                this.error.Controls.Add(new LiteralControl(ex.Message));
            }
        }
Example #13
0
        public void OnAdd()
        {
            if (validate())
            {
                using (var db = new BazaZaLiguEntities())
                {
                    double golovi = 0;
                    //generise sledeci ID:
                    int   nextID    = 0;
                    Igrac proveraID = null;
                    do
                    {
                        proveraID = db.Igracs.Where(x => x.id_igraca == nextID + 1).FirstOrDefault();
                        nextID++;
                    }while (proveraID != null);

                    Igrac novi_igrac = new Igrac()
                    {
                        id_igraca = nextID, ime_igraca = Igrac_prop.ime_igraca, prezime_igraca = Igrac_prop.prezime_igraca, postignutih_golova = Igrac_prop.postignutih_golova, odigranih_utakmica = Igrac_prop.odigranih_utakmica, godine_igraca = Igrac_prop.godine_igraca
                    };
                    //prosek golova
                    if (novi_igrac.postignutih_golova != 0 && novi_igrac.odigranih_utakmica != 0)
                    {
                        double postignutih = (double)novi_igrac.postignutih_golova;
                        double odigranih   = (double)novi_igrac.odigranih_utakmica;
                        golovi = (double)db.Database.SqlQuery <double>($"SELECT [dbo].[Prosek]({postignutih},{odigranih})").FirstOrDefault();
                        golovi = Math.Round(golovi, 2);
                    }
                    novi_igrac.prosek_golova = Math.Round(golovi, 2);

                    if (SelektovaniKlub != null && SelektovaniKlub != "")
                    {
                        Klub njegov_klub = db.Klubs.Find(SelektovaniKlub);
                        novi_igrac.Klub        = njegov_klub;
                        novi_igrac.naziv_kluba = njegov_klub.naziv;

                        Vodi njegov_vodi = db.Vodis.Where(x => x.klub_naziv == SelektovaniKlub).FirstOrDefault();
                        if (njegov_vodi != null)
                        {
                            novi_igrac.Vodi            = njegov_vodi;
                            novi_igrac.vodi_id_trenera = njegov_vodi.trener_id_trenera;
                            novi_igrac.vodi_naziv      = njegov_vodi.klub_naziv;
                        }
                    }


                    db.Igracs.Add(novi_igrac);

                    try
                    {
                        db.SaveChanges();
                        //generise sledeci ID:
                        nextID = 0;
                        transferistorija proveraIDa = null;
                        do
                        {
                            proveraIDa = db.transferistorijas.Where(x => x.id == nextID + 1).FirstOrDefault();
                            nextID++;
                        }while (proveraIDa != null);
                        transferistorija transfer = new transferistorija()
                        {
                            id = nextID, Igrac = novi_igrac, klub = novi_igrac.naziv_kluba
                        };
                        transfer.datum = DateTime.Now.ToShortDateString();
                        db.transferistorijas.Add(transfer);
                        db.SaveChanges();

                        MessageBox.Show("Uspesno dodat igrac", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                        LogReport(novi_igrac);
                    }
                    catch (Exception)
                    {
                        MessageBox.Show("Greska prilikom dodaje igraca", "Oprez", MessageBoxButton.OK, MessageBoxImage.Warning);
                    }
                }
            }
        }
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                ISession sesija = DataLayer.DataLayer.GetSession();

                Projekat projekat = sesija.Load<Projekat>(pid);

                projekat.ime = nazivProjekta.Text;
                projekat.datumPocetka = datumOd.Value;
                projekat.datumZavrsetka = datumDo.Value;

                // Ako je insource
                if (tipIzrade.SelectedIndex == 0)
                {
                    projekat.izrada = "insource";

                    var SefID = ((DropDownItem)leaderList.SelectedItem).NumVal;
                    var sef = sesija.Load<Zaposleni>(SefID);

                    // Uzima zadnji zapis o vodjenju projekta
                    IQuery sql = sesija.CreateQuery("FROM Vodi as v WHERE v.projekat = ? ORDER BY LOCID DESC");
                    sql.SetInt32(0, pid);

                    // Trenutni lider projekta
                    IList<Vodi> vodiAtm = sql.List<Vodi>();

                    // Submitovan objekat Vodi
                    Vodi newVodi = new Vodi() { sef = sef, projekat = projekat, vodiOd = vodiOdDatePicker.Value, vodiDo = vodiDoDatePicker.Value };

                    // Ako postoji vec zapis za ovaj projekat
                    if (vodiAtm.Count > 0)
                    {
                        // Ako je ovaj sef poslednji vodio ovaj projekat, samo ga update
                        if (vodiAtm[0].sef.ZID == SefID)
                        {
                            vodiAtm[0].vodiOd = vodiOdDatePicker.Value;
                            vodiAtm[0].vodiDo = vodiDoDatePicker.Value;
                            sesija.Update(vodiAtm[0]);
                        }
                        // Ako je ovaj sef vec vodio ovaj projekat, a ne vodi ga trenutno, dodaj novi zapis
                        else
                        {
                            sesija.Save(newVodi);
                        }
                    }
                    // Ako prvi put vodi ovaj projekat, napravi novi zapis
                    else
                    {
                        sesija.Save(newVodi);
                    }

                    // Brisanje starih zapisa o outsource projektu ( u slucaju da projekat menja tip )
                    projekat.nazivFirme = null;
                    projekat.adresaFirme = null;

                }
                // Ako je outsource
                else if (tipIzrade.SelectedIndex == 1)
                {
                    projekat.izrada = "outsource";
                    projekat.nazivFirme = imeFirme.Text;
                    projekat.adresaFirme = adresaFirme.Text;

                    // Brisanje starih zapisa o insource projektu ( u slucaju da projekat menja tip )
                    projekat.vodi = null;

                    sesija.SaveOrUpdate(projekat);
                }

                sesija.Flush();
                sesija.Close();

                // Reload main form
                ((SviProjektiForm)this.sviProjekti).loadFormData();
                this.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                ISession sesija = DataLayer.DataLayer.GetSession();

                IQuery sql = sesija.CreateQuery("FROM Zaposleni as z WHERE z.pozicija LIKE ? ");
                sql.SetString(0, "%senior%");
                this.sefovi = sql.List<Zaposleni>();

                IQuery sql2 = sesija.CreateQuery("From Zaposleni");
                this.zaposleni = sql.List<Zaposleni>();

                int projID = Convert.ToInt32(Request.QueryString["pid"]);
                this.editProj = sesija.Load<Projekat>(projID);

                // Ako je submitovana forma za unos
                if ( Request.ServerVariables["REQUEST_METHOD"] == "POST")
                {
                    // Form validation

                    var naziv = Request.Form["nazivProjekta"];
                    var izrada = Request.Form["izrada"];
                    DateTime datumPocetka = Convert.ToDateTime(Request.Form["datumPocetka"]);
                    DateTime datumZavrsetka = Convert.ToDateTime(Request.Form["datumZavrsetka"]);

                    editProj.ime = naziv;
                    editProj.izrada = izrada;
                    editProj.datumPocetka = datumPocetka;
                    editProj.datumZavrsetka = datumZavrsetka;

                    if (naziv.Length < 3) throw new Exception("Naziv projekta isuviše kratak");

                    // Dodavanje selektovanih radnika na projekat

                    if (izrada == "insource")
                    {
                        var sefID = Convert.ToInt32(Request.Form["sef"]);
                        Zaposleni sef = sesija.Load<Zaposleni>(sefID);
                        DateTime vodiOd = Convert.ToDateTime(Request.Form["vodiOd"]);
                        DateTime vodiDo = Convert.ToDateTime(Request.Form["vodiDo"]);

                        Vodi vodi = new Vodi() { sef = sef, projekat = editProj, vodiOd = vodiOd, vodiDo = vodiDo };
                        editProj.vodi.Add(vodi);
                    }
                    else if (izrada == "outsource")
                    {
                        var nazivFirme = Request.Form["nazivFirme"];
                        var adresaFirme = Request.Form["adresaFirme"];
                        editProj.nazivFirme = nazivFirme;
                        editProj.adresaFirme = adresaFirme;
                    }
                    else
                    {
                        throw new Exception("Greška pri izboru tipa izrade");
                    }

                    sesija.Update(editProj);
                    sesija.Flush();
                    sesija.Close();

                    Response.Redirect("/SviProjekti");
                }
                // Ako nije submitovana forma, prikazujemo formu
                else
                {

                }

            }
            catch (Exception ex)
            {
                displayError = true;
                this.error.Controls.Add(new LiteralControl(ex.Message));
            }
        }
Example #16
0
        public void onUpdate()
        {
            if (validate())
            {
                using (var db = new BazaZaLiguEntities())
                {
                    Klub klub_update = db.Klubs.Where(x => x.naziv.Equals(Selektovana_klub.K.naziv)).FirstOrDefault();

                    if (klub_update != null)
                    {
                        klub_update.grad = Selektovana_klub.K.grad;
                        if (klub_update.Liga != null) //igrao je u nekoj ligi pre toga, brisi ga iz stare lige
                        {
                            Liga liga = db.Ligas.Find(klub_update.Liga.id_lige);
                            liga.Klubs.Remove(klub_update);
                            db.SaveChanges();
                        }
                        Liga nova_liga = db.Ligas.Where(x => x.naziv_lige == Selektovana_klub.Naziv_lige).FirstOrDefault();
                        klub_update.Liga = nova_liga;    //ako je odabrao prazno stavice null

                        if (klub_update.Vodis.Count > 0) // imao je trenera, brisi starog
                        {
                            Vodi         stariTrener = db.Vodis.Where(x => x.klub_naziv == klub_update.naziv).FirstOrDefault();
                            List <Igrac> igraciKluba = stariTrener.Igracs.ToList();
                            foreach (Igrac item in igraciKluba)
                            {
                                Igrac igrac = db.Igracs.Find(item.id_igraca);
                                igrac.Vodi            = null;
                                igrac.vodi_id_trenera = null;
                                igrac.vodi_naziv      = null;
                                db.Entry(igrac).State = System.Data.Entity.EntityState.Modified;
                            }
                            db.Vodis.Remove(stariTrener);
                            db.SaveChanges();
                        }
                        if (Selektovana_klub.Trener != "" && Selektovana_klub.Trener != null) //odabrao je novog
                        {
                            Vodi noviVodi = new Vodi()
                            {
                                klub_naziv = klub_update.naziv
                            };
                            Trener noviTrener = db.Treners.Where(x => x.ime_trenera == Selektovana_klub.Trener).FirstOrDefault();
                            noviVodi.trener_id_trenera = noviTrener.id_trenera;
                            db.Vodis.Add(noviVodi);
                            db.SaveChanges();
                            foreach (Igrac igrac in db.Igracs)
                            {
                                if (igrac.naziv_kluba == klub_update.naziv)
                                {
                                    igrac.Vodi            = noviVodi;
                                    db.Entry(igrac).State = System.Data.Entity.EntityState.Modified;
                                }
                            }
                        }

                        db.Entry(klub_update).State = System.Data.Entity.EntityState.Modified;
                        db.SaveChanges();
                        MessageBox.Show("Uspesno ste promenili klub", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                    }
                    ucitajKlubove();
                    ucitajTrenereILige();
                    Vrednost = "";
                    OnPropertyChanged("Vrednost");
                }
            }
        }
Example #17
0
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                ISession sesija = DataLayer.DataLayer.GetSession();

                IQuery sql = sesija.CreateQuery("FROM Zaposleni as z WHERE z.pozicija LIKE ? ");
                sql.SetString(0, "%senior%");
                this.sefovi = sql.List <Zaposleni>();

                IQuery sql2 = sesija.CreateQuery("From Zaposleni");
                this.zaposleni = sql.List <Zaposleni>();


                int projID = Convert.ToInt32(Request.QueryString["pid"]);
                this.editProj = sesija.Load <Projekat>(projID);

                // Ako je submitovana forma za unos
                if (Request.ServerVariables["REQUEST_METHOD"] == "POST")
                {
                    // Form validation

                    var      naziv          = Request.Form["nazivProjekta"];
                    var      izrada         = Request.Form["izrada"];
                    DateTime datumPocetka   = Convert.ToDateTime(Request.Form["datumPocetka"]);
                    DateTime datumZavrsetka = Convert.ToDateTime(Request.Form["datumZavrsetka"]);

                    editProj.ime            = naziv;
                    editProj.izrada         = izrada;
                    editProj.datumPocetka   = datumPocetka;
                    editProj.datumZavrsetka = datumZavrsetka;

                    if (naziv.Length < 3)
                    {
                        throw new Exception("Naziv projekta isuviše kratak");
                    }

                    // Dodavanje selektovanih radnika na projekat

                    if (izrada == "insource")
                    {
                        var       sefID  = Convert.ToInt32(Request.Form["sef"]);
                        Zaposleni sef    = sesija.Load <Zaposleni>(sefID);
                        DateTime  vodiOd = Convert.ToDateTime(Request.Form["vodiOd"]);
                        DateTime  vodiDo = Convert.ToDateTime(Request.Form["vodiDo"]);

                        Vodi vodi = new Vodi()
                        {
                            sef = sef, projekat = editProj, vodiOd = vodiOd, vodiDo = vodiDo
                        };
                        editProj.vodi.Add(vodi);
                    }
                    else if (izrada == "outsource")
                    {
                        var nazivFirme  = Request.Form["nazivFirme"];
                        var adresaFirme = Request.Form["adresaFirme"];
                        editProj.nazivFirme  = nazivFirme;
                        editProj.adresaFirme = adresaFirme;
                    }
                    else
                    {
                        throw new Exception("Greška pri izboru tipa izrade");
                    }

                    sesija.Update(editProj);
                    sesija.Flush();
                    sesija.Close();

                    Response.Redirect("/SviProjekti");
                }
                // Ako nije submitovana forma, prikazujemo formu
                else
                {
                }
            }
            catch (Exception ex)
            {
                displayError = true;
                this.error.Controls.Add(new LiteralControl(ex.Message));
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                ISession sesija = DataLayer.DataLayer.GetSession();

                IQuery sql = sesija.CreateQuery("FROM Zaposleni as z WHERE z.pozicija LIKE ? ");
                sql.SetString(0, "%senior%");
                this.sefovi = sql.List<Zaposleni>();

                IQuery sql2 = sesija.CreateQuery("From Zaposleni");
                this.zaposleni = sql.List<Zaposleni>();

                // Ako je submitovana forma za unos
                if ( Request.ServerVariables["REQUEST_METHOD"] == "POST")
                {
                    // Form validation

                    var naziv = Request.Form["nazivProjekta"];
                    var izrada = Request.Form["izrada"];
                    DateTime datumPocetka = Convert.ToDateTime(Request.Form["datumPocetka"]);
                    DateTime datumZavrsetka = Convert.ToDateTime(Request.Form["datumZavrsetka"]);

                    Projekat proj = new Projekat() { ime = naziv, izrada = izrada, datumPocetka = datumPocetka, datumZavrsetka = datumZavrsetka  };

                    if (naziv.Length < 3) throw new Exception("Naziv projekta isuviše kratak");

                    // Dodavanje selektovanih radnika na projekat
                    var selRad = Request.Form["radniciProjekta"];

                    char[] delimiters = { ',' };
                    string[] selektovaniRadnici = selRad.Split(delimiters);

                    foreach (var radnikID in selektovaniRadnici)
                    {
                        var radnik = sesija.Load<Zaposleni>(Convert.ToInt32(radnikID));
                        // Po defaultu svi radnici pri kreiranju projekta dobijaju da rade od pocetka do kraja na njemu
                        var radi = new RadiNa { projekat = proj, radnik = radnik, datum_pocetka = datumPocetka, datum_zavrsetka = datumZavrsetka };
                        proj.radnici.Add(radi);
                    }

                    if (izrada == "insource")
                    {
                        var sefID = Convert.ToInt32(Request.Form["sef"]);
                        Zaposleni sef = sesija.Load<Zaposleni>(sefID);
                        DateTime vodiOd = Convert.ToDateTime(Request.Form["vodiOd"]);
                        DateTime vodiDo = Convert.ToDateTime(Request.Form["vodiDo"]);

                        Vodi vodi = new Vodi() { sef = sef, projekat = proj, vodiOd = vodiOd, vodiDo = vodiDo };
                        proj.vodi.Add(vodi);
                    }
                    else if (izrada == "outsource")
                    {
                        var nazivFirme = Request.Form["nazivFirme"];
                        var adresaFirme = Request.Form["adresaFirme"];
                        proj.nazivFirme = nazivFirme;
                        proj.adresaFirme = adresaFirme;
                    }
                    else
                    {
                        throw new Exception("Greška pri izboru tipa izrade");
                    }

                    sesija.Save(proj);
                    sesija.Flush();
                    sesija.Close();

                    Response.Redirect("/SviProjekti");
                }
                // Ako nije submitovana forma, prikazujemo formu
                else
                {

                }

                sesija.Flush();
                sesija.Close();

            }
            catch (Exception ex)
            {
                displayError = true;
                this.error.Controls.Add(new LiteralControl(ex.Message));
            }
        }
Example #19
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                ISession sesija = DataLayer.DataLayer.GetSession();

                Projekat proj = new Projekat();

                if (nazivProjekta.Text == "")
                    throw new Exception("Unesite ime projekta!");
                else
                    proj.ime = nazivProjekta.Text;
                proj.datumPocetka = datumOd.Value;
                proj.datumZavrsetka = datumDo.Value;

                // Insource projekat
                if (tipIzrade.SelectedIndex == 0)
                {
                    proj.izrada = "insource";

                    if (leaderList.SelectedIndex == -1)
                        throw new Exception("Izaberite vođu projekta");

                    var SefID = ((DropDownItem)leaderList.SelectedItem).NumVal;
                    var sef = sesija.Load<Zaposleni>(SefID);

                    Vodi vodi = new Vodi() { sef = sef, projekat = proj, vodiOd = vodiOdDatePicker.Value, vodiDo = vodiDoDatePicker.Value };
                    proj.vodi.Add(vodi);
                //    sesija.Save(vodi);
                }
                else if (tipIzrade.SelectedIndex == 1)
                {
                    proj.izrada = "outsource";
                    proj.nazivFirme = imeFirme.Text;
                    proj.adresaFirme = adresaFirme.Text;
                }
                else
                {
                    throw new Exception("Izaberite tip izrade!");
                }

                // Dodavanje radnika na projekat
                foreach (var selectedItem in radeNaProjektuList.Items)
                {
                    var radnikId = ((DropDownItem)selectedItem).NumVal;
                    Zaposleni radnik = sesija.Load<Zaposleni>(radnikId);
                    // Po defaultu svi radnici pri kreiranju projekta dobijaju da rade od pocetka do kraja na njemu
                    var radi = new RadiNa { projekat = proj, radnik = radnik, datum_pocetka = datumOd.Value, datum_zavrsetka = datumDo.Value };
                    proj.radnici.Add(radi);
                }

                sesija.Save(proj);

                // Commit and close
                sesija.Flush();
                sesija.Close();

                MessageBox.Show("Uspešno ste dodali novi projekat");

                SviProjektiForm pF = new SviProjektiForm();
                pF.MdiParent = this.MdiParent;
                pF.Show();

                this.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }
Example #20
0
        public void onDelete()
        {
            using (var db = new BazaZaLiguEntities())
            {
                Klub klubZaBrisanje = db.Klubs.Find(Selektovana_klub.K.naziv);
                Klub logReportKlub  = klubZaBrisanje;

                if (!izvrsiProvere(klubZaBrisanje))
                {
                    //nije ispunio uslove brisanje, ne brisi
                    return;
                }

                //brisi poseduje:
                List <Poseduje> provera_poseduje = db.Posedujes.Where(x => x.klub_naziv == Selektovana_klub.K.naziv).ToList();
                foreach (Poseduje item in provera_poseduje)
                {
                    item.Obezbedjenjes.Clear();
                    db.Posedujes.Remove(item);
                    db.SaveChanges();
                }

                //brisi trenere koji vodi klub
                Vodi provera_vodi = db.Vodis.Where(x => x.klub_naziv == Selektovana_klub.K.naziv).FirstOrDefault();
                if (provera_vodi != null)
                {
                    provera_vodi.Igracs.Clear();
                    db.Entry(provera_vodi).State = System.Data.Entity.EntityState.Deleted;
                    db.SaveChanges();
                }

                //brisi kod igraca:
                List <Igrac> provera_igraca = db.Igracs.Where(x => x.naziv_kluba == Selektovana_klub.K.naziv).ToList(); //vrati sve igrace koji igraju za klub
                foreach (Igrac item in provera_igraca)
                {
                    Igrac igrac = db.Igracs.Find(item.id_igraca); //FK
                    igrac.Klub            = null;
                    igrac.naziv_kluba     = null;
                    igrac.Vodi            = null;
                    igrac.vodi_id_trenera = null;
                    igrac.vodi_naziv      = null;

                    db.Entry(igrac).State = System.Data.Entity.EntityState.Modified;

                    db.SaveChanges();
                }

                db.Entry(klubZaBrisanje).State = System.Data.Entity.EntityState.Deleted; //brise iz baze
                db.SaveChanges();

                var klub_brisi = klubovi.Where(x => x.K.naziv == klubZaBrisanje.naziv).First();
                if (klub_brisi != null)
                {
                    klubovi.Remove(klub_brisi); //brisemo iz liste
                }

                OnPropertyChanged("klubovi");
                try
                {
                    db.SaveChanges();
                    MessageBox.Show("Uspesno ste obrisali klub", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk);
                    LogReport(logReportKlub);
                }
                catch (Exception)
                {
                    MessageBox.Show("Od kluba zavise drugi entiteti, prvo njih obrisati", "Oprez", MessageBoxButton.OK, MessageBoxImage.Warning);
                }
            }
        }
Example #21
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            try
            {
                ISession sesija = DataLayer.DataLayer.GetSession();

                Projekat projekat = sesija.Load <Projekat>(pid);

                projekat.ime            = nazivProjekta.Text;
                projekat.datumPocetka   = datumOd.Value;
                projekat.datumZavrsetka = datumDo.Value;

                // Ako je insource
                if (tipIzrade.SelectedIndex == 0)
                {
                    projekat.izrada = "insource";

                    var SefID = ((DropDownItem)leaderList.SelectedItem).NumVal;
                    var sef   = sesija.Load <Zaposleni>(SefID);

                    // Uzima zadnji zapis o vodjenju projekta
                    IQuery sql = sesija.CreateQuery("FROM Vodi as v WHERE v.projekat = ? ORDER BY LOCID DESC");
                    sql.SetInt32(0, pid);

                    // Trenutni lider projekta
                    IList <Vodi> vodiAtm = sql.List <Vodi>();

                    // Submitovan objekat Vodi
                    Vodi newVodi = new Vodi()
                    {
                        sef = sef, projekat = projekat, vodiOd = vodiOdDatePicker.Value, vodiDo = vodiDoDatePicker.Value
                    };

                    // Ako postoji vec zapis za ovaj projekat
                    if (vodiAtm.Count > 0)
                    {
                        // Ako je ovaj sef poslednji vodio ovaj projekat, samo ga update
                        if (vodiAtm[0].sef.ZID == SefID)
                        {
                            vodiAtm[0].vodiOd = vodiOdDatePicker.Value;
                            vodiAtm[0].vodiDo = vodiDoDatePicker.Value;
                            sesija.Update(vodiAtm[0]);
                        }
                        // Ako je ovaj sef vec vodio ovaj projekat, a ne vodi ga trenutno, dodaj novi zapis
                        else
                        {
                            sesija.Save(newVodi);
                        }
                    }
                    // Ako prvi put vodi ovaj projekat, napravi novi zapis
                    else
                    {
                        sesija.Save(newVodi);
                    }

                    // Brisanje starih zapisa o outsource projektu ( u slucaju da projekat menja tip )
                    projekat.nazivFirme  = null;
                    projekat.adresaFirme = null;
                }
                // Ako je outsource
                else if (tipIzrade.SelectedIndex == 1)
                {
                    projekat.izrada      = "outsource";
                    projekat.nazivFirme  = imeFirme.Text;
                    projekat.adresaFirme = adresaFirme.Text;

                    // Brisanje starih zapisa o insource projektu ( u slucaju da projekat menja tip )
                    projekat.vodi = null;

                    sesija.SaveOrUpdate(projekat);
                }

                sesija.Flush();
                sesija.Close();

                // Reload main form
                ((SviProjektiForm)this.sviProjekti).loadFormData();
                this.Close();
            }
            catch (Exception ex)
            {
                MessageBox.Show(ex.Message);
            }
        }