/// <summary> /// hämtar grupper som är kopplade till ett i listboxen markerat träningstillfälle. /// </summary> private void koppladeGrupper() { lasAvListboxarna(); DataTable sokning; postgres s = startaPostgres(); s.narvaro = nuvarandeTrantillf.narvarolistaID.ToString(); sokning = s.sqlFråga("kopplade", "tranTillfalle"); if (sokning.Columns[0].ColumnName.Equals("error")) { _tbSvar.Text = sokning.Rows[0][1].ToString(); } else { trnGrpLst_kopplad.Clear(); for (int i = 0; i < sokning.Rows.Count; i++) { traningsgrupp tillfalle = new traningsgrupp() { narvarolista = (int)sokning.Rows[i]["narvarolista_id"], del_grupp_id = (int)sokning.Rows[i]["del_grupp_id"], namn = sokning.Rows[i]["namn"].ToString(), }; trnGrpLst_kopplad.Add(tillfalle); _tbSvar.Text = sokOk; } _gruppaktiviter.DataSource = null; _gruppaktiviter.DataSource = trnGrpLst_kopplad; _gruppaktiviter.DisplayMember = "namn"; } }
/// <summary> /// Metod som hämtar grupper. /// </summary> private void hamtaGrupper() { DataTable svarGrp; postgres sokning = new postgres(); svarGrp = sokning.sqlFråga(sokning.vilkenSokning(false, false, false), "gruppNy"); // hämtar sökning efter träningsgrupper if (svarGrp.Columns[0].ColumnName.Equals("error")) { tbSvar.Text = svarGrp.Rows[0][1].ToString(); } else { List <traningsgrupp> nyTraningsgruppLista = new List <traningsgrupp>(); for (int i = 0; i < svarGrp.Rows.Count; i++) { traningsgrupp traningsgruppRatt = new traningsgrupp() { namn = svarGrp.Rows[i]["namn"].ToString(), grupp_id = (int)svarGrp.Rows[i]["grupp_id"] }; nyTraningsgruppLista.Add(traningsgruppRatt); } lbxTraningsgrupper.DataSource = nyTraningsgruppLista; lbxTraningsgrupper.DisplayMember = "nyaGrupper"; tbSvar.Text = sokOk; } }
/// <summary> /// Kopplar en grupp till en träningsaktivitet /// och fyller automatiskt i tabellen deltagare med de medlemmar som tillhör /// den aktuella gruppen /// </summary> private void flyMedlemTillTrantillf() { DataTable sokning; postgres s = new postgres(); List <string> lstMedlemmar = new List <string>(); // lista för att hålla medlemmar som skall speglas över ifrån tabellen gruppmedlemmar till deltagare s.enkelGrupp = Convert.ToString(nuvarandeTranGrp.grupp_id); // läser in och för över den markerade gruppens ID till postgres sokning = s.sqlFråga("lasUtMedlemmar", "tranTillfalle"); if (sokning.Columns[0].ColumnName.Equals("error")) { _tbSvar.Text = sokning.Rows[0][1].ToString(); } else { s.narvaro = Convert.ToString(nuvarandeTrantillf.narvarolistaID); // läser in och för över det markerade träningstillfällets ID till postgres for (int i = 0; i < sokning.Rows.Count; i++) { string utlasning = Convert.ToString(sokning.Rows[i]["medlem_id"]); lstMedlemmar.Add(utlasning); } foreach (string item in lstMedlemmar) { //skriva medlemmar till deltagare-tabellen s.nyMedlem = item.ToString(); s.sqlNonQuery("flyttaTillAktivitet", "tranTillfalle"); //skriver till databasen } } s.narvaro = nuvarandeTrantillf.narvarolistaID.ToString(); sokning = s.sqlFråga("kopplade", "tranTillfalle"); if (sokning.Columns[0].ColumnName.Equals("error")) { _tbSvar.Text = sokning.Rows[0][1].ToString(); } else { trnGrpLst_kopplad.Clear(); for (int i = 0; i < sokning.Rows.Count; i++) { traningsgrupp tillfalle = new traningsgrupp() { narvarolista = (int)sokning.Rows[i]["narvarolista_id"], del_grupp_id = (int)sokning.Rows[i]["del_grupp_id"], namn = sokning.Rows[i]["namn"].ToString(), }; trnGrpLst_kopplad.Add(tillfalle); _tbSvar.Text = sokOk; } _gruppaktiviter.DataSource = null; _gruppaktiviter.DataSource = trnGrpLst_kopplad; _gruppaktiviter.DisplayMember = "namn"; } }
/// <summary> /// Uppdaterar info om vilka poster /// som har markerats i varje listbox /// </summary> private void refreshaLbVal() { nuvarandeGrupp = (traningsgrupp)_gruppBox.SelectedItem; nuvarandePlats = (plats)_platsBox.SelectedItem; nuvarandePlats2 = (plats)_platsBox2.SelectedItem; nuvarandeGruppMedlem = (gruppmedlemmar)_medlemsbox.SelectedItem; nuvarandeLedare = (gruppmedlemmar)_ledarbox.SelectedItem; }
/// <summary> /// Populerar Grupplistan /// </summary> private void uppdLbGrupp() { DataTable sokGrupper; postgres s = startaPostgres(); sokGrupper = s.sqlFråga("datEnk", "gruppNy"); for (int i = 0; i < sokGrupper.Rows.Count; i++) { traningsgrupp = new traningsgrupp(); traningsgrupp.grupp_id = (int)sokGrupper.Rows[i]["grupp_id"]; traningsgrupp.namn = sokGrupper.Rows[i]["namn"].ToString(); trnGrpLst.Add(traningsgrupp); } _gruppBox.DataSource = null; _gruppBox.DataSource = trnGrpLst; _gruppBox.DisplayMember = "namn"; }
/// <summary> /// tar bort grupp från träningsaktivitet /// </summary> private void taBortUrAktivitet() { lasAvListboxarna(); DataTable sokning; postgres s = new postgres(); // kollar vilken grupp och träningstillfälle som är berörd, skickar till postgres traningsgrupp aktivitetsGrupp = (traningsgrupp)_gruppaktiviter.SelectedItem; s.enkelGrupp = aktivitetsGrupp.del_grupp_id.ToString(); s.narvaro = nuvarandeTrantillf.narvarolistaID.ToString(); s.sqlNonQuery("taBortGruppUrAktivitet", "tranTillfalle"); s.narvaro = nuvarandeTrantillf.narvarolistaID.ToString(); sokning = s.sqlFråga("kopplade", "tranTillfalle"); if (sokning.Columns[0].ColumnName.Equals("error")) { _tbSvar.Text = sokning.Rows[0][1].ToString(); } else { trnGrpLst_kopplad.Clear(); for (int i = 0; i < sokning.Rows.Count; i++) { traningsgrupp tillfalle = new traningsgrupp() { narvarolista = (int)sokning.Rows[i]["narvarolista_id"], del_grupp_id = (int)sokning.Rows[i]["del_grupp_id"], namn = sokning.Rows[i]["namn"].ToString(), }; trnGrpLst_kopplad.Add(tillfalle); _tbSvar.Text = sokOk; } _gruppaktiviter.DataSource = null; _gruppaktiviter.DataSource = trnGrpLst_kopplad; _gruppaktiviter.DisplayMember = "namn"; } }
/// <summary> /// Sökning görs efter de grupper som /// en viss ledare ansvarar för. (Stöd för Multiselect) /// </summary> private void sokgrupper() { DataTable sokningResultat; vilkaParam(); // sökparameterkontroll string soktyp = "grupp"; List <string> ledarLista = new List <string>(); foreach (gruppledare selectedItem in _lbxLedare.SelectedItems) { ledarLista.Add(selectedItem.medlemId.ToString()); } postgres s = startaPostgres(); s.ledare = ledarLista; sokningResultat = s.sqlFråga(s.vilkenSokning(sokDatInterv, sokGrupp, sokLedare), soktyp); if (sokningResultat.Columns[0].ColumnName.Equals("error")) { _tbFeedback.Text = sokningResultat.Rows[0][1].ToString(); } else { List <traningsgrupp> grupplista = new List <traningsgrupp>(); for (int y = 0; y < sokningResultat.Rows.Count; y++) { traningsgrupp grupp = new traningsgrupp(); grupp.namn = sokningResultat.Rows[y]["namn"].ToString(); grupplista.Add(grupp); } _lbxGrupper.DataSource = grupplista; _lbxGrupper.DisplayMember = "namn"; _tbFeedback.Text = sokOk; } }
/// <summary> /// Metod som kallar på sökmetoden från postgres-klassen. Söker efter träningsgrupper. /// </summary> private void sokGrp() { DataTable svarGrp; vilkaParam(); postgres sokning = new postgres(); sokning.startDatum = dtpFran.Value; sokning.slutDatum = dtpSlutDatum.Value; svarGrp = sokning.sqlFråga(sokning.vilkenSokning(sokDatInterv, sokGrupp, false), "grupp"); // hämtar sökning efter träningsgrupper if (svarGrp.Columns[0].ColumnName.Equals("error")) { tbSvar.Text = svarGrp.Rows[0][1].ToString(); } else { List <traningsgrupp> nyTraningsgruppLista = new List <traningsgrupp>(); for (int i = 0; i < svarGrp.Rows.Count; i++) { traningsgrupp traningsgruppRatt = new traningsgrupp() { namn = svarGrp.Rows[i]["namn"].ToString(), tid = svarGrp.Rows[i]["starttid"].ToString(), datum = svarGrp.Rows[i]["datum"].ToString() }; nyTraningsgruppLista.Add(traningsgruppRatt); } lbxGrupper.DataSource = nyTraningsgruppLista; lbxGrupper.DisplayMember = "traningsgrupps"; tbSvar.Text = sokOk; } }
/// <summary> /// läser av vilka poster som är markerade /// i samtliga listboxar och hämtar ut objektet till variablarna. /// </summary> private void lasAvListboxarna() { nuvarandeGruppMdlm = (gruppmedlemmar)_lbxGruppmedlemmar.SelectedItem; nuvarandeTrantillf = (trantillfInfo)_lbxTrantillfalle.SelectedItem; nuvarandeTranGrp = (traningsgrupp)_lbxTraningsgrupper.SelectedItem; }