Пример #1
0
        private void btnPaymentFilter_Click(object sender, RoutedEventArgs e)
        {
            _paymentContract = new PaymentContract();
            _startDate       = new DateTime();
            _finishDate      = new DateTime();
            if (cbPaymentCustomer.SelectedIndex == -1)
            {
                _paymentContract.AccountOwnerId = 0;
            }
            else
            {
                _paymentContract.AccountOwnerId = (int)cbPaymentCustomer.SelectedValue;
            }

            if (cbPaymentSuffix.SelectedIndex == -1)
            {
                _paymentContract.Suffix = 0;
            }
            else
            {
                _paymentContract.Suffix = (int)cbPaymentSuffix.SelectedValue;
            }

            if (cbPaymentType.SelectedIndex == -1)
            {
                _paymentContract.Type = 0;
            }
            else
            {
                _paymentContract.Type = (int)cbPaymentType.SelectedValue;
            }

            if (dpPaymentStartDate.SelectedDate == null)
            {
                _startDate = null;
            }
            else
            {
                _startDate = dpPaymentStartDate.SelectedDate;
            }

            if (dpPaymentFinishDate.SelectedDate == null)
            {
                _finishDate = null;
            }
            else
            {
                _finishDate = dpPaymentFinishDate.SelectedDate;
            }

            GetPayment(_paymentContract, _startDate, _finishDate);
        }
Пример #2
0
        private void btnClearFilter_Click(object sender, RoutedEventArgs e)
        {
            _paymentContract = new PaymentContract();
            _startDate       = new DateTime();
            _finishDate      = new DateTime();
            cbPaymentCustomer.SelectedIndex  = -1;
            cbPaymentSuffix.SelectedIndex    = -1;
            cbPaymentType.SelectedIndex      = -1;
            dpPaymentFinishDate.SelectedDate = null;
            dpPaymentStartDate.SelectedDate  = null;

            GetPayment(_paymentContract, null, null);
        }
Пример #3
0
 public static Payment ToDomain(this PaymentContract paymentContract, Guid?paymentId = default(Guid?))
 {
     return(new Payment
     {
         PaymentId = paymentId.HasValue ? paymentId.Value : Guid.NewGuid(),
         Date = DateTime.UtcNow,
         Amount = paymentContract.Amount,
         Currency = paymentContract.Currency,
         CardNumber = paymentContract.CardNumber,
         CVV = int.Parse(paymentContract.CVV),
         ExpiryMonth = paymentContract.ExpiryMonth,
         ExpiryYear = paymentContract.ExpiryYear,
         Status = PaymentStatus.Pending
     });
 }
        public PaymentByCardSerializeAction(ICheckoutRestClient restClient,
                                            ICacheManager cacheManager, string tenderCode,
                                            string amountUsed, string transactionType,
                                            string cardNumber, string poNumber = "")
            : base("PaymentByCard")
        {
            _restClient   = restClient;
            _cacheManager = cacheManager;

            _paymentContract = new PaymentContract
            {
                tenderCode      = tenderCode,
                transactionType = transactionType,
                amountUsed      = amountUsed,
                cardNumber      = cardNumber,
                saleNumber      = _cacheManager.SaleNumber,
                tillNumber      = _cacheManager.TillNumber,
                poNumber        = poNumber
            };
        }
        public void WhenRequiredStringFieldsAreMissing_ValidationFails(string cardNumber, string cvv, string expectedErrorMessage)
        {
            var target = new PaymentContract
            {
                Amount      = 0m,
                Currency    = Currency.GBP,
                CardNumber  = cardNumber,
                CVV         = cvv,
                ExpiryMonth = 1,
                ExpiryYear  = 2000
            };

            var context = new ValidationContext(target);
            var results = new List <ValidationResult>();
            var isValid = Validator.TryValidateObject(target, context, results, true);

            isValid.Should().BeFalse();
            results.Count.Should().Be(1);
            results.Select(r => r.ErrorMessage).Should().Contain(expectedErrorMessage);
        }
