private void DodajRadnikaNaProjekatForm_Load(object sender, EventArgs e) { ISession sesija = DataLayer.DataLayer.GetSession(); this.projekat = sesija.Load<Projekat>(projekatForm.pid); IQuery sql3 = sesija.CreateQuery("FROM Zaposleni"); IList<Zaposleni> zaposleni = sql3.List<Zaposleni>(); ListViewItem red; foreach (Zaposleni zap in zaposleni) { red = new ListViewItem(); red.SubItems.Add(zap.ZID.ToString()); red.SubItems.Add(zap.ime); red.SubItems.Add(zap.prezime); red.Tag = zap.ZID; // Flag parsing if (zap.F_CS == 1) red.SubItems.Add("Da"); else red.SubItems.Add("Ne"); if (zap.F_CPP == 1) red.SubItems.Add("Da"); else red.SubItems.Add("Ne"); if (zap.F_PHP == 1) red.SubItems.Add("Da"); else red.SubItems.Add("Ne"); if (zap.F_Java == 1) red.SubItems.Add("Da"); else red.SubItems.Add("Ne"); radnikList.Items.Add(red); } sesija.Close(); }
private void btnSave_Click(object sender, EventArgs e) { try { ISession sesija = DataLayer.DataLayer.GetSession(); Projekat proj = new Projekat(); if (nazivProjekta.Text == "") throw new Exception("Unesite ime projekta!"); else proj.ime = nazivProjekta.Text; proj.datumPocetka = datumOd.Value; proj.datumZavrsetka = datumDo.Value; // Insource projekat if (tipIzrade.SelectedIndex == 0) { proj.izrada = "insource"; if (leaderList.SelectedIndex == -1) throw new Exception("Izaberite vođu projekta"); var SefID = ((DropDownItem)leaderList.SelectedItem).NumVal; var sef = sesija.Load<Zaposleni>(SefID); Vodi vodi = new Vodi() { sef = sef, projekat = proj, vodiOd = vodiOdDatePicker.Value, vodiDo = vodiDoDatePicker.Value }; proj.vodi.Add(vodi); // sesija.Save(vodi); } else if (tipIzrade.SelectedIndex == 1) { proj.izrada = "outsource"; proj.nazivFirme = imeFirme.Text; proj.adresaFirme = adresaFirme.Text; } else { throw new Exception("Izaberite tip izrade!"); } // Dodavanje radnika na projekat foreach (var selectedItem in radeNaProjektuList.Items) { var radnikId = ((DropDownItem)selectedItem).NumVal; Zaposleni radnik = sesija.Load<Zaposleni>(radnikId); // Po defaultu svi radnici pri kreiranju projekta dobijaju da rade od pocetka do kraja na njemu var radi = new RadiNa { projekat = proj, radnik = radnik, datum_pocetka = datumOd.Value, datum_zavrsetka = datumDo.Value }; proj.radnici.Add(radi); } sesija.Save(proj); // Commit and close sesija.Flush(); sesija.Close(); MessageBox.Show("Uspešno ste dodali novi projekat"); SviProjektiForm pF = new SviProjektiForm(); pF.MdiParent = this.MdiParent; pF.Show(); this.Close(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
protected void Page_Load(object sender, EventArgs e) { try { ISession sesija = DataLayer.DataLayer.GetSession(); IQuery sql = sesija.CreateQuery("FROM Zaposleni as z WHERE z.pozicija LIKE ? "); sql.SetString(0, "%senior%"); this.sefovi = sql.List<Zaposleni>(); IQuery sql2 = sesija.CreateQuery("From Zaposleni"); this.zaposleni = sql.List<Zaposleni>(); // Ako je submitovana forma za unos if ( Request.ServerVariables["REQUEST_METHOD"] == "POST") { // Form validation var naziv = Request.Form["nazivProjekta"]; var izrada = Request.Form["izrada"]; DateTime datumPocetka = Convert.ToDateTime(Request.Form["datumPocetka"]); DateTime datumZavrsetka = Convert.ToDateTime(Request.Form["datumZavrsetka"]); Projekat proj = new Projekat() { ime = naziv, izrada = izrada, datumPocetka = datumPocetka, datumZavrsetka = datumZavrsetka }; if (naziv.Length < 3) throw new Exception("Naziv projekta isuviše kratak"); // Dodavanje selektovanih radnika na projekat var selRad = Request.Form["radniciProjekta"]; char[] delimiters = { ',' }; string[] selektovaniRadnici = selRad.Split(delimiters); foreach (var radnikID in selektovaniRadnici) { var radnik = sesija.Load<Zaposleni>(Convert.ToInt32(radnikID)); // Po defaultu svi radnici pri kreiranju projekta dobijaju da rade od pocetka do kraja na njemu var radi = new RadiNa { projekat = proj, radnik = radnik, datum_pocetka = datumPocetka, datum_zavrsetka = datumZavrsetka }; proj.radnici.Add(radi); } if (izrada == "insource") { var sefID = Convert.ToInt32(Request.Form["sef"]); Zaposleni sef = sesija.Load<Zaposleni>(sefID); DateTime vodiOd = Convert.ToDateTime(Request.Form["vodiOd"]); DateTime vodiDo = Convert.ToDateTime(Request.Form["vodiDo"]); Vodi vodi = new Vodi() { sef = sef, projekat = proj, vodiOd = vodiOd, vodiDo = vodiDo }; proj.vodi.Add(vodi); } else if (izrada == "outsource") { var nazivFirme = Request.Form["nazivFirme"]; var adresaFirme = Request.Form["adresaFirme"]; proj.nazivFirme = nazivFirme; proj.adresaFirme = adresaFirme; } else { throw new Exception("Greška pri izboru tipa izrade"); } sesija.Save(proj); sesija.Flush(); sesija.Close(); Response.Redirect("/SviProjekti"); } // Ako nije submitovana forma, prikazujemo formu else { } sesija.Flush(); sesija.Close(); } catch (Exception ex) { displayError = true; this.error.Controls.Add(new LiteralControl(ex.Message)); } }
protected void Page_Load(object sender, EventArgs e) { try { ISession sesija = DataLayer.DataLayer.GetSession(); IQuery sql = sesija.CreateQuery("FROM Zaposleni as z WHERE z.pozicija LIKE ? "); sql.SetString(0, "%senior%"); this.sefovi = sql.List <Zaposleni>(); IQuery sql2 = sesija.CreateQuery("From Zaposleni"); this.zaposleni = sql.List <Zaposleni>(); // Ako je submitovana forma za unos if (Request.ServerVariables["REQUEST_METHOD"] == "POST") { // Form validation var naziv = Request.Form["nazivProjekta"]; var izrada = Request.Form["izrada"]; DateTime datumPocetka = Convert.ToDateTime(Request.Form["datumPocetka"]); DateTime datumZavrsetka = Convert.ToDateTime(Request.Form["datumZavrsetka"]); Projekat proj = new Projekat() { ime = naziv, izrada = izrada, datumPocetka = datumPocetka, datumZavrsetka = datumZavrsetka }; if (naziv.Length < 3) { throw new Exception("Naziv projekta isuviše kratak"); } // Dodavanje selektovanih radnika na projekat var selRad = Request.Form["radniciProjekta"]; char[] delimiters = { ',' }; string[] selektovaniRadnici = selRad.Split(delimiters); foreach (var radnikID in selektovaniRadnici) { var radnik = sesija.Load <Zaposleni>(Convert.ToInt32(radnikID)); // Po defaultu svi radnici pri kreiranju projekta dobijaju da rade od pocetka do kraja na njemu var radi = new RadiNa { projekat = proj, radnik = radnik, datum_pocetka = datumPocetka, datum_zavrsetka = datumZavrsetka }; proj.radnici.Add(radi); } if (izrada == "insource") { var sefID = Convert.ToInt32(Request.Form["sef"]); Zaposleni sef = sesija.Load <Zaposleni>(sefID); DateTime vodiOd = Convert.ToDateTime(Request.Form["vodiOd"]); DateTime vodiDo = Convert.ToDateTime(Request.Form["vodiDo"]); Vodi vodi = new Vodi() { sef = sef, projekat = proj, vodiOd = vodiOd, vodiDo = vodiDo }; proj.vodi.Add(vodi); } else if (izrada == "outsource") { var nazivFirme = Request.Form["nazivFirme"]; var adresaFirme = Request.Form["adresaFirme"]; proj.nazivFirme = nazivFirme; proj.adresaFirme = adresaFirme; } else { throw new Exception("Greška pri izboru tipa izrade"); } sesija.Save(proj); sesija.Flush(); sesija.Close(); Response.Redirect("/SviProjekti"); } // Ako nije submitovana forma, prikazujemo formu else { } sesija.Flush(); sesija.Close(); } catch (Exception ex) { displayError = true; this.error.Controls.Add(new LiteralControl(ex.Message)); } }
protected void Page_Load(object sender, EventArgs e) { try { ISession sesija = DataLayer.DataLayer.GetSession(); IQuery sql = sesija.CreateQuery("FROM Zaposleni as z WHERE z.pozicija LIKE ? "); sql.SetString(0, "%senior%"); this.sefovi = sql.List<Zaposleni>(); IQuery sql2 = sesija.CreateQuery("From Zaposleni"); this.zaposleni = sql.List<Zaposleni>(); int projID = Convert.ToInt32(Request.QueryString["pid"]); this.editProj = sesija.Load<Projekat>(projID); // Ako je submitovana forma za unos if ( Request.ServerVariables["REQUEST_METHOD"] == "POST") { // Form validation var naziv = Request.Form["nazivProjekta"]; var izrada = Request.Form["izrada"]; DateTime datumPocetka = Convert.ToDateTime(Request.Form["datumPocetka"]); DateTime datumZavrsetka = Convert.ToDateTime(Request.Form["datumZavrsetka"]); editProj.ime = naziv; editProj.izrada = izrada; editProj.datumPocetka = datumPocetka; editProj.datumZavrsetka = datumZavrsetka; if (naziv.Length < 3) throw new Exception("Naziv projekta isuviše kratak"); // Dodavanje selektovanih radnika na projekat if (izrada == "insource") { var sefID = Convert.ToInt32(Request.Form["sef"]); Zaposleni sef = sesija.Load<Zaposleni>(sefID); DateTime vodiOd = Convert.ToDateTime(Request.Form["vodiOd"]); DateTime vodiDo = Convert.ToDateTime(Request.Form["vodiDo"]); Vodi vodi = new Vodi() { sef = sef, projekat = editProj, vodiOd = vodiOd, vodiDo = vodiDo }; editProj.vodi.Add(vodi); } else if (izrada == "outsource") { var nazivFirme = Request.Form["nazivFirme"]; var adresaFirme = Request.Form["adresaFirme"]; editProj.nazivFirme = nazivFirme; editProj.adresaFirme = adresaFirme; } else { throw new Exception("Greška pri izboru tipa izrade"); } sesija.Update(editProj); sesija.Flush(); sesija.Close(); Response.Redirect("/SviProjekti"); } // Ako nije submitovana forma, prikazujemo formu else { } } catch (Exception ex) { displayError = true; this.error.Controls.Add(new LiteralControl(ex.Message)); } }
public IzvjestajForma(Projekat pr) { InitializeComponent(); projekat = pr; nazivProjektaLBL.Text = pr.Naziv; datumKreiranjaLBL.Text = pr.DatumKreiranja.Value.ToString("dd/MM/yyyy"); string sef = ""; foreach (Ucesnik uc in pr.UcesniciNaProjektu.Keys) { if (pr.UcesniciNaProjektu[uc].Naziv.Equals("sef")) { sef = uc.Ime + " " + uc.Prezime + " \"" + uc.KorisnickoIme + "\""; } } int procenatIzvrsenosti = 0, ukupnoPotrebnoCC = 0; foreach (Cjelina c in pr.Cjeline) { if (c.CjelinaRoditeljID == null) { procenatIzvrsenosti += (int)(((double)c.ProcenatIzvrsenosti / 100.0) * c.BrojPotrebnihCovjekCasova); ukupnoPotrebnoCC += (int)c.BrojPotrebnihCovjekCasova; Console.WriteLine("PI: " + procenatIzvrsenosti + " UK:" + ukupnoPotrebnoCC); } } int procenat = 0; if (ukupnoPotrebnoCC != 0) { procenat = (int)(((double)procenatIzvrsenosti / ukupnoPotrebnoCC) * 100); } procenatIzvrsenostiLBL.Text = procenat + "%"; sefProjektaLBL.Text = sef; foreach (Cjelina c in pr.Cjeline) { if (c.CjelinaRoditeljID == null) { zadaciProcenatLVW.Items.Add(c.Naziv + " " + c.ProcenatIzvrsenosti + "%"); } } foreach (Ucesnik uc in pr.UcesniciNaProjektu.Keys) { if (!pr.UcesniciNaProjektu[uc].Naziv.Equals("sef")) { string uloga = ""; if (pr.UcesniciNaProjektu[uc].Naziv.Equals("nadzor")) { uloga = "Nadzor: "; } else { uloga = "Učesnik: "; } ucesniciLVW.Items.Add(uloga + uc.Ime + " " + uc.Prezime + " \"" + uc.KorisnickoIme + "\""); } } List <Aktivnost> aktivnosti = new List <Aktivnost>(); foreach (Cjelina c in pr.Cjeline) { aktivnosti.AddRange(c.Aktivnosti); } double prihodi = 0; double rashodi = 0; foreach (Aktivnost a in aktivnosti) { foreach (Transakcija t in a.Transakcije) { transakcije.Add(t); string prihod_rashod = ""; if (t.PrihodRashod == true) { prihod_rashod = "Pridhod: "; prihodi += Convert.ToDouble(t.Iznos); } else { prihod_rashod = "Rashod: "; rashodi += Convert.ToDouble(t.Iznos); } prihodiRashodiLVW.Items.Add(t.DatumVrijeme.Value.ToString("dd/MM/yyyy") + " " + prihod_rashod + t.Iznos); } } razlikaFinansijskaLBL.Text = Convert.ToString(prihodi - rashodi); }
public ServiceResult <ProjekatModel> Kreiraj(KreirajProjekatRequestModel model) { //model.KorisnickoIme = model.KorisnickoIme.Trim().ToLower(); var trenutni = authService.TrenutniKorisnik(); if (trenutni.TrenutnaUloga.VrijednostUAplikaciji != (int)Uloga.Administrator) { return(Error("Nemate pravo kreiranja projekta")); } if (context.Projekti.FirstOrDefault(x => x.Naziv == model.Naziv) != null) { return(Error("Projekat pod tim imenom već postoji.")); } if (string.IsNullOrEmpty(model.Naziv)) { return(Error("Polje naziv projekta ne može biti prazno")); } /*var trenutni = authService.TrenutniKorisnik(); * * * var hashProvider = Scope.Resolve<IHashProvider>(); * var tajna = hashProvider.HashPassword(model.Lozinka);*/ Projekat projekat = new Projekat(); projekat.Naziv = model.Naziv; projekat.Opis = model.Opis; projekat.DatumKreiranja = DateTime.Now; #region ProjekatKonfiguracija ProjekatKonfiguracija projekatKonfiguracija = new ProjekatKonfiguracija(); projekatKonfiguracija.RadnoVrijemeOd = new TimeSpan(8, 0, 0); projekatKonfiguracija.RadnoVrijemeDo = new TimeSpan(16, 0, 0); projekatKonfiguracija.RadniDani = "1111100"; projekat.ProjekatKonfiguracija = projekatKonfiguracija; #endregion #region Prioriteti zahtjeva ZahtjevPrioritet zahtjevPrioritetNizak = new ZahtjevPrioritet(); zahtjevPrioritetNizak.Default = false; zahtjevPrioritetNizak.Naziv = "Nizak"; zahtjevPrioritetNizak.Poredak = 2; ZahtjevPrioritet zahtjevPrioritetSrednji = new ZahtjevPrioritet(); zahtjevPrioritetSrednji.Default = true; zahtjevPrioritetSrednji.Naziv = "Srednji"; zahtjevPrioritetSrednji.Poredak = 1; ZahtjevPrioritet zahtjevPrioritetVisok = new ZahtjevPrioritet(); zahtjevPrioritetVisok.Default = false; zahtjevPrioritetVisok.Naziv = "Visok"; zahtjevPrioritetVisok.Poredak = 0; projekat.PrioritetiZahtjeva = new List <ZahtjevPrioritet>(); projekat.PrioritetiZahtjeva.Add(zahtjevPrioritetNizak); projekat.PrioritetiZahtjeva.Add(zahtjevPrioritetSrednji); projekat.PrioritetiZahtjeva.Add(zahtjevPrioritetVisok); #endregion #region Tipovi zahtjeva ZahtjevTip zahtjevTipBug = new ZahtjevTip(); zahtjevTipBug.Default = false; zahtjevTipBug.Naziv = "Bug"; ZahtjevTip zahtjevTipZahtjev = new ZahtjevTip(); zahtjevTipZahtjev.Default = true; zahtjevTipZahtjev.Naziv = "Zahtjev"; ZahtjevTip zahtjevTipZadatak = new ZahtjevTip(); zahtjevTipZadatak.Default = false; zahtjevTipZadatak.Naziv = "Zadatak"; ZahtjevTip zahtjevTipPrica = new ZahtjevTip(); zahtjevTipPrica.Default = false; zahtjevTipPrica.Naziv = "Prica"; projekat.TipoviZahtjeva = new List <ZahtjevTip>(); projekat.TipoviZahtjeva.Add(zahtjevTipBug); projekat.TipoviZahtjeva.Add(zahtjevTipZahtjev); projekat.TipoviZahtjeva.Add(zahtjevTipZadatak); projekat.TipoviZahtjeva.Add(zahtjevTipPrica); #endregion #region StatusiZahtjeva ZahtjevStatus zahtjevStatusZavrsen = new ZahtjevStatus(); zahtjevStatusZavrsen.Default = false; zahtjevStatusZavrsen.Naziv = "Završen"; zahtjevStatusZavrsen.Oznaka = (int)OznakeStatusa.Done; zahtjevStatusZavrsen.Poredak = 2; ZahtjevStatus zahtjevStatusRadiSe = new ZahtjevStatus(); zahtjevStatusRadiSe.Default = false; zahtjevStatusRadiSe.Naziv = "Radi se"; zahtjevStatusRadiSe.Oznaka = (int)OznakeStatusa.InProgress; zahtjevStatusRadiSe.Poredak = 1; ZahtjevStatus zahtjevStatusPotrebnoUraditi = new ZahtjevStatus(); zahtjevStatusPotrebnoUraditi.Default = true; zahtjevStatusPotrebnoUraditi.Naziv = "Potrebno uraditi"; zahtjevStatusPotrebnoUraditi.Oznaka = (int)OznakeStatusa.ToDo; zahtjevStatusPotrebnoUraditi.Poredak = 0; projekat.StatusiZahtjeva = new List <ZahtjevStatus>(); projekat.StatusiZahtjeva.Add(zahtjevStatusZavrsen); projekat.StatusiZahtjeva.Add(zahtjevStatusRadiSe); projekat.StatusiZahtjeva.Add(zahtjevStatusPotrebnoUraditi); #endregion DioProjekta dioProjekta = new DioProjekta(); dioProjekta.Naziv = "Osnovni"; #region KategorijeZahtjeva ZahtjevKategorija zahtjevKategorija = new ZahtjevKategorija(); zahtjevKategorija.Naziv = "Osnovna"; /*ZahtjevKategorija zahtjevKategorijaNeodredjena = new ZahtjevKategorija(); * zahtjevKategorijaNeodredjena.Naziv = "Neodređena"; * * * ZahtjevKategorija zahtjevKategorijaSporedna = new ZahtjevKategorija(); * zahtjevKategorijaSporedna.Naziv = "Sporedna";*/ dioProjekta.KategorijeZahtjeva = new List <ZahtjevKategorija>(); dioProjekta.KategorijeZahtjeva.Add(zahtjevKategorija); /*dioProjekta.KategorijeZahtjeva.Add(zahtjevKategorijaNeodredjena); * dioProjekta.KategorijeZahtjeva.Add(zahtjevKategorijaSporedna);*/ #endregion projekat.DijeloviProjekta = new List <DioProjekta>(); projekat.DijeloviProjekta.Add(dioProjekta); context.Add(dioProjekta); context.Add(projekat); SaveChanges(context); return(VratiProjekatPoNazivu(projekat.Naziv)); }
private void EditProject(object param) { Projekat projekat = (Projekat)param; this.parentAppVM.ChangeViewModel(new EditProjectViewModel(this.parentAppVM, projekat)); }
// --- Ubacivanje podataka o Projektu u bazi --- private void BtnSubmitDataPoject_Click(object sender, EventArgs e) { string imeProjekta = this.TbImeProjekta.Text; string rokZavrsetka = this.DatePicker.Text; // --- Izvlacimo podatke iz listView-a ---- string lista = ""; foreach (ListViewItem lvi in LvPJezikZnanje.Items) { lista += lvi.Text + " " + lvi.SubItems[1].Text + ","; } lista.TrimEnd(','); string listaRazvojaRadnika = ""; foreach (ListViewItem lvi in LvRazvojBrojRadnika.Items) { listaRazvojaRadnika += lvi.Text + " " + lvi.SubItems[1].Text + ","; } listaRazvojaRadnika = listaRazvojaRadnika.TrimEnd(','); // --- Provera ispravnosti --- if (String.IsNullOrWhiteSpace(imeProjekta)) { MessageBox.Show("Napisite ime projekta!"); return; } else if (String.IsNullOrWhiteSpace(rokZavrsetka)) { MessageBox.Show("Datum kraja roka nije korektan!"); return; } else if (String.IsNullOrWhiteSpace(lista)) { MessageBox.Show("Lista potrebnih ljudi sa iskustvom je prazna!"); return; } else if (String.IsNullOrWhiteSpace(listaRazvojaRadnika)) { MessageBox.Show("Lista potrebnih ljudi iz razvoja je prazna!"); //return; } // --- Preciscavanje teksta --- imeProjekta = checkString(imeProjekta); Projekat noviProjekat = new Projekat(); noviProjekat.Ime = imeProjekta; noviProjekat.Rok_zavrsetka = rokZavrsetka; noviProjekat.Potrebno_iskustvo = lista; noviProjekat.Potrebni_ljudi_iz_razvoja = listaRazvojaRadnika; //noviProjekat.Radnici_angazovani_na_projektu = "IDRadnika Ime Prezime, IDRadnika Ime Prezime,...." try { // --- Ubacivanje Projekta u bazi (pravi duplikate za isti projekat) --- /*client.Cypher * .Create("(projekat:Projekat {noviProjekat})") * .WithParam("noviProjekat", noviProjekat) * .ExecuteWithoutResults();*/ // --- Ubacivanje Razvoja u bazi, ukoliko isti ne postoji --- // NEMA FEEDBACK UKOLIKO ISTI RAZVOJ POSTOJI client.Cypher .Merge("(projekat:Projekat { Ime: {Ime} })") .OnCreate() .Set("projekat = {noviProjekat}") .WithParams(new { Ime = noviProjekat.Ime, noviProjekat }) .ExecuteWithoutResults(); this.TbImeProjekta.Text = ""; MessageBox.Show("Uspesno kreiran novi Projekat!"); } catch (Exception ec) { MessageBox.Show(ec.ToString()); } MessageBox.Show("Uspesno kreiran projekat!"); }
private void IzmeniProjekatForm_Load(object sender, EventArgs e) { // Inicijalno ucitavanje projekta ISession sesija = DataLayer.DataLayer.GetSession(); Projekat proj = sesija.Load <Projekat>(pid); try { // Ucitavanje svih sefova za dropdown list IQuery sql = sesija.CreateQuery("FROM Zaposleni as z WHERE z.pozicija LIKE ? "); sql.SetString(0, "%senior%"); IList <Zaposleni> seniori = sql.List <Zaposleni>(); // Ispisivanje svih sefova u dropdown list foreach (Zaposleni senior in seniori) { leaderList.Items.Add(new DropDownItem(senior.ime + " " + senior.prezime, senior.ZID.ToString())); } foreach (var red in proj.radnici) { listRadnika.Items.Add(new DropDownItem(red.radnik.ime + " " + red.radnik.prezime, red.radnik.ZID.ToString())); } // Datumi datumOd.Value = proj.datumPocetka; datumDo.Value = proj.datumZavrsetka; // Postavljanje imena projekta nazivProjekta.Text = proj.ime; // Selektovanje tipa izrade if (proj.izrada == "insource") { tipIzrade.SelectedIndex = 0; // Trenutni sef projekta Zaposleni leader = proj.trenutniLeader.sef; // Datumi vodiOdDatePicker.Value = proj.vodi[0].vodiOd; vodiDoDatePicker.Value = proj.vodi[0].vodiDo; // Selektovanje trenutnog sefa leaderList.SelectedIndex = leaderList.FindStringExact(leader.ime + " " + leader.prezime); } else if (proj.izrada == "outsource") { tipIzrade.SelectedIndex = 1; imeFirme.Text = proj.nazivFirme; adresaFirme.Text = proj.adresaFirme; } else { throw new Exception("Pogresan tip projekta"); } } catch (Exception exc) { MessageBox.Show(exc.Message); } sesija.Close(); }
private void btnSave_Click(object sender, EventArgs e) { try { ISession sesija = DataLayer.DataLayer.GetSession(); Projekat projekat = sesija.Load <Projekat>(pid); projekat.ime = nazivProjekta.Text; projekat.datumPocetka = datumOd.Value; projekat.datumZavrsetka = datumDo.Value; // Ako je insource if (tipIzrade.SelectedIndex == 0) { projekat.izrada = "insource"; var SefID = ((DropDownItem)leaderList.SelectedItem).NumVal; var sef = sesija.Load <Zaposleni>(SefID); // Uzima zadnji zapis o vodjenju projekta IQuery sql = sesija.CreateQuery("FROM Vodi as v WHERE v.projekat = ? ORDER BY LOCID DESC"); sql.SetInt32(0, pid); // Trenutni lider projekta IList <Vodi> vodiAtm = sql.List <Vodi>(); // Submitovan objekat Vodi Vodi newVodi = new Vodi() { sef = sef, projekat = projekat, vodiOd = vodiOdDatePicker.Value, vodiDo = vodiDoDatePicker.Value }; // Ako postoji vec zapis za ovaj projekat if (vodiAtm.Count > 0) { // Ako je ovaj sef poslednji vodio ovaj projekat, samo ga update if (vodiAtm[0].sef.ZID == SefID) { vodiAtm[0].vodiOd = vodiOdDatePicker.Value; vodiAtm[0].vodiDo = vodiDoDatePicker.Value; sesija.Update(vodiAtm[0]); } // Ako je ovaj sef vec vodio ovaj projekat, a ne vodi ga trenutno, dodaj novi zapis else { sesija.Save(newVodi); } } // Ako prvi put vodi ovaj projekat, napravi novi zapis else { sesija.Save(newVodi); } // Brisanje starih zapisa o outsource projektu ( u slucaju da projekat menja tip ) projekat.nazivFirme = null; projekat.adresaFirme = null; } // Ako je outsource else if (tipIzrade.SelectedIndex == 1) { projekat.izrada = "outsource"; projekat.nazivFirme = imeFirme.Text; projekat.adresaFirme = adresaFirme.Text; // Brisanje starih zapisa o insource projektu ( u slucaju da projekat menja tip ) projekat.vodi = null; sesija.SaveOrUpdate(projekat); } sesija.Flush(); sesija.Close(); // Reload main form ((SviProjektiForm)this.sviProjekti).loadFormData(); this.Close(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
//top bar list view private void ListView_SelectionChanged(object sender, SelectionChangedEventArgs e) { ListView lv = sender as ListView; if (lv.SelectedIndex != -1) { ListViewItem li = lv.SelectedItem as ListViewItem; switch (li.Name) { case "RefreshTable": //background worker RadSaBazom.RefreshTabele.RunWorkerAsync(); //Projekat proj = ((ApplicationViewModel)this.DataContext).TrenutniProjekat; ////prvo bi trebalo da pogleda logove i ako je bilo promena onda tek da uradi refresh //proj.TabelaProjekta = new Tabela(proj.Ime, proj.Opis, proj.Id); //Grid gr = TabelaCrtac.InvokeNacrtaj(((ApplicationViewModel)this.DataContext).TrenutniProjekat.TabelaProjekta, ((ApplicationViewModel)this.DataContext)); ////this.parentAppVM.AppView.ProjekatDugmiciManage(true, "create"); //((ApplicationViewModel)this.DataContext).AppView.SetContent(gr); break; case "Notifications": //List<String> Obavestenja = ((ApplicationViewModel)this.DataContext).TrenutniProjekat.UcitajIstorijuIzmena(frm.Tip, int.Parse(frm.BrojPromena.ToString())); //Notifications ipv = new Notifications(); //ipv.DataContext = Obavestenja; //ipv.ShowDialog(); break; case "SaveAsTemplate": Projekat temp = ((ApplicationViewModel)this.DataContext).TrenutniProjekat; if (temp.Id != 0) { try { PProjekat.SacuvajKaoTemplejt(temp.Id, temp.Ime, temp.Opis); try { System.Windows.MessageBox.Show(PPoruka.VratiPrevod("TMP_S")); } catch (Oracle.ManagedDataAccess.Client.OracleException er) { System.Windows.MessageBox.Show("Templejt uspesno snimljen."); } } catch (OracleException oraError) { try { System.Windows.MessageBox.Show(PPoruka.VratiPrevod(oraError.Number.ToString())); } catch (OracleException err) { System.Windows.MessageBox.Show("Greska"); } } catch (System.Exception error) { System.Windows.MessageBox.Show("Greska"); } } else { PProjekat.SacuvajKaoTemplejt(temp.Id, temp.Ime, temp.Opis); try { System.Windows.MessageBox.Show(PPoruka.VratiPrevod("MUST_S_P")); } catch (Oracle.ManagedDataAccess.Client.OracleException er) { System.Windows.MessageBox.Show("Morate snimiti projekat."); } } break; case "Done": try { RadSaBazom.KreirajProjekat(((ApplicationViewModel)this.DataContext).TrenutniProjekat); try { System.Windows.MessageBox.Show(PPoruka.VratiPrevod("P_SUC_C")); } catch (OracleException er) { System.Windows.MessageBox.Show("Projekat uspesno kreiran"); } } catch (OracleException oraError) { System.Windows.MessageBox.Show(PPoruka.VratiPrevod(oraError.Number.ToString())); } break; case "History": IzborIstorijeIzmena frm = new IzborIstorijeIzmena(); if (frm.ShowDialog() == true) { // refreshuje se lista izmena if (int.Parse(frm.BrojPromena.ToString()) != 0) { List <String> Izmene = ((ApplicationViewModel)this.DataContext).TrenutniProjekat.UcitajIstorijuIzmena(frm.Tip, int.Parse(frm.BrojPromena.ToString())); IstorijaPromenaView ipv = new IstorijaPromenaView(); ipv.DataContext = Izmene; ipv.ShowDialog(); } else { try { MessageBox.Show(PPoruka.VratiPrevod("WR_INPUT")); } catch (Exception er) { MessageBox.Show("Neispravan unos."); } } } break; default: MessageBox.Show("" + li.Name); break; } lv.SelectedIndex = -1; } }