private void ucitajTrenereILige() { Naziv_lige = new ObservableCollection <string>(); Naziv_Trenera = new ObservableCollection <string>(); using (var db = new BazaZaLiguEntities()) { foreach (Liga item in db.Ligas) { //sve lige Naziv_lige.Add(item.naziv_lige); } Naziv_lige.Add(""); //za davanje otkaza iz lige foreach (Trener item in db.Treners) { Vodi zauzetiTrener = db.Vodis.Where(x => x.trener_id_trenera == item.id_trenera).FirstOrDefault(); //svi slobodni treneri if (zauzetiTrener == null) { Naziv_Trenera.Add(item.ime_trenera); } } Naziv_Trenera.Add(""); } OnPropertyChanged("Naziv_lige"); OnPropertyChanged("Naziv_Trenera"); }
public ShowTrenerViewModel() { string role = (string)Application.Current.Properties["Role"]; if (role != "Admin") { Visibility = Visibility.Hidden; } else { Visibility = Visibility.Visible; } treneri = new ObservableCollection <Trener_Selektovan>(); DeleteCommand = new MyICommand(OnDelete); IspisCommand = new MyICommand(Stampaj); using (var db = new BazaZaLiguEntities()) { foreach (Trener item in db.Treners) { Trener_Selektovan trener = new Trener_Selektovan() { T = item }; Vodi klubTrenera = db.Vodis.Where(x => x.trener_id_trenera == item.id_trenera).FirstOrDefault(); if (klubTrenera != null) { trener.Naziv_Kluba = klubTrenera.klub_naziv; } treneri.Add(trener); } } OnPropertyChanged("treneri"); }
public void OnDelete() { using (var db = new BazaZaLiguEntities()) { //brisi iz vodi Vodi provera_vodi = db.Vodis.Where(x => x.trener_id_trenera == Selektovani_trener.T.id_trenera).FirstOrDefault(); if (provera_vodi != null) { foreach (Igrac igrac in db.Igracs) { if (igrac.naziv_kluba == provera_vodi.klub_naziv) { igrac.Vodi = null; db.Entry(igrac).State = System.Data.Entity.EntityState.Modified; } } db.Entry(provera_vodi).State = System.Data.Entity.EntityState.Deleted; db.SaveChanges(); } Trener trener_brisanje = db.Treners.Find(Selektovani_trener.T.id_trenera); if (trener_brisanje != null) { db.Entry(trener_brisanje).State = System.Data.Entity.EntityState.Deleted; treneri.Remove(Selektovani_trener); } db.SaveChanges(); MessageBox.Show("Uspesno ste obrisali Trenera", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk); LogReport(trener_brisanje); } }
public void OnUpdate() { if (validate()) { using (var db = new BazaZaLiguEntities()) { Trener trener_update = db.Treners.Find(Selektovani_trener.T.id_trenera); if (trener_update != null) { trener_update.ime_trenera = Selektovani_trener.T.ime_trenera; trener_update.prezime_trenera = Selektovani_trener.T.prezime_trenera; trener_update.drzava = Selektovani_trener.T.drzava; if (trener_update.Vodis.Count > 0) //sudio je negde { Vodi stariKlub = db.Vodis.Where(x => x.trener_id_trenera == trener_update.id_trenera).FirstOrDefault(); foreach (Igrac igrac in db.Igracs) { if (igrac.naziv_kluba == stariKlub.klub_naziv) { igrac.Vodi = null; db.Entry(igrac).State = System.Data.Entity.EntityState.Modified; } } db.Vodis.Remove(stariKlub); db.SaveChanges(); } if (Selektovani_trener.Naziv_Kluba != "" && Selektovani_trener.Naziv_Kluba != null) //odabrao je nekog { Vodi noviVodi = new Vodi() { trener_id_trenera = trener_update.id_trenera }; Klub noviKlub = db.Klubs.Where(x => x.naziv == Selektovani_trener.Naziv_Kluba).FirstOrDefault(); noviVodi.klub_naziv = noviKlub.naziv; db.Vodis.Add(noviVodi); db.SaveChanges(); foreach (Igrac igrac in db.Igracs) { if (igrac.naziv_kluba == noviKlub.naziv) { igrac.Vodi = noviVodi; db.Entry(igrac).State = System.Data.Entity.EntityState.Modified; } } } db.Entry(trener_update).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); ucitajTrenera(); ucitajKlubove(); Selektovani_trener = null; OnPropertyChanged("Selektovani_trener"); MessageBox.Show("Uspesno ste promenili trenera", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk); //Ne refreshuje lepo combobox } } } }
private void ucitajKlubove() { KlubUpdate = new ObservableCollection <Klub_Selektovan>(); using (var db = new BazaZaLiguEntities()) { foreach (Klub item in db.Klubs) { Klub_Selektovan klubS = new Klub_Selektovan() { K = item }; KlubUpdate.Add(klubS); if (item.Liga != null) { klubS.Naziv_lige = item.Liga.naziv_lige; } //trener Vodi vod = db.Vodis.Where(x => x.klub_naziv == item.naziv).FirstOrDefault(); if (vod != null) { Trener trener = db.Treners.Find(vod.trener_id_trenera); klubS.Trener = trener.ime_trenera; } //broj navijaca klubS.Broj_Navijaca = 0; if (item.Navijacs != null) { klubS.Broj_Navijaca = item.Navijacs.Count; } } } OnPropertyChanged("KlubUpdate"); }
public ShowKlubViewModel() { string role = (string)Application.Current.Properties["Role"]; if (role != "Admin") { Visibility = Visibility.Hidden; } else { Visibility = Visibility.Visible; } DeleteCommand = new MyICommand(onDelete); IspisCommand = new MyICommand(Stampaj); klubovi = new ObservableCollection <Klub_Selektovan>(); using (var db = new BazaZaLiguEntities()) { foreach (Klub item in db.Klubs) { double starost = prosekStarosti(item); Klub_Selektovan klubS = new Klub_Selektovan() { K = item, Prosecna_Starost = (float)starost }; if (item.Liga != null) { klubS.Naziv_lige = item.Liga.naziv_lige; } else { klubS.Naziv_lige = ""; } //trener Vodi vod = db.Vodis.Where(x => x.klub_naziv == item.naziv).FirstOrDefault(); if (vod != null) { Trener trener = db.Treners.Find(vod.trener_id_trenera); klubS.Trener = trener.ime_trenera + " " + trener.prezime_trenera; } else { klubS.Trener = ""; } //broj navijaca klubS.Broj_Navijaca = 0; if (item.Navijacs != null) { klubS.Broj_Navijaca = item.Navijacs.Count; } klubovi.Add(klubS); } } OnPropertyChanged("klubovi"); }
public void OnAdd() { if (validate()) { using (var db = new BazaZaLiguEntities()) { //id logic int nextID = 0; Trener proveraID = null; do { proveraID = db.Treners.Where(x => x.id_trenera == nextID + 1).FirstOrDefault(); nextID++; }while (proveraID != null); Klub novi_klub = db.Klubs.Find(SelektovaniKlub); Trener novi_trener = new Trener() { id_trenera = nextID, ime_trenera = Trener_prop.ime_trenera, prezime_trenera = Trener_prop.prezime_trenera, drzava = Trener_prop.drzava }; db.Treners.Add(novi_trener); if (SelektovaniKlub != "" && SelektovaniKlub != null && SelektovaniKlub != "None") { Vodi novi_vodi = new Vodi() { trener_id_trenera = novi_trener.id_trenera, klub_naziv = novi_klub.naziv, Klub = novi_klub, Trener = novi_trener }; db.Vodis.Add(novi_vodi); foreach (Igrac igrac in db.Igracs) { if (igrac.naziv_kluba == novi_klub.naziv) { igrac.Vodi = novi_vodi; db.Entry(igrac).State = System.Data.Entity.EntityState.Modified; } } } db.SaveChanges(); MessageBox.Show("Uspesno dodan trener", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk); Trener_prop.ime_trenera = Trener_prop.prezime_trenera = SelektovaniKlub = ""; //works fine OnPropertyChanged("Trener_prop"); ucitajSlobodneKlubove(); LogReport(novi_trener); } } }
private void ucitajKlubove() { Naziv_Klubova = new ObservableCollection <string>(); using (var db = new BazaZaLiguEntities()) { foreach (Klub item in db.Klubs) { //svi slobodni klubovi Vodi vodi = db.Vodis.Where(x => x.klub_naziv == item.naziv).FirstOrDefault(); if (vodi == null) { Naziv_Klubova.Add(item.naziv); } } Naziv_Klubova.Add(""); //za davanje otkaza iz kluba } OnPropertyChanged("Naziv_Klubova"); }
private void ucitajTrenera() { treneri = new ObservableCollection <Trener_Selektovan>(); using (var db = new BazaZaLiguEntities()) { foreach (Trener item in db.Treners) { Trener_Selektovan trener = new Trener_Selektovan() { T = item }; Vodi klubTrenera = db.Vodis.Where(x => x.trener_id_trenera == item.id_trenera).FirstOrDefault(); if (klubTrenera != null) { trener.Naziv_Kluba = klubTrenera.klub_naziv; } treneri.Add(trener); } } OnPropertyChanged("treneri"); }
public void OnUpdate() { if (validate()) { using (var db = new BazaZaLiguEntities()) { double prosek_golova = 0; Igrac igrac_update = db.Igracs.Find(Selektovani_igrac.igrac.id_igraca); if (igrac_update != null) { igrac_update.ime_igraca = Selektovani_igrac.igrac.ime_igraca; igrac_update.prezime_igraca = Selektovani_igrac.igrac.prezime_igraca; igrac_update.odigranih_utakmica = Selektovani_igrac.igrac.odigranih_utakmica; igrac_update.postignutih_golova = Selektovani_igrac.igrac.postignutih_golova; igrac_update.godine_igraca = Selektovani_igrac.igrac.godine_igraca; if (igrac_update.odigranih_utakmica != 0 || igrac_update.postignutih_golova != 0) { prosek_golova = (double)db.Database.SqlQuery <double>($"SELECT [dbo].[Prosek]({igrac_update.postignutih_golova},{igrac_update.odigranih_utakmica})").FirstOrDefault(); prosek_golova = Math.Round(prosek_golova, 2); } igrac_update.prosek_golova = prosek_golova; if (Selektovani_igrac.Prethodni_klub == Selektovani_igrac.igrac.naziv_kluba || (Selektovani_igrac.Prethodni_klub == null && (Selektovani_igrac.igrac.naziv_kluba == "" || Selektovani_igrac.igrac.naziv_kluba == null))) // nije promenio { db.Entry(igrac_update).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); MessageBox.Show("Uspesno ste promenili igraca", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk); return; } else if (Selektovani_igrac.igrac.naziv_kluba == "" || Selektovani_igrac.igrac.naziv_kluba == null) //dao je otkaz u klubu { Klub stariKlub = db.Klubs.Where(x => x.naziv == selektovani_igrac.igrac.vodi_naziv).FirstOrDefault(); if (stariKlub != null) { Vodi stari_trener = db.Vodis.Where(x => x.klub_naziv == stariKlub.naziv).FirstOrDefault(); stari_trener.Igracs.Remove(Selektovani_igrac.igrac); stariKlub.Igracs.Remove(Selektovani_igrac.igrac); } igrac_update.naziv_kluba = null; db.Entry(igrac_update).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); igrac_update.Vodi = null; } else //odabrao je drugi klub { igrac_update.naziv_kluba = Selektovani_igrac.igrac.naziv_kluba; Klub novi_klub_igraca = db.Klubs.Find(igrac_update.naziv_kluba); igrac_update.Klub = novi_klub_igraca; Vodi stari_trener = db.Vodis.Where(x => x.klub_naziv == Selektovani_igrac.igrac.vodi_naziv).FirstOrDefault(); if (stari_trener != null) { stari_trener.Igracs.Remove(Selektovani_igrac.igrac); db.SaveChanges(); } Vodi trener_Novog_Kluba = db.Vodis.Where(x => x.klub_naziv == novi_klub_igraca.naziv).FirstOrDefault(); igrac_update.Vodi = trener_Novog_Kluba; //generise sledeci ID: int nextID = 0; transferistorija proveraIDa = null; do { proveraIDa = db.transferistorijas.Where(x => x.id == nextID + 1).FirstOrDefault(); nextID++; }while (proveraIDa != null); transferistorija transfer = new transferistorija() { id = nextID, Igrac = igrac_update, klub = igrac_update.naziv_kluba }; transfer.datum = DateTime.Now.ToShortDateString(); db.transferistorijas.Add(transfer); db.SaveChanges(); } db.Entry(igrac_update).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); MessageBox.Show("Uspesno ste promenili igraca", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk); } } ucitajKlubove(); } }
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)); } }
public void OnAdd() { if (validate()) { using (var db = new BazaZaLiguEntities()) { double golovi = 0; //generise sledeci ID: int nextID = 0; Igrac proveraID = null; do { proveraID = db.Igracs.Where(x => x.id_igraca == nextID + 1).FirstOrDefault(); nextID++; }while (proveraID != null); Igrac novi_igrac = new Igrac() { id_igraca = nextID, ime_igraca = Igrac_prop.ime_igraca, prezime_igraca = Igrac_prop.prezime_igraca, postignutih_golova = Igrac_prop.postignutih_golova, odigranih_utakmica = Igrac_prop.odigranih_utakmica, godine_igraca = Igrac_prop.godine_igraca }; //prosek golova if (novi_igrac.postignutih_golova != 0 && novi_igrac.odigranih_utakmica != 0) { double postignutih = (double)novi_igrac.postignutih_golova; double odigranih = (double)novi_igrac.odigranih_utakmica; golovi = (double)db.Database.SqlQuery <double>($"SELECT [dbo].[Prosek]({postignutih},{odigranih})").FirstOrDefault(); golovi = Math.Round(golovi, 2); } novi_igrac.prosek_golova = Math.Round(golovi, 2); if (SelektovaniKlub != null && SelektovaniKlub != "") { Klub njegov_klub = db.Klubs.Find(SelektovaniKlub); novi_igrac.Klub = njegov_klub; novi_igrac.naziv_kluba = njegov_klub.naziv; Vodi njegov_vodi = db.Vodis.Where(x => x.klub_naziv == SelektovaniKlub).FirstOrDefault(); if (njegov_vodi != null) { novi_igrac.Vodi = njegov_vodi; novi_igrac.vodi_id_trenera = njegov_vodi.trener_id_trenera; novi_igrac.vodi_naziv = njegov_vodi.klub_naziv; } } db.Igracs.Add(novi_igrac); try { db.SaveChanges(); //generise sledeci ID: nextID = 0; transferistorija proveraIDa = null; do { proveraIDa = db.transferistorijas.Where(x => x.id == nextID + 1).FirstOrDefault(); nextID++; }while (proveraIDa != null); transferistorija transfer = new transferistorija() { id = nextID, Igrac = novi_igrac, klub = novi_igrac.naziv_kluba }; transfer.datum = DateTime.Now.ToShortDateString(); db.transferistorijas.Add(transfer); db.SaveChanges(); MessageBox.Show("Uspesno dodat igrac", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk); LogReport(novi_igrac); } catch (Exception) { MessageBox.Show("Greska prilikom dodaje igraca", "Oprez", MessageBoxButton.OK, MessageBoxImage.Warning); } } } }
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); } }
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 void onUpdate() { if (validate()) { using (var db = new BazaZaLiguEntities()) { Klub klub_update = db.Klubs.Where(x => x.naziv.Equals(Selektovana_klub.K.naziv)).FirstOrDefault(); if (klub_update != null) { klub_update.grad = Selektovana_klub.K.grad; if (klub_update.Liga != null) //igrao je u nekoj ligi pre toga, brisi ga iz stare lige { Liga liga = db.Ligas.Find(klub_update.Liga.id_lige); liga.Klubs.Remove(klub_update); db.SaveChanges(); } Liga nova_liga = db.Ligas.Where(x => x.naziv_lige == Selektovana_klub.Naziv_lige).FirstOrDefault(); klub_update.Liga = nova_liga; //ako je odabrao prazno stavice null if (klub_update.Vodis.Count > 0) // imao je trenera, brisi starog { Vodi stariTrener = db.Vodis.Where(x => x.klub_naziv == klub_update.naziv).FirstOrDefault(); List <Igrac> igraciKluba = stariTrener.Igracs.ToList(); foreach (Igrac item in igraciKluba) { Igrac igrac = db.Igracs.Find(item.id_igraca); igrac.Vodi = null; igrac.vodi_id_trenera = null; igrac.vodi_naziv = null; db.Entry(igrac).State = System.Data.Entity.EntityState.Modified; } db.Vodis.Remove(stariTrener); db.SaveChanges(); } if (Selektovana_klub.Trener != "" && Selektovana_klub.Trener != null) //odabrao je novog { Vodi noviVodi = new Vodi() { klub_naziv = klub_update.naziv }; Trener noviTrener = db.Treners.Where(x => x.ime_trenera == Selektovana_klub.Trener).FirstOrDefault(); noviVodi.trener_id_trenera = noviTrener.id_trenera; db.Vodis.Add(noviVodi); db.SaveChanges(); foreach (Igrac igrac in db.Igracs) { if (igrac.naziv_kluba == klub_update.naziv) { igrac.Vodi = noviVodi; db.Entry(igrac).State = System.Data.Entity.EntityState.Modified; } } } db.Entry(klub_update).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); MessageBox.Show("Uspesno ste promenili klub", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk); } ucitajKlubove(); ucitajTrenereILige(); Vrednost = ""; OnPropertyChanged("Vrednost"); } } }
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)); } }
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)); } }
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); } }
public void onDelete() { using (var db = new BazaZaLiguEntities()) { Klub klubZaBrisanje = db.Klubs.Find(Selektovana_klub.K.naziv); Klub logReportKlub = klubZaBrisanje; if (!izvrsiProvere(klubZaBrisanje)) { //nije ispunio uslove brisanje, ne brisi return; } //brisi poseduje: List <Poseduje> provera_poseduje = db.Posedujes.Where(x => x.klub_naziv == Selektovana_klub.K.naziv).ToList(); foreach (Poseduje item in provera_poseduje) { item.Obezbedjenjes.Clear(); db.Posedujes.Remove(item); db.SaveChanges(); } //brisi trenere koji vodi klub Vodi provera_vodi = db.Vodis.Where(x => x.klub_naziv == Selektovana_klub.K.naziv).FirstOrDefault(); if (provera_vodi != null) { provera_vodi.Igracs.Clear(); db.Entry(provera_vodi).State = System.Data.Entity.EntityState.Deleted; db.SaveChanges(); } //brisi kod igraca: List <Igrac> provera_igraca = db.Igracs.Where(x => x.naziv_kluba == Selektovana_klub.K.naziv).ToList(); //vrati sve igrace koji igraju za klub foreach (Igrac item in provera_igraca) { Igrac igrac = db.Igracs.Find(item.id_igraca); //FK igrac.Klub = null; igrac.naziv_kluba = null; igrac.Vodi = null; igrac.vodi_id_trenera = null; igrac.vodi_naziv = null; db.Entry(igrac).State = System.Data.Entity.EntityState.Modified; db.SaveChanges(); } db.Entry(klubZaBrisanje).State = System.Data.Entity.EntityState.Deleted; //brise iz baze db.SaveChanges(); var klub_brisi = klubovi.Where(x => x.K.naziv == klubZaBrisanje.naziv).First(); if (klub_brisi != null) { klubovi.Remove(klub_brisi); //brisemo iz liste } OnPropertyChanged("klubovi"); try { db.SaveChanges(); MessageBox.Show("Uspesno ste obrisali klub", "Uspesno", MessageBoxButton.OK, MessageBoxImage.Asterisk); LogReport(logReportKlub); } catch (Exception) { MessageBox.Show("Od kluba zavise drugi entiteti, prvo njih obrisati", "Oprez", MessageBoxButton.OK, MessageBoxImage.Warning); } } }
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); } }