Пример #6
0
        private void btnAddPayment_Click(object sender, RoutedEventArgs e)
        {
            if (cbAccountCustomer.SelectedIndex == -1)
            {
                MessageBox.Show("Müşteri boş geçilemez", "Message", MessageBoxButton.OK, MessageBoxImage.Error);
                cbAccountCustomer.Focus();
                return;
            }
            if (cbAccountSuffix.SelectedIndex == -1)
            {
                MessageBox.Show("Ek no seçimi yapılmadı", "Message", MessageBoxButton.OK, MessageBoxImage.Error);
                cbAccountSuffix.Focus();
                return;
            }

            if (txtAmount.Text == "")
            {
                MessageBox.Show("Tutar boş geçilemez", "Message", MessageBoxButton.OK, MessageBoxImage.Error);
                txtAmount.Focus();
                return;
            }
            else if (_paymentType == 2 && Convert.ToDecimal(txtAmount.Text) > Convert.ToDecimal(txtBalance.Text))
            {
                //para çekimi
                MessageBox.Show("Hesabınızda yeterli bakiye yok.", "Message", MessageBoxButton.OK, MessageBoxImage.Error);
                txtAmount.Focus();
                return;
            }


            PaymentContract paymentContract = new PaymentContract();

            paymentContract.AccountId       = _accountId;
            paymentContract.AccountOwnerId  = (int)cbAccountCustomer.SelectedValue;
            paymentContract.Suffix          = (int)cbAccountSuffix.SelectedValue;
            paymentContract.TransactionDate = dpPaymentDate.SelectedDate.Value;
            paymentContract.Description     = txtAccountDesc.Text;
            paymentContract.Amount          = Convert.ToDecimal(txtAmount.Text);
            paymentContract.Type            = _paymentType;
            AddPayment(paymentContract);
        }
Пример #7
0
        public bool AddPayment(PaymentContract paymentContract)
        {
            SqlDataReader dr;

            dr = dbOperation.SpGetData("acc.ins_payment", new SqlParameter[] {
                new SqlParameter("@AccountId", paymentContract.AccountId),
                new SqlParameter("@AccountOwnerId", paymentContract.AccountOwnerId),
                new SqlParameter("@TransactionDate", paymentContract.TransactionDate),
                new SqlParameter("@Description", paymentContract.Description),
                new SqlParameter("@Amount", paymentContract.Amount),
                new SqlParameter("@Type", paymentContract.Type)
            });

            if (dr.HasRows)
            {
                return(false);
            }
            else
            {
                return(true);
            }
        }
Пример #8
0
        private void AddPayment(PaymentContract paymentContract)
        {
            var connect = new Connector.Banking.GenericConnect <PaymentResponse>();
            var request = new Types.Banking.PaymentRequest();

            request.paymentContract = paymentContract;
            request.MethodName      = "AddPayment";

            var response = connect.Execute(request);

            if (response.IsSuccess == true)
            {
                if (_paymentType == 1)
                {
                    MessageBox.Show("Para hesaba eklendi.", "Message", MessageBoxButton.OK, MessageBoxImage.Information);
                    return;
                }
                else if (_paymentType == 2)
                {
                    MessageBox.Show("Hesaptan para çekildi.", "Message", MessageBoxButton.OK, MessageBoxImage.Information);
                    return;
                }
            }
            else
            {
                if (_paymentType == 1)
                {
                    MessageBox.Show("Para hesaba eklenmedi.", "Message", MessageBoxButton.OK, MessageBoxImage.Information);
                    return;
                }
                else if (_paymentType == 2)
                {
                    MessageBox.Show("Hesaptan para çekilmedi.", "Message", MessageBoxButton.OK, MessageBoxImage.Information);
                    return;
                }
            }
        }
Пример #9
0
        private void GetPayment(PaymentContract paymentContract, DateTime?startDate, DateTime?finishDate)
        {
            var connect = new Connector.Banking.GenericConnect <PaymentResponse>();
            var request = new Types.Banking.PaymentRequest();

            request.paymentContract = paymentContract;
            request.FinishDate      = finishDate;
            request.StartDate       = startDate;
            request.MethodName      = "GetPayment";

            var response = connect.Execute(request);

            if (response.IsSuccess == true)
            {
                dgPaymentListeleme.ItemsSource = response.paymentContracts;
                dgPaymentListeleme.Items.Refresh();
                return;
            }
            else
            {
                MessageBox.Show("Hesap getirilirken hata oluştu.", "Message", MessageBoxButton.OK, MessageBoxImage.Information);
                return;
            }
        }
