private static void Main(string[] args) { #region CreditCard Transaction var creditCardTransactionProcessor = TransactionProcessorFactory.CreateTransactionProcessor(TransactionType.CreditCard); var creditCardTransaction = new CreditCardTransaction( 1000, "Joe Satriani", "222", "1111222233334444"); var creditCardTransactionInfo = creditCardTransactionProcessor.Authorize(creditCardTransaction); Console.WriteLine($"{creditCardTransactionInfo.Amount} | {creditCardTransactionInfo.CreateDate:g} | " + $"{creditCardTransactionInfo.TransactionKey} | {creditCardTransactionInfo.TransactionStatusType}"); #endregion #region Debit Transaction var debitTransactionProcessor = TransactionProcessorFactory.CreateTransactionProcessor(TransactionType.Debit); var debitTransaction = new DebitTransaction(1300, "Banco Itaú"); var debitTransactionInfo = debitTransactionProcessor.Authorize(debitTransaction); Console.WriteLine($"{debitTransactionInfo.Amount} | {debitTransactionInfo.CreateDate:g} | " + $"{debitTransactionInfo.TransactionKey} | {debitTransactionInfo.TransactionStatusType}"); #endregion }
private async Task CreateDebitTransfer(TransferCommand request, Account sourceAccount, Account destinationAccount) { DebitTransaction debitTransaction = new DebitTransaction(TransactionType.Transfer) { AccountId = sourceAccount.Id, DestinationAccountId = destinationAccount.Id, Amount = request.Amount }; sourceAccount.Balance -= request.Amount; sourceAccount.AddTransaction(debitTransaction); await _accountRepository.Update(sourceAccount); }
public ActionResult formSubmit(DebitTransaction model, string actionType) { List <string> errorMessage = new List <string>(); string successMessage = Resources.NotifResource.RequestSuccess; KeyValuePair <int, string> results = new KeyValuePair <int, string>(1, ""); string CardNo = Request["CardNo"].Trim(); DateTime TransactionDate = DateTime.Parse(Request["TransactionDate"].Trim()); string RefNo = Request["RefNo"].Trim(); string RequestID = Request["RequestID"].Trim(); db.UpdateHistoryDebitTransaction(CardNo, TransactionDate, RefNo, RequestID); UrlHelper u = new UrlHelper(this.ControllerContext.RequestContext); string url = u.Action("Index", "DebitController"); var jsonData = new { flag = true, Message = url }; return(Json(jsonData)); }
public async Task AddTransaction(Guid walletId, ETransactionType transactionType, Amount amount, string description) { var wallet = await walletReadOnlyRepository.GetWallet(walletId); if (wallet == null) { return; } Transaction transaction = null; if (transactionType == ETransactionType.Credit) { transaction = new CreditTransaction(amount, description, DateTime.Now); } else if (transactionType == ETransactionType.Debit) { transaction = new DebitTransaction(amount, description, DateTime.Now); } wallet.AddTransaction(transaction); await Save(wallet); }
public void GetTransactionValueDebit() { var transaction = new DebitTransaction(); transaction.TransDate = DateTime.Now; transaction.Description = "Tools expense"; transaction.Value = 100.03m; transaction.Balance = 500.30m; Assert.That(transaction.Description, Is.EqualTo("Tools expense")); }
public void GetDummyTransactionDebit() { var transaction = new DebitTransaction(); var myTransactionService = new TransactionDomainService(); transaction = myTransactionService.GetDummyDebitTransaction(); Assert.That(transaction.Description, Is.Not.Null); }
public ActionResult Update(DebitTransaction model) { return(formSubmit(model, "Update")); }