mirror of
https://gitlab.com/Kwoth/nadekobot.git
synced 2025-09-12 02:08:27 -04:00
Moved some ICurrencyService methods to extensions to simplify use
This commit is contained in:
28
src/NadekoBot/Services/Currency/CurrencyServiceExtensions.cs
Normal file
28
src/NadekoBot/Services/Currency/CurrencyServiceExtensions.cs
Normal file
@@ -0,0 +1,28 @@
|
||||
using NadekoBot.Services.Currency;
|
||||
|
||||
namespace NadekoBot.Services;
|
||||
|
||||
public static class CurrencyServiceExtensions
|
||||
{
|
||||
public static async Task<long> GetBalanceAsync(this ICurrencyService cs, ulong userId)
|
||||
{
|
||||
await using var wallet = await cs.GetWalletAsync(userId);
|
||||
return await wallet.GetBalance();
|
||||
}
|
||||
|
||||
public static async Task<bool> TransferAsync(
|
||||
this ICurrencyService cs,
|
||||
ulong fromId,
|
||||
ulong toId,
|
||||
long amount,
|
||||
string fromName,
|
||||
string note)
|
||||
{
|
||||
await using var fromWallet = await cs.GetWalletAsync(fromId);
|
||||
await using var toWallet = await cs.GetWalletAsync(toId);
|
||||
|
||||
var extra = new TxData("gift", fromName, note, fromId);
|
||||
|
||||
return await fromWallet.Transfer(amount, toWallet, extra);
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user