Пример #10
0
        public List <PaymentContract> GetPayment(PaymentRequest request)
        {
            int index = 0;

            SqlParameter[] sqlParameters = new SqlParameter[7];
            SqlParameter   sqlParameter;

            if (request.paymentContract.Id == 0)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@Id";
                sqlParameter.Value         = DBNull.Value;
                sqlParameters[index]       = sqlParameter;
                index++;
            }
            else if (request.paymentContract.Id != 0)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@Id";
                sqlParameter.Value         = request.paymentContract.Id;
                sqlParameters[index]       = sqlParameter;
                index++;
            }
            if (request.paymentContract.AccountId == 0)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@AccountId";
                sqlParameter.Value         = DBNull.Value;
                sqlParameters[index]       = sqlParameter;
                index++;
            }
            else if (request.paymentContract.AccountId != 0)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@AccountId";
                sqlParameter.Value         = request.paymentContract.AccountId;
                sqlParameters[index]       = sqlParameter;
                index++;
            }
            if (request.paymentContract.Suffix == 0)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@Suffix";
                sqlParameter.Value         = DBNull.Value;
                sqlParameters[index]       = sqlParameter;
                index++;
            }
            else if (request.paymentContract.Suffix != 0)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@Suffix";
                sqlParameter.Value         = request.paymentContract.Suffix;
                sqlParameters[index]       = sqlParameter;
                index++;
            }
            if (request.paymentContract.Type == 0)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@Type";
                sqlParameter.Value         = DBNull.Value;
                sqlParameters[index]       = sqlParameter;
                index++;
            }
            else if (request.paymentContract.Type != 0)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@Type";
                sqlParameter.Value         = request.paymentContract.Type;
                sqlParameters[index]       = sqlParameter;
                index++;
            }
            if (request.paymentContract.AccountOwnerId == 0)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@AccountOwnerId";
                sqlParameter.Value         = DBNull.Value;
                sqlParameters[index]       = sqlParameter;
                index++;
            }
            else if (request.paymentContract.AccountOwnerId != 0)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@AccountOwnerId";
                sqlParameter.Value         = request.paymentContract.AccountOwnerId;
                sqlParameters[index]       = sqlParameter;
                index++;
            }
            if (request.StartDate == null)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@StartDate";
                sqlParameter.Value         = DBNull.Value;
                sqlParameters[index]       = sqlParameter;
                index++;
            }
            else if (request.StartDate != null)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@StartDate";
                sqlParameter.Value         = request.StartDate;
                sqlParameters[index]       = sqlParameter;
                index++;
            }
            if (request.FinishDate == null)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@FinishDate";
                sqlParameter.Value         = DBNull.Value;
                sqlParameters[index]       = sqlParameter;
                index++;
            }
            else if (request.StartDate != null)
            {
                sqlParameter = new SqlParameter();
                sqlParameter.ParameterName = "@FinishDate";
                sqlParameter.Value         = request.FinishDate;
                sqlParameters[index]       = sqlParameter;
                index++;
            }


            SqlDataReader dr;

            dr = dbOperation.SpGetData("acc.sel_payment", sqlParameters);

            List <PaymentContract> paymentContracts = new List <PaymentContract>();
            PaymentContract        paymentContract;

            while (dr.Read())
            {
                paymentContract = new PaymentContract();

                paymentContract.Id              = (int)dr[0];
                paymentContract.AccountId       = (int)dr[1];
                paymentContract.AccountOwnerId  = (int)dr[2];
                paymentContract.Suffix          = (int)dr[3];
                paymentContract.TransactionDate = (DateTime)dr[4];
                paymentContract.Description     = dr[5].ToString();
                paymentContract.Amount          = (decimal)dr[6];
                paymentContract.Type            = (int)dr[7];


                paymentContracts.Add(paymentContract);
            }

            return(paymentContracts);
        }
Пример #11
0
        public async Task <ActionResult <PaymentContract> > Post([FromBody] PaymentContract paymentContract)
        {
            var(success, payment, errorMessage) = await _paymentService.MakePayment(paymentContract.ToDomain(), User.GetMerchantId());

            return(success ? CreatedAtAction(nameof(Get), new { id = Guid.NewGuid() }, payment.ToContract()) : BadRequest(errorMessage));
        }