Refact multicall

This commit is contained in:
2024-08-17 07:57:14 +07:00
parent 7bb6a3638e
commit acaf3f7346
4 changed files with 176 additions and 160 deletions

View File

@@ -24,7 +24,7 @@ public static class DiscordHelpers
var embed = new EmbedBuilder
{
Author = new EmbedAuthorBuilder() { Name = "GMX v2" },
Title = $"{title} {DateTime.UtcNow:d}",
Title = $"{title} {DateTime.UtcNow:g}",
Color = Color.Gold,
Fields = fields,
}.Build();
@@ -36,17 +36,10 @@ public static class DiscordHelpers
{
var fields = new List<EmbedFieldBuilder>();
decimal ratePerYear = fundingRate.Rate; // Rate per year
decimal ratePerDay = ratePerYear / 365; // Rate per day
decimal ratePerMonth = ratePerYear / 12; // Rate per month
decimal ratePerHour = ratePerDay / 24; // Rate per hour
var (ratePerYear, ratePerDay, ratePerMonth, ratePerHour) = GetRates(fundingRate);
if (oldRate != null)
{
var oldRatePerYear = oldRate.Rate; // Rate per year
var oldRatePerDay = oldRatePerYear / 365; // Rate per day
var oldRatePerMonth = oldRatePerYear / 12; // Rate per month
var oldRatePerHour = oldRatePerDay / 24; // Rate per hour
var (oldRatePerYear, oldRatePerDay, oldRatePerMonth, oldRatePerHour) = GetRates(oldRate);
fields.Add(new EmbedFieldBuilder
{
@@ -66,7 +59,7 @@ public static class DiscordHelpers
var embed = new EmbedBuilder
{
Author = new EmbedAuthorBuilder() { Name = "GMX" },
Title = $"{title} {DateTime.UtcNow:d}",
Title = $"{title} {DateTime.UtcNow:g}",
Color = Color.DarkGreen,
Fields = fields,
}.Build();
@@ -115,7 +108,7 @@ public static class DiscordHelpers
var embed = new EmbedBuilder
{
Author = new EmbedAuthorBuilder() { Name = "GMX" },
Title = $"{title} {DateTime.UtcNow:d}",
Title = $"{title} {DateTime.UtcNow:g}",
Color = Color.DarkBlue,
Fields = fields,
}.Build();
@@ -129,11 +122,7 @@ public static class DiscordHelpers
foreach (var fundingRate in fundingRates)
{
decimal ratePerYear = fundingRate.Rate; // Rate per year
decimal ratePerDay = ratePerYear / 365; // Rate per day
decimal ratePerMonth = ratePerYear / 12; // Rate per month
decimal ratePerHour = ratePerDay / 24; // Rate per hour
var (ratePerYear, ratePerDay, ratePerMonth, ratePerHour) = GetRates(fundingRate);
fields.Add(new EmbedFieldBuilder
{
Name = $"{fundingRate.Ticker}",
@@ -145,11 +134,22 @@ public static class DiscordHelpers
var embed = new EmbedBuilder
{
Author = new EmbedAuthorBuilder() { Name = "GMX" },
Title = $"Best Funding Rate {DateTime.UtcNow:d}",
Title = $"Best Funding Rate {DateTime.UtcNow:g}",
Color = Color.DarkGreen,
Fields = fields,
}.Build();
return embed;
}
private static (decimal ratePerYear, decimal ratePerDay, decimal ratePerMonth, decimal ratePerHour) GetRates(
FundingRate fundingRate)
{
decimal ratePerHour = fundingRate.Rate; // Rate per hour
decimal ratePerDay = ratePerHour * 24; // Rate per day
decimal ratePerMonth = ratePerDay * 30; // Rate per month
decimal ratePerYear = ratePerDay * 365; // Rate per year
return (ratePerYear, ratePerDay, ratePerMonth, ratePerHour);
}
}

View File

@@ -99,7 +99,6 @@ namespace Managing.Infrastructure.Messengers.Discord
// Discord started as a game chat service, so it has the option to show what games you are playing
// Here the bot will display "Playing dead" while listening
await _client.SetGameAsync(_settings.BotActivity, "https://moon.com", ActivityType.Playing);
_logger.LogInformation(JsonConvert.SerializeObject(_settings, Formatting.Indented));
if (!_settings.HandleUserAction) return;
List<ApplicationCommandProperties> applicationCommandProperties = new();