public static string Parse(string transId, string invoice, string POrderno, int responseCode, int responsereasonCode, string responsetext, int storeID, int portalID, string userName, int customerID, string sessionCode) { try { OrderDetailsCollection ot = new OrderDetailsCollection(); OrderDetailsInfo odinfo = new OrderDetailsInfo(); CartManageSQLProvider cms = new CartManageSQLProvider(); CommonInfo cf = new CommonInfo(); cf.StoreID = storeID; cf.PortalID = portalID; cf.AddedBy = userName; // UpdateOrderDetails AspxOrderDetails objad = new AspxOrderDetails(); SQLHandler sqlH = new SQLHandler(); odinfo.OrderID = int.Parse(HttpContext.Current.Session["OrderID"].ToString()); odinfo.TransactionID = odinfo.ResponseCode.ToString(transId); odinfo.InvoiceNumber = Convert.ToString(invoice); odinfo.PurchaseOrderNumber = Convert.ToString(POrderno); odinfo.ResponseCode = Convert.ToInt32(responseCode); odinfo.ResponseReasonCode = Convert.ToInt32(responsereasonCode); odinfo.ResponseReasonText = Convert.ToString(responsetext); ot.ObjOrderDetails = odinfo; ot.ObjCommonInfo = cf; odinfo.OrderStatusID = 8; objad.UpdateOrderDetails(ot); if (HttpContext.Current.Session["OrderCollection"] != null) { OrderDetailsCollection orderdata2 = new OrderDetailsCollection(); orderdata2 = (OrderDetailsCollection)HttpContext.Current.Session["OrderCollection"]; objad.UpdateItemQuantity(orderdata2); } HttpContext.Current.Session.Remove("OrderID"); // cms.ClearCartAfterPayment(customerID, sessionCode, storeID, portalID); return("This transaction has been approved"); } catch (Exception ex) { throw ex; } }
public static string Parse(string transId, string invoice, string POrderno, int responseCode, int responsereasonCode, string responsetext, AspxCommonInfo aspxCommonObj) { try { var ot = new OrderDetailsCollection(); var odinfo = new OrderDetailsInfo(); var cms = new CartManageSQLProvider(); var cf = new CommonInfo { StoreID = aspxCommonObj.StoreID, PortalID = aspxCommonObj.PortalID, AddedBy = aspxCommonObj.UserName }; // UpdateOrderDetails var objad = new AspxOrderDetails(); odinfo.OrderID = int.Parse(HttpContext.Current.Session["OrderID"].ToString()); odinfo.TransactionID = odinfo.ResponseCode.ToString(transId); odinfo.InvoiceNumber = Convert.ToString(invoice); odinfo.PurchaseOrderNumber = Convert.ToString(POrderno); odinfo.ResponseCode = Convert.ToInt32(responseCode); odinfo.ResponseReasonCode = Convert.ToInt32(responsereasonCode); odinfo.ResponseReasonText = Convert.ToString(responsetext); ot.ObjOrderDetails = odinfo; ot.ObjCommonInfo = cf; odinfo.OrderStatusID = 8; objad.UpdateOrderDetails(ot); if (HttpContext.Current.Session["OrderCollection"] != null) { var orderdata2 = (OrderDetailsCollection)HttpContext.Current.Session["OrderCollection"]; objad.UpdateItemQuantity(orderdata2); } HttpContext.Current.Session.Remove("OrderID"); cms.ClearCartAfterPayment(aspxCommonObj); return("This transaction has been approved"); } catch (Exception ex) { throw ex; } }
public void ParseAfterIPN(string postData, AspxCommonInfo aspxCommonObj, string templateName, string addressPath) { var ph = new PayPalHandler(); string transId = string.Empty; string orderStatus = string.Empty; try { //split response into string array using whitespace delimeter String[] stringArray = postData.Split('\n'); // NOTE: /* * loop is set to start at 1 rather than 0 because first * string in array will be single word SUCCESS or FAIL * Only used to verify post data */ var ot = new OrderDetailsCollection(); var odinfo = new OrderDetailsInfo(); var cms = new CartManageSQLProvider(); var cf = new CommonInfo { StoreID = aspxCommonObj.StoreID, PortalID = aspxCommonObj.PortalID, AddedBy = aspxCommonObj.UserName }; // UpdateOrderDetails var objad = new AspxOrderDetails(); var sqlH = new SQLHandler(); // use split to split array we already have using "=" as delimiter int i; for (i = 1; i < stringArray.Length - 1; i++) { String[] stringArray1 = stringArray[i].Split('='); String sKey = stringArray1[0]; String sValue = HttpUtility.UrlDecode(stringArray1[1]); // set string vars to hold variable names using a switch switch (sKey) { case "payment_status": odinfo.ResponseReasonText = Convert.ToString(sValue); orderStatus = Convert.ToString(sValue); break; case "mc_fee": // ph.PaymentFee = Convert.ToDouble(sValue); break; case "payer_email": // ph.PayerEmail = Convert.ToString(sValue); break; case "Tx Token": // ph.TxToken = Convert.ToString(sValue); break; case "txn_id": odinfo.TransactionID = Convert.ToString(sValue); transId = Convert.ToString(sValue); break; } } ot.ObjCommonInfo = cf; //odinfo.OrderStatusID = 8; //objad.UpdateOrderDetails(ot); if (odinfo.ResponseReasonText.ToLower().Trim() == "completed") { if (HttpContext.Current.Session["OrderCollection"] != null) { var orderdata2 = (OrderDetailsCollection)HttpContext.Current.Session["OrderCollection"]; objad.UpdateItemQuantity(orderdata2); } } cms.ClearCartAfterPayment(aspxCommonObj); //invoice transID if (HttpContext.Current.Session["OrderCollection"] != null) { var orderdata = (OrderDetailsCollection)HttpContext.Current.Session["OrderCollection"]; orderdata.ObjOrderDetails.OrderStatus = orderStatus; EmailTemplate.SendEmailForOrder(aspxCommonObj.PortalID, orderdata, addressPath, templateName, transId); } HttpContext.Current.Session.Remove("OrderCollection"); } catch (Exception ex) { throw ex; } }