ulong test
This commit is contained in:
parent
39aa1eff9b
commit
6469960b9c
49
DBClasses.cs
49
DBClasses.cs
|
@ -4,6 +4,15 @@ using System.Text.RegularExpressions;
|
||||||
namespace CryptoCalc
|
namespace CryptoCalc
|
||||||
{
|
{
|
||||||
|
|
||||||
|
public enum TransactionTypes
|
||||||
|
{
|
||||||
|
Buy,
|
||||||
|
Sell,
|
||||||
|
Transfer,
|
||||||
|
Mining
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public interface IDBClasses
|
public interface IDBClasses
|
||||||
{
|
{
|
||||||
static string DBName { get; }
|
static string DBName { get; }
|
||||||
|
@ -21,8 +30,8 @@ namespace CryptoCalc
|
||||||
public virtual string DBVariables { get; set; }
|
public virtual string DBVariables { get; set; }
|
||||||
public string DBSaveDataString => $"({Regex.Replace(DBVariables, "@", "")}) values ({DBVariables})";
|
public string DBSaveDataString => $"({Regex.Replace(DBVariables, "@", "")}) values ({DBVariables})";
|
||||||
|
|
||||||
public int Index { get; set; }
|
public long Index { get; set; }
|
||||||
public long UnixTime { get; set; }
|
public ulong UnixTime { get; set; }
|
||||||
|
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
@ -31,20 +40,20 @@ namespace CryptoCalc
|
||||||
|
|
||||||
public void SaveUnixTimeNow()
|
public void SaveUnixTimeNow()
|
||||||
{
|
{
|
||||||
UnixTime = (long)DateTime.UtcNow.Subtract(DateTime.UnixEpoch).TotalSeconds;
|
UnixTime = (ulong)DateTime.UtcNow.Subtract(DateTime.UnixEpoch).TotalSeconds;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static long GetUnixTime(DateTime dateTime)
|
public static ulong GetUnixTime(DateTime dateTime)
|
||||||
{
|
{
|
||||||
return (long)dateTime.Subtract(DateTime.UnixEpoch).TotalSeconds;
|
return (ulong)dateTime.Subtract(DateTime.UnixEpoch).TotalSeconds;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static DateTime GetUTCTimeFromUnixTime(long unix)
|
public static DateTime GetUTCTimeFromUnixTime(ulong unix)
|
||||||
{
|
{
|
||||||
return DateTime.UnixEpoch.AddSeconds(unix).ToUniversalTime();
|
return DateTime.UnixEpoch.AddSeconds(unix).ToUniversalTime();
|
||||||
}
|
}
|
||||||
|
|
||||||
public static DateTime GetLocalTimeFromUnixTime(long unix)
|
public static DateTime GetLocalTimeFromUnixTime(ulong unix)
|
||||||
{
|
{
|
||||||
return DateTime.UnixEpoch.AddSeconds(unix).ToLocalTime();
|
return DateTime.UnixEpoch.AddSeconds(unix).ToLocalTime();
|
||||||
}
|
}
|
||||||
|
@ -60,12 +69,12 @@ namespace CryptoCalc
|
||||||
public override string DBVariables { get => base.DBVariables; set => base.DBVariables = value; }
|
public override string DBVariables { get => base.DBVariables; set => base.DBVariables = value; }
|
||||||
public override string DBTableName => "Transactions";
|
public override string DBTableName => "Transactions";
|
||||||
|
|
||||||
public int WalletID { get; set; }
|
public long WalletID { get; set; }
|
||||||
public string Currency { get; set; }
|
public string Currency { get; set; }
|
||||||
public decimal Amount { get; set; }
|
public ulong Amount { get; set; }
|
||||||
public string TransactionType { get; set; }
|
public string TransactionType { get; set; }
|
||||||
public string FeeCurrency { get; set; }
|
public string FeeCurrency { get; set; }
|
||||||
public decimal FeeAmount { get; set; }
|
public ulong FeeAmount { get; set; }
|
||||||
public string Platform { get; set; }
|
public string Platform { get; set; }
|
||||||
public string Note { get; set; }
|
public string Note { get; set; }
|
||||||
|
|
||||||
|
@ -75,12 +84,12 @@ namespace CryptoCalc
|
||||||
|
|
||||||
public Transaction() { SetDBStrings(); }
|
public Transaction() { SetDBStrings(); }
|
||||||
|
|
||||||
public Transaction(int walletID, string currency, decimal amount, string type)
|
public Transaction(long walletID, string currency, decimal amount, string type)
|
||||||
{
|
{
|
||||||
SaveUnixTimeNow();
|
SaveUnixTimeNow();
|
||||||
WalletID = walletID;
|
WalletID = walletID;
|
||||||
Currency = currency;
|
Currency = currency;
|
||||||
Amount = amount;
|
Amount = Util.ConvToLong(amount);
|
||||||
TransactionType = type;
|
TransactionType = type;
|
||||||
|
|
||||||
Platform = "";
|
Platform = "";
|
||||||
|
@ -93,10 +102,10 @@ namespace CryptoCalc
|
||||||
{
|
{
|
||||||
SaveUnixTimeNow();
|
SaveUnixTimeNow();
|
||||||
Currency = currency;
|
Currency = currency;
|
||||||
Amount = amount;
|
Amount = Util.ConvToLong(amount);
|
||||||
TransactionType = type;
|
TransactionType = type;
|
||||||
FeeCurrency = feeCurrency;
|
FeeCurrency = feeCurrency;
|
||||||
FeeAmount = feeAmount;
|
FeeAmount = Util.ConvToLong(feeAmount);
|
||||||
Platform = "";
|
Platform = "";
|
||||||
Note = "";
|
Note = "";
|
||||||
|
|
||||||
|
@ -131,10 +140,10 @@ namespace CryptoCalc
|
||||||
+ $"\"{nameof(WalletID)}\" INTEGER NOT NULL,"
|
+ $"\"{nameof(WalletID)}\" INTEGER NOT NULL,"
|
||||||
+ $"\"{nameof(UnixTime)}\" INTEGER NOT NULL,"
|
+ $"\"{nameof(UnixTime)}\" INTEGER NOT NULL,"
|
||||||
+ $"\"{nameof(Currency)}\" TEXT NOT NULL,"
|
+ $"\"{nameof(Currency)}\" TEXT NOT NULL,"
|
||||||
+ $"\"{nameof(Amount)}\" REAL NOT NULL,"
|
+ $"\"{nameof(Amount)}\" INTEGER NOT NULL,"
|
||||||
+ $"\"{nameof(TransactionType)}\" TEXT NOT NULL,"
|
+ $"\"{nameof(TransactionType)}\" TEXT NOT NULL,"
|
||||||
+ $"\"{nameof(FeeCurrency)}\" TEXT,"
|
+ $"\"{nameof(FeeCurrency)}\" TEXT,"
|
||||||
+ $"\"{nameof(FeeAmount)}\" REAL,"
|
+ $"\"{nameof(FeeAmount)}\" INTEGER,"
|
||||||
+ $"\"{nameof(Platform)}\" TEXT,"
|
+ $"\"{nameof(Platform)}\" TEXT,"
|
||||||
+ $"\"{nameof(Note)}\" TEXT,"
|
+ $"\"{nameof(Note)}\" TEXT,"
|
||||||
+ $"PRIMARY KEY(\"{nameof(Index)}\" AUTOINCREMENT),"
|
+ $"PRIMARY KEY(\"{nameof(Index)}\" AUTOINCREMENT),"
|
||||||
|
@ -152,11 +161,11 @@ namespace CryptoCalc
|
||||||
public override string DBVariables { get => base.DBVariables; set => base.DBVariables = value; }
|
public override string DBVariables { get => base.DBVariables; set => base.DBVariables = value; }
|
||||||
public override string DBTableName => "Wallets";
|
public override string DBTableName => "Wallets";
|
||||||
|
|
||||||
public long UnixTimeCreated { get; set; }
|
public ulong UnixTimeCreated { get; set; }
|
||||||
public string Platform { get; set; }
|
public string Platform { get; set; }
|
||||||
public string Name { get; set; }
|
public string Name { get; set; }
|
||||||
public string Currency { get; set; }
|
public string Currency { get; set; }
|
||||||
public decimal Balance { get; set; }
|
public ulong Balance { get; set; }
|
||||||
public int DefaultWallet { get; set; }
|
public int DefaultWallet { get; set; }
|
||||||
public string Note { get; set; }
|
public string Note { get; set; }
|
||||||
|
|
||||||
|
@ -173,7 +182,7 @@ namespace CryptoCalc
|
||||||
Platform = platform;
|
Platform = platform;
|
||||||
Name = name;
|
Name = name;
|
||||||
Currency = currency;
|
Currency = currency;
|
||||||
Balance = 0M;
|
Balance = Util.ConvToLong(0M);
|
||||||
DefaultWallet = 0;
|
DefaultWallet = 0;
|
||||||
Note = note;
|
Note = note;
|
||||||
|
|
||||||
|
@ -209,7 +218,7 @@ namespace CryptoCalc
|
||||||
+ $"\"{nameof(Platform)}\" TEXT,"
|
+ $"\"{nameof(Platform)}\" TEXT,"
|
||||||
+ $"\"{nameof(Name)}\" TEXT,"
|
+ $"\"{nameof(Name)}\" TEXT,"
|
||||||
+ $"\"{nameof(Currency)}\" TEXT NOT NULL,"
|
+ $"\"{nameof(Currency)}\" TEXT NOT NULL,"
|
||||||
+ $"\"{nameof(Balance)}\" REAL NOT NULL,"
|
+ $"\"{nameof(Balance)}\" INTEGER NOT NULL,"
|
||||||
+ $"\"{nameof(DefaultWallet)}\" INTEGER,"
|
+ $"\"{nameof(DefaultWallet)}\" INTEGER,"
|
||||||
+ $"\"{nameof(Note)}\" TEXT,"
|
+ $"\"{nameof(Note)}\" TEXT,"
|
||||||
+ $"PRIMARY KEY(\"{nameof(Index)}\" AUTOINCREMENT)"
|
+ $"PRIMARY KEY(\"{nameof(Index)}\" AUTOINCREMENT)"
|
||||||
|
|
|
@ -23,6 +23,7 @@
|
||||||
<ListBox x:Name="transactionsFoundListBox" Margin="27,66,331,10"/>
|
<ListBox x:Name="transactionsFoundListBox" Margin="27,66,331,10"/>
|
||||||
<TextBox x:Name="currencyText" HorizontalAlignment="Left" Margin="89,21,0,0" Text="SOL" TextWrapping="Wrap" VerticalAlignment="Top" Width="75" Height="22" LostFocus="currencyText_LostFocus"/>
|
<TextBox x:Name="currencyText" HorizontalAlignment="Left" Margin="89,21,0,0" Text="SOL" TextWrapping="Wrap" VerticalAlignment="Top" Width="75" Height="22" LostFocus="currencyText_LostFocus"/>
|
||||||
<Button x:Name="searchButton" Content="Search" HorizontalAlignment="Left" Margin="169,20,0,0" VerticalAlignment="Top" Click="searchButton_Click" Height="25" Width="55"/>
|
<Button x:Name="searchButton" Content="Search" HorizontalAlignment="Left" Margin="169,20,0,0" VerticalAlignment="Top" Click="searchButton_Click" Height="25" Width="55"/>
|
||||||
|
<DatePicker x:Name="insertTransactionDatePicker" HorizontalAlignment="Right" Margin="0,0,60,157" VerticalAlignment="Bottom" Width="120" FirstDayOfWeek="Monday" SelectedDateFormat="Short"/>
|
||||||
</Grid>
|
</Grid>
|
||||||
</TabItem>
|
</TabItem>
|
||||||
<TabItem Header="Overview">
|
<TabItem Header="Overview">
|
||||||
|
|
|
@ -110,7 +110,7 @@ namespace CryptoCalc
|
||||||
t.WalletID = selectedWallet.Index;
|
t.WalletID = selectedWallet.Index;
|
||||||
t.SaveUnixTimeNow();
|
t.SaveUnixTimeNow();
|
||||||
t.Currency = "SOL";
|
t.Currency = "SOL";
|
||||||
t.Amount = Convert.ToDecimal(30 * rand.NextDouble());
|
t.Amount = Util.ConvToLong(30m * (decimal)rand.NextDouble());
|
||||||
t.TransactionType = "BUY";
|
t.TransactionType = "BUY";
|
||||||
t.Platform = "Firi";
|
t.Platform = "Firi";
|
||||||
t.Note = "Test";
|
t.Note = "Test";
|
||||||
|
@ -125,7 +125,7 @@ namespace CryptoCalc
|
||||||
w.Platform = "Ledger";
|
w.Platform = "Ledger";
|
||||||
w.Name = "DefaultBTCWallet";
|
w.Name = "DefaultBTCWallet";
|
||||||
w.Currency = "BTC";
|
w.Currency = "BTC";
|
||||||
w.Balance = 0;//Convert.ToSingle(30 * rand.NextDouble());
|
w.Balance = Util.ConvToLong(0);//Convert.ToSingle(30 * rand.NextDouble());
|
||||||
w.DefaultWallet = 1;
|
w.DefaultWallet = 1;
|
||||||
w.Note = "Main BTC Wallet";
|
w.Note = "Main BTC Wallet";
|
||||||
return w;
|
return w;
|
||||||
|
|
11
Util.cs
11
Util.cs
|
@ -8,5 +8,16 @@ namespace CryptoCalc
|
||||||
{
|
{
|
||||||
return ConfigurationManager.ConnectionStrings[name].ConnectionString;
|
return ConfigurationManager.ConnectionStrings[name].ConnectionString;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static ulong ConvToLong(decimal value)
|
||||||
|
{
|
||||||
|
//return decimal.ToInt64(value * 1e18M);
|
||||||
|
return decimal.ToUInt64(value * 1e18M);
|
||||||
|
}
|
||||||
|
|
||||||
|
public static decimal ConveToDecimal (ulong value)
|
||||||
|
{
|
||||||
|
return value * 1e-18M;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue