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.
123 lines
4.3 KiB
123 lines
4.3 KiB
using Microsoft.AspNetCore.Mvc;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Threading.Tasks;
|
|
using CoreWebAPI1.Models;
|
|
using BWPMModels;
|
|
using System.Data;
|
|
using SecuringWebApiUsingApiKey.Attributes;
|
|
|
|
// For more information on enabling Web API for empty projects, visit https://go.microsoft.com/fwlink/?LinkID=397860
|
|
|
|
namespace CoreWebAPI1.Controllers
|
|
{
|
|
[Route("api/[controller]")]
|
|
[ApiController]
|
|
|
|
public class UserController : ControllerBase
|
|
{
|
|
// GET: api/<UserController>
|
|
[HttpGet]
|
|
public List<User> Get()
|
|
{
|
|
dbhelper dbh = new dbhelper();
|
|
//dbh.Get_Tabledata("Select * from [user]", false, true);
|
|
|
|
List<BWPMModels.User> Details = new List<BWPMModels.User>();
|
|
return dbh.ConvertDataTable<BWPMModels.User>(dbh.Get_Tabledata("Select * from [user]", false, true));
|
|
}
|
|
|
|
|
|
// GET api/<UserController>/5
|
|
[HttpGet("Email/{email}")]
|
|
public List<User> GetByEmail(string email)
|
|
{
|
|
dbhelper dbh = new dbhelper();
|
|
List<User> Details = new List<User>();
|
|
return dbh.ConvertDataTable<User>(dbh.Get_Tabledata("Select * from [user] where email='" + email+"'", false, true));
|
|
}
|
|
// GET api/<UserController>/5
|
|
[HttpGet("{id}")]
|
|
public List<User> Get(int id)
|
|
{
|
|
dbhelper dbh = new dbhelper();
|
|
List<User> Details = new List<User>();
|
|
return dbh.ConvertDataTable<User>(dbh.Get_Tabledata("Select * from [user] where id=" + id.ToString(), false, true));
|
|
}
|
|
[HttpGet("{username},{passwort}")]
|
|
public List<User> Get(string username, string passwort)
|
|
{
|
|
dbhelper dbh = new dbhelper();
|
|
List<User> Details = new List<User>();
|
|
return dbh.ConvertDataTable<User>(dbh.Get_Tabledata("Select * from [user] where aktiv=1 and username='"+username+"' and passwort='"+passwort+"'", false, true));
|
|
|
|
}
|
|
// POST api/<UserController>
|
|
[HttpPost]
|
|
public void Post([FromBody] User user)
|
|
{
|
|
dbhelper dbh = new dbhelper();
|
|
dbh.Get_Tabeldata_for_Update("Select top 1 * from [user] where id=-1", false, true);
|
|
DataRow dr = dbh.dsdaten.Tables[0].NewRow();
|
|
user.GetType().GetProperties().ToList().ForEach(f =>
|
|
{
|
|
try
|
|
{
|
|
if ( f.PropertyType == typeof(DateTime))
|
|
{
|
|
dr[f.Name] = (DateTime)f.GetValue(user, null);
|
|
|
|
}
|
|
else
|
|
{
|
|
dr[f.Name] = f.GetValue(user, null);
|
|
}
|
|
}
|
|
catch (Exception ex) { string s = ex.Message; }
|
|
});
|
|
dbh.dsdaten.Tables[0].Rows.Add(dr);
|
|
dbh.Update_Tabeldata();
|
|
}
|
|
|
|
// PUT api/<UserController>/5
|
|
[HttpPut("{id}")]
|
|
public void Put(int id, [FromBody] User user)
|
|
{
|
|
dbhelper dbh = new dbhelper();
|
|
dbh.Get_Tabeldata_for_Update("Select top 1 * from [user] where id="+id.ToString(), false, true);
|
|
DataRow dr = dbh.dsdaten.Tables[0].Rows[0];
|
|
user.GetType().GetProperties().ToList().ForEach(f =>
|
|
{
|
|
try
|
|
{
|
|
if (f.PropertyType == typeof(DateTime))
|
|
{
|
|
dr[f.Name] = (DateTime)f.GetValue(user, null);
|
|
}
|
|
else
|
|
{
|
|
dr[f.Name] = f.GetValue(user, null);
|
|
}
|
|
}
|
|
catch (Exception ex) { string s = ex.Message; }
|
|
});
|
|
dr["mutiert_am"] = DateTime.Now;
|
|
dbh.Update_Tabeldata();
|
|
|
|
}
|
|
|
|
// DELETE api/<UserController>/5
|
|
[HttpDelete("{id}")]
|
|
public void Delete(int id)
|
|
{
|
|
dbhelper dbh = new dbhelper();
|
|
dbh.Get_Tabeldata_for_Update("Select top 1 * from [user] where id="+id, false, true);
|
|
DataRow dr = dbh.dsdaten.Tables[0].Rows[0];
|
|
dr["Aktiv"] = false;
|
|
dr["mutiert_am"] = DateTime.Now;
|
|
dbh.Update_Tabeldata();
|
|
}
|
|
}
|
|
}
|