Customer database stuff

This commit is contained in:
Spudnut2000 2025-06-14 21:03:33 -05:00
parent 238d3be5ec
commit d5801ec6b3

View File

@ -14,8 +14,7 @@ public static class DatabaseHelper
public static User? Login(string username, string password) public static User? Login(string username, string password)
{ {
using MySqlConnection connection = using MySqlConnection connection = new MySqlConnection(AppSettings.GetSetting("ConnectionStrings", "DefaultConnection"));
new MySqlConnection(AppSettings.GetSetting("ConnectionStrings", "DefaultConnection"));
try try
{ {
connection.Open(); connection.Open();
@ -44,36 +43,78 @@ public static class DatabaseHelper
return null; return null;
} }
// private static void PopulateUsers() public static List<Customer> RetrieveCustomers()
// { {
// using MySqlConnection connection = new(AppSettings.GetSetting("ConnectionStrings", "DefaultConnection")); using MySqlConnection connection = new MySqlConnection(AppSettings.GetSetting("ConnectionStrings", "DefaultConnection"));
// try try
// { {
// connection.Open(); connection.Open();
// } }
// catch (MySqlException ex) catch (MySqlException e)
// { {
// Console.WriteLine(ex.Message); Console.WriteLine(e);
// throw; throw;
// } }
//
// string query = "SELECT * FROM client_schedule.user"; List<Customer> customers = new List<Customer>();
//
// using MySqlCommand command = new(query, connection); using MySqlCommand command = new MySqlCommand("SELECT * FROM client_schedule.customer", connection);
// using MySqlDataReader reader = command.ExecuteReader(); using MySqlDataReader reader = command.ExecuteReader();
// while (reader.Read()) while (reader.Read())
// { {
// int id = reader.GetInt32("userId"); var customer = new Customer()
// string name = reader.GetString("userName"); {
// string password = reader.GetString("password"); CustomerId = reader.GetInt32("customerId"),
// int active = reader.GetInt32("active"); CustomerName = reader.GetString("customerName"),
// DateTime createDate = reader.GetDateTime("createDate"); AddressId = reader.GetInt32("addressId"),
// string createdBy = reader.GetString("createdBy"); Active = reader.GetInt32("active"),
// var lastUpdated = reader.GetDateTime("lastUpdate"); // Timestap CreateDate = reader.GetDateTime("createDate"),
// string lastUpdateBy = reader.GetString("lastUpdateBy"); CreatedBy = reader.GetString("createdBy"),
// Console.WriteLine($"Id: {id}; Name: {name}; Password: {password}; Active: {active}; Created by: {createdBy}; Last Updated by: {lastUpdateBy}"); LastUpdate = reader.GetDateTime("lastUpdate"),
// var user = new User(id, name); LastUpdateBy = reader.GetString("lastUpdateBy"),
// Users.Add(user); };
// }
// } customers.Add(customer);
}
return customers;
}
public static void AddCustomer(Customer customer)
{
using MySqlConnection connection = new MySqlConnection(AppSettings.GetSetting("ConnectionStrings", "DefaultConnection"));
try
{
connection.Open();
string query =
"INSERT INTO customer (customerId, customerName, addressId, active, createDate, createdBy, lastUpdate, lastUpdateBy) " +
"VALUES (@customerId, @customerName, @addressId, @active, @createDate, @createdBy, @lastUpdate, @lastUpdateBy)";
using MySqlCommand command = new MySqlCommand(query, connection);
command.Parameters.AddWithValue("@customerId", customer.CustomerId);
command.Parameters.AddWithValue("@customerName", customer.CustomerName);
command.Parameters.AddWithValue("@addressId", customer.AddressId);
command.Parameters.AddWithValue("@active", customer.Active);
command.Parameters.AddWithValue("@createDate", DateTime.UtcNow);
command.Parameters.AddWithValue("@createdBy", AppState.CurrentUser.Username);
command.Parameters.AddWithValue("@lastUpdate", DateTime.UtcNow);
command.Parameters.AddWithValue("@lastUpdateBy", AppState.CurrentUser.Username);
int rowsAffected = command.ExecuteNonQuery();
}
catch (MySqlException e)
{
Console.WriteLine($"MySQL Error: {e.Message}");
throw;
}
catch (Exception ex)
{
Console.WriteLine($"General Error: {ex.Message}");
throw;
}
}
} }