using Syncfusion.EJ.Export; using Syncfusion.JavaScript.Web; using Syncfusion.XlsIO; using System; using System.Collections; using System.Collections.Generic; using System.Data; using System.Linq; using System.Net; using System.Web; using System.Web.UI; using System.Web.UI.WebControls; namespace QW2021C.UserFunktionen { public partial class Anmeldung : System.Web.UI.Page { Helper.wettkampf wettk = new Helper.wettkampf(); Helper.Log log = new Helper.Log(); protected void Page_Load(object sender, EventArgs e) { try { if (Session["LoggedIn"].ToString() == "False") { Response.Redirect("~/default.aspx"); return; } } catch { Response.Redirect("~/default.aspx"); return; } this.lblOrte.Text = wettk.get_wettkampforte_oneString(); //var index = this.Anmeldegrid.Columns.FindIndex(col => col.Field == "Wettkampf1"); var index = this.Anmeldegrid.Columns.FindIndex(col => col.Field == "Wettkampf1"); if (wettk.ar1.ToString() == "False") { this.Anmeldegrid.Columns.ElementAt(index).HeaderText = "W1 (X)"; } else { this.Anmeldegrid.Columns.ElementAt(index).HeaderText = "W1"; }; var index2 = this.Anmeldegrid.Columns.FindIndex(col => col.Field == "Wettkampf2"); if (wettk.ar2.ToString() == "False") { this.Anmeldegrid.Columns.ElementAt(index2).HeaderText = "W2 (X)"; } else { this.Anmeldegrid.Columns.ElementAt(index2).HeaderText = "W2"; }; var index3 = this.Anmeldegrid.Columns.FindIndex(col => col.Field == "Wettkampf3"); if (wettk.ar3.ToString() == "False") { this.Anmeldegrid.Columns.ElementAt(index3).HeaderText = "W3 (X)"; } else { this.Anmeldegrid.Columns.ElementAt(index3).HeaderText = "W3"; }; var index4 = this.Anmeldegrid.Columns.FindIndex(col => col.Field == "Wettkampf4"); if (wettk.ar4.ToString() == "False") { this.Anmeldegrid.Columns.ElementAt(index4).HeaderText = "W4 (X)"; } else { this.Anmeldegrid.Columns.ElementAt(index4).HeaderText = "W4"; }; Session["Wettkampfstatus1"] = wettk.ar1; Session["Wettkampfstatus2"] = wettk.ar2; Session["Wettkampfstatus3"] = wettk.ar3; Session["Wettkampfstatus4"] = wettk.ar4; } protected void OnServer_Batcheditrow(object sender, GridEventArgs e) { try { ArrayList changed = ((ArrayList)((Dictionary)e.Arguments["batchChanges"])["changed"]); if (changed.Count > 0) GridAction("change", changed, e); } catch { } } protected void GridAction(string eventType, ArrayList changed, Syncfusion.JavaScript.Web.GridEventArgs e) { clsDB db = new clsDB(); if (eventType == "change") { na_teilnehmer value = new na_teilnehmer(); for (var i = 0; i <= changed.Count - 1; i++) { Dictionary KeyVal = changed[i] as Dictionary; foreach (KeyValuePair keyvals in KeyVal) { if (keyvals.Key == "Checked") value.ischecked = Convert.ToBoolean(keyvals.Value); if (keyvals.Key == "id_athlete") value.id_athlete = Convert.ToInt32(keyvals.Value); } if (value.ischecked == true) db.Add_Athlet(Session["vereinnr"].ToString(), value.id_athlete, Session["userid"].ToString()); } // Dim update As Orders = order.Where(Function(ord) ord.code = value.code).FirstOrDefault() // update.isSelected = value.isSelected this.Grid1.DataBind(); log.insert_entry(2, Convert.ToInt32(Session["UserID"]), "Anmeldungen gespeichert"); } } public void Teilnehmer_Doppelklick(object sender, GridEventArgs e) { Dictionary keyVals = e.Arguments["data"] as Dictionary; log.insert_entry(2, Convert.ToInt32(Session["UserID"]), "Teilnehmer doppelklick"); foreach (KeyValuePair keyval in keyVals) { if (keyval.Key == "id_athlete") { clsDB db = new clsDB(); db.Add_Athlet(Session["Vereinnr"].ToString(), Convert.ToInt32(keyval.Value), Session["Userid"].ToString()); } } } public void onclick(object sender, GridEventArgs e) { switch (e.Arguments["commandType"].ToString()) { case "SelectW1": if (Session["Wettkampfstatus1"].ToString() == "False") return; break; case "SelectW2": if (Session["Wettkampfstatus2"].ToString() == "False") return; break; case "SelectW3": if (Session["Wettkampfstatus3"].ToString() == "False") return; break; case "SelectW4": if (Session["Wettkampfstatus4"].ToString() == "False") return; break; default: break; } int anmeldenr = 0; if (e.Arguments["commandType"].ToString() == "SelectW1") { Dictionary keyVals = e.Arguments["data"] as Dictionary; foreach (KeyValuePair keyval1 in keyVals) { if (keyval1.Key == "Anmeldenr") anmeldenr = Convert.ToInt32(keyval1.Value); } clsDB dbx = new clsDB(); dbx.Get_Tabeldata_for_Update("Select * from anmeldung where anmeldenr=" + Convert.ToString(anmeldenr)); if (Convert.ToBoolean(dbx.dsdaten.Tables[0].Rows[0]["Wettkampf1"]) == true) { dbx.dsdaten.Tables[0].Rows[0]["Wettkampf1"] = false; } else { dbx.dsdaten.Tables[0].Rows[0]["Wettkampf1"] = true; } dbx.Update_Tabeldata(); this.Anmeldegrid.DataBind(); return; } if (e.Arguments["commandType"].ToString() == "SelectW2") { Dictionary keyVals = e.Arguments["data"] as Dictionary; foreach (KeyValuePair keyval1 in keyVals) { if (keyval1.Key == "Anmeldenr") anmeldenr = Convert.ToInt32(keyval1.Value); } clsDB dbx = new clsDB(); dbx.Get_Tabeldata_for_Update("Select * from anmeldung where anmeldenr=" + Convert.ToString(anmeldenr)); if (Convert.ToBoolean(dbx.dsdaten.Tables[0].Rows[0]["Wettkampf2"]) == true) { dbx.dsdaten.Tables[0].Rows[0]["Wettkampf2"] = false; } else { dbx.dsdaten.Tables[0].Rows[0]["Wettkampf2"] = true; } dbx.Update_Tabeldata(); this.Anmeldegrid.DataBind(); return; } if (e.Arguments["commandType"].ToString() == "SelectW3") { Dictionary keyVals = e.Arguments["data"] as Dictionary; foreach (KeyValuePair keyval1 in keyVals) { if (keyval1.Key == "Anmeldenr") anmeldenr = Convert.ToInt32(keyval1.Value); } clsDB dbx = new clsDB(); dbx.Get_Tabeldata_for_Update("Select * from anmeldung where anmeldenr=" + Convert.ToString(anmeldenr)); if (Convert.ToBoolean(dbx.dsdaten.Tables[0].Rows[0]["Wettkampf3"]) == true) { dbx.dsdaten.Tables[0].Rows[0]["Wettkampf3"] = false; } else { dbx.dsdaten.Tables[0].Rows[0]["Wettkampf3"] = true; } dbx.Update_Tabeldata(); this.Anmeldegrid.DataBind(); return; } if (e.Arguments["commandType"].ToString() == "SelectW4") { Dictionary keyVals = e.Arguments["data"] as Dictionary; foreach (KeyValuePair keyval1 in keyVals) { if (keyval1.Key == "Anmeldenr") anmeldenr = Convert.ToInt32(keyval1.Value); } clsDB dbx = new clsDB(); dbx.Get_Tabeldata_for_Update("Select * from anmeldung where anmeldenr=" + Convert.ToString(anmeldenr)); if (Convert.ToBoolean(dbx.dsdaten.Tables[0].Rows[0]["Wettkampf4"]) == true) { dbx.dsdaten.Tables[0].Rows[0]["Wettkampf4"] = false; } else { dbx.dsdaten.Tables[0].Rows[0]["Wettkampf4"] = true; } dbx.Update_Tabeldata(); this.Anmeldegrid.DataBind(); return; } if (e.Arguments["commandType"].ToString() == "delete") { clsDB db1 = new clsDB(); db1.Get_Tabledata("Select * from applikation", false, true); bool W1 = Convert.ToBoolean(db1.dsdaten.Tables[0].Rows[0]["Anmelderunde1"]); bool W2 = Convert.ToBoolean(db1.dsdaten.Tables[0].Rows[0]["Anmelderunde2"]); bool W3 = Convert.ToBoolean(db1.dsdaten.Tables[0].Rows[0]["Anmelderunde3"]); bool W4 = Convert.ToBoolean(db1.dsdaten.Tables[0].Rows[0]["Anmelderunde4"]); bool h1 = false; bool h2 = false; bool h3 = false; bool h4 = false; bool notdelete = false; Dictionary keyVals = e.Arguments["data"] as Dictionary; foreach (KeyValuePair keyval1 in keyVals) { if (keyval1.Key == "Wettkampf1") h1 = Convert.ToBoolean(keyval1.Value); if (keyval1.Key == "Wettkampf2") h2 = Convert.ToBoolean(keyval1.Value); if (keyval1.Key == "Wettkampf3") h3 = Convert.ToBoolean(keyval1.Value); if (keyval1.Key == "Wettkampf4") h4 = Convert.ToBoolean(keyval1.Value); if (keyval1.Key == "Anmeldenr") anmeldenr = Convert.ToInt32(keyval1.Value); } if (W2 == true && h1 == true) notdelete = true; if (W3 == true && (h1 == true || h2 == true)) notdelete = true; if (W4 == true && (h1 == true || h2 == true || h3 == true)) notdelete = true; if (notdelete == true) { this.msgDialog.ShowOnInit = true; return; } clsDB db = new clsDB(); db.Get_Tabeldata_for_Update("Select * from anmeldung where anmeldenr=" + anmeldenr.ToString()); db.dsdaten.Tables[0].Rows[0]["aktiv"] = 0; db.dsdaten.Tables[0].Rows[0]["mutiertam"] = DateTime.Now; db.dsdaten.Tables[0].Rows[0]["benutzernr"] = 1; db.Update_Tabeldata(); this.Grid1.DataBind(); this.Anmeldegrid.DataBind(); } } public void onclick1(object sender, GridEventArgs e) { int anmeldenr = 0; Boolean w = false; Dictionary keyVals = e.Arguments["data"] as Dictionary; foreach (KeyValuePair keyval1 in keyVals) { if (keyval1.Key == "Anmeldenr") anmeldenr = Convert.ToInt32(keyval1.Value); if (keyval1.Key == "Wettkampf1") w = Convert.ToBoolean(keyval1.Value); } clsDB db = new clsDB(); db.Get_Tabeldata_for_Update("Select * from anmeldung where anmeldenr=" + anmeldenr.ToString()); db.dsdaten.Tables[0].Rows[0]["mutiertam"] = DateTime.Now; db.dsdaten.Tables[0].Rows[0]["Wettkampf1"] = w; db.dsdaten.Tables[0].Rows[0]["benutzernr"] = 1; db.Update_Tabeldata(); this.Anmeldegrid.DataBind(); } [System.Web.Services.WebMethod()] public static void SaveData(string daten) { string a = ""; } [System.Web.Services.WebMethod()] public static void DeleteRow(string daten) { Dictionary keyVals = new Dictionary(); System.Web.Script.Serialization.JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer(); try { keyVals = serializer.Deserialize>(daten); foreach (KeyValuePair keyval in keyVals) { if (keyval.Key == "Anmeldenr") { clsDB db = new clsDB(); db.Get_Tabeldata_for_Update("Select * from anmeldung where anmeldenr=" + keyval.Value.ToString()); db.dsdaten.Tables[0].Rows[0]["aktiv"] = 0; db.dsdaten.Tables[0].Rows[0]["mutiertam"] = DateTime.Now; db.dsdaten.Tables[0].Rows[0]["benutzernr"] = 1; db.Update_Tabeldata(); } } } catch (Exception ex) { } } protected void btnAlle_Click(object Sender, ButtonEventArgs e) { clsDB db = new clsDB(); db.Add_Nicht_angemeldete_Teilnehmer(Session["vereinnr"].ToString(), Session["Userid"].ToString()); this.Anmeldegrid.DataBind(); log.insert_entry(2, Convert.ToInt32(Session["UserID"]), "Alle Athleten angemeldet"); } protected void OnServer_Batcheditrow_Anmeldung(object sender, GridEventArgs e) { ArrayList changed = ((ArrayList)((Dictionary)e.Arguments["batchChanges"])["changed"]); if (changed.Count > 0) GridAction_Anmeldung("change", changed, e); } protected void GridAction_Anmeldung(string eventType, ArrayList changed, Syncfusion.JavaScript.Web.GridEventArgs e) { clsDB db = new clsDB(); if (eventType == "change") { clsAnmeldung value = new clsAnmeldung(); for (var i = 0; i <= changed.Count - 1; i++) { Dictionary KeyVal = changed[i] as Dictionary; foreach (KeyValuePair keyvals in KeyVal) { if (keyvals.Key == "Anmeldenr") value.Anmeldenr = Convert.ToInt32(keyvals.Value); if (keyvals.Key == "Wettkampf1") value.Wettkampf1 = Convert.ToBoolean(keyvals.Value); if (keyvals.Key == "Wettkampf2") value.Wettkampf2 = Convert.ToBoolean(keyvals.Value); if (keyvals.Key == "Wettkampf3") value.Wettkampf3 = Convert.ToBoolean(keyvals.Value); if (keyvals.Key == "Wettkampf4") value.Wettkampf4 = Convert.ToBoolean(keyvals.Value); } db.Get_Tabeldata_for_Update("Select * from anmeldung where anmeldenr=" + value.Anmeldenr.ToString(), false, true); db.dsdaten.Tables[0].Rows[0]["Wettkampf1"] = value.Wettkampf1; db.dsdaten.Tables[0].Rows[0]["Wettkampf2"] = value.Wettkampf2; db.dsdaten.Tables[0].Rows[0]["Wettkampf3"] = value.Wettkampf3; db.dsdaten.Tables[0].Rows[0]["Wettkampf4"] = value.Wettkampf4; db.Update_Tabeldata(); log.insert_entry(2, Convert.ToInt32(Session["UserID"]), "Anmeldedaten gespeichert"); } // Dim update As Orders = order.Where(Function(ord) ord.code = value.code).FirstOrDefault() // update.isSelected = value.isSelected this.Grid1.DataBind(); } } protected void FlatGrid_ServerExcelExporting(object sender, Syncfusion.JavaScript.Web.GridEventArgs e) { //clsDB db = new clsDB(); //db.Get_Tabledata("Select * from anmeldung", false, true); //ExcelExport exp = new ExcelExport(); //exp.Export((DataTable)db.dsdaten.Tables[0].AsDataView(); ////exp.Export(Anmeldegrid.Model, (IEnumerable)Anmeldegrid.DataSource, "Export.xlsx", ExcelVersion.Excel2010, true, true, "flat-lime"); //exp.Export() } protected void Button1_Click(object Sender, ButtonEventArgs e) { using (ExcelEngine excelEngine = new ExcelEngine()) { //Initialize Application IApplication application = excelEngine.Excel; //Set the default application version as Excel 2016 application.DefaultVersion = ExcelVersion.Excel2016; //Create a new workbook IWorkbook workbook = application.Workbooks.Create(1); //Access first worksheet from the workbook instance IWorksheet worksheet = workbook.Worksheets[0]; //Exporting DataTable to worksheet clsDB db = new clsDB(); db.Get_Tabledata(1, Session["vereinnr"].ToString(), Convert.ToInt32(Session["UserID"])); DataTable dataTable = db.dsdaten.Tables[0]; worksheet.ImportDataTable(dataTable, true, 1, 1); worksheet.UsedRange.AutofitColumns(); //Save the workbook to disk in xlsx format string targetFolder = HttpContext.Current.Server.MapPath("~/Downloads"); this.Button1.Enabled = false; string excelname = ""; string dataname = ""; excelname = DateTime.Now.ToString("ddMMyyyyHHmmss") + "_"; dataname = DateTime.Now.ToString("ddMMyyyyHHmmss") + "_"; excelname = excelname + "Exceldata.xlsx"; dataname = dataname + "XMLData.xml"; this.HiddenField1.Value = excelname; workbook.SaveAs(targetFolder + "\\" + excelname); workbook.Close(); this.HyperLink1.NavigateUrl = "~/Administration/Downloader.aspx?fn=" + excelname; this.HyperLink1.Target = "_blank"; this.HyperLink1.Text = "Download"; this.HyperLink1.Visible = true; this.HyperLink2.NavigateUrl = "~/Reporting/Reporting.aspx"; this.HyperLink2.Target = "_blank"; this.HyperLink2.Text = "PDF-Report"; this.HyperLink2.Visible = true; db.dsdaten.WriteXml(targetFolder + "\\" + dataname); Session["Reportname"] = "Vereinanmeldung.frx"; Session["xmldata"] = dataname; log.insert_entry(2, Convert.ToInt32(Session["UserID"]), "Anmeldedaten exportiert"); } } private void DownloadFile(string filename, string filepath) { WebClient mywc = new WebClient(); mywc.DownloadFile(filename, filepath); //Response.AddHeader("Content-disposition", "attachment; filename=" + filename) ; //Response.ContentType = "application/octet-stream"; //Response.WriteFile(filepath); //Response.End(); } protected void Button3_Click(object Sender, ButtonEventArgs e) { string targetFolder = HttpContext.Current.Server.MapPath("~/Downloads"); Response.ContentType = "Application/pdf"; Response.AppendHeader("Content-Disposition", "attachment; filename=" + this.HiddenField1.Value); Response.TransmitFile(targetFolder + "\\" + this.HiddenField1.Value); Response.End(); } protected void Button2_Click(object Sender, ButtonEventArgs e) { this.Label1.Text = ""; this.Button1.Enabled = false; clsDB db = new clsDB(); DataTable paramdaten = new DataTable(); DataRow dbr = paramdaten.NewRow(); paramdaten.Columns.Clear(); paramdaten.Rows.Clear(); dbr = paramdaten.NewRow(); paramdaten.Columns.Add("Paramname"); paramdaten.Columns.Add("Paramvalue"); dbr[0] = "@VereinNr"; dbr[1] = Session["Vereinnr"].ToString(); paramdaten.Rows.Add(dbr); dbr = paramdaten.NewRow(); db.Get_Tabledata("chk_gruppe", "", "", "", true, paramdaten); if (db.dsdaten.Tables[0].Rows.Count > 0) { Label1.Text = "Teilnehmer ohne Wettkamp-Zuordnung vorhanden. Bitte prüfen"; Helper.MessageBox.Show("Teilnehmer ohne Wettkamp-Zuordnung vorhanden. Bitte prüfen."); } else { this.Button1.Enabled = true; Helper.MessageBox.Show("Prüfung der Anmeldungen war erfolgreich."); } log.insert_entry(2, Convert.ToInt32(Session["UserID"]), "Teilnehmerprüfung druchgeführt"); } protected void closebtn_Click(object sender, EventArgs e) { } protected void btn1_Click(object Sender, ButtonEventArgs e) { this.msgDialog.ShowOnInit = false; } protected void Anmeldegrid_ServerRecordClick(object sender, GridEventArgs e) { string a = ""; } protected void Anmeldegrid_ServerEditRow(object sender, GridEventArgs e) { string a = ""; } protected void btnDelete_Click(object Sender, ButtonEventArgs e) { clsDB db = new clsDB(); db.Get_Tabledata("Delete from anmeldung where vereinnr='" + Session["Vereinnr"].ToString() + "' and wettkampf1=0 and wettkampf2=0 and wettkampf3=0 and Wettkampf4=0", false, true); this.Anmeldegrid.DataBind(); this.Grid1.DataBind(); } } public class na_teilnehmer { public bool ischecked { get; set; } public int id_athlete { get; set; } public string license { get; set; } public string lastname { get; set; } public string firstname { get; set; } public string birth_date { get; set; } public string sex { get; set; } public string nationality { get; set; } public string License_cat { get; set; } public string license_paid { get; set; } } public class clsAnmeldung { public int Anmeldenr { get; set; } public string Lizenznr { get; set; } public string bez { get; set; } public string Name { get; set; } public string Vorname { get; set; } public string GebDat { get; set; } public string Geschlecht { get; set; } public string Kategorie { get; set; } public string Nationalitaet { get; set; } public string VereinNr { get; set; } public bool Wettkampf1 { get; set; } public bool Wettkampf2 { get; set; } public bool Wettkampf3 { get; set; } public bool Wettkampf4 { get; set; } public DateTime Mutiertam { get; set; } public string BenutzerNr { get; set; } public bool aktiv { get; set; } public int mantlnr { get; set; } public int Mannschaftnralt_sik { get; set; } public string Mannschaftsnr1 { get; set; } public string Mannschaftsnr2 { get; set; } public string Mannschaftsnr3 { get; set; } public string Mannschaftsnr4 { get; set; } public int Mannschaftnralt1 { get; set; } public int Mannschaftnralt2 { get; set; } public int Mannschaftnralt3 { get; set; } public int Mannschaftnralt4 { get; set; } public string mannschaftsnr { get; set; } } }