Exemplo n.º 1
0
        public int Post([FromBody] decimal amount)
        {
            PaymentData paymentData = new PaymentData();

            paymentData.AmountOfMoney = amount;

            db.Add(paymentData);
            db.SaveChanges();
            //return "ok" vers mvc 5 avec l'id de la future transaction
            return(paymentData.Id);
        }
Exemplo n.º 2
0
 public void InsertMany(List <T> entity)
 {
     if (entity == null)
     {
         throw new ArgumentNullException("entity");
     }
     entities.AddRange(entity);
     context.SaveChanges();
 }
Exemplo n.º 3
0
 public int Processpayment(PaymentDetails paydels)
 {
     paymentDb.paymentdetails.Add(paydels);
     return(paymentDb.SaveChanges());
     //if(i>0)
     //    return 'Payment is Process'
 }
Exemplo n.º 4
0
        public Task <ImportFileResponseDto> Handle(ImportFileRequestDto request, CancellationToken cancellationToken)
        {
            var bankStatements   = ReadFile(request.PathToFile);
            var affectedPolicies = bankStatements.Select(x => x.PolicyNumber).Distinct().ToList();

            var policyAccounts = dbContext.PolicyAccount.Include(x => x.AccountOperations)
                                 .Where(x => affectedPolicies.Contains(x.PolicyNumber))
                                 .ToList();

            foreach (var bankStatement in bankStatements)
            {
                var policyAccount = policyAccounts.FirstOrDefault(x => x.PolicyNumber == bankStatement.PolicyNumber);

                if (policyAccount == null)
                {
                    throw new PolicyAccountNotFoundException(bankStatement.PolicyNumber);
                }

                policyAccount.Apply(bankStatement);
            }

            dbContext.SaveChanges();

            var response = new ImportFileResponseDto();

            return(Task.FromResult(response));
        }
Exemplo n.º 5
0
        public async Task <string> GetReceiptAsync(int orderId)
        {
            Models.Transaction transactionDb = _paymentDbContext.Transaction
                                               .FirstOrDefault(x => x.OrderId == orderId && x.Status.Equals(TransactionStatusEnum.Closed.ToString()));

            if (transactionDb == null)
            {
                return(null);
            }

            Models.Receipt receiptDb = _paymentDbContext.Receipt
                                       .FirstOrDefault(x => x.TransactionId == transactionDb.Id && x.Delivered == false);

            if (receiptDb == null)
            {
                return(null);
            }

            HttpClient client  = new HttpClient();
            string     apiPath = string.Format("{0}{1}", _appSettings.OrdersAPI, transactionDb.OrderId);

            HttpResponseMessage response = await client.GetAsync(apiPath);

            Order order = null;

            if (response.IsSuccessStatusCode)
            {
                var json = await response.Content.ReadAsStringAsync();

                order = JsonConvert.DeserializeObject <Order>(json.ToString());
            }

            Receipt receipt = new Receipt()
            {
                Date              = DateTime.Now,
                OrderItem         = order.OrderItem,
                RestaurantAddress = order.RestaurantAddress,
                RestaurantName    = order.RestaurantName,
                TotalPrice        = order.Price
            };

            receiptDb.Delivered = true;
            _paymentDbContext.SaveChanges();
            return(JsonConvert.SerializeObject(receipt));
        }
Exemplo n.º 6
0
        public void InitializeDbForTests(PaymentDbContext db)
        {
            Fixture fixture = new Fixture();

            Payment = fixture.Build <Payment>()
                      .With(p => p.CardNumber, "4111111111111111").Create();

            db.Payments.Add(Payment);
            db.SaveChanges();
        }
Exemplo n.º 7
0
        public Payment MakePayment(BillServices services)
        {
            Payment pay = new Payment()
            {
                BillId = services.BillNo, Amount = services.BillAmt
            };

            _payment.Payments.Add(pay);
            _payment.SaveChanges();
            return(pay);
        }
 public void AddPayment(Guid orderId, [FromCap] CapHeader header)
 {
     using (var transaction = _paymentDbContext.Database.BeginTransaction(_capBus, autoCommit: false))
     {
         _paymentDbContext.Payments.Add(new Entities.Payment()
         {
             OrderId = orderId
         });
         _paymentDbContext.SaveChanges();
         transaction.Commit();
     }
 }
Exemplo n.º 9
0
        public bool CreatePayment(Payment payment)
        {
            try
            {
                using (var transactionCtx = new PaymentDbContext(GetConnectionString()))
                {
                    transactionCtx.Payments.Add(payment);
                    transactionCtx.SaveChanges();
                }
            }
            catch (Exception e)
            {
                Console.WriteLine(e);
                return(false);
            }

            return(true);
        }
Exemplo n.º 10
0
        public bool SavePaymentDetails(PaymentEO paymentEO)
        {
            bool isSaved = false;

            if (paymentEO != null)
            {
                paymentEO.PaymentDate = DateTime.Now;
                if (paymentEO.PaymentId > 0)
                {
                    _paymentDbContext.PaymentDbSet.Update(paymentEO);
                }
                else
                {
                    _paymentDbContext.PaymentDbSet.Add(paymentEO);
                }
                isSaved = _paymentDbContext.SaveChanges() > 0;
            }
            return(isSaved);
        }
        public Task <CreateAccountForPolicyResponseDto> Handle(CreateAccountForPolicyRequestDto request, CancellationToken cancellationToken)
        {
            var isAccountAlreadyExists = dbContext.PolicyAccount.Any(x => x.PolicyNumber == request.PolicyNumber);

            if (isAccountAlreadyExists)
            {
                throw new PolicyAccountAlreadyExists(request.PolicyNumber);
            }

            var policyAccount = new PolicyAccount(request);

            dbContext.PolicyAccount.Add(policyAccount);
            dbContext.SaveChanges();

            //TODO: should be something in response or maybe response is not need at all
            var response = new CreateAccountForPolicyResponseDto();

            return(Task.FromResult(response));
        }
