using System; using System.Collections.Generic; using System.Linq; using BWPMModels; using BlazorApp.Helper; using Newtonsoft.Json; using System.Data; using Microsoft.AspNetCore.Mvc; namespace BlazorApp.Controller { public class LehrerController : ControllerBase { public static List GetAllData() { dbhelper dbh = new dbhelper(); dbh.Get_Tabledata("Select * from Lehrer", false, true); return dbh.ConvertDataTable(dbh.dsdaten.Tables[0]); } public static List GetByID(int ID) { dbhelper dbh = new dbhelper(); dbh.Get_Tabledata("Select * from Lehrer where id=" + ID.ToString(), false, true); return dbh.ConvertDataTable(dbh.dsdaten.Tables[0]); } public static List GetByUserID(string UserID) { dbhelper dbh = new dbhelper(); dbh.Get_Tabledata("Select * from Lehrer where userid='" + UserID + "'", false, true); if (dbh.dsdaten.Tables[0].Rows.Count == 0) { Lehrer Lehrerdata = new Lehrer(); Lehrerdata.aktiv = true; Lehrerdata.erstellt_am = DateTime.Now; Lehrerdata.mutierer = UserID; Lehrerdata.mutiert_am = DateTime.Now; Lehrerdata.userid = UserID; POST(Lehrerdata); dbh.Get_Tabledata("Select * from Lehrer where userid='" + UserID + "'", false, true); } return dbh.ConvertDataTable(dbh.dsdaten.Tables[0]); } public static List GetLast() { dbhelper dbh = new dbhelper(); dbh.Get_Tabledata("Select top 1 * from Lehrer order by mutiert_am desc", false, true); return dbh.ConvertDataTable(dbh.dsdaten.Tables[0]); } public static List GetLastByMutierer(string Mutierer) { dbhelper dbh = new dbhelper(); dbh.Get_Tabledata("Select top 1 * from Lehrer where mutierer='" + Mutierer + "' order by mutiert_am desc", false, true); return dbh.ConvertDataTable(dbh.dsdaten.Tables[0]); } public static List GetbyUserSQL(string SQL) { dbhelper dbh = new dbhelper(); dbh.Get_Tabledata(SQL, false, true); return dbh.ConvertDataTable(dbh.dsdaten.Tables[0]); } public static int POST(Lehrer Lehrerdata) { dbhelper dbh = new dbhelper(); dbh.Get_Tabeldata_for_Update("Select top 1 * from [Lehrer] where id=-1", false, true); DataRow dr = dbh.dsdaten.Tables[0].NewRow(); Lehrerdata.GetType().GetProperties().ToList().ForEach(f => { try { if (f.PropertyType == typeof(DateTime)) { dr[f.Name] = (DateTime)f.GetValue(Lehrerdata, null); } else { dr[f.Name] = f.GetValue(Lehrerdata, null); } } catch (Exception ex) { string s = ex.Message; } }); dbh.dsdaten.Tables[0].Rows.Add(dr); dbh.Update_Tabeldata(); List tmplst = GetLastByMutierer(Lehrerdata.mutierer); return tmplst.First().ID; } public static void PUT(Lehrer Lehrerdata) { dbhelper dbh = new dbhelper(); dbh.Get_Tabeldata_for_Update("Select top 1 * from [Lehrer] where id=" + Lehrerdata.ID.ToString(), false, true); DataRow dr = dbh.dsdaten.Tables[0].Rows[0]; Lehrerdata.GetType().GetProperties().ToList().ForEach(f => { try { if (f.PropertyType == typeof(DateTime)) { dr[f.Name] = (DateTime)f.GetValue(Lehrerdata, null); } else { dr[f.Name] = f.GetValue(Lehrerdata, null); } } catch (Exception ex) { string s = ex.Message; } }); dbh.Update_Tabeldata(); } public static void DELETE(Lehrer Lehrerdata) { dbhelper dbh = new dbhelper(); dbh.Get_Tabeldata_for_Update("delete from [Lehrer] where id=" + Lehrerdata.ID.ToString(), false, true); } } }