// 10.06.2018. mstankovic //public void DodajZadatak(Kontejner roditelj) public void DodajZadatak(KontejnerZadataka roditelj) { // 10.06.2018. mstankovic (naredne 3 linije) //Zadatak novi = new Zadatak((KontejnerZadataka)roditelj); //((KontejnerZadataka)roditelj).Zadaci.Add(novi); //((KontejnerZadataka)roditelj).PreurediZadatke(); if (roditelj.Zadaci.Count != roditelj.MaxBrZadataka) { Zadatak novi = new Zadatak(roditelj); // dodavanje zadatka u bazu se izvrsava samo ako je projekat kreiran (sto znaci da je roditeljskoj fazi dodeljen id) if (roditelj.Id != 0) { try { novi.Id = PZadatak.Dodaj(novi.Ime, novi.Opis, novi.PocetakIzrade, novi.KrajIzrade, novi.Tip, roditelj.Id); } catch (Oracle.ManagedDataAccess.Client.OracleException oraError) { try { System.Windows.MessageBox.Show(PPoruka.VratiPrevod(oraError.Number.ToString())); } catch (Oracle.ManagedDataAccess.Client.OracleException err) { System.Windows.MessageBox.Show("Greska"); } } } roditelj.Zadaci.Add(novi); roditelj.PreurediZadatke(); } }
// 10.06.2018. mstankovic //public void DodajKolonu(Kontejner roditelj, String naziv) public void DodajKolonu(KontejnerFaza roditelj, String naziv, int idProjekta) { KontejnerZadataka nova = new KontejnerZadataka(naziv, roditelj); // kolona se ubacuje u bazu samo ako je projekat vec kreiran if (idProjekta != 0) { try { nova.Id = PFaza.Dodaj_FZ(nova.Ime, nova.Opis, nova.MaxBrZadataka, nova.PocetakIzrade, nova.KrajIzrade, roditelj.Id, nova.SirinaPoZadacima, nova.VisinaPoZadacima, idProjekta); } catch (Oracle.ManagedDataAccess.Client.OracleException oraError) { try { System.Windows.MessageBox.Show(PPoruka.VratiPrevod(oraError.Number.ToString())); } catch (Oracle.ManagedDataAccess.Client.OracleException err) { System.Windows.MessageBox.Show("Greska"); } } } // 10.06.2018. mstankovic //((KontejnerFaza)roditelj).Deca.Add(nova); roditelj.Deca.Add(nova); //dodata ispravka pozicije nova.Pozicija = roditelj.Deca.IndexOf(nova); }
public Zadatak(KontejnerZadataka roditelj) { Ime = "Neki zadatak"; Roditelj = roditelj; Status = ZStatus.NotStarted; Komentari = new ObservableCollection <Komentar>(); KontrolneTacke = new ObservableCollection <KontrolnaTacka>(); KontrolnaTackaChanged = IzracunajStatus; }
public KontejnerZadataka(KontejnerZadataka kz) { Ime = "New subcolumn 1"; Zadaci = kz.Zadaci; Roditelj = kz.Roditelj; if (Roditelj.IsVerticalSplit) { SirinaPoZadacima = 3; VisinaPoZadacima = 10; } else { SirinaPoZadacima = 6; VisinaPoZadacima = 5; } //ograniceno na 30 MaxBrZadataka = kz.MaxBrZadataka; PreurediZadatke(); }
//false vertical, true horizontal // 10.06.2018. mstankovic // public void Split(Kontejner levaPodkolona, bool flag) public void Split(KontejnerZadataka kolonaZaSplit, bool nacinSplitovanja, int idProjekta) { //kreira se parent kolona koja ce da sadrzi dve podkolone //on zauzima mesto prethodne kolone koja ce postati leva podkolona KontejnerFaza kf = new KontejnerFaza(kolonaZaSplit.Ime); kf.Roditelj = kolonaZaSplit.Roditelj; // 10.06.2018. mstankovic (naredne 2 linije) //int ind = ((KontejnerFaza)kf.Roditelj).Deca.IndexOf(levaPodkolona); //((KontejnerFaza)kf.Roditelj).Deca[ind] = kf; int ind = kf.Roditelj.Deca.IndexOf(kolonaZaSplit); kf.Roditelj.Deca[ind] = kf; kf.Pozicija = ind; //vertical if (nacinSplitovanja == false) { kf.IsVerticalSplit = true; } //horizontal else { kf.IsVerticalSplit = false; } kolonaZaSplit.Roditelj = kf; List <Zadatak> zadaciRoditelja = new List <Zadatak>(); foreach (Zadatak z in kolonaZaSplit.Zadaci) { zadaciRoditelja.Add(z); } if (idProjekta != 0) { kf.Id = kolonaZaSplit.Id; try { PFaza.IzmeniPosleSplita(kf.Id, kf.IsVerticalSplit); } catch (Oracle.ManagedDataAccess.Client.OracleException oraError) { try { System.Windows.MessageBox.Show(PPoruka.VratiPrevod(oraError.Number.ToString())); } catch (Oracle.ManagedDataAccess.Client.OracleException err) { System.Windows.MessageBox.Show("Greska"); } } } //leva podkolona KontejnerZadataka kzNovi = new KontejnerZadataka(kolonaZaSplit); kzNovi.Pozicija = 0; if (idProjekta != 0) { try { kzNovi.Id = PFaza.Dodaj_FZ(kzNovi.Ime, kzNovi.Opis, kzNovi.MaxBrZadataka, kzNovi.PocetakIzrade, kzNovi.KrajIzrade, kf.Id, kzNovi.SirinaPoZadacima, kzNovi.VisinaPoZadacima, idProjekta); } catch (Oracle.ManagedDataAccess.Client.OracleException oraError) { try { System.Windows.MessageBox.Show(PPoruka.VratiPrevod(oraError.Number.ToString())); } catch (Oracle.ManagedDataAccess.Client.OracleException err) { System.Windows.MessageBox.Show("Greska"); } } } foreach (Zadatak z in zadaciRoditelja) { try { if (z.Id != 0) { PZadatak.IzmeniFazu(z.Id, kzNovi.Id); } } catch (Oracle.ManagedDataAccess.Client.OracleException oraError) { try { System.Windows.MessageBox.Show(PPoruka.VratiPrevod(oraError.Number.ToString())); } catch (Oracle.ManagedDataAccess.Client.OracleException err) { System.Windows.MessageBox.Show("Greska"); } } } //desna podkolona KontejnerZadataka kz = new KontejnerZadataka("New subcolumn 2", kf); kz.Pozicija = 1; if (idProjekta != 0) { try { kz.Id = PFaza.Dodaj_FZ(kz.Ime, kz.Opis, kz.MaxBrZadataka, kz.PocetakIzrade, kz.KrajIzrade, kf.Id, kz.SirinaPoZadacima, kz.VisinaPoZadacima, idProjekta); } catch (Oracle.ManagedDataAccess.Client.OracleException oraError) { try { System.Windows.MessageBox.Show(PPoruka.VratiPrevod(oraError.Number.ToString())); } catch (Oracle.ManagedDataAccess.Client.OracleException err) { System.Windows.MessageBox.Show("Greska"); } } } kf.Deca.Add(kzNovi); kf.Deca.Add(kz); }