コード例 #1
0
        public PaymentTransactionLink(Transaction transaction, PaymentOrder order)
        {
            Argument.NotNull(transaction, "transaction");
            Argument.NotNull(order, "order");

            Order         = order;
            Transaction   = transaction;
            TransactionId = Transaction.Id;
        }
コード例 #2
0
        public PaymentTransactionLink(Transaction transaction, PaymentOrder order)
        {
            Argument.NotNull(transaction, "transaction");
            Argument.NotNull(order, "order");

            Order = order;
            Transaction = transaction;
            TransactionId = Transaction.Id;
        }
コード例 #3
0
 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;
 }
コード例 #4
0
ファイル: CardPayment.cs プロジェクト: al-main/vabank
 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;
 }
コード例 #5
0
ファイル: Payment.cs プロジェクト: developeramarish/vabank
        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();
        }
コード例 #6
0
ファイル: Payment.cs プロジェクト: al-main/vabank
        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();
        }
コード例 #7
0
ファイル: PaymentsSchemaTest.cs プロジェクト: al-main/vabank
        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();
        }
コード例 #8
0
        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);
        }
コード例 #9
0
        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;
        }