You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
48 lines
2.1 KiB
48 lines
2.1 KiB
using Binance.TradeRobot.Common.DI;
|
|
using Binance.TradeRobot.Model.Db;
|
|
using Binance.TradeRobot.Model.Dto;
|
|
using Microsoft.Extensions.Caching.Memory;
|
|
using Microsoft.Extensions.DependencyInjection;
|
|
using Yitter.IdGenerator;
|
|
|
|
namespace Binance.TradeRobot.Business
|
|
{
|
|
[BatchRegistration(ServiceLifetime.Singleton, RegistrationType.Self)]
|
|
public class OrderBusiness : BaseBusiness
|
|
{
|
|
public OrderBusiness(IFreeSql fsql, NLogManager logManager, IIdGenerator idGenerator, IMemoryCache memoryCache) : base(fsql, logManager, idGenerator, memoryCache)
|
|
{
|
|
|
|
}
|
|
|
|
public SpotOrderPageResponse GetSpotOrderList(QueryOrderRequest queryOrderRequest)
|
|
{
|
|
if (queryOrderRequest.PageSize > 100)
|
|
queryOrderRequest.PageSize = 100;
|
|
return new SpotOrderPageResponse()
|
|
{
|
|
Items = fsql.Select<SpotOrder>().Where(o => o.RobotId == queryOrderRequest.RobotId)
|
|
.OrderByDescending(o => o.CreateTime)
|
|
.Page(queryOrderRequest.PageIndex, queryOrderRequest.PageSize)
|
|
.Count(out long totalCount)
|
|
.ToList<SpotOrderResponse>(),
|
|
TotalCount = totalCount
|
|
};
|
|
}
|
|
|
|
public ExecutionLogPageResponse GetExecutionLogList(QueryLogRequest queryLogRequest)
|
|
{
|
|
if (queryLogRequest.PageSize > 100)
|
|
queryLogRequest.PageSize = 100;
|
|
return new ExecutionLogPageResponse()
|
|
{
|
|
Items = fsql.Select<ExecutionLog>().Where(l => l.RobotId == queryLogRequest.RobotId)
|
|
.OrderByDescending(l => l.CreateTime)
|
|
.Page(queryLogRequest.PageIndex, queryLogRequest.PageSize)
|
|
.Count(out long totalCount)
|
|
.ToList<ExecutionLogResponse>(),
|
|
TotalCount = totalCount
|
|
};
|
|
}
|
|
}
|
|
}
|
|
|