Fix bot things

This commit is contained in:
2025-02-07 16:54:42 +07:00
parent cd797711c1
commit 898ff85eed
8 changed files with 86 additions and 86 deletions

View File

@@ -32,4 +32,5 @@ public interface IBotService
Task<bool> DeleteBot(string requestName);
Task<string> RestartBot(string requestName);
void DeleteBotBackup(string backupBotName);
void ToggleIsForWatchingOnly(string botName);
}

View File

@@ -210,6 +210,17 @@ namespace Managing.Application.ManageBot
_botRepository.DeleteBotBackup(backupBotName);
}
public void ToggleIsForWatchingOnly(string botName)
{
if (_botTasks.TryGetValue(botName, out var botWrapper))
{
if (botWrapper.BotInstance is ITradingBot bot)
{
bot.IsForWatchingOnly = !bot.IsForWatchingOnly;
}
}
}
public ITradingBot CreateScalpingBot(string accountName, MoneyManagement moneyManagement, string name,
Enums.Ticker ticker, string scenario, Enums.Timeframe interval, bool isForWatchingOnly)
{

View File

@@ -6,18 +6,18 @@ namespace Managing.Application.ManageBot
{
public class ToggleIsForWatchingCommandHandler : IRequestHandler<ToggleIsForWatchingCommand, string>
{
private readonly ITaskCache _taskCache;
private readonly IBotService _botService;
public ToggleIsForWatchingCommandHandler(ITaskCache taskCache)
public ToggleIsForWatchingCommandHandler(IBotService botService)
{
_taskCache = taskCache;
_botService = botService;
}
public async Task<string> Handle(ToggleIsForWatchingCommand request, CancellationToken cancellationToken)
public Task<string> Handle(ToggleIsForWatchingCommand request, CancellationToken cancellationToken)
{
var bot = _taskCache.Get<ITradingBot>(request.Name);
await bot.ToggleIsForWatchOnly();
return bot.GetStatus();
_botService.ToggleIsForWatchingOnly(request.Name);
var bot = _botService.GetActiveBots().FirstOrDefault(b => b.Name == request.Name);
return Task.FromResult(bot?.IsForWatchingOnly.ToString());
}
}
}
}