private void BtnSubmitData_Click(object sender, EventArgs e) { try { if (this.TbDrzava.BackColor == Color.Red) { MessageBox.Show("Uneta reprezentacija ne postoji u bazi.Unesite reprezentaciju prvo."); return; } if (String.IsNullOrWhiteSpace(TbIme.Text)) { MessageBox.Show("Ubacite ime stadiona!"); return; } else if (String.IsNullOrWhiteSpace(TbDrzava.Text) || String.IsNullOrWhiteSpace(TbGrad.Text)) { MessageBox.Show("Unesite lokaciju stadiona (Drzavu i grad)!"); return; } else if (String.IsNullOrWhiteSpace(TbKapacitet.Text)) { MessageBox.Show("Unesite kapacitet stadiona!"); return; } else if (String.IsNullOrWhiteSpace(TbVlasnik.Text)) { MessageBox.Show("Unesite vlasnika stadiona!"); return; } Stadion forSave = new Stadion(); forSave.Ime = StringCleaner.checkString(TbIme.Text); forSave.Istorija = StringCleaner.checkString(RtbIstorija.Text); forSave.Kapacitet = StringCleaner.checkString(TbKapacitet.Text); forSave.Lokacija = StringCleaner.checkString(TbDrzava.Text) + "," + StringCleaner.checkString(TbGrad.Text); forSave.Vlasnik = StringCleaner.checkString(TbVlasnik.Text); var _client = new MongoClient(); var _database = _client.GetDatabase("test"); var collection = _database.GetCollection <Stadion>("stadioni"); var collection2 = _database.GetCollection <Reprezentacija>("reprezentacije"); var filter2 = new BsonDocument() { { "Ime", this.TbDrzava.Text } }; var filter = new BsonDocument() { { "Ime", TbIme.Text } }; Reprezentacija reprezentacija = collection2.Find <Reprezentacija>(filter2).First(); forSave.ReprezentacijaID = StringCleaner.checkString(reprezentacija._id.ToString()); var document = forSave.ToBsonDocument(); var filterForUniqueCheck = Builders <BsonDocument> .Filter.Eq("Ime", TbIme.Text); //test if exists var test = collection.Find(filter).Count(); if (test == 0) { if (slikaStadiona != null) { AuxLib.AddImageToGridFS(slikaStadiona, this.TbIme.Text + "stadion", format); } else { MessageBox.Show("Slika nije ubacena."); } collection.InsertOne(forSave); MessageBox.Show("Uspesno dodat novi stadion!"); } else { //TO DO : Napraviti u AuxLib remove image i remove song za brisanje i ovde implementirati brisanje te slike i dodavanje nove. ( kao update ) AuxLib.deleteFromGridFS(this.TbIme.Text + "stadion"); if (slikaStadiona != null) { AuxLib.AddImageToGridFS(slikaStadiona, this.TbIme.Text + "stadion", format); } else { MessageBox.Show("Slika nije ubacena."); } collection.ReplaceOne(filter, forSave); MessageBox.Show("Uspesno azuriran stadion!"); } } catch (Exception ex) { MessageBox.Show(ex.Message); return; } }
private void button3_Click(object sender, EventArgs e) { if (this.tbIme.Text == "") { MessageBox.Show("Ime reprezentacije je obavezno!"); return; } if (this.tbSkracenica.Text == "") { MessageBox.Show("Skracenica je obavezna!(3 slova)"); return; } if (this.tbSelektor.Text == "") { MessageBox.Show("Selektor je obavezan!"); return; } if (this.LVSastav.Items.Count < 11) { MessageBox.Show("Sastav je nepotpun!"); return; } if (elKapetano == null) { MessageBox.Show("Morate izabrati kapitena!"); return; } try { //database access var _client = new MongoClient(); var _database = _client.GetDatabase("test"); var collection = _database.GetCollection <BsonDocument>("reprezentacije"); //filters var filterAllCount = new BsonDocument(); var filterForUniqueCheck = Builders <BsonDocument> .Filter.Eq("Ime", this.tbIme.Text); //test if reprezentacija exists var test = collection.Find(filterForUniqueCheck).Count(); //if(test != 0) //{ // var reprez = collection.Find(filterForUniqueCheck).First(); // var jsonWriterSettings = new JsonWriterSettings { OutputMode = JsonOutputMode.Strict }; // Reprezentacija rep = Newtonsoft.Json.JsonConvert.DeserializeObject<Reprezentacija>(reprez.ToJson(jsonWriterSettings)); //} var countForID = collection.Count(filterAllCount); // model creating Reprezentacija forSave = new Reprezentacija(); forSave.FifaRang = Convert.ToInt32(numFifaRang.Value); if (test == 0) { forSave.id = countForID; } forSave.IgracSaNajviseNastupa = StringCleaner.checkString(this.tbIgracSaNajviseNastupa.Text); forSave.Ime = StringCleaner.checkString(this.tbIme.Text); forSave.Kapiten = StringCleaner.checkString(elKapetano.PunoIme); forSave.Nadimak = StringCleaner.checkString(tbNadimak.Text); forSave.NajboljiStrelac = StringCleaner.checkString(this.tbNadimak.Text); forSave.NajvecaPobedaPoraz = StringCleaner.checkString(this.tbNajvecaPobedaPoraz.Text); forSave.OsvojeneMedalje = StringCleaner.checkString(this.rtbOsvojeneMedalje.Text); foreach (ListViewItem item in this.LVSastav.Items) { forSave.Sastav += item.SubItems[1].Text; forSave.Sastav += ","; } forSave.Sastav = forSave.Sastav.TrimEnd(','); forSave.Selektor = StringCleaner.checkString(tbSelektor.Text); forSave.Skracenica = StringCleaner.checkString(tbSkracenica.Text); forSave.SportskaBiografija = StringCleaner.checkString(rtbSportskaBiografija.Text); //Serialization and BsonDocument creation var document = BsonDocument.Parse(Newtonsoft.Json.JsonConvert.SerializeObject(forSave)); // insert or update check. if (test == 0) { collection.InsertOne(document); MessageBox.Show("Reprezentacija :" + forSave.Ime + " uspesno dodata."); } else { //var filter = Builders<BsonDocument>.Filter.Eq("name", "Juni"); //var update = Builders<BsonDocument>.Update // .Set("Ime", "American (New)") // .CurrentDate("lastModified") // .Set("",""); //var result = await collection.UpdateOneAsync(filter, update); //collection.UpdateOne(filterForUniqueCheck, document); collection.ReplaceOne(filterForUniqueCheck, document); MessageBox.Show("Reprezentacija :" + forSave.Ime + " uspesno azurirana."); } if (slikaReprezentacije != null) { AuxLib.AddImageToGridFS(slikaReprezentacije, imeSlike, format); } else { MessageBox.Show("Slika nije selektovana zato nije ubacena."); } //reset kapetana na null elKapetano = null; } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void button3_Click(object sender, EventArgs e) { if (String.IsNullOrWhiteSpace(this.tbIme.Text)) { MessageBox.Show("Ime reprezentacije je obavezno!"); return; } if (String.IsNullOrWhiteSpace(this.tbSkracenica.Text)) { MessageBox.Show("Skracenica je obavezna!(3 slova)"); return; } if (String.IsNullOrWhiteSpace(this.tbSelektor.Text)) { MessageBox.Show("Selektor je obavezan!"); return; } if (this.LVSastav.Items.Count < 11) { MessageBox.Show("Sastav je nepotpun!"); return; } if (elKapetano == null) { MessageBox.Show("Morate izabrati kapitena!"); return; } if (elKapetano != null) { ListViewItem kapitenNijeUlistu = LVSastav.FindItemWithText(elKapetano._id.ToString()); if (kapitenNijeUlistu == null) { MessageBox.Show("Morate izabrati kapitena!"); return; } } string temp = this.CheckTeam(); //provera pozicija tima if (temp != "Ok") { MessageBox.Show(temp); return; } ; try { //database access var _client = new MongoClient(); var _database = _client.GetDatabase("test"); var collection = _database.GetCollection <Reprezentacija>("reprezentacije"); //filters var filterAllCount = new BsonDocument(); //var filterForUniqueCheck = Builders<BsonDocument>.Filter.Eq("Ime", this.tbIme.Text); var filter = new BsonDocument() { { "Ime", tbIme.Text } }; //test if reprezentacija exists var test = collection.Find(filter).FirstOrDefault(); var countForID = collection.Count(filterAllCount); // model creating Reprezentacija forSave = new Reprezentacija(); forSave.FifaRang = Convert.ToInt32(numFifaRang.Value); forSave.id = 777; forSave.IgracSaNajviseNastupa = StringCleaner.checkString(this.tbIgracSaNajviseNastupa.Text); forSave.Ime = StringCleaner.checkString(this.tbIme.Text); forSave.Kapiten = StringCleaner.checkString(elKapetano.PunoIme); forSave.Nadimak = StringCleaner.checkString(tbNadimak.Text); forSave.NajboljiStrelac = StringCleaner.checkString(this.tbNajboljiStrelac.Text); forSave.NajvecaPobedaPoraz = StringCleaner.checkString(this.tbNajvecaPobedaPoraz.Text); forSave.OsvojeneMedalje = StringCleaner.checkString(this.rtbOsvojeneMedalje.Text); foreach (ListViewItem item in this.LVSastav.Items) { forSave.Sastav += item.SubItems[1].Text; forSave.Sastav += ","; forSave.SastavIDs += item.SubItems[0].Text; forSave.SastavIDs += ","; } forSave.Sastav = forSave.Sastav.TrimEnd(','); forSave.SastavIDs = forSave.SastavIDs.TrimEnd(','); forSave.Selektor = StringCleaner.checkString(tbSelektor.Text); forSave.Skracenica = StringCleaner.checkString(tbSkracenica.Text); forSave.SportskaBiografija = StringCleaner.checkString(rtbSportskaBiografija.Text); //Serialization and BsonDocument creation //var document = forSave.ToBsonDocument(); // insert or update check. if (test == null) { collection.InsertOne(forSave); AuxLib.UpdateIgracStatus(forSave.SastavIDs.Split(','), true); MessageBox.Show("Reprezentacija :" + forSave.Ime + " uspesno dodata."); } else { forSave._id = test._id; //update za stare ugrace (stavljamo da ne pripadaju vise timu koji se azurira) AuxLib.UpdateIgracStatus(test.SastavIDs.Split(','), false); collection.ReplaceOne(filter, forSave); //update nove igrace AuxLib.UpdateIgracStatus(forSave.SastavIDs.Split(','), true); MessageBox.Show("Reprezentacija :" + forSave.Ime + " uspesno azurirana."); } //ucitavanje slike iz strima u GridFS if (this.PBslikaReprezentacije.Image != null) { AuxLib.deleteFromGridFS(forSave.Ime + "zastava"); if (!AuxLib.AddImageToGridFS(this.PBslikaReprezentacije.Image, forSave.Ime + "zastava", formatSlika)) { MessageBox.Show("Slika nije ucitana uspesno."); } ; } else { MessageBox.Show("Slika nije selektovana zato nije ubacena."); } //ucitavanje himne iz strima u GridFS if (himnaStream != null) { AuxLib.deleteFromGridFS(forSave.Ime + "himna"); if (AuxLib.AddSoundToGridFS(himnaStream, this.tbIme.Text + "himna", formatHimna)) { MessageBox.Show("Uspesno ste dodali mp3 sadrzaja kao himnu reprezentacije."); } } else { MessageBox.Show("Himna nije ubacena."); } //reset kapetana na null elKapetano = null; var filterForListView = new BsonDocument() { { "PripadaReprezentaciji", false } }; AuxLib.UpdateIgraciListView(this.LvIgraci, filterForListView); this.LVSastav.Items.Clear(); } catch (Exception ex) { MessageBox.Show(ex.Message); } }
private void BtnDodajIgraca_Click(object sender, EventArgs e) { // ---- Provera ispravnosti licnih podataka ---- if (String.IsNullOrWhiteSpace(TbPunoIme.Text)) { MessageBox.Show("Unesite puno ime igraca!"); return; } else if (String.IsNullOrWhiteSpace(TbMestoRodjenja.Text)) { MessageBox.Show("Unesite mesto rodjenja igraca!"); return; } else if (String.IsNullOrWhiteSpace(TbTrenutniKlub.Text)) { MessageBox.Show("Unesite trenutni (ili poslednji) klub igraca!"); return; } else if (String.IsNullOrWhiteSpace(TbVisina.Text) || TbVisina.Text.Length != 4) { MessageBox.Show("Unesite ispravno vrednost visine igraca! Na primer '1.92' "); return; /*AKO JE OBAVEZNO POLJE*/ } else if (LvPozicijeIgraca.Items.Count == 0) { MessageBox.Show("Ubacite poziciju/je na kojoj igrac igra!"); return; } // ---- Izvlacimo pozicije igraca ---- string pozicije = ""; foreach (ListViewItem lvi in LvPozicijeIgraca.Items) { pozicije += lvi.Text + ", "; } pozicije = pozicije.TrimEnd(' '); pozicije = pozicije.TrimEnd(','); // ---- Ubacujemo podatke u objekat ---- Igrac noviIgrac = new Igrac(); // ---- Licni podaci ---- noviIgrac.PunoIme = StringCleaner.checkString(TbPunoIme.Text); noviIgrac.MestoRodjenja = StringCleaner.checkString(TbMestoRodjenja.Text); noviIgrac.DatumRodjenja = DpDatumRodjenja.Text; /*Treba se ispravi*/ noviIgrac.Visina = StringCleaner.checkString(TbVisina.Text); noviIgrac.TrenutniKlub = StringCleaner.checkString(TbTrenutniKlub.Text); noviIgrac.Pozicija = StringCleaner.checkString(pozicije); // ---- Ostali podaci ---- noviIgrac.PripadaReprezentaciji = false; noviIgrac.SportskaBiografija = StringCleaner.checkString(RtbSportksaBiografija.Text); noviIgrac.ReprezentativnaKarijera = StringCleaner.checkString(RtbReprezentativnaKarijera.Text); noviIgrac.Statistika = StringCleaner.checkString(RtbStatistika.Text); noviIgrac.Trofeji = StringCleaner.checkString(RtbTrofeji.Text); // ------------------ID------------------------ //noviIgrac.Id = new BsonObjectId(""); //---------------------------------------------- // ---- Rad sa bazom ---- try { var _client = new MongoClient(); var _database = _client.GetDatabase("test"); var collection = _database.GetCollection <Igrac>("igraci"); var filter = new BsonDocument(); // var document = noviIgrac.ToBsonDocument(); collection.InsertOne(noviIgrac); collection.ReplaceOne(filter, noviIgrac); if (slika != null) { AuxLib.deleteFromGridFS(noviIgrac._id + "igrac"); AuxLib.AddImageToGridFS(slika, noviIgrac._id + "igrac", format); } //update status igraca MessageBox.Show("Uspesno dodat novi igrac!"); // ---- Zatvaranje forme ---- this.Dispose(); } catch (Exception ec) { MessageBox.Show(ec.ToString()); } }
private void button1_Click(object sender, EventArgs e) { string ime = TbIme.Text; string opis = RtbOpis.Text; string sysIgranja = RtbSysIgr.Text; string posPobednik = TbLstWin.Text; //ne smeju da budu null! if (String.IsNullOrWhiteSpace(ime)) { MessageBox.Show("Unesite ime takmicenja!"); } if (String.IsNullOrWhiteSpace(opis)) { MessageBox.Show("unesite opis takmicenja!"); } if (String.IsNullOrWhiteSpace(sysIgranja)) { MessageBox.Show("Unesite Sistem igranja!"); } if (String.IsNullOrWhiteSpace(posPobednik)) { MessageBox.Show("Unesite ime one reprezentacije koja je poslednja pobedila!"); } //---- ucitavanje sa Lv-a string spisakDrzava = ""; foreach (ListViewItem lv1 in LvCntryList.SelectedItems) { spisakDrzava += lv1.Text; spisakDrzava += ","; } string statistika = ""; foreach (ListViewItem lv2 in LvStatistics.Items) { statistika += lv2.Text; statistika += ","; } try { //pristup bazi var client = new MongoClient(); var database = client.GetDatabase("test"); var collection = database.GetCollection <BsonDocument>("takmicenja"); //filtri var filter = new BsonDocument(); var filterForUniquCheck = Builders <BsonDocument> .Filter.Eq("Ime", ime); //provera da li postoji takmicenje var test = collection.Find(filterForUniquCheck).Count(); Takmicenje novoTakmicenje = new Takmicenje(); novoTakmicenje.Ime = StringCleaner.checkString(ime); novoTakmicenje.Opis = StringCleaner.checkString(opis); novoTakmicenje.SpisakDrzava = StringCleaner.checkString(spisakDrzava); novoTakmicenje.SistemIgranja = StringCleaner.checkString(sysIgranja); novoTakmicenje.PoslednjiPobednik = StringCleaner.checkString(posPobednik); novoTakmicenje.Statistika = StringCleaner.checkString(statistika); var document = novoTakmicenje.ToBsonDocument(); if (test == 0) { collection.InsertOne(document); MessageBox.Show("Uspesno dodato takmicenje: " + novoTakmicenje.Ime + "!"); } else { collection.ReplaceOne(filterForUniquCheck, document); MessageBox.Show("Takmicenje: " + novoTakmicenje.Ime + "je uspesno azurirano!"); } this.Dispose(); } catch (Exception ec) { MessageBox.Show(ec.ToString()); } }
private void button1_Click(object sender, EventArgs e) { string ime = TbIme.Text; string opis = RtbOpis.Text; string sysIgranja = RtbSysIgr.Text; string posPobednik = TbLstWin.Text; if (String.IsNullOrWhiteSpace(ime)) { MessageBox.Show("Unesite ime takmicenja!"); } if (String.IsNullOrWhiteSpace(opis)) { MessageBox.Show("unesite opis takmicenja!"); } if (String.IsNullOrWhiteSpace(sysIgranja)) { MessageBox.Show("Unesite Sistem igranja!"); } if (String.IsNullOrWhiteSpace(posPobednik)) { MessageBox.Show("Unesite ime one reprezentacije koja je poslednja pobedila!"); } string spisakDrzava = ""; foreach (ListViewItem lv1 in LvCntryList.Items) { spisakDrzava += lv1.Text; } spisakDrzava = spisakDrzava.TrimEnd(','); string statistika = ""; foreach (ListViewItem lv2 in LvStatistics.Items) { statistika += lv2.Text; } statistika = statistika.TrimEnd(','); //dodavanje podataka u pokusaju try { Takmicenje novoTakmicenje = new Takmicenje(); novoTakmicenje.Ime = StringCleaner.checkString(ime); novoTakmicenje.Opis = StringCleaner.checkString(opis); novoTakmicenje.SpisakDrzava = StringCleaner.checkString(spisakDrzava); novoTakmicenje.SistemIgranja = StringCleaner.checkString(sysIgranja); novoTakmicenje.PoslednjiPobednik = StringCleaner.checkString(posPobednik); novoTakmicenje.Statistika = StringCleaner.checkString(statistika); var client = new MongoClient(); var database = client.GetDatabase("test"); var collection = database.GetCollection <BsonDocument>("takmicenja"); var filter = new BsonDocument(); var document = novoTakmicenje.ToBsonDocument(); collection.InsertOne(document); MessageBox.Show("Uspesno dodato novo Takmicenje!"); this.Dispose(); } catch (Exception ec) { MessageBox.Show(ec.ToString()); } }