Exemple #1
0
        public void DeleteById(int Id)
        {
            EASYPAY_PAYMENT pPayment = new EASYPAY_PAYMENT()
            {
                ID = Id
            };

            Delete(pPayment);
        }
        protected void processEasyPayRequest()
        {
            try
            {
                string         postUrl = Configuration.EasyPayDualAuth;
                HttpWebRequest req     = (HttpWebRequest)WebRequest.Create(postUrl);
                string         strResponse;
                req.Method      = "POST";
                req.ContentType = "application/x-www-form-urlencoded";
                byte[] param      = Request.BinaryRead(HttpContext.Current.Request.ContentLength);
                string strRequest = Encoding.ASCII.GetString(param);
                strRequest = HttpUtility.UrlDecode(strRequest);
                EasyPayData unverified = EasyPayData.ParseUnverified(strRequest);

                string query = String.Format("OrderId={0}&Mer_username={1}&Mer_refno={2}", unverified.OrderId, Configuration.EasyPayMerchantUser, Configuration.EasyPayMerchantRef);
                // Write the request for dual auth
                StreamWriter stOut = new StreamWriter(req.GetRequestStream(), System.Text.Encoding.ASCII);
                stOut.Write(query);
                stOut.Close();

                StreamReader stIn = new StreamReader(req.GetResponse().GetResponseStream());
                strResponse = stIn.ReadToEnd();
                stIn.Close();
                strResponse = HttpUtility.UrlDecode(strResponse);
                EasyPayData dataVerified = EasyPayData.Parse(strResponse);

                EASYPAY_PAYMENT      pp    = ApplicationContext.Current.Payments.GetEPByTxnId(dataVerified.TransactionId);
                List <SHOPPING_CART> carts = ApplicationContext.Current.Carts.GetShoppingCartItems(dataVerified.OrderId);

                // success
                if (dataVerified.ErrorCode == 400)
                {
                    if (pp == null && carts != null && carts.Count > 0)
                    {
                        saveEasyPayOrder(dataVerified, carts, strRequest, unverified.ServiceCharge);
                    }
                    else if (pp == null)
                    {
                        BasePage.Log(null, "EasyPay " + dataVerified.ErrorCodeS + " TxnId: " + dataVerified.TransactionId + " but CART EXPIRED \n Response: " + strRequest, "", "EasyPay Return");
                        BasePage.sendMailToAdmins("EasyPay payment " + dataVerified.ErrorCodeS + " but cart expired. PLACE REFUND!", "A " + dataVerified.ErrorCodeS + " EasyPay was notified for cart " + dataVerified.OrderId +
                                                  " from " + User.Identity.Name + " for the amount " + dataVerified.Amount + " but the cart expired. \nProceed with REFUND!");
                    }
                    else
                    {
                        BasePage.Log(null, "EasyPay already processed payment -  TxnId: " + dataVerified.TransactionId + " Response: " + strRequest, "", "EasyPay Return");
                        lblResult.Text = Resources.Lang.PaymentProblemLiteral;
                    }
                }
                else
                {
                    BasePage.Log(null, "EasyPay, transaction did not succeed - code:" + dataVerified.ErrorCode + " - response:" + dataVerified.ErrorCodeS + " OrderId: " + dataVerified.OrderId + " - txnID: " + dataVerified.TransactionId + " - Amount:" + dataVerified.Amount.ToString("N2"), "", "easyPay.Proccess");
                    lblResult.Text = Resources.Lang.PaymentProblemLiteral + "</b> <br/><br/>" +
                                     Resources.Lang.SaveTransactionID + " <b>" + dataVerified.TransactionId + "</b>";;
                    lblPDT.Text    = unverified.Message;
                    lblPDT.Visible = true;
                }
            }
            catch (Exception ex)
            {
                BasePage.Log(ex, ex.Message, ex.StackTrace, "easyPay.Proccess");
                lblResult.Text = Resources.Lang.PaymentProblemLiteral;
            }
        }
Exemple #3
0
 public void Delete(EASYPAY_PAYMENT Entity)
 {
     Context.EASYPAY_PAYMENT.Attach(Entity);
     Context.DeleteObject(Entity);
 }
Exemple #4
0
 public void Update(EASYPAY_PAYMENT Entity)
 {
     throw new NotImplementedException();
 }
Exemple #5
0
 public void Insert(EASYPAY_PAYMENT Entity)
 {
     Context.EASYPAY_PAYMENT.AddObject(Entity);
 }
Exemple #6
0
 public List <EASYPAY_PAYMENT> Search(EASYPAY_PAYMENT Entity, int PageSize, int PageIndex, out int TotalRecords, string OrderExp, Util.SortDirection SortDirection)
 {
     throw new NotImplementedException();
 }