private void ProcessUnallocated(DataContext dbContext, ConfirmedPaymentModel confirmedPaymentModel) { var rollingRegister = new RollingRegister(); rollingRegister.Amount = confirmedPaymentModel.Amount; rollingRegister.CredentialID = SessionModel.CredentialID; rollingRegister.DateOpened = DateTime.Now; rollingRegister.PaymentMethod = (Data.Enums.PaymentMethod)confirmedPaymentModel.PaymentSource; rollingRegister.PaymentTransactionID = null; rollingRegister.Reference = string.Format("Token: {0}, Transaction Approval: {1}", confirmedPaymentModel.TransactionToken, confirmedPaymentModel.Receipt); rollingRegister.RollingRegisterStatus = Data.Enums.RollingRegisterStatus.Open; rollingRegister.RollingRegisterType = Data.Enums.RollingRegisterType.Unallocated; dbContext.RollingRegisters.Add(rollingRegister); dbContext.SaveChanges(); }
private void ProcessUnderpayment(DataContext dbContext, PaymentTransaction paymentTransaction, ConfirmedPaymentModel confirmedPaymentModel) { var paymentProvider = resolvePaymentProvider(); var rollingRegister = new RollingRegister(); rollingRegister.Amount = confirmedPaymentModel.Amount; rollingRegister.CredentialID = SessionModel.CredentialID; rollingRegister.DateOpened = DateTime.Now; rollingRegister.PaymentMethod = (Data.Enums.PaymentMethod)confirmedPaymentModel.PaymentSource; rollingRegister.PaymentTransactionID = paymentTransaction.ID; rollingRegister.Reference = string.Format("Token: {0}, Transaction Approval: {1}", confirmedPaymentModel.TransactionToken, confirmedPaymentModel.Receipt); rollingRegister.RollingRegisterStatus = Data.Enums.RollingRegisterStatus.Open; rollingRegister.RollingRegisterType = Data.Enums.RollingRegisterType.UnderPayment; dbContext.RollingRegisters.Add(rollingRegister); paymentTransaction.CredentialID = SessionModel.CredentialID; paymentTransaction.ModifiedTimestamp = DateTime.Now; paymentTransaction.Status = Data.Enums.PaymentTransactionStatus.RollingRegister; foreach (var paymentTransactionItem in paymentTransaction.TransactionItems) { paymentTransactionItem.Status = Data.Enums.PaymentTransactionStatus.RollingRegister; try { paymentProvider.CancelTransaction(paymentTransactionItem.TransactionToken); } catch { // Empty on purpose } } dbContext.SaveChanges(); }