public ActionResult CreateLedger(LedgerEntity ledger) { if (ModelState.IsValid) { _db.Execute(new CreateLedgerCommand(ledger)); return(new HttpStatusCodeResult(HttpStatusCode.Created, "it worked")); } return(new HttpStatusCodeResult(HttpStatusCode.InternalServerError, "Errors")); }
private async Task DoTimer(ITimerTrigger timer, TimerTriggeredHandlerArgs args, CancellationToken ct) { if (!StartWork()) { return; } try { using (var context = CreateContext()) { var ledgerRequest = new LedgersRequest { Limit = 10 }; var data = await _b2C2RestClient.GetLedgerHistoryAsync(ledgerRequest, ct); var added = 0; do { added = 0; foreach (var log in data.Data) { foreach (var assetMapping in _assetMappings) { log.Currency = log.Currency.Replace(assetMapping.Key, assetMapping.Value); } var item = await context.Ledgers.FirstOrDefaultAsync( e => e.TransactionId == log.TransactionId, ct); if (item != null) { continue; } item = new LedgerEntity(log); context.Ledgers.Add(item); added++; } await context.SaveChangesAsync(ct); ledgerRequest.Cursor = data.Next; data = await _b2C2RestClient.GetLedgerHistoryAsync(ledgerRequest, ct); } while (added > 0); } } finally { StopWork(); } }
public ActionResult UpdateLedger(int ledger, string ledgerDesc, bool isActive) { var ledgerIn = new LedgerEntity { Ledger = ledger, LedgerDesc = ledgerDesc, IsActive = isActive }; if (!ModelState.IsValid || ledgerIn.Ledger <= 0) { return(new HttpStatusCodeResult(HttpStatusCode.InternalServerError, "Errors")); } _db.Execute(new UpdateLedgerCommand(ledgerIn)); var model = _db.Query(new GetLedgerByIdQuery(ledgerIn.Ledger)); return(PartialView("GetLedgerRow", model)); }
private async Task DoTimer(ITimerTrigger timer, TimerTriggeredHandlerArgs args, CancellationToken ct) { if (!StartWork()) { return; } try { using (var context = CreateContext()) { var offset = 0; var data = await _b2C2RestClient.GetLedgerHistoryAsync(offset, 10, ct); var added = 0; do { added = 0; foreach (var log in data) { var item = await context.Ledgers.FirstOrDefaultAsync( e => e.TransactionId == log.TransactionId, ct); if (item != null) { continue; } item = new LedgerEntity(log); context.Ledgers.Add(item); added++; } await context.SaveChangesAsync(ct); offset += data.Count; data = await _b2C2RestClient.GetLedgerHistoryAsync(offset, 10, ct); } while (added > 0); } } finally { StopWork(); } }
public CreateLedgerCommand(LedgerEntity ledger) { this.ledger = ledger; }