private void insertRezultatSpravaFinaleKupaUpdate(GimnasticarUcesnik gimnasticar, RezultatskoTakmicenje rezTak,
     Sprava sprava, KvalifikacioniStatus newKvalStatus)
 {
     RezultatSpravaFinaleKupaDAO dao = new RezultatSpravaFinaleKupaDAO();
     if (!dao.postojiRezultatSpravaFinaleKupaUpdate(gimnasticar, rezTak, sprava))
         dao.insert(gimnasticar, rezTak, sprava, newKvalStatus);
     else
         dao.update(gimnasticar, rezTak, sprava, newKvalStatus);
 }
        private IList<RezultatskoTakmicenje> loadRezTakmicenja(Takmicenje takmicenje)
        {
            IList<RezultatskoTakmicenje> rezTakmicenjaPrvoKolo = loadRezTakmicenjaPrethKolo(takmicenje.PrvoKolo.Id);
            IList<RezultatskoTakmicenje> rezTakmicenjaDrugoKolo = loadRezTakmicenjaPrethKolo(takmicenje.DrugoKolo.Id);

            string query = @"select distinct r
                    from RezultatskoTakmicenje r
                    left join fetch r.Kategorija kat
                    left join fetch r.TakmicenjeDescription d
                    left join fetch r.Takmicenje1 t
                    left join fetch t.Gimnasticari g
                    left join fetch g.DrzavaUcesnik dr
                    left join fetch g.KlubUcesnik kl
                    where r.Takmicenje.Id = :takmicenjeId
                    order by r.RedBroj";

            IList<RezultatskoTakmicenje> result = dataContext.
                ExecuteQuery<RezultatskoTakmicenje>(QueryLanguageType.HQL, query,
                        new string[] { "takmicenjeId" },
                        new object[] { takmicenje.Id });

            RezultatSpravaFinaleKupaDAO dao = new RezultatSpravaFinaleKupaDAO();

            foreach (RezultatskoTakmicenje rezTak in result)
            {
                // potrebno u Poredak.create
                NHibernateUtil.Initialize(rezTak.Propozicije);
                List<RezultatSpravaFinaleKupaUpdate> rezultatiUpdate = dao.findByRezTak(rezTak);
                takmicenje.createPoredakSpravaFinaleKupa(rezTak, rezTakmicenjaPrvoKolo, rezTakmicenjaDrugoKolo,
                    rezultatiUpdate);
            }
            return result;
        }
Exemple #3
0
        private IList<RezultatskoTakmicenje> loadRezTakmicenja(int takmicenjeId)
        {
            IList<RezultatskoTakmicenje> rezTakmicenjaPrvoKolo = loadRezTakmicenjaPrethKolo(takmicenje.PrvoKolo.Id);
            IList<RezultatskoTakmicenje> rezTakmicenjaDrugoKolo = loadRezTakmicenjaPrethKolo(takmicenje.DrugoKolo.Id);

            string query = @"select distinct r
                    from RezultatskoTakmicenje r
                    left join fetch r.Kategorija kat
                    left join fetch r.TakmicenjeDescription d
                    left join fetch r.Takmicenje1 t
                    left join fetch t.Gimnasticari g
                    left join fetch g.DrzavaUcesnik dr
                    left join fetch g.KlubUcesnik kl
                    where r.Takmicenje.Id = :takmicenjeId
                    order by r.RedBroj";

            IList<RezultatskoTakmicenje> result = dataContext.
                ExecuteQuery<RezultatskoTakmicenje>(QueryLanguageType.HQL, query,
                        new string[] { "takmicenjeId" },
                        new object[] { takmicenjeId });

            RezultatSpravaFinaleKupaDAO dao = new RezultatSpravaFinaleKupaDAO();

            foreach (RezultatskoTakmicenje rezTak in result)
            {
                // potrebno u Poredak.create
                NHibernateUtil.Initialize(rezTak.Propozicije);

                RezultatskoTakmicenje rezTakPrvoKolo = findRezTakmicenje(rezTakmicenjaPrvoKolo, rezTak.Kategorija);
                RezultatskoTakmicenje rezTakDrugoKolo = findRezTakmicenje(rezTakmicenjaDrugoKolo, rezTak.Kategorija);

                rezTak.Takmicenje1.initPoredakSpravaFinaleKupa(takmicenje.Gimnastika);
                List<RezultatSpravaFinaleKupaUpdate> rezultatiUpdate = dao.findByRezTak(rezTak);

                foreach (Sprava s in Sprave.getSprave(takmicenje.Gimnastika))
                {
                    if (s != Sprava.Preskok)
                    {
                        PoredakSprava poredakPrvoKolo = null;
                        PoredakSprava poredakDrugoKolo = null;
                        if (rezTakPrvoKolo != null)
                            poredakPrvoKolo = rezTakPrvoKolo.Takmicenje1.getPoredakSprava(s);
                        if (rezTakDrugoKolo != null)
                            poredakDrugoKolo = rezTakDrugoKolo.Takmicenje1.getPoredakSprava(s);
                        rezTak.Takmicenje1.getPoredakSpravaFinaleKupa(s).create(rezTak,
                            poredakPrvoKolo, poredakDrugoKolo, rezultatiUpdate);
                    }
                    else
                    {
                        PoredakPreskok poredakPrvoKolo = null;
                        PoredakPreskok poredakDrugoKolo = null;
                        if (rezTakPrvoKolo != null)
                            poredakPrvoKolo = rezTakPrvoKolo.Takmicenje1.PoredakPreskok;
                        if (rezTakDrugoKolo != null)
                            poredakDrugoKolo = rezTakDrugoKolo.Takmicenje1.PoredakPreskok;

                        bool poredakNaOsnovuObaPreskokaPrvoKolo = false;
                        bool poredakNaOsnovuObaPreskokaDrugoKolo = false;
                        if (rezTakPrvoKolo != null)
                            poredakNaOsnovuObaPreskokaPrvoKolo =
                                rezTakPrvoKolo.Propozicije.PoredakTak3PreskokNaOsnovuObaPreskoka;
                        if (rezTakDrugoKolo != null)
                            poredakNaOsnovuObaPreskokaDrugoKolo =
                                rezTakDrugoKolo.Propozicije.PoredakTak3PreskokNaOsnovuObaPreskoka;

                        rezTak.Takmicenje1.getPoredakSpravaFinaleKupa(s).create(rezTak,
                            poredakPrvoKolo, poredakDrugoKolo,
                            poredakNaOsnovuObaPreskokaPrvoKolo, poredakNaOsnovuObaPreskokaDrugoKolo, rezultatiUpdate);
                    }
                }
            }
            return result;
        }