Пример #1
0
 public async Task InsertOrReplaceAsync(IAccountsReport report)
 {
     foreach (var item in _repositories)
     {
         await item.InsertOrReplaceAsync(report);
     }
 }
Пример #2
0
        public async Task InsertOrReplaceAsync(IAccountsReport report)
        {
            using (var conn = new SqlConnection(_settings.Db.ReportsSqlConnString))
            {
                var    res = conn.ExecuteScalar($"select Id from {TableName} where Id = '{report.Id}'");
                string query;
                if (res == null)
                {
                    query = $"insert into {TableName} " +
                            "(Id, Date, TakerCounterpartyId, TakerAccountId, BaseAssetId, IsLive, LegalEntity) " +
                            " values " +
                            "(@Id, @Date, @TakerCounterpartyId, @TakerAccountId, @BaseAssetId, @IsLive, @LegalEntity)";
                }
                else
                {
                    query = $"update {TableName} set " +
                            "Date=@Date, TakerCounterpartyId=@TakerCounterpartyId, TakerAccountId=@TakerAccountId, " +
                            "BaseAssetId=@BaseAssetId, IsLive=@IsLive, LegalEntity=@LegalEntity " +
                            " where Id=@Id";
                }
                try { await conn.ExecuteAsync(query, report); }
                catch (Exception ex)
                {
                    var msg = $"Error {ex.Message} \n" +
                              "Entity <IAccountsReport>: \n" +
                              report.ToJson();
                    await _log?.WriteWarningAsync("AccountsReportsSqlRepository", "InsertOrReplaceAsync", null, msg);

                    throw new Exception(msg);;
                }
            }
        }
 public static AccountsReport ToDto(this IAccountsReport src)
 {
     return(new AccountsReport
     {
         BaseAssetId = src.BaseAssetId,
         Date = src.Date,
         Id = src.Id,
         IsLive = src.IsLive,
         TakerAccountId = src.TakerAccountId,
         TakerCounterpartyId = src.TakerCounterpartyId
     });
 }
Пример #4
0
 public Task InsertOrReplaceAsync(IAccountsReport report)
 {
     return(_tableStorage.InsertOrReplaceAsync(AccountsReportEntity.Create(report)));
 }