You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
131 lines
4.5 KiB
131 lines
4.5 KiB
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<Lehrer> GetAllData()
|
|
{
|
|
dbhelper dbh = new dbhelper();
|
|
dbh.Get_Tabledata("Select * from Lehrer", false, true);
|
|
return dbh.ConvertDataTable<Lehrer>(dbh.dsdaten.Tables[0]);
|
|
}
|
|
|
|
public static List<Lehrer> GetByID(int ID)
|
|
{
|
|
dbhelper dbh = new dbhelper();
|
|
dbh.Get_Tabledata("Select * from Lehrer where id=" + ID.ToString(), false, true);
|
|
return dbh.ConvertDataTable<Lehrer>(dbh.dsdaten.Tables[0]);
|
|
}
|
|
|
|
public static List<Lehrer> 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<Lehrer>(dbh.dsdaten.Tables[0]);
|
|
|
|
}
|
|
public static List<Lehrer> GetLast()
|
|
{
|
|
dbhelper dbh = new dbhelper();
|
|
dbh.Get_Tabledata("Select top 1 * from Lehrer order by mutiert_am desc", false, true);
|
|
return dbh.ConvertDataTable<Lehrer>(dbh.dsdaten.Tables[0]);
|
|
}
|
|
public static List<Lehrer> 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<Lehrer>(dbh.dsdaten.Tables[0]);
|
|
}
|
|
|
|
public static List<Lehrer> GetbyUserSQL(string SQL)
|
|
{
|
|
dbhelper dbh = new dbhelper();
|
|
dbh.Get_Tabledata(SQL, false, true);
|
|
return dbh.ConvertDataTable<Lehrer>(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<Lehrer> tmplst = GetLastByMutierer(Lehrerdata.mutierer);
|
|
return tmplst.First<Lehrer>().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);
|
|
}
|
|
}
|
|
|
|
|
|
|
|
} |