using System; using System.Collections.Generic; using System.Diagnostics; using System.Windows; namespace CryptoCalc { public partial class MainWindow : Window { private readonly Random rand = new(); private DBInteraction.GenericDB transactionDB = new(); private DBInteraction.GenericDB walletDB = new(); private Transaction genericT = new(); private Wallet genericW = new(); public MainWindow() { InitializeComponent(); } private void saveButton_Click(object sender, RoutedEventArgs e) { genericT = DummyTransaction(); DBInteraction.SaveData(ref genericT); } private void saveWalletButton_Click(object sender, RoutedEventArgs e) { genericW = DummyWallet(); DBInteraction.SaveData(ref genericW); } private void saveButtonFromInput_Click(object sender, RoutedEventArgs e) { genericT = new(inputCurrency.Text, Convert.ToSingle(inputAmount.Text), inputType.Text); DBInteraction.SaveData(ref genericT); } private void readButton_click(object sender, RoutedEventArgs e) { IEnumerable transactions = transactionDB.LoadAllData(genericT.DBTableName); foreach (Transaction t in transactions) { Debug.WriteLine($"{t.GetLocalTimeFromUnixTime(t.UnixTime)} *** {t.Currency} - {t.Amount}"); } } private void searchButton_Click(object sender, RoutedEventArgs e) { string query = $"SELECT * from {genericT.DBTableName} WHERE {nameof(genericT.Currency)}=\'{currencyText.Text}\'"; IEnumerable transactions = transactionDB.QueryData(genericT.DBTableName, query); //transactions = DBInteraction.LoadTransactionsOfCurrency(currencyText.Text); transactionsFoundListBox.Items.Clear(); foreach (Transaction x in transactions) { transactionsFoundListBox.Items.Add(x.FullInfo); } } //private IEnumerable ReadTransactionFromDB() //{ // Transaction t = new(); // return transactionDB.LoadAllData(t.DBTableName); //} private Transaction DummyTransaction() { Transaction t = new(); t.SaveUnixTimeNow(); t.Currency = "SOL"; t.Amount = Convert.ToSingle(30 * rand.NextDouble()); t.TransactionType = "BUY"; t.Platform = "Firi"; t.Note = "Test"; return t; } private Wallet DummyWallet() { Wallet w = new(); w.SaveUnixTimeNow(); w.UnixTimeCreated = w.GetUnixTime(new DateTime(rand.Next(2011, DateTime.Now.Year), rand.Next(1,12), rand.Next(1, 28))); w.Platform = "Ledger"; w.Name = "TestWallet"; w.Currency = "SOL"; w.Balance = Convert.ToSingle(30 * rand.NextDouble()); w.DefaultWallet = 0; w.Note = "Test"; return w; } private void inputAmount_LostFocus(object sender, RoutedEventArgs e) { inputAmount.Text = inputAmount.Text.Replace(".", ","); } } }