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; }
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; }