public async Task <ActionResult <BalanceRecord> > PostBalanceRecord(BalanceRecord balanceRecord) { _context.BalanceRecord.Add(balanceRecord); await _context.SaveChangesAsync(); return(CreatedAtAction("GetBalanceRecord", new { id = balanceRecord.Id }, balanceRecord)); }
public async Task <IActionResult> PutBalanceRecord(long id, BalanceRecord balanceRecord) { if (id != balanceRecord.Id) { return(BadRequest()); } _context.Entry(balanceRecord).State = EntityState.Modified; try { await _context.SaveChangesAsync(); } catch (DbUpdateConcurrencyException) { if (!BalanceRecordExists(id)) { return(NotFound()); } else { throw; } } return(NoContent()); }
public async Task Is_Single_FillBaseAssetData_Correct() { var balance = new BalanceRecord { AssetId = "BTC", Balance = 1 }; var balanceWithBaseAsset = await _service.FillBaseAssetData(balance, "USD"); Assert.NotNull(balanceWithBaseAsset); Assert.Equal(2652, balanceWithBaseAsset.AmountInBase); }
public static BalanceRecord FromRecord(Record r) { var record = new BalanceRecord() { Name = r.Name, MonthToDateAmount = r.MtdValue, YearToDateAmount = r.YtdValue, }; return(record); }
public async Task <BalanceRecordWithBase> FillBaseAssetDataAsync(BalanceRecord balanceRecord, string baseAssetId) { try { return(await _service.ApiRateCalculatorFillBaseAssetDataByBaseAssetIdPostAsync(baseAssetId, balanceRecord)); } catch (Exception ex) { await _log.WriteErrorAsync(nameof(RateCalculatorClient), nameof(FillBaseAssetDataAsync), $"baseAssetId = {baseAssetId}, balanceRecord = {balanceRecord.ToJson()}", ex); } return(null); }
private List <BalanceGroup> Parse() { var groups = new List <BalanceGroup>(); var row = 0; using (var excel = new ExcelPackage(new System.IO.FileInfo(_appArgs.InFileName))) { var ws = excel.Workbook.Worksheets.First(); BalanceGroup group = null !; //parse records for (row = 2; row <= ws.Dimension.End.Row; row++) { var r = Record.FromExcel(ws.Cells, row); if (r.IsEmpty) { continue; } if (r.IsGroupHeader) { group = BalanceGroup.FromRecord(r); groups.Add(group); continue; } if (r.IsBalanceRow) { group.Records.Add(BalanceRecord.FromRecord(r)); continue; } if (r.IsTotalRow) { group.Total = BalanceRecord.FromRecord(r); continue; } } } return(groups); }
/// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='baseAssetId'> /// </param> /// <param name='balanceRecord'> /// </param> /// <param name='cancellationToken'> /// The cancellation token. /// </param> public static async Task <BalanceRecordWithBase> ApiRateCalculatorFillBaseAssetDataByBaseAssetIdPostAsync(this IRateCalculatorAPI operations, string baseAssetId, BalanceRecord balanceRecord = default(BalanceRecord), CancellationToken cancellationToken = default(CancellationToken)) { using (var _result = await operations.ApiRateCalculatorFillBaseAssetDataByBaseAssetIdPostWithHttpMessagesAsync(baseAssetId, balanceRecord, null, cancellationToken).ConfigureAwait(false)) { return(_result.Body); } }
/// <param name='operations'> /// The operations group for this extension method. /// </param> /// <param name='baseAssetId'> /// </param> /// <param name='balanceRecord'> /// </param> public static BalanceRecordWithBase ApiRateCalculatorFillBaseAssetDataByBaseAssetIdPost(this IRateCalculatorAPI operations, string baseAssetId, BalanceRecord balanceRecord = default(BalanceRecord)) { return(operations.ApiRateCalculatorFillBaseAssetDataByBaseAssetIdPostAsync(baseAssetId, balanceRecord).GetAwaiter().GetResult()); }
public async Task <BalanceRecordWithBase> FillBaseAssetData(string baseAssetId, [FromBody] BalanceRecord balanceRecord) { return(await _rateCalculatorService.FillBaseAssetData(balanceRecord, baseAssetId)); }