public PaymentTransactionLink(Transaction transaction, PaymentOrder order) { Argument.NotNull(transaction, "transaction"); Argument.NotNull(order, "order"); Order = order; Transaction = transaction; TransactionId = Transaction.Id; }
internal CardPayment( Card card, PaymentTemplate template, PaymentOrder order, JObject submittedForm, Account from, Account to, Currency currency) : base(template, submittedForm, order, currency, from, to) { Argument.NotNull(card, "card"); Card = card; }
internal Payment( PaymentTemplate template, JObject submittedForm, PaymentOrder order, Currency currency, Account from, Account to) : base(template, from, to, currency, order.Amount) { Argument.NotNull(submittedForm, "submittedForm"); Argument.NotNull(template, "template"); Argument.NotNull(order, "order"); Order = order; Form = submittedForm.ToString(); }
public void Can_VaBank_Context_Save_PaymentOrder_And_CardPayment() { long paymentNumber = 123; var priorCorrAcc = Context.Set<CorrespondentAccount>().Single(x => x.AccountNo == "3014153001749"); var user = Context.Set<User>().Single(x => x.UserName == "terminator"); var userPaymentProfile = Context.Set<UserPaymentProfile>().Single(x => x.UserId == user.Id); var userAccount = Context.Set<UserAccount>().First(x => x.Owner.Id == user.Id); var cardAccount = Context.Set<CardAccount>().Single(x => x.Owner.Id == user.Id && x.AccountNo == userAccount.AccountNo); var paymentOrderTemplate = Context.Set<PaymentOrderTemplate>().Single(x => x.TemplateCode == "PAYMENT-CELL-VELCOM-PHONENO"); var currency = Context.Set<Currency>().Single(x => x.ISOName == "BYR"); var paymentTemplate = Context.Set<PaymentTemplate>().Single(x => x.Code == paymentOrderTemplate.TemplateCode); var card = cardAccount.Cards.First(); var paymentOrder = new PaymentOrder( paymentNumber, user.Profile.FirstName + " " + user.Profile.LastName, "153001966", cardAccount.AccountNo, userPaymentProfile.PayerTIN, paymentOrderTemplate.BeneficiaryName, paymentOrderTemplate.BeneficiaryBankCode, paymentOrderTemplate.BeneficiaryAccountNo, paymentOrderTemplate.BeneficiaryTIN, String.Format("Пополнение счета. Номер телефона: {0}", user.Profile.PhoneNumber), 100000, currency.ISOName, paymentOrderTemplate.PaymentCode); var assembly = Assembly.GetExecutingAssembly(); var form = JObject.Parse(new StreamReader(assembly.GetManifestResourceStream("VaBank.Data.Tests.EntityFramework.Templates.cell-velcom-phoneno.json")).ReadToEnd()); var accountTo = Context.Set<CorrespondentAccount>().Single(x => x.Bank.Code == paymentOrderTemplate.BeneficiaryBankCode); var cardPayment = new CardPayment(card, paymentTemplate, paymentOrder, form, cardAccount, accountTo, currency); var paymentTransaction = new Transaction(cardAccount, currency, 100000, cardAccount.Balance, "123", "test_transaction_desc", "Nezavisimosti 58"); var paymentTransactionLink = new PaymentTransactionLink(paymentTransaction, paymentOrder); Context.Set<PaymentOrder>().Add(paymentOrder); Context.Set<CardPayment>().Add(cardPayment); Context.SaveChanges(); }
public PaymentOrder CreateOrder(PaymentForm form) { Argument.NotNull(form, "form"); var order = new PaymentOrder { Amount = form.RenderValueOrDefault <decimal>(Amount), BeneficiaryAccountNo = form.RenderValueOrDefault <string>(BeneficiaryAccountNo), BeneficiaryBankCode = form.RenderValueOrDefault <string>(BeneficiaryBankCode), BeneficiaryName = form.RenderValueOrDefault <string>(BeneficiaryName), BeneficiaryTIN = form.RenderValueOrDefault <string>(BeneficiaryTIN), CurrencyISOName = form.RenderValueOrDefault <string>(CurrencyISOName), PayerAccountNo = form.RenderValueOrDefault <string>(PayerAccountNo), PayerBankCode = form.RenderValueOrDefault <string>(PayerBankCode), PayerName = form.RenderValueOrDefault <string>(PayerName), PayerTIN = form.RenderValueOrDefault <string>(PayerTIN), PaymentCode = form.RenderValueOrDefault <string>(PaymentCode), Purpose = form.RenderValueOrDefault <string>(Purpose) }; return(order); }
public PaymentOrder CreateOrder(PaymentForm form) { Argument.NotNull(form, "form"); var order = new PaymentOrder { Amount = form.RenderValueOrDefault<decimal>(Amount), BeneficiaryAccountNo = form.RenderValueOrDefault<string>(BeneficiaryAccountNo), BeneficiaryBankCode = form.RenderValueOrDefault<string>(BeneficiaryBankCode), BeneficiaryName = form.RenderValueOrDefault<string>(BeneficiaryName), BeneficiaryTIN = form.RenderValueOrDefault<string>(BeneficiaryTIN), CurrencyISOName = form.RenderValueOrDefault<string>(CurrencyISOName), PayerAccountNo = form.RenderValueOrDefault<string>(PayerAccountNo), PayerBankCode = form.RenderValueOrDefault<string>(PayerBankCode), PayerName = form.RenderValueOrDefault<string>(PayerName), PayerTIN = form.RenderValueOrDefault<string>(PayerTIN), PaymentCode = form.RenderValueOrDefault<string>(PaymentCode), Purpose = form.RenderValueOrDefault<string>(Purpose) }; return order; }