Пример #1
0
    protected void SendConfrimMessage(string redirectPat)
    {
        try
        {
            if (Session["OrderID"] != null)
            {
                const int responseCode = 1;                const string responsereasontext = "Transaction occured successfully";
                const int responsereasonCode = 1;
                string    paymentmethod      = string.Empty;
                var       orderdata2         = new OrderDetailsCollection();
                if (HttpContext.Current.Session["OrderCollection"] != null)
                {
                    orderdata2 = (OrderDetailsCollection)HttpContext.Current.Session["OrderCollection"];
                }
                string invoice         = orderdata2.ObjOrderDetails.InvoiceNumber;
                var    random          = new Random();
                string purchaseorderNo = (random.Next(0, 1000)).ToString();
                string timeStamp       = ((int)(DateTime.UtcNow - new DateTime(2011, 1, 1)).TotalSeconds).ToString();
                string transID         = (random.Next(99999, 111111)).ToString();
                lblTransaction.Text   = transID;
                lblInvoice.Text       = invoice;
                lblPaymentMethod.Text = "Cash On Delivery";
                lblPaymentStatus.Text = "Successfull";
                lblDateTime.Text      = DateTime.Now.ToString("dddd, dd MMMM yyyy ");
                lblOrderNo.Text       = "#" + Session["OrderID"].ToString();
                AspxCommonInfo aspxCommonObj = new AspxCommonInfo();
                aspxCommonObj.StoreID     = GetStoreID;
                aspxCommonObj.PortalID    = GetPortalID;
                aspxCommonObj.UserName    = GetUsername;
                aspxCommonObj.CustomerID  = GetCustomerID;
                aspxCommonObj.SessionCode = HttpContext.Current.Session.SessionID;
                aspxCommonObj.CultureName = GetCurrentCultureName;
                int    orderID = orderdata2.ObjOrderDetails.OrderID;
                string result  = CashOnDelivery.Parse(transID, invoice, purchaseorderNo, responseCode, responsereasonCode, responsereasontext, aspxCommonObj);
                AspxGiftCardController.IssueGiftCard(orderdata2.LstOrderItemsInfo, orderID, true, aspxCommonObj);
                if (orderdata2.GiftCardDetail != null && CheckOutSessions.Get <List <GiftCardUsage> >("UsedGiftCard").Count > 0)
                {
                    AspxGiftCardController.UpdateGiftCardUsage(orderdata2.GiftCardDetail, orderdata2.ObjCommonInfo.StoreID,
                                                               orderdata2.ObjCommonInfo.PortalID, orderdata2.ObjOrderDetails.OrderID, orderdata2.ObjCommonInfo.AddedBy,
                                                               orderdata2.ObjCommonInfo.CultureName);
                }

                lblerror.Text = result;
                lblerror.Text = GetSageMessage("Payment", "PaymentProcessed");
                var tinfo = new TransactionLogInfo();
                var tlog  = new TransactionLog();

                tinfo.TransactionID      = transID;
                tinfo.AuthCode           = "";
                tinfo.TotalAmount        = orderdata2.ObjOrderDetails.GrandTotal * currencyRate;
                tinfo.ResponseCode       = responseCode.ToString();
                tinfo.ResponseReasonText = responsereasontext;
                tinfo.OrderID            = orderdata2.ObjOrderDetails.OrderID;
                tinfo.StoreID            = orderdata2.ObjCommonInfo.StoreID;
                tinfo.PortalID           = orderdata2.ObjCommonInfo.PortalID;
                tinfo.AddedBy            = orderdata2.ObjCommonInfo.AddedBy;
                tinfo.CustomerID         = orderdata2.ObjOrderDetails.CustomerID;
                tinfo.SessionCode        = orderdata2.ObjOrderDetails.SessionCode;
                tinfo.PaymentGatewayID   = orderdata2.ObjOrderDetails.PaymentGatewayTypeID;
                tinfo.PaymentStatus      = "Processed";
                tinfo.CreditCard         = "";
                tinfo.CurrencyCode       = SelectedCurrency;
                tlog.SaveTransactionLog(tinfo);
                CheckOutHelper cHelper = new CheckOutHelper();
                cHelper.ClearSessions();

                if (Session["OrderCollection"] != null)
                {
                    var orderdata = (OrderDetailsCollection)Session["OrderCollection"];
                    try
                    {
                        orderdata.ObjOrderDetails.OrderStatus = "Processed";
                        EmailTemplate.SendEmailForOrder(GetPortalID, orderdata, _addressPath, TemplateName, transID);
                    }
                    catch (Exception ex)
                    {
                        lblerror.Text = "";
                        lblerror.Text = GetSageMessage("Payment", "EmailSendOrderProblem");
                        ProcessException(ex);
                    }
                    Session.Remove("OrderCollection");
                }
            }
            else
            {
                Response.Redirect(_sageRedirectPath, false);
            }
        }
        catch (Exception ex)
        {
            ProcessException(ex);
        }
    }
