diff --git a/DBInteraction.cs b/DBInteraction.cs index 116109d..94489e6 100644 --- a/DBInteraction.cs +++ b/DBInteraction.cs @@ -21,35 +21,20 @@ namespace CryptoCalc Debug.WriteLine($"Saved {data.DBTableName} DB data"); } - //public static List _LoadTransactions() - //{ - // using IDbConnection _connection = new SQLiteConnection(Util.GetConnectionString("RawData")); - // var output = _connection.Query("select * from RawData", new DynamicParameters()); - // Debug.WriteLine("Loaded DB data"); - // return output.ToList(); - //} - - public static List LoadTransactions() + public class GenericDB where T : DBClasses { - using IDbConnection _connection = new SQLiteConnection(Util.GetConnectionString("Transactions")); - IEnumerable output = _connection.Query("select * from Transactions", new DynamicParameters()); - Debug.WriteLine("Loaded DB data"); - return output.ToList(); - } - - public static List LoadTransactionsOfCurrency(string currency) - { - if (currency is null) + public IEnumerable LoadAllData(string tableName) { - throw new ArgumentNullException(nameof(currency)); - } + if (tableName is null) + { + throw new ArgumentNullException(nameof(tableName)); + } - Debug.WriteLine($"Fetching all {currency} transactions from Database"); - using IDbConnection connection = new SQLiteConnection(Util.GetConnectionString("Transactions")); - return connection.Query($"select * from Transactions where Currency = '{ currency.ToUpper() }'") - .ToList(); + using IDbConnection _connection = new SQLiteConnection(Util.GetConnectionString(tableName)); + return _connection.Query($"select * from {tableName}", new DynamicParameters()); + } } } } diff --git a/MainWindow.xaml.cs b/MainWindow.xaml.cs index 00daf72..1baa85a 100644 --- a/MainWindow.xaml.cs +++ b/MainWindow.xaml.cs @@ -8,7 +8,6 @@ namespace CryptoCalc public partial class MainWindow : Window { private readonly Random rand = new(); - private List transactions = new(); public MainWindow() { @@ -34,7 +33,7 @@ namespace CryptoCalc private void readButton_click(object sender, RoutedEventArgs e) { - transactions = DBInteraction.LoadTransactions(); + IEnumerable transactions = ReadTransactionFromDB(); foreach (Transaction x in transactions) { Debug.WriteLine($"{x.GetLocalTimeFromUnixTime(x.UnixTime)} *** {x.Currency} - {x.Amount}"); @@ -42,12 +41,20 @@ namespace CryptoCalc } private void searchButton_Click(object sender, RoutedEventArgs e) { - transactions = DBInteraction.LoadTransactionsOfCurrency(currencyText.Text); - transactionsFoundListBox.Items.Clear(); - foreach (Transaction x in transactions) - { - transactionsFoundListBox.Items.Add(x.FullInfo); - } + //IEnumerable transactions = ReadTransactionFromDB("Currency"); + //transactions = DBInteraction.LoadTransactionsOfCurrency(currencyText.Text); + //transactionsFoundListBox.Items.Clear(); + //foreach (Transaction x in transactions) + //{ + // transactionsFoundListBox.Items.Add(x.FullInfo); + //} + } + + private IEnumerable ReadTransactionFromDB() + { + Transaction t = new(); + DBInteraction.GenericDB db = new(); + return db.LoadAllData(t.DBTableName); } private Transaction DummyTransaction()