public static AccountMarginEventEntity Create(IAccountMarginEvent src) { return(new AccountMarginEventEntity { Id = src.Id, AccountId = src.AccountId, Balance = src.Balance, BaseAssetId = src.BaseAssetId, EventId = src.EventId, EventTime = src.EventTime, FreeMargin = src.FreeMargin, IsEventStopout = src.IsEventStopout, EventType = src.EventType.ToString(), MarginAvailable = src.MarginAvailable, MarginCall = src.MarginCall, MarginInit = src.MarginInit, MarginUsageLevel = src.MarginUsageLevel, OpenPositionsCount = src.OpenPositionsCount, PnL = src.PnL, StopOut = src.StopOut, TotalCapital = src.TotalCapital, TradingConditionId = src.TradingConditionId, UsedMargin = src.UsedMargin, WithdrawTransferLimit = src.WithdrawTransferLimit }); }
public async Task InsertOrReplaceAsync(IAccountMarginEvent report) { using (var conn = new SqlConnection(_settings.Db.ConnString)) { try { await conn.ExecuteAsync( $"insert into {TableName} ({GetColumns}) values ({GetFields})", AccountMarginEventEntity.Create(report)); } catch (Exception ex) { var msg = $"Error {ex.Message} \n" + $"Entity <{nameof(IAccountMarginEvent)}>: \n" + report.ToJson(); await _log?.WriteWarningAsync(nameof(AccountMarginEventsSqlRepository), "InsertOrReplaceAsync", null, msg); throw new Exception(msg); } } }
public Task InsertOrReplaceAsync(IAccountMarginEvent entity) { return(_tableStorage.InsertOrReplaceAsync(AccountMarginEventEntity.Create(entity))); }