public RasporedSudijaEditorForm(int rasporedId, Sprava sprava, int takmicenjeId) { InitializeComponent(); this.takmicenjeId = takmicenjeId; spravaGridUserControl1.init(sprava); try { DataAccessProviderFactory factory = new DataAccessProviderFactory(); dataContext = factory.GetDataContext(); dataContext.BeginTransaction(); // TODO: Trebalo bi i NHibernateUtil.Initialize smestiti u // IDataContext klasu raspored = loadRaspored(rasporedId); sudijskiOdbor = raspored.getOdbor(sprava); initUI(); spravaGridUserControl1.setItems(sudijskiOdbor.Raspored); // dataContext.Commit(); } catch (Exception ex) { if (dataContext != null && dataContext.IsInTransaction) dataContext.Rollback(); throw new InfrastructureException( Strings.getFullDatabaseAccessExceptionMessage(ex), ex); } finally { if (dataContext != null) dataContext.Dispose(); dataContext = null; } }
private void initTab(TabPage tabPage, RasporedSudija raspored) { // TODO: Kod u ovom metodu je prekopiran iz Designer.cs fajla (plus ono // sto sam dodao u createTab metodu). Proveri da li je u Designer.cs fajlu // nesto menjano, i ako jeste promeni ovde. SpravaGridGroupUserControl spravaGridGroupUserControl = new SpravaGridGroupUserControl(); spravaGridGroupUserControl.Location = USER_CONTROL_LOCATION; spravaGridGroupUserControl.SpravaGridRightClick += new EventHandler<SpravaGridRightClickEventArgs>(spravaGridGroupUserControl1_SpravaGridRightClick); //spravaGridGroupUserControl.Size = this.rasporedSudijaUserControl1.Size; spravaGridGroupUserControl.init(raspored.Pol); // odredjuje i Size foreach (SpravaGridUserControl c in spravaGridGroupUserControl.SpravaGridUserControls) { SudijskiOdborNaSpravi odbor = raspored.getOdbor(c.Sprava); int odborId = odbor != null ? odbor.Id : 0; GridColumnsInitializer.initRasporedSudija(odborId, c.DataGridViewUserControl); c.DataGridViewUserControl.DataGridView.ColumnWidthChanged += new DataGridViewColumnEventHandler(DataGridView_ColumnWidthChanged); } spravaGridGroupUserControl.TabIndex = this.spravaGridGroupUserControl1.TabIndex; tabPage.SuspendLayout(); tabPage.Controls.Add(spravaGridGroupUserControl); tabPage.BackColor = this.tabPage1.BackColor; tabPage.Location = this.tabPage1.Location; tabPage.Padding = this.tabPage1.Padding; tabPage.Size = this.tabPage1.Size; //tabPage.TabIndex = rasporedi.IndexOf(raspored); // This property is not // meaningful for this control. tabPage.AutoScroll = true; tabPage.AutoScrollMinSize = new Size( spravaGridGroupUserControl.Right, spravaGridGroupUserControl.Bottom); tabPage.AutoScrollMargin = new Size(spravaGridGroupUserControl.Location); tabPage.Text = getTabText(raspored); //tabPage.UseVisualStyleBackColor = this.tabPage1.UseVisualStyleBackColor; tabPage.ResumeLayout(false); }
private void createTab(RasporedSudija raspored) { if (rasporedi.IndexOf(raspored) == 0) // prvi tab { // init first tab if (tabControl1.TabPages.IndexOf(tabPage1) < 0) tabControl1.TabPages.Add(tabPage1); spravaGridGroupUserControl1.Location = USER_CONTROL_LOCATION; spravaGridGroupUserControl1.SpravaGridRightClick += new EventHandler<SpravaGridRightClickEventArgs>(spravaGridGroupUserControl1_SpravaGridRightClick); spravaGridGroupUserControl1.init(rasporedi[0].Pol); foreach (SpravaGridUserControl c in spravaGridGroupUserControl1.SpravaGridUserControls) { SudijskiOdborNaSpravi odbor = raspored.getOdbor(c.Sprava); int odborId = odbor != null ? odbor.Id : 0; GridColumnsInitializer.initRasporedSudija(odborId, c.DataGridViewUserControl); c.DataGridViewUserControl.DataGridView.ColumnWidthChanged += new DataGridViewColumnEventHandler(DataGridView_ColumnWidthChanged); } tabPage1.AutoScroll = true; tabPage1.AutoScrollMinSize = new Size( spravaGridGroupUserControl1.Right, spravaGridGroupUserControl1.Bottom); tabPage1.AutoScrollMargin = new Size(spravaGridGroupUserControl1.Location); tabPage1.Text = getTabText(raspored); } else { // init other tabs TabPage newTab = new TabPage(); tabControl1.Controls.Add(newTab); initTab(newTab, raspored); } }
private void insertRasporedSudija() { Takmicenje takmicenje = loadTakmicenje("Milano"); TakmicarskaKategorija seniori = loadKategorija(takmicenje); Query q = new Query(); q.Criteria.Add(new Criterion("Takmicenje", CriteriaOperator.Equal, takmicenje)); IList<SudijaUcesnik> sudije_ucesnici = dataContext.GetByCriteria<SudijaUcesnik>(q); DeoTakmicenjaKod[] deoTakmicenja = { DeoTakmicenjaKod.Takmicenje1, DeoTakmicenjaKod.Takmicenje2 }; string[] fileNames; if (gimnastika == Gimnastika.MSG) fileNames = new string[] { @"..\..\test\Data\RasporedSudijaMuskarciKvalifikacije.txt", @"..\..\test\Data\RasporedSudijaMuskarciViseboj.txt" }; else fileNames = new string[] { @"..\..\test\Data\RasporedSudijaZeneKvalifikacije.txt", @"..\..\test\Data\RasporedSudijaZeneViseboj.txt" }; for (int i = 0; i < deoTakmicenja.Length; i++) { List<TakmicarskaKategorija> list = new List<TakmicarskaKategorija>(); list.Add(seniori); RasporedSudija raspored = new RasporedSudija(list, deoTakmicenja[i], takmicenje); SudijeParser parser = new SudijeParser(); parser.parse(fileNames[i]); Sprava prevSprava = Sprava.Undefined; int brojMeracaVremena = 0; int brojLinijskihSudija = 0; SudijskiOdborNaSpravi odbor = null; foreach (object[] o in parser.SudijskeUloge) { SudijskaUloga uloga = (SudijskaUloga)o[4]; bool clanGlavSudOdbora = uloga >= SudijskaUloga.PredsednikGlavnogSudijskogOdbora && uloga <= SudijskaUloga.GredaKontrolor; if (clanGlavSudOdbora) continue; string ime = (string)o[0]; string prezime = (string)o[1]; SudijaUcesnik sudija = findSudijaUcesnik(ime, prezime, sudije_ucesnici); if (sudija == null) throw new Exception("Greska prilikom dodavanja rasporeda sudija."); Sprava sprava = (Sprava)o[3]; if (sprava == prevSprava) { if (SudijskeUloge.isMeracVremena(uloga)) brojMeracaVremena++; else if (SudijskeUloge.isLinijskiSudija(uloga)) brojLinijskihSudija++; } else { if (prevSprava != Sprava.Undefined) { // podesi broj meraca vremena i linijskih sudija za prethodni // odbor odbor = raspored.getOdbor(prevSprava); odbor.setSupportedUloge(odbor.BrojDSudija, odbor.HasD1_E1, odbor.HasD2_E2, odbor.BrojESudija, (byte)brojMeracaVremena, (byte)brojLinijskihSudija); } prevSprava = sprava; brojMeracaVremena = 0; brojLinijskihSudija = 0; } raspored.getOdbor(sprava).addSudija(sudija, uloga); } // podesi broj meraca vremena i linijskih sudija za poslednji odbor odbor = raspored.getOdbor(prevSprava); odbor.setSupportedUloge(odbor.BrojDSudija, odbor.HasD1_E1, odbor.HasD2_E2, odbor.BrojESudija, (byte)brojMeracaVremena, (byte)brojLinijskihSudija); /*dataContext.Evict(takmicenje); foreach (SudijaUcesnik s in sudije_ucesnici) dataContext.Evict(s); dataContext.Evict(seniori); */ dataContext.Add(raspored); } }