96 lines
3.5 KiB
C#
96 lines
3.5 KiB
C#
using MySqlConnector;
|
|
using System;
|
|
using System.Collections.Generic;
|
|
using System.Linq;
|
|
using System.Security.Cryptography;
|
|
using System.Text;
|
|
using System.Threading.Tasks;
|
|
|
|
namespace Artikelverwaltung
|
|
{
|
|
internal class Database
|
|
{
|
|
string connectionString;
|
|
MySqlConnection connection;
|
|
MySqlCommand cmd;
|
|
|
|
public Database()
|
|
{
|
|
connectionString = "Server=localhost;User=root;Password=;Database=Artikelverwaltung";
|
|
connection = new MySqlConnection(connectionString);
|
|
cmd = new MySqlCommand();
|
|
}
|
|
|
|
// Benutzer abgleich direkt aus der Datenbank, ohne die Daten im Programm zu haben.
|
|
public bool loginAbgleich(string bn, string pw)
|
|
{
|
|
connection.Open();
|
|
cmd.Connection = connection;
|
|
cmd.CommandText = $"select count(*) as result from mitarbeiter where benutzername = '{bn}' and passwort = '{pw}'";
|
|
MySqlDataReader reader = cmd.ExecuteReader();
|
|
while (reader.Read())
|
|
{
|
|
if(reader["result"].ToString().Equals("1"))
|
|
{
|
|
connection.Close();
|
|
return true;
|
|
}
|
|
}
|
|
connection.Close();
|
|
return false;
|
|
|
|
|
|
}
|
|
public void BenutzerAnlegen(MitarbeiterAccount acc)
|
|
{
|
|
connection.Open();
|
|
cmd.Connection = connection;
|
|
cmd.CommandText = $"insert into mitarbeiter(benutzername, passwort) values('{acc.benutzername}', '{acc.passwort}')";
|
|
cmd.ExecuteNonQuery();
|
|
connection.Close();
|
|
}
|
|
public void ArtikelAnlegen(Artikel artikel)
|
|
{
|
|
connection.Open();
|
|
cmd.Connection= connection;
|
|
cmd.CommandText = $"insert into artikel(artikelbeschreibung, modellname,artikelgruppe,aktivFlag) values('{artikel.Artikelbeschreibung}','{artikel.Modellname}','{artikel.Artikelgruppe}','{Convert.ToInt16(artikel.AktivFlag)}')";
|
|
cmd.ExecuteNonQuery();
|
|
connection.Close();
|
|
}
|
|
|
|
public void ArtikelLoeschen(int id)
|
|
{
|
|
connection.Open();
|
|
cmd.Connection = connection;
|
|
cmd.CommandText = $"delete from artikel where artikelnummer = {id}";
|
|
cmd.ExecuteNonQuery();
|
|
connection.Close();
|
|
}
|
|
|
|
public void ArtikelAendern(Artikel artikel, int id)
|
|
{
|
|
connection.Open();
|
|
cmd.Connection = connection;
|
|
cmd.CommandText = $"update artikel set artikelbeschreibung = '{artikel.Artikelbeschreibung}', modellname = '{artikel.Modellname}', artikelgruppe = '{artikel.Artikelgruppe}', aktivFlag = '{Convert.ToInt16(artikel.AktivFlag)}' where artikelnummer = {id}";
|
|
cmd.ExecuteNonQuery();
|
|
connection.Close();
|
|
}
|
|
public List<Artikel> ArtikelAbrufen()
|
|
{
|
|
List<Artikel> list = new List<Artikel>();
|
|
connection.Open();
|
|
cmd.Connection = connection;
|
|
cmd.CommandText = $"select * from artikel";
|
|
MySqlDataReader reader = cmd.ExecuteReader();
|
|
while (reader.Read())
|
|
{
|
|
Artikel artikel = new Artikel(Convert.ToUInt32(reader["artikelnummer"]), reader["artikelbeschreibung"].ToString(), reader["modellname"].ToString(),reader["artikelgruppe"].ToString(), Convert.ToBoolean(reader["aktivFlag"]));
|
|
list.Add(artikel);
|
|
}
|
|
connection.Close();
|
|
return list;
|
|
}
|
|
|
|
}
|
|
}
|