protected override void updateUIFromEntity(DomainObject entity) { GimnasticarUcesnik gimnasticar = (GimnasticarUcesnik)entity; txtIme.Text = gimnasticar.Ime; txtSrednjeIme.Text = gimnasticar.SrednjeIme; txtPrezime.Text = gimnasticar.Prezime; txtDatumRodj.Text = String.Empty; if (gimnasticar.DatumRodjenja != null) { txtDatumRodj.Text = gimnasticar.DatumRodjenja.ToString("d"); } SelectedKlub = gimnasticar.KlubUcesnik; SelectedDrzava = gimnasticar.DrzavaUcesnik; txtTakKategorija.Text = kategorija.ToString(); IList <RezultatskoTakmicenje> rezTakmicenja = DAOFactoryFactory.DAOFactory.GetRezultatskoTakmicenjeDAO().FindByGimnasticar(gimnasticar); foreach (RezultatskoTakmicenje rt in rezTakmicenja) { lstTakmicenja.Items.Add(rt.Naziv); } rbtDrzava.Checked = gimnasticar.NastupaZaDrzavu; }
private static GimnasticarUcesnik createGimnasticarUcesnik(string ime, string srednjeIme, string prezime, Datum datumRodjenja, TakmicarskaKategorija kategorija, string nazivDrzave, string kodDrzave, string nazivKluba, string kodKluba) { GimnasticarUcesnik result = new GimnasticarUcesnik(); result.Ime = ime; result.SrednjeIme = srednjeIme; result.Prezime = prezime; result.DatumRodjenja = datumRodjenja; result.TakmicarskaKategorija = kategorija; if (String.IsNullOrEmpty(nazivDrzave)) { result.DrzavaUcesnik = null; } else { DrzavaUcesnikDAO drzavaUcesnikDAO = DAOFactoryFactory.DAOFactory.GetDrzavaUcesnikDAO(); DrzavaUcesnik drzavaUcesnik = drzavaUcesnikDAO.FindDrzavaUcesnik(kategorija.Takmicenje.Id, nazivDrzave); if (drzavaUcesnik == null) { drzavaUcesnik = new DrzavaUcesnik(); drzavaUcesnik.Naziv = nazivDrzave; drzavaUcesnik.Kod = kodDrzave; drzavaUcesnik.Takmicenje = kategorija.Takmicenje; drzavaUcesnikDAO.Add(drzavaUcesnik); } result.DrzavaUcesnik = drzavaUcesnik; } if (String.IsNullOrEmpty(nazivKluba)) { result.KlubUcesnik = null; } else { KlubUcesnikDAO klubUcesnikDAO = DAOFactoryFactory.DAOFactory.GetKlubUcesnikDAO(); KlubUcesnik klubUcesnik = klubUcesnikDAO.FindKlubUcesnik(kategorija.Takmicenje.Id, nazivKluba); if (klubUcesnik == null) { klubUcesnik = new KlubUcesnik(); klubUcesnik.Naziv = nazivKluba; klubUcesnik.Kod = kodKluba; klubUcesnik.Takmicenje = kategorija.Takmicenje; klubUcesnikDAO.Add(klubUcesnik); } result.KlubUcesnik = klubUcesnik; } return(result); }
private SudijaUcesnik createSudijaUcesnik(Sudija s, Takmicenje takmicenje) { SudijaUcesnik result = new SudijaUcesnik(); result.Ime = s.Ime; result.Prezime = s.Prezime; result.Pol = s.Pol; result.Takmicenje = takmicenje; if (s.Drzava == null) { result.DrzavaUcesnik = null; } else { DrzavaUcesnikDAO drzavaUcesnikDAO = DAOFactoryFactory.DAOFactory.GetDrzavaUcesnikDAO(); DrzavaUcesnik drzavaUcesnik = drzavaUcesnikDAO.FindDrzavaUcesnik( takmicenje.Id, s.Drzava.Naziv); if (drzavaUcesnik == null) { drzavaUcesnik = new DrzavaUcesnik(); drzavaUcesnik.Naziv = s.Drzava.Naziv; drzavaUcesnik.Kod = s.Drzava.Kod; drzavaUcesnik.Takmicenje = takmicenje; drzavaUcesnikDAO.Add(drzavaUcesnik); } result.DrzavaUcesnik = drzavaUcesnik; } if (s.Klub == null) { result.KlubUcesnik = null; } else { KlubUcesnikDAO klubUcesnikDAO = DAOFactoryFactory.DAOFactory.GetKlubUcesnikDAO(); KlubUcesnik klubUcesnik = klubUcesnikDAO.FindKlubUcesnik( takmicenje.Id, s.Klub.Naziv); if (klubUcesnik == null) { klubUcesnik = new KlubUcesnik(); klubUcesnik.Naziv = s.Klub.Naziv; klubUcesnik.Kod = s.Klub.Kod; klubUcesnik.Takmicenje = takmicenje; klubUcesnikDAO.Add(klubUcesnik); } result.KlubUcesnik = klubUcesnik; } return(result); }
// TODO: Dodaj mogucnost promene kategorije (samo bi se promenila kategorija dok bi sve drugo ostalo // isto - gimnasticar bi i dalje bio u istim takmicenjima, ekipama, imao bi iste ocene. Prvo proveri da // li je ovo uopste moguce, tj. da li nece da dovede do greske u nekom drugom delu programa). public GimnasticarUcesnikForm(Nullable <int> gimnasticarUcesnikId, TakmicarskaKategorija kategorija, Gimnastika gimnastika) { if (gimnasticarUcesnikId == null) { throw new ArgumentException("GimnasticarUcesnikForm only works in edit mode."); } InitializeComponent(); this.updateLastModified = true; this.gimnastika = gimnastika; emptyKlub = new KlubUcesnik(); emptyKlub.Naziv = PRAZNO; emptyDrzava = new DrzavaUcesnik(); emptyDrzava.Naziv = PRAZNO; this.kategorija = kategorija; initialize(gimnasticarUcesnikId, true); }
protected override void updateUIFromEntity(DomainObject entity) { Ekipa ekipa = (Ekipa)entity; cmbKlub.SelectedIndex = -1; for (int i = 0; i < cmbKlub.Items.Count; ++i) { KlubUcesnik k = cmbKlub.Items[i] as KlubUcesnik; if (k != null && k.Naziv == ekipa.Naziv) { rbtKlub.Checked = true; //cmbKlub.SelectedItem = k; cmbKlub.SelectedIndex = i; break; } } cmbDrzava.SelectedIndex = -1; for (int i = 0; i < cmbDrzava.Items.Count; ++i) { DrzavaUcesnik d = cmbDrzava.Items[i] as DrzavaUcesnik; if (d != null && d.Naziv == ekipa.Naziv) { rbtDrzava.Checked = true; cmbDrzava.SelectedIndex = i; break; } } // bitno je da ove dve naredbe idu posle naredbi kojima se podesava // drzava ili klub, za slucaj da su naziv i kod uneti rucno (da bi se // prebrisale automatske vrednosti koje se zadaju kada se izabere drzava // ili klub) txtNaziv.Text = ekipa.Naziv; txtKod.Text = ekipa.Kod; setClanovi(ekipa.Gimnasticari); }
private void updateNazivKod() { txtNaziv.Text = String.Empty; txtKod.Text = String.Empty; if (rbtKlub.Checked) { KlubUcesnik klub = cmbKlub.SelectedItem as KlubUcesnik; if (klub != null) { txtNaziv.Text = klub.Naziv; txtKod.Text = klub.Kod; } } else if (rbtDrzava.Checked) { DrzavaUcesnik drzava = cmbDrzava.SelectedItem as DrzavaUcesnik; if (drzava != null) { txtNaziv.Text = drzava.Naziv; txtKod.Text = drzava.Kod; } } }
private void loadDrzave(int takmicenjeId) { ISet <DrzavaUcesnik> drzaveSet = new HashSet <DrzavaUcesnik>( DAOFactoryFactory.DAOFactory.GetDrzavaUcesnikDAO().FindByTakmicenje(takmicenjeId)); foreach (Drzava d in DAOFactoryFactory.DAOFactory.GetDrzavaDAO().FindAll()) { DrzavaUcesnik du = new DrzavaUcesnik(); du.Naziv = d.Naziv; du.Kod = d.Kod; if (!drzaveSet.Contains(du)) { drzaveSet.Add(du); } } drzave = new List <DrzavaUcesnik>(drzaveSet); PropertyDescriptor propDesc = TypeDescriptor.GetProperties(typeof(DrzavaUcesnik))["Naziv"]; drzave.Sort(new SortComparer <DrzavaUcesnik>(propDesc, ListSortDirection.Ascending)); drzave.Insert(0, emptyDrzava); }
private void loadFromDump(string dump) { IdMap map = new IdMap(); // clear takmicenje = new Takmicenje(); klubovi = new List <KlubUcesnik>(); drzave = new List <DrzavaUcesnik>(); gimnasticari = new List <GimnasticarUcesnik>(); ocene = new List <Ocena>(); rasporediNastupa = new List <RasporedNastupa>(); sudije = new List <SudijaUcesnik>(); rasporediSudija = new List <RasporedSudija>(); rezTakmicenja = new List <RezultatskoTakmicenje>(); using (StringReader reader = new StringReader(dump)) { if (reader.ReadLine() != BILTEN_TAKMICENJE_DUMP) { throw new Exception("Neuspesno ucitavanje takmicenja."); } if (int.Parse(reader.ReadLine()) != Program.VERZIJA_PROGRAMA) { throw new Exception("Neuspesno uvozenje takmicenja.\n\nTakmicenje je izvezeno koristeci verziju " + "programa razlicitu od trenutne, i nije ga moguce uvesti."); } int prvoKoloId, drugoKoloId, treceKoloId, cetvrtoKoloId; int vrhovniSudijaId; // load takmicenje string id = reader.ReadLine(); map.takmicenjeMap.Add(int.Parse(id), takmicenje); takmicenje.loadFromDump(reader, map, out prvoKoloId, out drugoKoloId, out treceKoloId, out cetvrtoKoloId, out vrhovniSudijaId); // TODO4: Ovde moze da se desi da ID koji je postojao u biltenu iz koga se takmicenje izvozilo ne postoji // u biltenu u koji se takmicenje uvozi. takmicenje.PrvoKolo = prvoKoloId == -1 ? null : DAOFactoryFactory.DAOFactory.GetTakmicenjeDAO().FindById(prvoKoloId); takmicenje.DrugoKolo = drugoKoloId == -1 ? null : DAOFactoryFactory.DAOFactory.GetTakmicenjeDAO().FindById(drugoKoloId); takmicenje.TreceKolo = treceKoloId == -1 ? null : DAOFactoryFactory.DAOFactory.GetTakmicenjeDAO().FindById(treceKoloId); takmicenje.CetvrtoKolo = cetvrtoKoloId == -1 ? null : DAOFactoryFactory.DAOFactory.GetTakmicenjeDAO().FindById(cetvrtoKoloId); // Vrhovnog sudiju ucitavam dole (nakon sto ucitam sve sudije ucesnike). // load klubovi int count = int.Parse(reader.ReadLine()); for (int i = 0; i < count; ++i) { id = reader.ReadLine(); KlubUcesnik k = new KlubUcesnik(); map.kluboviMap.Add(int.Parse(id), k); k.loadFromDump(reader, map); klubovi.Add(k); } // load drzave count = int.Parse(reader.ReadLine()); for (int i = 0; i < count; ++i) { id = reader.ReadLine(); DrzavaUcesnik d = new DrzavaUcesnik(); map.drzaveMap.Add(int.Parse(id), d); d.loadFromDump(reader, map); drzave.Add(d); } // load gimnasticari count = int.Parse(reader.ReadLine()); for (int i = 0; i < count; ++i) { id = reader.ReadLine(); GimnasticarUcesnik g = new GimnasticarUcesnik(); map.gimnasticariMap.Add(int.Parse(id), g); g.loadFromDump(reader, map); gimnasticari.Add(g); } // load ocene count = int.Parse(reader.ReadLine()); for (int i = 0; i < count; ++i) { id = reader.ReadLine(); Ocena o = new Ocena(); o.loadFromDump(reader, map); ocene.Add(o); } // load rasporedi nastupa count = int.Parse(reader.ReadLine()); for (int i = 0; i < count; ++i) { id = reader.ReadLine(); RasporedNastupa r = new RasporedNastupa(); r.loadFromDump(reader, map); rasporediNastupa.Add(r); } // load sudije count = int.Parse(reader.ReadLine()); for (int i = 0; i < count; ++i) { id = reader.ReadLine(); SudijaUcesnik s = new SudijaUcesnik(); map.sudijeMap.Add(int.Parse(id), s); s.loadFromDump(reader, map); sudije.Add(s); } takmicenje.VrhovniSudija = vrhovniSudijaId == -1 ? null : map.sudijeMap[vrhovniSudijaId]; // load rasporedi sudija count = int.Parse(reader.ReadLine()); for (int i = 0; i < count; ++i) { id = reader.ReadLine(); RasporedSudija r = new RasporedSudija(); r.loadFromDump(reader, map); rasporediSudija.Add(r); } // load rezultatska takmicenja count = int.Parse(reader.ReadLine()); for (int i = 0; i < count; ++i) { id = reader.ReadLine(); RezultatskoTakmicenje rt = new RezultatskoTakmicenje(); rt.loadFromDump(reader, map); rezTakmicenja.Add(rt); } } }
private void insertGimnasticariAndDrzaveUcesniciAndAddRezTakmicenjaUcesnici(Takmicenje takmicenje) { TakmicarskaKategorija seniori = DAOFactoryFactory.DAOFactory.GetTakmicarskaKategorijaDAO().FindByTakmicenje(takmicenje.Id)[0]; RezultatskoTakmicenjeDAO rezTakmicenjeDAO = DAOFactoryFactory.DAOFactory.GetRezultatskoTakmicenjeDAO(); RezultatskoTakmicenje rezTak = rezTakmicenjeDAO.FindByKategorija(seniori)[0]; string fileName; if (gimnastika == Gimnastika.MSG) { fileName = @"..\..\test\Data\KvalifikantiMuskarci.txt"; } else { fileName = @"..\..\test\Data\KvalifikantiZene.txt"; } List <Drzava> drzave = new List <Drzava>(DAOFactoryFactory.DAOFactory.GetDrzavaDAO().FindAll()); List <DrzavaUcesnik> drzaveUcesnici = new List <DrzavaUcesnik>(); GimnasticariParser parser = new GimnasticariParser(); parser.parse(fileName); foreach (object[] o in parser.Gimnasticari) { int broj = (int)o[0]; string prezime = (string)o[1]; string ime = (string)o[2]; string kod = (string)o[3]; DateTime datumRodj = (DateTime)o[4]; GimnasticarUcesnik gimnasticarUcesnik = new GimnasticarUcesnik(); gimnasticarUcesnik.Ime = ime; gimnasticarUcesnik.Prezime = prezime; gimnasticarUcesnik.DatumRodjenja = new Datum(datumRodj); DrzavaUcesnik drzavaUcesnik = findDrzavaUcesnik(kod, drzaveUcesnici); if (drzavaUcesnik == null) { Drzava drzava = findDrzava(kod, drzave); drzavaUcesnik = new DrzavaUcesnik(); drzavaUcesnik.Naziv = drzava.Naziv; drzavaUcesnik.Kod = drzava.Kod; drzavaUcesnik.Takmicenje = takmicenje; drzaveUcesnici.Add(drzavaUcesnik); DAOFactoryFactory.DAOFactory.GetDrzavaUcesnikDAO().Add(drzavaUcesnik); } gimnasticarUcesnik.DrzavaUcesnik = drzavaUcesnik; gimnasticarUcesnik.TakmicarskaKategorija = seniori; gimnasticarUcesnik.NastupaZaDrzavu = true; DAOFactoryFactory.DAOFactory.GetGimnasticarUcesnikDAO().Add(gimnasticarUcesnik); rezTak.Takmicenje1.addGimnasticar(gimnasticarUcesnik); } rezTakmicenjeDAO.Update(rezTak); }
public IList <GimnasticarUcesnik> FindGimnasticariUcesnici(string ime, string prezime, DrzavaUcesnik drzava, TakmicarskaKategorija kategorija, KlubUcesnik klub, int takmicenjeId) { string query = @"from GimnasticarUcesnik g left join fetch g.TakmicarskaKategorija k left join fetch g.KlubUcesnik left join fetch g.DrzavaUcesnik where k.Takmicenje.Id = :takmicenjeId"; if (!String.IsNullOrEmpty(ime)) { query += " and lower(g.Ime) like :ime"; } if (!String.IsNullOrEmpty(prezime)) { query += " and lower(g.Prezime) like :prezime"; } if (kategorija != null) { query += " and g.TakmicarskaKategorija = :kategorija"; } if (drzava != null) { query += " and g.DrzavaUcesnik = :drzava"; } if (klub != null) { query += " and g.KlubUcesnik = :klub"; } query += " order by g.Prezime asc, g.Ime asc"; IQuery q = Session.CreateQuery(query); q.SetInt32("takmicenjeId", takmicenjeId); if (!String.IsNullOrEmpty(ime)) { q.SetString("ime", ime.ToLower() + '%'); } if (!String.IsNullOrEmpty(prezime)) { q.SetString("prezime", prezime.ToLower() + '%'); } if (kategorija != null) { q.SetEntity("kategorija", kategorija); } if (drzava != null) { q.SetEntity("drzava", drzava); } if (klub != null) { q.SetEntity("klub", klub); } return(q.List <GimnasticarUcesnik>()); }