Files
managing-apps/src/Managing.Application/ManageBot/UpdateBotConfigCommandHandler.cs
Oda 082ae8714b Trading bot grain (#33)
* Trading bot Grain

* Fix a bit more of the trading bot

* Advance on the tradingbot grain

* Fix build

* Fix db script

* Fix user login

* Fix a bit backtest

* Fix cooldown and backtest

* start fixing bot start

* Fix startup

* Setup local db

* Fix build and update candles and scenario

* Add bot registry

* Add reminder

* Updateing the grains

* fix bootstraping

* Save stats on tick

* Save bot data every tick

* Fix serialization

* fix save bot stats

* Fix get candles

* use dict instead of list for position

* Switch hashset to dict

* Fix a bit

* Fix bot launch and bot view

* add migrations

* Remove the tolist

* Add agent grain

* Save agent summary

* clean

* Add save bot

* Update get bots

* Add get bots

* Fix stop/restart

* fix Update config

* Update scanner table on new backtest saved

* Fix backtestRowDetails.tsx

* Fix agentIndex

* Update agentIndex

* Fix more things

* Update user cache

* Fix

* Fix account load/start/restart/run
2025-08-05 04:07:06 +07:00

43 lines
1.3 KiB
C#

using Managing.Application.Abstractions;
using Managing.Application.ManageBot.Commands;
using MediatR;
namespace Managing.Application.ManageBot
{
/// <summary>
/// Handler for updating trading bot configurations
/// </summary>
public class UpdateBotConfigCommandHandler : IRequestHandler<UpdateBotConfigCommand, bool>
{
private readonly IBotService _botService;
public UpdateBotConfigCommandHandler(IBotService botService)
{
_botService = botService;
}
public async Task<bool> Handle(UpdateBotConfigCommand request, CancellationToken cancellationToken)
{
try
{
if (request.NewConfig == null)
{
throw new ArgumentException("New configuration is required");
}
var bot = await _botService.GetBotByIdentifier(request.Identifier);
if (bot == null)
{
throw new Exception($"Bot with identifier {request.Identifier} not found");
}
return await _botService.UpdateBotConfiguration(request.Identifier, request.NewConfig);
}
catch (Exception ex)
{
throw new Exception($"Error updating bot configuration: {ex.Message}");
}
}
}
}