Пример #2
0
    private void MobileSuccess(string redirectPath)
    {
        try
        {
            if (Session["mb_OrderDetail"] != null)
            {
                var    orderInfo         = (OrderInfo)Session["mb_OrderDetail"];
                var    giftCardUsage     = (List <GiftCardUsage>)Session["mb_GiftCardUsage"];
                var    coupons           = (List <CouponSession>)Session["mb_CouponSession"];
                var    couponCodeApplied = int.Parse(Session["mb_CouponCodeApplied"].ToString());
                var    billingAddress    = (UserAddressInfo)Session["mb_BillingAddress"];
                var    shippingAddress   = (UserAddressInfo)Session["mb_ShippingAddress"];
                var    itemsInfo         = (List <OrderItem>)Session["mb_ItemDetails"];
                int    storeId           = orderInfo.StoreId;
                int    portalId          = orderInfo.PortalId;
                string userName          = orderInfo.AddedBy;
                int    customerId        = orderInfo.CustomerId;

                const int responseCode = 1;                const string responsereasontext = "Transaction occured successfully";
                const int responsereasonCode = 1;

                string invoice         = orderInfo.InvoiceNumber;
                var    random          = new Random();
                string purchaseorderNo = (random.Next(0, 1000)).ToString();
                string timeStamp       = ((int)(DateTime.UtcNow - new DateTime(2011, 1, 1)).TotalSeconds).ToString();

                if (!string.IsNullOrEmpty(orderInfo.TransactionId) && orderInfo.TransactionId.Trim() != "0")
                {
                    lblTransaction.Text   = orderInfo.TransactionId;
                    lblInvoice.Text       = orderInfo.InvoiceNumber;
                    lblPaymentStatus.Text = "Successfull";
                    lblPaymentMethod.Text = orderInfo.PaymentMethodName;
                    lblDateTime.Text      = orderInfo.AddedOn.ToString("dddd, dd MMMM yyyy ");
                    lblOrderNo.Text       = "#" + orderInfo.OrderId;
                }
                else
                {
                    string transID = (random.Next(99999, 111111)).ToString();
                    lblTransaction.Text   = transID;
                    lblInvoice.Text       = invoice;
                    lblPaymentStatus.Text = "Successfull";
                    lblPaymentMethod.Text = orderInfo.PaymentMethodName;
                    lblDateTime.Text      = DateTime.Now.ToString("dddd, dd MMMM yyyy ");
                    lblOrderNo.Text       = "#" + orderInfo.OrderId;

                    string result = CashOnDelivery.ParseForMobile(transID, orderInfo, purchaseorderNo, responseCode,
                                                                  responsereasonCode,
                                                                  responsereasontext);

                    AspxCommonInfo aspxCommonObj = new AspxCommonInfo();
                    aspxCommonObj.StoreID     = storeId;
                    aspxCommonObj.PortalID    = portalId;
                    aspxCommonObj.UserName    = userName;
                    aspxCommonObj.CultureName = GetCurrentCultureName;
                    int orderID = orderInfo.OrderId;

                    CashOnDelivery.UpdateItemQuantityAndCoupon(orderInfo, itemsInfo, coupons, storeId, portalId,
                                                               userName);
                    AspxGiftCardController.IssueGiftCardForMobile(itemsInfo, orderID, false, aspxCommonObj);
                    if (giftCardUsage != null && giftCardUsage.Count > 0)
                    {
                        AspxGiftCardController.UpdateGiftCardUsage(giftCardUsage, storeId,
                                                                   portalId,
                                                                   orderInfo.OrderId,
                                                                   userName,
                                                                   orderInfo.CultureName);
                    }


                    lblerror.Text = result;
                    lblerror.Text = GetSageMessage("Payment", "PaymentProcessed");
                    var tinfo = new TransactionLogInfo();
                    var tlog  = new TransactionLog();


                    tinfo.TransactionID      = transID;
                    tinfo.AuthCode           = "";
                    tinfo.TotalAmount        = decimal.Parse(orderInfo.GrandTotal.ToString()) * currencyRate;
                    tinfo.ResponseCode       = responseCode.ToString();
                    tinfo.ResponseReasonText = responsereasontext;
                    tinfo.OrderID            = orderInfo.OrderId;
                    tinfo.StoreID            = orderInfo.StoreId;
                    tinfo.PortalID           = orderInfo.PortalId;
                    tinfo.AddedBy            = orderInfo.AddedBy;
                    tinfo.CustomerID         = orderInfo.CustomerId;
                    tinfo.SessionCode        = orderInfo.SessionCode;
                    tinfo.PaymentGatewayID   = orderInfo.PaymentGatewayTypeId;
                    tinfo.PaymentStatus      = "Processed";
                    tinfo.CreditCard         = "";
                    tinfo.CurrencyCode       = SelectedCurrency;
                    tlog.SaveTransactionLog(tinfo);

                    try
                    {
                        EmailTemplate.SendEmailForOrderMobile(orderInfo, billingAddress, shippingAddress, _addressPath,
                                                              TemplateName, transID);
                    }
                    catch
                    {
                        lblerror.Text = "";
                        lblerror.Text = GetSageMessage("Payment", "EmailSendOrderProblem");
                    }
                }
                Session.Clear();
            }
            else
            {
                Response.Redirect(redirectPath, false);
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }
Пример #3
0
    public void LoadMethods(string countryName, string cityName, bool displayCertificateMetod, bool hideCashMetod)
    {
        var returnPayment = new List <PaymentMethod>();

        if (displayCertificateMetod)
        {
            var certificateMethod = PaymentService.GetPaymentMethodByType(PaymentType.GiftCertificate);
            if (certificateMethod == null)
            {
                certificateMethod = new PaymentGiftCertificate()
                {
                    Enabled     = true,
                    Name        = Resources.Resource.Client_GiftCertificate,
                    Description = Resources.Resource.Payment_GiftCertificateDescription,
                    SortOrder   = 0
                };

                PaymentService.AddPaymentMethod(certificateMethod);
            }
            returnPayment.Add(certificateMethod);
        }
        else
        {
            foreach (var method in PaymentService.GetAllPaymentMethods(true))
            {
                if (method.Type == PaymentType.GiftCertificate)
                {
                    continue;
                }

                if (hideCashMetod && (method.Type == PaymentType.Cash || method.Type == PaymentType.CashOnDelivery))
                {
                    continue;
                }

                if (ShippingMethodId != 0 && ShippingMethodService.IsPaymentNotUsed(ShippingMethodId, method.PaymentMethodID))
                {
                    continue;
                }

                if (Ext == null)
                {
                    if (method.Type != PaymentType.CashOnDelivery && method.Type != PaymentType.PickPoint)
                    {
                        returnPayment.Add(method);
                    }
                }
                else
                {
                    switch (method.Type)
                    {
                    case PaymentType.CashOnDelivery:
                        if (Ext.Type == ExtendedType.CashOnDelivery && Ext.ShippingId == int.Parse(method.Parameters[CashOnDelivery.ShippingMethodTemplate]))
                        {
                            method.Description = CashOnDelivery.GetDecription(Ext);
                            returnPayment.Add(method);
                        }
                        break;

                    case PaymentType.PickPoint:
                        if (Ext.Type == ExtendedType.Pickpoint && Ext.ShippingId == int.Parse(method.Parameters[PickPoint.ShippingMethodTemplate]))
                        {
                            method.Description = Ext.PickpointAddress;
                            returnPayment.Add(method);
                        }
                        break;

                    default:
                        returnPayment.Add(method);
                        break;
                    }
                }
            }
        }

        var paymentMethods = UseGeoMapping(returnPayment, countryName, cityName);

        _selectedIndex                = paymentMethods.FindIndex(item => item.PaymentMethodID == SelectedID);
        lvPaymentMethod.DataSource    = paymentMethods;
        lvPaymentMethod.SelectedIndex = _selectedIndex != -1 ? _selectedIndex : _selectedIndex = 0;
        lvPaymentMethod.DataBind();
        if (paymentMethods.Count > 0)
        {
            hfPaymentMethodId.Value = paymentMethods[_selectedIndex].PaymentMethodID.ToString();
        }
        _loaded = true;
    }
    protected void SendConfrimMessage()
    {
        try
        {
            if (Session["OrderID"] != null)
            {
                string transID            = string.Empty; // transaction ID from Relay Response
                int    responseCode       = 1;            // response code, defaulted to Invalid
                string responsereasontext = string.Empty;
                responsereasontext = "Transaction occured Successfully";
                int    responsereasonCode         = 1;
                string purchaseorderNo            = string.Empty;
                string invoice                    = string.Empty;
                string paymentmethod              = string.Empty;
                OrderDetailsCollection orderdata2 = new OrderDetailsCollection();
                if (HttpContext.Current.Session["OrderCollection"] != null)
                {
                    orderdata2 = (OrderDetailsCollection)HttpContext.Current.Session["OrderCollection"];
                }
                invoice = orderdata2.ObjOrderDetails.InvoiceNumber.ToString();
                Random random = new Random();
                purchaseorderNo = (random.Next(0, 1000)).ToString();
                string timeStamp = ((int)(DateTime.UtcNow - new DateTime(2011, 1, 1)).TotalSeconds).ToString();
                transID               = (random.Next(99999, 111111)).ToString();
                lblTransaction.Text   = transID;
                lblInvoice.Text       = invoice;
                lblPaymentMethod.Text = "Cash On Delivery";
                lblDateTime.Text      = DateTime.Now.ToString("dddd, dd MMMM yyyy ");
                int    storeID     = int.Parse(GetStoreID.ToString());
                int    portalID    = int.Parse(GetPortalID.ToString());
                string userName    = GetUsername.ToString();
                int    customerID  = int.Parse(GetCustomerID.ToString());
                string sessionCode = HttpContext.Current.Session.SessionID.ToString();
                string result      = CashOnDelivery.Parse(transID, invoice, purchaseorderNo, responseCode, responsereasonCode, responsereasontext, storeID, portalID, userName, customerID, sessionCode);
                lblerror.Text = result.ToString();
                lblerror.Text = GetSageMessage("Payment", "PaymentProcessed");
                TransactionLogInfo tinfo = new TransactionLogInfo();
                TransactionLog     Tlog  = new TransactionLog();

                tinfo.TransactionID      = transID;
                tinfo.AuthCode           = "";
                tinfo.TotalAmount        = decimal.Parse(orderdata2.ObjOrderDetails.GrandTotal.ToString());
                tinfo.ResponseCode       = responseCode.ToString();
                tinfo.ResponseReasonText = responsereasontext;
                tinfo.OrderID            = orderdata2.ObjOrderDetails.OrderID;
                tinfo.StoreID            = orderdata2.ObjCommonInfo.StoreID;
                tinfo.PortalID           = orderdata2.ObjCommonInfo.PortalID;
                tinfo.AddedBy            = orderdata2.ObjCommonInfo.AddedBy;
                tinfo.CustomerID         = orderdata2.ObjOrderDetails.CustomerID;
                tinfo.SessionCode        = orderdata2.ObjOrderDetails.SessionCode;
                tinfo.PaymentGatewayID   = orderdata2.ObjOrderDetails.PaymentGatewayTypeID;
                tinfo.PaymentStatus      = "Processed";
                tinfo.CreditCard         = "";
                Tlog.SaveTransactionLog(tinfo);

                AspxCommerceWebService clSes = new AspxCommerceWebService();
                if (Session["IsFreeShipping"] != null)
                {
                    HttpContext.Current.Session.Remove("IsFreeShipping");
                }
                if (Session["DiscountAmount"] != null)
                {
                    HttpContext.Current.Session.Remove("DiscountAmount");
                }
                if (Session["CouponCode"] != null)
                {
                    HttpContext.Current.Session.Remove("CouponCode");
                }
                if (Session["CouponApplied"] != null)
                {
                    HttpContext.Current.Session.Remove("CouponApplied");
                }
                if (Session["DiscountAll"] != null)
                {
                    HttpContext.Current.Session.Remove("DiscountAll");
                }
                if (Session["TaxAll"] != null)
                {
                    HttpContext.Current.Session.Remove("TaxAll");
                }
                if (Session["ShippingCostAll"] != null)
                {
                    HttpContext.Current.Session.Remove("ShippingCostAll");
                }
                if (Session["GrandTotalAll"] != null)
                {
                    HttpContext.Current.Session.Remove("GrandTotalAll");
                }
                if (Session["Gateway"] != null)
                {
                    HttpContext.Current.Session.Remove("Gateway");
                }

                //invoice  transID

                if (Session["OrderCollection"] != null)
                {
                    OrderDetailsCollection orderdata = new OrderDetailsCollection();
                    orderdata = (OrderDetailsCollection)Session["OrderCollection"];
                    try
                    {
                        EmailTemplate.SendEmailForOrder(GetPortalID, orderdata, addressPath, TemplateName, transID);
                    }
                    catch
                    {
                        lblerror.Text = "";
                        lblerror.Text = GetSageMessage("Payment", "EmailSendOrderProblem");
                    }
                    clSes.ClearSessionVariable("OrderCollection");
                }
            }
            else
            {
                Response.Redirect(sageRedirectPath, false);
            }
        }
        catch (Exception ex)
        {
            ProcessException(ex);
        }
    }
    protected void SendConfrimMessage(string redirectPat)
    {
        try
        {
            if (Session["OrderID"] != null)
            {
                const int    responseCode       = 1; // response code, defaulted to Invalid
                const string responsereasontext = "Transaction occured successfully";
                const int    responsereasonCode = 1;
                string       paymentmethod      = string.Empty;
                var          orderdata2         = new OrderDetailsCollection();
                if (HttpContext.Current.Session["OrderCollection"] != null)
                {
                    orderdata2 = (OrderDetailsCollection)HttpContext.Current.Session["OrderCollection"];
                }
                string invoice         = orderdata2.ObjOrderDetails.InvoiceNumber;
                var    random          = new Random();
                string purchaseorderNo = (random.Next(0, 1000)).ToString();
                string timeStamp       = ((int)(DateTime.UtcNow - new DateTime(2011, 1, 1)).TotalSeconds).ToString();
                string transID         = (random.Next(99999, 111111)).ToString();
                lblTransaction.Text   = transID;
                lblInvoice.Text       = invoice;
                lblPaymentMethod.Text = "Cash On Delivery";
                lblPaymentStatus.Text = "Successfull";
                lblDateTime.Text      = DateTime.Now.ToString("dddd, dd MMMM yyyy ");
                lblOrderNo.Text       = "#" + Session["OrderID"].ToString();
                AspxCommonInfo aspxCommonObj = new AspxCommonInfo();
                aspxCommonObj.StoreID     = GetStoreID;
                aspxCommonObj.PortalID    = GetPortalID;
                aspxCommonObj.UserName    = GetUsername;
                aspxCommonObj.CustomerID  = GetCustomerID;
                aspxCommonObj.SessionCode = HttpContext.Current.Session.SessionID;
                aspxCommonObj.CultureName = GetCurrentCultureName;
                string result = CashOnDelivery.Parse(transID, invoice, purchaseorderNo, responseCode, responsereasonCode, responsereasontext, aspxCommonObj);
                AspxGiftCardController.IssueGiftCard(orderdata2.LstOrderItemsInfo, false, aspxCommonObj);
                if (orderdata2.GiftCardDetail != null && HttpContext.Current.Session["UsedGiftCard"] != null)
                {
                    AspxGiftCardController.UpdateGiftCardUsage(orderdata2.GiftCardDetail, orderdata2.ObjCommonInfo.StoreID,
                                                               orderdata2.ObjCommonInfo.PortalID, orderdata2.ObjOrderDetails.OrderID, orderdata2.ObjCommonInfo.AddedBy,
                                                               orderdata2.ObjCommonInfo.CultureName);
                    HttpContext.Current.Session.Remove("UsedGiftCard");
                }

                lblerror.Text = result;
                lblerror.Text = GetSageMessage("Payment", "PaymentProcessed");
                var tinfo = new TransactionLogInfo();
                var tlog  = new TransactionLog();

                tinfo.TransactionID = transID;
                tinfo.AuthCode      = "";
                // tinfo.TotalAmount = decimal.Parse(orderdata2.ObjOrderDetails.GrandTotal.ToString());
                tinfo.TotalAmount        = decimal.Parse(Session["GrandTotalAll"].ToString()) * currencyRate;
                tinfo.ResponseCode       = responseCode.ToString();
                tinfo.ResponseReasonText = responsereasontext;
                tinfo.OrderID            = orderdata2.ObjOrderDetails.OrderID;
                tinfo.StoreID            = orderdata2.ObjCommonInfo.StoreID;
                tinfo.PortalID           = orderdata2.ObjCommonInfo.PortalID;
                tinfo.AddedBy            = orderdata2.ObjCommonInfo.AddedBy;
                tinfo.CustomerID         = orderdata2.ObjOrderDetails.CustomerID;
                tinfo.SessionCode        = orderdata2.ObjOrderDetails.SessionCode;
                tinfo.PaymentGatewayID   = orderdata2.ObjOrderDetails.PaymentGatewayTypeID;
                tinfo.PaymentStatus      = "Processed";
                tinfo.CreditCard         = "";
                tinfo.CurrencyCode       = SelectedCurrency;
                tlog.SaveTransactionLog(tinfo);

                var clSes = new AspxCommerceWebService();
                if (Session["IsFreeShipping"] != null)
                {
                    HttpContext.Current.Session.Remove("IsFreeShipping");
                }
                if (Session["DiscountAmount"] != null)
                {
                    HttpContext.Current.Session.Remove("DiscountAmount");
                }
                if (Session["CouponDiscountAmount"] != null)
                {
                    HttpContext.Current.Session.Remove("CouponDiscountAmount");
                }
                if (Session["IsCouponInPercent"] != null)
                {
                    HttpContext.Current.Session.Remove("IsCouponInPercent");
                }
                if (Session["CouponPercentValue"] != null)
                {
                    HttpContext.Current.Session.Remove("CouponPercentValue");
                }
                if (Session["CouponSessionPercentAmount"] != null)
                {
                    HttpContext.Current.Session.Remove("CouponSessionPercentAmount");
                }
                if (Session["CouponSessionAmount"] != null)
                {
                    HttpContext.Current.Session.Remove("CouponSessionAmount");
                }
                if (Session["CouponCode"] != null)
                {
                    HttpContext.Current.Session.Remove("CouponCode");
                }
                if (Session["CouponApplied"] != null)
                {
                    HttpContext.Current.Session.Remove("CouponApplied");
                }
                if (Session["DiscountAll"] != null)
                {
                    HttpContext.Current.Session.Remove("DiscountAll");
                }
                if (Session["TaxAll"] != null)
                {
                    HttpContext.Current.Session.Remove("TaxAll");
                }
                if (Session["ShippingCostAll"] != null)
                {
                    HttpContext.Current.Session.Remove("ShippingCostAll");
                }
                if (Session["GrandTotalAll"] != null)
                {
                    HttpContext.Current.Session.Remove("GrandTotalAll");
                }
                if (Session["Gateway"] != null)
                {
                    HttpContext.Current.Session.Remove("Gateway");
                }

                //invoice  transID

                if (Session["OrderCollection"] != null)
                {
                    var orderdata = (OrderDetailsCollection)Session["OrderCollection"];
                    try
                    {
                        orderdata.ObjOrderDetails.OrderStatus = "Processed";
                        EmailTemplate.SendEmailForOrder(GetPortalID, orderdata, _addressPath, TemplateName, transID);
                    }
                    catch (Exception ex)
                    {
                        lblerror.Text = "";
                        lblerror.Text = GetSageMessage("Payment", "EmailSendOrderProblem");
                        ProcessException(ex);
                    }
                    clSes.ClearSessionVariable("OrderCollection");
                }
            }
            else
            {
                Response.Redirect(_sageRedirectPath, false);
            }
        }
        catch (Exception ex)
        {
            throw ex;
        }
    }