Exemplo n.º 12
0
        public Task <Payment> ProcessPaymentAsync(string cardNumber, string cvv, string expiryMonth, string expiryYear, string name,
                                                  string amount, string currency, Guid merchantId, Guid bankIdTransaction, bool statusPayment)
        {
            var payment = new Payment
            {
                PaymentId                 = Guid.NewGuid(),
                CardNumber                = cardNumber,
                Cvv                       = cvv,
                ExpiryMonth               = expiryMonth,
                ExpiryYear                = expiryYear,
                Name                      = name,
                Amount                    = amount,
                Currency                  = currency,
                MerchantId                = merchantId,
                BankIdTransaction         = bankIdTransaction,
                IsStatusPaymentSuccessful = statusPayment
            };

            _db.Payment.Add(payment);
            _db.SaveChanges();
            return(Task.FromResult(payment));
        }
Exemplo n.º 13
0
        public void OnPost(string agentEmail, string agentAccountNumber)
        {
            try
            {
                var agentForPayment = _context.AgentDueForPayment.FirstOrDefaultAsync(x => x.Email.Trim().ToLower().Equals(agentEmail.Trim().ToLower())).Result;
                if (agentForPayment == null)
                {
                    var agentDueForPayment = new AgentDueForPayment {
                        Email = agentEmail, AccountNumber = agentAccountNumber, AcceptedTerms = true
                    };

                    _context.AgentDueForPayment.Add(agentDueForPayment);
                    _context.SaveChanges();
                    AgentPaymentDetailsVm.AgentPaymentDetails  = Startup.AgentPaymentDetails.Where(x => x.EmailAddress.Trim().ToLower().Equals(agentEmail.Trim().ToLower())).ToList();
                    AgentPaymentDetailsVm.AlreadyAcceptedTerms = true;
                }
            }
            catch (Exception)
            {
                throw;
            }
        }
Exemplo n.º 14
0
        //public void UpdateState(int StateId)
        //{
        //    var State = _paymentDbContext.PayStates.Find(StateId);
        //    _paymentDbContext.PayStates.Update(State);
        //    Save();
        //}

        //public void DeleteState(int StateId)
        //{
        //    var State = _paymentDbContext.PayStates.Find(StateId);
        //    _paymentDbContext.PayStates.Remove(State);
        //    Save();
        //}

        public void Save()
        {
            _paymentDbContext.SaveChanges();
        }
Exemplo n.º 15
0
 public async Task SaveChanges()
 {
     paymentDbContext.SaveChanges();
     await Task.CompletedTask;
 }
Exemplo n.º 16
0
        public Response Process(PaymentDetail paymentDetail)
        {
            var beforeMaskPaymentDetail = new PaymentDetail {
                Amount           = paymentDetail.Amount,
                CardHolder       = paymentDetail.CardHolder,
                CreditCardNumber = paymentDetail.CreditCardNumber,
                ExpirationDate   = paymentDetail.ExpirationDate,
                SecurityCode     = paymentDetail.SecurityCode,
                RequestId        = paymentDetail.RequestId
            };

            var maskedCardNumber = paymentDetail;

            maskedCardNumber.CreditCardNumber = HideNumber(paymentDetail.CreditCardNumber);
            maskedCardNumber.SecurityCode     = HideNumber(paymentDetail.SecurityCode);
            maskedCardNumber.CreatedAt        = DateTime.Now;
            _paymentDbContext.PaymentDetails.Add(maskedCardNumber);
            _paymentDbContext.SaveChanges();

            beforeMaskPaymentDetail.Id = maskedCardNumber.Id;
            paymentDetail = beforeMaskPaymentDetail;

            PaymentState paymentState1 = new PaymentState
            {
                CreatedAt       = DateTime.Now,
                PaymentDetailId = paymentDetail.Id,
                Status          = _configuration["Pending"]
            };

            _paymentDbContext.PaymentStates.Add(paymentState1);
            _paymentDbContext.SaveChanges();

            new CheapPaymentGateway(_paymentDbContext, _configuration).ProcessPayment(paymentDetail);
            new ExpensivePaymentGateway(_paymentDbContext, _configuration).ProcessPayment(paymentDetail);

            var paymentState = _paymentDbContext.PaymentStates.FirstOrDefault(p => p.PaymentDetailId == paymentDetail.Id);

            switch (paymentState.Status)
            {
            case "Y":
                return(new Response
                {
                    Code = ResponseEnum.ApprovedOrCompletedSuccesfully.ResponseCode(),
                    Description = ResponseEnum.ApprovedOrCompletedSuccesfully.DisplayName()
                });

            case "P":
                return(new Response
                {
                    Code = ResponseEnum.PendingStatus.ResponseCode(),
                    Description = ResponseEnum.PendingStatus.DisplayName()
                });

            default:
                return(new Response
                {
                    Code = ResponseEnum.Failure.ResponseCode(),
                    Description = ResponseEnum.Failure.DisplayName()
                });
            }
        }
Exemplo n.º 17
0
 public int SaveRecordChanges()
 {
     return(_paymentDbContext.SaveChanges());
 }
Exemplo n.º 18
0
 public void Delete(Payment payment)
 {
     _paymentContext.Payments.Remove(payment);
     _paymentContext.SaveChanges();
 }