/// <summary> /// Metoda koja za označenu fazu unutar datagridviewa puni listu faza_projekta i za označeni projekt puni listu faza_projekta /// kako bi se uspoređivanjem spremile u listu one faze projekta koje su zajedničke. /// parametar kontroler postoji zbog korištenja na drugoj formi (objašnjeno u PopisProjektiForm) /// Trenutno korištenje je sa parametrom = 1, time vraća prvu fazu_projekta koju nađe /// </summary> /// <param name="kontroler"></param> /// <returns></returns> private Faze_projekta vratiFazuProjekta(int kontroler) { Faza selektiranaFaza = fazaBindingSource.Current as Faza; Projekt selektiraniProjekt = odabraniProjekt; Faze_projekta vrati = null; if (selektiranaFaza != null && selektiraniProjekt != null) { using (var db = new IzdavanjeRacunEntities()) { db.Projekt.Attach(selektiraniProjekt); db.Faza.Attach(selektiranaFaza); List <Faze_projekta> listaOdProjekta = new List <Faze_projekta>(selektiraniProjekt.Faze_projekta.ToList()); List <Faze_projekta> listaOdFaze = new List <Faze_projekta>(selektiranaFaza.Faze_projekta.ToList()); foreach (var P in listaOdProjekta) { foreach (var F in listaOdFaze) { if (P.id == F.id) { vrati = P; if (kontroler == 1) { return(vrati); } } } } } } return(vrati); }
/// <summary> /// Metoda koja koristi metodu za dohvaćanje faze_projekta preko označene faze u datagridviewu /// Za tu fazu_projekta dohvaća sve stavke materijala (Faza_ima_materijal) i preuzima materijala /// iz tih stavki za prikazivanje na datagridviewu /// </summary> private void PrikaziMaterijal() { Faze_projekta materijal = vratiFazuProjekta(1); BindingList <Faza_ima_materijal> listaMaterijala = null; BindingList <Materijal> listaMaterijalId = new BindingList <Materijal>(); if (materijal != null) { using (var db = new IzdavanjeRacunEntities()) { db.Faze_projekta.Attach(materijal); listaMaterijala = new BindingList <Faza_ima_materijal>(materijal.Faza_ima_materijal.ToList()); foreach (Faza_ima_materijal M in listaMaterijala) { listaMaterijalId.Add(M.Materijal as Materijal); } } fazaimamaterijalBindingSource.DataSource = listaMaterijala; materijalBindingSource.DataSource = listaMaterijalId; } }