private void RefreshControls_OnProductSizeSelected()
        {
            Sku sku = new Sku();

            sku = CSResolve.Resolve <ISkuService>().GetSkuByID(skuID);
            if (!sku.AttributeValuesLoaded)
            {
                sku.LoadAttributeValues();
            }
            //imgSku.ImageUrl = sku.GetAttributeValue("ProductDetailImage", sku.ImagePath);
            imgSku.ImageUrl = sku.AttributeValues["bigproductimage1"].Value;
            if (sku.ContainsAttribute("title") && sku.AttributeValues["title"].Value != "")
            {
                lblSkuTitle.Text = sku.AttributeValues["title"].Value;
            }
            else
            {
                lblSkuTitle.Text = sku.Title;
            }

            lblSkuDescription.Text = sku.LongDescription;
            lblSkuPrice.Text       = GetHtmlDecoratedDollarCents(sku.InitialPrice.ToString("C"));
            lblRetailPrice.Text    = sku
                                     .GetAttributeValue <string>("RetailPrice", sku.InitialPrice.ToString("n2")).Trim();
            //ltDirection.Text = sku
            //    .GetAttributeValue<string>("Directions", string.Empty);
            ltIngredients.Text = sku
                                 .GetAttributeValue <string>("Ingredients", string.Empty);
            lblSize.Text             = sku.GetAttributeValue <string>("ProductSize", String.Empty);
            ltDetailDescription.Text = sku.GetAttributeValue <string>("DetailDescription", String.Empty);
            imagePath = sku.ImagePath;
            GroupId   = sku.AttributeValues["groupid_review"].Value;
            if (!(sku.ContainsAttribute("sizeofProduct") && sku.AttributeValues["sizeofproduct"].Value != null))
            {
                this.chooseSizePanel.Visible         = false;
                this.productRetailPricePanel.Visible = true;
                if (!sku.AttributeValuesLoaded)
                {
                    sku.LoadAttributeValues();
                }

                if (sku.ContainsAttribute("productprice") && sku.AttributeValues["productprice"].Value != null && sku.ContainsAttribute("retailprice") && sku.AttributeValues["retailprice"].Value != null)
                {
                    this.productValue.Text = sku.AttributeValues["productprice"].Value.ToString();
                    this.retailPrice.Text  = sku.AttributeValues["retailprice"].Value.ToString();
                }
            }
        }
        protected override void Page_Load(object sender, EventArgs e)
        {
            base.Page_Load(sender, e);
            OrderHelper.RedirectDesktop();
            string qs = "";

            try
            {
                qs = Request.QueryString["skuID"];
            }
            catch
            { }
            string pageName = qs;; //Page.RouteData.Values["pageName"] as string;

            if (!String.IsNullOrEmpty(pageName))
            {
                Sku sku = CSResolve.Resolve <ISkuService>().GetSkuByID(Convert.ToInt32(pageName));
                sku.LoadAttributeValues();

                List <Sku> skus = CSResolve.Resolve <ISkuService>().GetAllSkus();
                for (int i = 0; i < skus.Count; i++)
                {
                    if (!skus[i].AttributeValuesLoaded)
                    {
                        skus[i].LoadAttributeValues();
                    }

                    //if (pageName.Equals(skus[i].GetAttributeValue<string>("skuRoutingName", string.Empty).Trim().ToLower()))
                    //{
                    //    skuID = skus[i].SkuId;
                    //    break;
                    //}
                    if (sku.ContainsAttribute("sizeofproduct") && sku.AttributeValues["sizeofproduct"].Value == "small")
                    {
                        if (skus[i].ContainsAttribute("sizeofproduct") && skus[i].AttributeValues["sizeofproduct"].Value == "small" && (skus[i].AttributeValues["groupname"].Value == sku.AttributeValues["groupname"].Value))
                        {
                            foreach (var item in skus)
                            {
                                item.LoadAttributeValues();
                                if (item.ContainsAttribute("groupname") && item.AttributeValues["groupname"].Value == skus[i].AttributeValues["groupname"].Value && (item.ContainsAttribute("sizeofproduct") && item.AttributeValues["sizeofproduct"].Value == "big"))
                                {
                                    pageName = item.SkuId.ToString();
                                }
                            }
                        }
                    }
                    if (pageName.Equals(skus[i].SkuId.ToString()))
                    {
                        skuID = skus[i].SkuId;
                        break;
                    }
                }
            }

            if (!Page.IsPostBack)
            {
                Session["skuID_AddtoCart"] = null;
                BindControls();
            }
        }
        protected void bigSizeSelectButton_Click(object sender, EventArgs e)
        {
            buttonClicked.Value = "big";
            Sku sku = CSResolve.Resolve <ISkuService>().GetSkuByID(Convert.ToInt32(skuID));

            sku.LoadAttributeValues();

            List <Sku> skus = CSResolve.Resolve <ISkuService>().GetAllSkus();

            foreach (var item in skus)
            {
                item.LoadAttributeValues();
                if (item.ContainsAttribute("groupname") && item.AttributeValues["groupname"].Value != null && (item.AttributeValues["groupname"].Value == sku.AttributeValues["groupname"].Value))
                {
                    if (item.ContainsAttribute("sizeofproduct") && item.AttributeValues["sizeofproduct"].Value == "big")
                    {
                        skuID = item.SkuId;
                        Session["skuID_AddtoCart"] = skuID.ToString();
                        RefreshControls_OnProductSizeSelected();
                        bigSizeSelectButton.CssClass   = "btn1 sizebtn btn_on";
                        smallSizeSelectButton.CssClass = "btn2 sizebtn";
                    }
                }
            }
        }
Exemplo n.º 4
0
        protected void rptShoppingCart_OnItemCommand(object sender, RepeaterCommandEventArgs e)
        {
            switch (e.CommandName)
            {
            case "delete":
            {
                SkuManager skuManager  = new SkuManager();
                int        skuToRemove = Convert.ToInt32(e.CommandArgument);
                Sku        s           = skuManager.GetSkuByID(skuToRemove);
                s.LoadAttributeValues();
                CartContext.CartInfo.UpdateSku(skuToRemove);
                BindControls();
                if (UpdateCart != null)
                {
                    UpdateCart(sender, e);
                }

                //if (s.GetAttributeValue<string>("title",string.Empty).ToLower().Equals("tpillow"))
                //{
                //    ibTPillow.Enabled = true;
                //    ibTPillow.ImageUrl = "//d39hwjxo88pg52.cloudfront.net/wonderflex/images/btn_addtocart.png";
                //}
                //if (s.GetAttributeValue<string>("title", string.Empty).ToLower().Equals("additional"))
                //{
                //    ibAdditioanl.Enabled = true;
                //    ibAdditioanl.ImageUrl = "//d39hwjxo88pg52.cloudfront.net/wonderflex/images/btn_addtocart.png";
                //}
            }
            break;

            default:
                break;
            }
        }
        private void LoadUpgradeSku()
        {
            int upgradeSkuId = 0;
            int skuId        = 0;

            foreach (Sku sku in CartContext.CartInfo.CartItems)
            {
                skuId = sku.SkuId;
                //if (sku.SkuId == 112)
                //    upgradeSkuId = 114;
                if (sku.SkuId == 111)
                {
                    upgradeSkuId = 114;
                }
                break;
            }
            if (upgradeSkuId > 0)
            {
                SkuManager skuManager = new SkuManager();
                Sku        sku        = skuManager.GetSkuByID(skuId);
                sku.LoadAttributeValues();
                if (sku.ContainsAttribute("upgradetext") && sku.AttributeValues["upgradetext"] != null)
                {
                    lblUpgrade.Text = sku.AttributeValues["upgradetext"].Value;
                }

                imgUpgrade.CommandArgument = upgradeSkuId.ToString();
                pnlUpgrade.Visible         = true;
            }
        }
        protected string GetAttributeValue(int skuID, string attributeName)
        {
            Sku sku = new Sku();

            sku = CSResolve.Resolve <ISkuService>().GetSkuByID(skuID);
            sku.LoadAttributeValues();
            return(sku.GetAttributeValue <string>(attributeName, string.Empty));
        }
Exemplo n.º 7
0
        public static bool IsRushSku(Sku sku)
        {
            if (!sku.AttributeValuesLoaded)
            {
                sku.LoadAttributeValues();
            }

            return(sku.GetAttributeValue("RushSku", false));
        }
 private void LoadOfferTerms(Sku sku)
 {
     sku.LoadAttributeValues();
     if (sku.ContainsAttribute("offerterms") &&
         sku.AttributeValues["offerterms"] != null)
     {
         ltOfferTerms.Text = sku.AttributeValues["offerterms"].Value;
     }
 }
Exemplo n.º 9
0
        public void Calculate(Cart cart, int prefID)
        {
            List <SkuShipping> skuShippingItems = ShippingDAL.GetSkuShipping(_isRushShipping, prefID);
            decimal            shippingCost     = 0;

            int totalShippingSettings = skuShippingItems.Count;

            for (int i = 0; i < totalShippingSettings; i++)
            {
                SkuShipping currentSetting = skuShippingItems[i];
                if (cart.CartItems.Exists(c => c.SkuId == currentSetting.SkuId))
                {
                    bool withQuantity = false;
                    Sku  s            = new Sku();
                    s.SkuId = currentSetting.SkuId;
                    s.LoadAttributeValues();
                    if (s.AttributeValues.ContainsKey("shippingwithquantity"))
                    {
                        if (s.AttributeValues["shippingwithquantity"].BooleanValue)
                        {
                            withQuantity = true;
                        }
                    }
                    if (withQuantity)
                    {
                        foreach (Sku st in cart.CartItems)
                        {
                            if (st.SkuId == currentSetting.SkuId)
                            {
                                shippingCost += currentSetting.Cost * st.Quantity;
                            }
                        }
                    }
                    else
                    {
                        shippingCost += currentSetting.Cost;
                    }
                }
            }

            // add additional shipping charge by specified key
            ShippingCharge shippingCharge = ShippingDAL.GetShippingCharge(prefID, cart.ShippingChargeKey);

            if (shippingCharge != null)
            {
                cart.AdditionalShippingCharge = shippingCharge.Cost;
            }

            if (_isRushShipping)
            {
                cart.RushShippingCost = shippingCost;
            }
            else
            {
                cart.ShippingCost = shippingCost;
            }
        }
Exemplo n.º 10
0
        public string GetShipMethodBySku(Sku sku1)
        {
            string ShipMethod = "24";

            sku1.LoadAttributeValues();
            if (sku1.AttributeValues.ContainsKey("shipmethodcode"))
            {
                ShipMethod = sku1.AttributeValues["shipmethodcode"].Value;
            }
            return(ShipMethod);
        }
        private void BindControls()
        {
            Sku sku = new Sku();

            if (SkuId > 0)
            {
                sku = CSResolve.Resolve <ISkuService>().GetSkuByID(SkuId);
            }
            else if (skuID > 0)
            {
                sku = CSResolve.Resolve <ISkuService>().GetSkuByID(skuID);
            }
            else
            {
                Response.Redirect("Products.aspx", true);
            }


            if (sku != null)
            {
                if (!sku.AttributeValuesLoaded)
                {
                    sku.LoadAttributeValues();
                }
                bool HideSku = sku.GetAttributeValue("ShowSku", false);
                if (!HideSku)
                {
                    Response.Redirect("Products.aspx", true);
                }
                //imgSku.ImageUrl = sku.GetAttributeValue("ProductDetailImage", sku.ImagePath);
                imgSku.ImageUrl = sku.AttributeValues["bigproductimage1"].Value;
                if (sku.ContainsAttribute("title") && sku.AttributeValues["title"].Value != "")
                {
                    lblSkuTitle.Text = sku.AttributeValues["title"].Value;
                }
                else
                {
                    lblSkuTitle.Text = sku.Title;
                }

                lblSkuDescription.Text = sku.LongDescription;
                lblSkuPrice.Text       = GetHtmlDecoratedDollarCents(sku.InitialPrice.ToString("C"));
                lblRetailPrice.Text    = sku
                                         .GetAttributeValue <string>("RetailPrice", sku.InitialPrice.ToString("n2")).Trim();
                //ltDirection.Text = sku
                //    .GetAttributeValue<string>("Directions", string.Empty);
                ltIngredients.Text = sku
                                     .GetAttributeValue <string>("Ingredients", string.Empty);
                lblSize.Text             = sku.GetAttributeValue <string>("ProductSize", String.Empty);
                ltDetailDescription.Text = sku.GetAttributeValue <string>("DetailDescription", String.Empty);
                imagePath = sku.ImagePath;
                GroupId   = sku.AttributeValues["groupid_review"].Value;
                if (sku.ContainsAttribute("smallproductimage1"))
                {
                    smallImage1.ImageUrl = sku.AttributeValues["smallproductimage1"].Value;
                    smallImage2.ImageUrl = sku.AttributeValues["smallproductimage2"].Value;
                    smallImage3.ImageUrl = sku.AttributeValues["smallproductimage3"].Value;
                    smallImage4.ImageUrl = sku.AttributeValues["smallproductimage4"].Value;
                }

                if (sku.ContainsAttribute("bigproductimage2"))
                {
                    bigImage1.ImageUrl = sku.AttributeValues["bigproductimage1"].Value;
                    bigImage2.ImageUrl = sku.AttributeValues["bigproductimage2"].Value;
                    bigImage3.ImageUrl = sku.AttributeValues["bigproductimage3"].Value;
                    bigImage4.ImageUrl = sku.AttributeValues["bigproductimage4"].Value;
                }

                if (sku.ContainsAttribute("sizeofProduct") && sku.AttributeValues["sizeofproduct"].Value != null)
                {
                    this.chooseSizePanel.Visible = true;
                    if (sku.AttributeValues["sizeofproduct"].Value == "big")
                    {
                        if (sku.SkuId == 144)
                        {
                            this.bigSizeSelectButton.Visible   = true;
                            this.smallSizeSelectButton.Visible = true;
                            this.bigSizeSelectButton.Text      = "NET WT. 8.0 OZ.";
                            this.smallSizeSelectButton.Text    = "NET WT. 3.5 OZ.";
                        }
                        else if (sku.SkuId == 148)
                        {
                            this.bigSizeSelectButton.Visible   = true;
                            this.smallSizeSelectButton.Visible = true;
                            this.bigSizeSelectButton.Text      = "NET WT. 10.1 OZ.";
                            this.smallSizeSelectButton.Text    = "NET WT. 4.0 OZ.";
                        }
                        else if (sku.SkuId == 140)
                        {
                            this.bigSizeSelectButton.Visible   = true;
                            this.smallSizeSelectButton.Visible = false;
                            this.bigSizeSelectButton.Text      = "ONE SIZE";
                            this.bigSizeSelectButton.Enabled   = false;
                        }
                        else if (sku.SkuId == 142)
                        {
                            this.bigSizeSelectButton.Visible   = true;
                            this.smallSizeSelectButton.Visible = true;
                            this.bigSizeSelectButton.Text      = "6.0 FL. OZ.";
                            this.smallSizeSelectButton.Text    = "2.0 FL OZ.";
                        }
                        else if (sku.SkuId == 146)
                        {
                            this.bigSizeSelectButton.Visible   = true;
                            this.smallSizeSelectButton.Visible = true;
                            this.bigSizeSelectButton.Text      = "NET WT. 10.5 OZ.";
                            this.smallSizeSelectButton.Text    = "NET WT. 4.0 OZ.";
                        }
                        else if (sku.SkuId == 139)
                        {
                            this.bigSizeSelectButton.Visible   = true;
                            this.smallSizeSelectButton.Visible = true;
                            this.bigSizeSelectButton.Text      = "2.3\"";
                            this.smallSizeSelectButton.Text    = "2\"";
                        }
                    }
                }
                else
                {
                    this.chooseSizePanel.Visible         = false;
                    this.productRetailPricePanel.Visible = true;

                    if (!sku.AttributeValuesLoaded)
                    {
                        sku.LoadAttributeValues();
                    }
                    if (sku.ContainsAttribute("productprice") && sku.AttributeValues["productprice"].Value != null && sku.ContainsAttribute("retailprice") && sku.AttributeValues["retailprice"].Value != null)
                    {
                        this.productValue.Text = sku.AttributeValues["productprice"].Value.ToString();
                        this.retailPrice.Text  = sku.AttributeValues["retailprice"].Value.ToString();
                    }
                }
                if (sku.SkuId == 161)
                {
                    productRetailPricePanel.Visible = false;
                    pnlKitSelection.Visible         = true;
                    if (rbAuto.Checked)
                    {
                        Session["skuID_AddtoCart"]  = "120";
                        lblRetailPrice.Text         = "29.95";
                        ddlQuantity.Enabled         = false;
                        subscriptionDetails.Visible = true;
                    }
                    else
                    {
                        Session["skuID_AddtoCart"]  = "161";
                        lblRetailPrice.Text         = "39.95";
                        ddlQuantity.Enabled         = true;
                        subscriptionDetails.Visible = false;
                    }
                }
            }
        }
Exemplo n.º 12
0
        protected void rptProducts3_ItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                Sku   cartItem           = e.Item.DataItem as Sku;
                Image imgProduct         = e.Item.FindControl("imgProduct") as Image;
                Label lblSkuTitle        = e.Item.FindControl("lblSkuTitle") as Label;
                Label lblSkuDescription  = e.Item.FindControl("lblSkuDescription") as Label;
                Label lblSkuInitialPrice = e.Item.FindControl("lblSkuInitialPrice") as Label;
                Label lblRetailPrice     = e.Item.FindControl("lblRetailPrice") as Label;


                ImageButton btnViewProduct   = e.Item.FindControl("btnViewProduct") as ImageButton;
                Literal     litRegularPrice  = e.Item.FindControl("litRegularPrice") as Literal;
                LinkButton  product_anchor3a = e.Item.FindControl("product_anchor3a") as LinkButton;
                LinkButton  product_anchor3b = e.Item.FindControl("product_anchor3b") as LinkButton;
                Label       lblSize          = e.Item.FindControl("lblSize") as Label;

                imgProduct.ImageUrl    = cartItem.GetAttributeValue("ProductImage", cartItem.ImagePath);
                lblSkuTitle.Text       = cartItem.GetAttributeValue <string>("title", cartItem.Title);          //cartItem.LongDescription;//cartItem.Title;
                lblSkuDescription.Text = cartItem.GetAttributeValue <string>("SubDescription", cartItem.Title); //cartItem.LongDescription;
                var initial_Price = "";
                if (!cartItem.AttributeValuesLoaded)
                {
                    cartItem.LoadAttributeValues();
                }
                foreach (var item in Skus)
                {
                    item.LoadAttributeValues();
                    if (item.ContainsAttribute("groupname") && item.AttributeValues["groupname"].Value != null && cartItem.ContainsAttribute("groupname") && (item.AttributeValues["groupname"].Value == cartItem.AttributeValues["groupname"].Value))
                    {
                        if (item.ContainsAttribute("sizeofproduct") && item.AttributeValues["sizeofproduct"].Value == "small")
                        {
                            initial_Price = item.InitialPrice.ToString("C0");
                        }
                    }
                }

                if (initial_Price != "")
                {
                    if (initial_Price != cartItem.InitialPrice.ToString("C0"))
                    {
                        lblSkuInitialPrice.Text = initial_Price + " - " + cartItem.InitialPrice.ToString("C0");
                    }
                    else
                    {
                        lblSkuInitialPrice.Text = cartItem.InitialPrice.ToString("C0");
                    }
                }
                else
                {
                    lblSkuInitialPrice.Text = cartItem.InitialPrice.ToString("C0");
                }
                if (cartItem.SkuId == 161)
                {
                    lblSkuInitialPrice.Text      = cartItem.GetAttributeValue <string>("Product_Price", cartItem.InitialPrice.ToString());
                    btnViewProduct.AlternateText = "SAVE $ LEARN MORE";
                    btnViewProduct.ImageUrl      = "//d39hwjxo88pg52.cloudfront.net/volaire/images/products/btn_save_learn_more.png";
                }
                lblSize.Text = cartItem.GetAttributeValue <string>("ProductSize", String.Empty);

                decimal regPrice;
                if (decimal.TryParse(cartItem.GetAttributeValue <string>("RetailPrice", cartItem.InitialPrice.ToString("n2")).Trim(), out regPrice))
                {
                    lblRetailPrice.Text = regPrice.ToString("C");
                }

                product_anchor3a.PostBackUrl   = "/" + OrderHelper.GetVersionName() + "/" + cartItem.GetAttributeValue <string>("skuRoutingName", string.Empty).Trim().ToLower();
                product_anchor3b.PostBackUrl   = "/" + OrderHelper.GetVersionName() + "/" + cartItem.GetAttributeValue <string>("skuRoutingName", string.Empty).Trim().ToLower();
                btnViewProduct.CommandArgument = cartItem.SkuId.ToString();
                lblSize.Text = cartItem.GetAttributeValue <string>("ProductSize", String.Empty);
            }
        }
Exemplo n.º 13
0
        public string GetRequest(Order orderItem)
        {
            string Prefix        = config.Attributes["MVISPrefix"].Value.ToUpper();
            string DNIS          = config.Attributes["DNIS"].Value.ToUpper();
            string NoSoliciting  = config.Attributes["NO_SOLICITING"].Value.ToUpper();
            string PaymentType   = config.Attributes["PaymentType"].Value.ToUpper();    // AUTH OR SALE or BLANK
            string PaymentMethod = config.Attributes["PAYMENT_METHOD"].Value.ToUpper(); // CC or CK (Check)
            string EmpNumber     = config.Attributes["EmpNumber"].Value.ToUpper();

            string CustomerNumber       = Prefix + "-" + orderItem.CustomerId; // BillingAddress.AddressId.ToString();
            List <StateProvince> states = StateManager.GetAllStates(0);
            String strXml    = String.Empty;
            string lineItems = String.Empty;

            orderItem.LoadAttributeValues();
            using (StringWriter str = new StringWriter())
            {
                using (XmlTextWriter xml = new XmlTextWriter(str))
                {
                    string sid  = "default";
                    string afid = string.Empty;
                    string cid  = string.Empty;
                    string adid = string.Empty;
                    if (orderItem.CustomFiledInfo != null)
                    {
                        if (orderItem.CustomFiledInfo.Count > 0)
                        {
                            try
                            {
                                if (orderItem.CustomFiledInfo.Find(x => x.FieldName.ToLower() == "afid") != null)
                                {
                                    afid = orderItem.CustomFiledInfo.Find(x => x.FieldName.ToLower() == "afid").FieldValue.ToString();
                                }
                                if (orderItem.CustomFiledInfo.Find(x => x.FieldName.ToLower() == "sid") != null)
                                {
                                    sid = orderItem.CustomFiledInfo.Find(x => x.FieldName.ToLower() == "sid").FieldValue.ToString();
                                }
                                if (orderItem.CustomFiledInfo.Find(x => x.FieldName.ToLower() == "adid") != null)
                                {
                                    adid = orderItem.CustomFiledInfo.Find(x => x.FieldName.ToLower() == "adid").FieldValue.ToString();
                                }
                                if (orderItem.CustomFiledInfo.Find(x => x.FieldName.ToLower() == "cid") != null)
                                {
                                    cid = orderItem.CustomFiledInfo.Find(x => x.FieldName.ToLower() == "cid").FieldValue.ToString();
                                }
                            }
                            catch { }
                        }
                    }

                    sid = orderItem.GetAttributeValue <string>("sid", string.Empty);

                    xml.WriteStartElement("OrderImport");
                    xml.WriteStartElement("Order");
                    xml.WriteElementString("CUSTOMER_NUMBER", CustomerNumber); // Store Billing Address ID as Customer Number
                    xml.WriteElementString("BILL_COMPANY", "");
                    xml.WriteElementString("BILL_FIRST_NAME", orderItem.CustomerInfo.BillingAddress.FirstName.Replace("&amp;", "").Replace(" &", "").Replace("'", ""));
                    xml.WriteElementString("BILL_LAST_NAME", orderItem.CustomerInfo.BillingAddress.LastName.Replace("&amp;", "").Replace("&", "").Replace("'", ""));
                    xml.WriteElementString("BILL_ADDRESS1", orderItem.CustomerInfo.BillingAddress.Address1.Replace("&amp;", "").Replace("&", "").Replace("'", ""));
                    xml.WriteElementString("BILL_ADDRESS2", orderItem.CustomerInfo.BillingAddress.Address2.Replace("&amp;", "").Replace("&", "").Replace("'", ""));
                    xml.WriteElementString("BILL_CITY", orderItem.CustomerInfo.BillingAddress.City.Replace("&amp;", "").Replace("&", "").Replace("'", ""));
                    xml.WriteElementString("CUSTOM_2", sid);
                    xml.WriteElementString("CUSTOM_1", DynamicSidDAL.GetDynamicSidData("ProjectCode", sid, orderItem.OrderId));
                    StateProvince itemBillingStateProvince = states.FirstOrDefault(x => x.StateProvinceId == Convert.ToInt32(orderItem.CustomerInfo.BillingAddress.StateProvinceId));
                    if (itemBillingStateProvince != null)
                    {
                        xml.WriteElementString("BILL_STATE", itemBillingStateProvince.Abbreviation);
                    }
                    else
                    {
                        xml.WriteElementString("BILL_STATE", string.Empty);
                    }

                    xml.WriteElementString("BILL_ZIPCODE", orderItem.CustomerInfo.BillingAddress.ZipPostalCode);
                    if (orderItem.CustomerInfo.BillingAddress.CountryId == 231)
                    {
                        xml.WriteElementString("COUNTRY", "USA");
                    }
                    else if (orderItem.CustomerInfo.BillingAddress.CountryId == 46)
                    {
                        xml.WriteElementString("COUNTRY", "CAN");
                    }
                    xml.WriteElementString("BILL_PHONE_NUMBER", orderItem.CustomerInfo.BillingAddress.PhoneNumber);
                    xml.WriteElementString("BILL_PHONE_2", "");
                    xml.WriteElementString("EMAIL", orderItem.Email);
                    xml.WriteElementString("NO_SOLICITING", NoSoliciting);

                    xml.WriteElementString("SHIP_TO_COMPANY", "");
                    xml.WriteElementString("SHIP_TO_FIRST_NAME", orderItem.CustomerInfo.ShippingAddress.FirstName.Replace("&amp;", "").Replace("&", "").Replace("'", ""));
                    xml.WriteElementString("SHIP_TO_LAST_NAME", orderItem.CustomerInfo.ShippingAddress.LastName.Replace("&amp;", "").Replace("&", "").Replace("'", ""));
                    xml.WriteElementString("SHIP_TO_ADDRESS1", orderItem.CustomerInfo.ShippingAddress.Address1.Replace("&amp;", "").Replace("&", "").Replace("'", ""));
                    xml.WriteElementString("SHIP_TO_ADDRESS2", orderItem.CustomerInfo.ShippingAddress.Address2.Replace("&amp;", "").Replace("&", "").Replace("'", ""));
                    xml.WriteElementString("SHIP_TO_CITY", orderItem.CustomerInfo.ShippingAddress.City.Replace("&amp;", "").Replace("&", "").Replace("'", ""));
                    StateProvince itemShippingStateProvince = states.FirstOrDefault(x => x.StateProvinceId == Convert.ToInt32(orderItem.CustomerInfo.ShippingAddress.StateProvinceId));
                    if (itemShippingStateProvince != null)
                    {
                        xml.WriteElementString("SHIP_TO_STATE", itemShippingStateProvince.Abbreviation);
                    }
                    else
                    {
                        xml.WriteElementString("SHIP_TO_STATE", string.Empty);
                    }
                    xml.WriteElementString("SHIP_TO_ZIPCODE", orderItem.CustomerInfo.ShippingAddress.ZipPostalCode);
                    if (orderItem.CustomerInfo.ShippingAddress.CountryId == 231)
                    {
                        xml.WriteElementString("SCOUNTRY", "USA");
                    }
                    else if (orderItem.CustomerInfo.ShippingAddress.CountryId == 46)
                    {
                        xml.WriteElementString("SCOUNTRY", "CAN");
                    }
                    xml.WriteElementString("SHIP_TO_PHONE", orderItem.CustomerInfo.BillingAddress.PhoneNumber);
                    xml.WriteElementString("SHIP_TO_PHONE2", "");

                    xml.WriteElementString("ORDER_DATE", orderItem.CreatedDate.ToString("MM/dd/yy"));
                    xml.WriteElementString("ORDER_NUMBER", Prefix + orderItem.OrderId.ToString());
                    xml.WriteElementString("DNIS", DNIS);
                    xml.WriteElementString("EMP_NUMBER", EmpNumber);
                    if (!string.IsNullOrEmpty(orderItem.CreditInfo.TransactionCode))
                    {
                        xml.WriteElementString("PAYMENT_TYPE", PaymentType);  // AUTH or SALE or Blank
                        xml.WriteElementString("AMOUNT_ALREADY_PAID", (orderItem.Total).ToString("N2"));
                        if (orderItem.CreditInfo.CreditCardNumber.Equals("4000000000000002") &&
                            string.IsNullOrEmpty(orderItem.CreditInfo.TransactionCode))
                        {
                            xml.WriteElementString("MERCHANT_TRANSACTION_ID", "Test");
                        }
                        else
                        {
                            xml.WriteElementString("MERCHANT_TRANSACTION_ID", orderItem.CreditInfo.TransactionCode);
                        }
                    }
                    xml.WriteElementString("PAYMENT_METHOD", PaymentMethod); // "CC" for credit card or "CK" for check/check by phone
                    xml.WriteElementString("CC_TYPE", GetCCType(orderItem.CreditInfo.CreditCardName));
                    xml.WriteElementString("CC_NUMBER", orderItem.CreditInfo.CreditCardNumber);
                    xml.WriteElementString("EXP_DATE", orderItem.CreditInfo.CreditCardExpired.ToString("MM/yy"));
                    xml.WriteElementString("CVV_CODE", orderItem.CreditInfo.CreditCardCSC);

                    xml.WriteElementString("SHIPPING_METHOD", "REG");
                    xml.WriteElementString("SHIPPING_CARRIER", "");
                    // We have both Trial as well as One Pay “In the case set Use prices and use shipping to "N."
                    string useShipping = config.Attributes["useShipping"].Value.ToUpper();
                    string usePrices   = config.Attributes["usePrices"].Value.ToUpper();
                    string useTaxes    = config.Attributes["useTaxes"].Value.ToUpper();

                    xml.WriteElementString("USE_SHIPPING", useShipping);
                    xml.WriteElementString("SHIPPING", Math.Round(orderItem.ShippingCost + orderItem.AdditionalShippingCharge, 2).ToString("N2"));
                    xml.WriteElementString("ORDER_STATE_SALES_TAX", Math.Round(orderItem.Tax, 2).ToString("N2"));
                    xml.WriteElementString("USE_PRICES", usePrices);
                    xml.WriteElementString("USE_TAXES", useTaxes);
                    xml.WriteElementString("ORDER_SUBTOTAL", Math.Round(orderItem.FullPriceSubTotal - orderItem.DiscountAmount, 2).ToString("N2"));
                    xml.WriteElementString("ORDER_TOTAL", Math.Round(orderItem.FullPriceSubTotal + orderItem.ShippingCost + orderItem.AdditionalShippingCharge + orderItem.Tax - orderItem.DiscountAmount, 2).ToString("N2"));


                    int        count            = 1;
                    SkuManager skuManager       = new SkuManager();
                    string     fieldnamePRODUCT = "PRODUCT";
                    // string fieldnameDESCRIPTION = "DESCRIPTION" + count.ToString();
                    string fieldnameQUANTITY    = "QUANTITY";
                    string fieldnamePRICE       = "PRICE";
                    string fieldnameDISCOUNT    = "DISCOUNT";
                    string fieldnameCOUPON_CODE = "COUPON_CODE";
                    string fieldnameTAXRATE     = "TAX_RATE";
                    string fieldnamePAIDPRICE   = "PAID_PRICE_PROD";
                    string fieldnameSHIPPING    = "SHIPPING";
                    //PAID_PRICE
                    Order orderCouponInfo = CSResolve.Resolve <IOrderService>().GetOrderDetails(orderItem.OrderId, true);
                    foreach (Sku Item in orderItem.SkuItems)
                    {
                        Sku sku = skuManager.GetSkuByID(Item.SkuId);
                        sku.LoadAttributeValues();
                        if (!sku.GetAttributeValue <bool>("FreeSku", false))
                        {
                            string counter = zeropad(count.ToString(), 2);
                            fieldnamePRODUCT     = "PRODUCT" + counter;
                            fieldnameQUANTITY    = "QUANTITY" + counter;
                            fieldnamePRICE       = "PRICE" + counter;
                            fieldnameDISCOUNT    = "DISCOUNT" + counter;
                            fieldnameCOUPON_CODE = "COUPON_CODE" + counter;
                            fieldnamePAIDPRICE   = "PAID_PRICE_PROD" + counter;
                            fieldnameTAXRATE     = "TAX_RATE" + counter;
                            fieldnameSHIPPING    = "SHIPPING" + counter;
                            xml.WriteElementString(fieldnamePRODUCT, GetSkuCode(sku.SkuId, orderItem.CustomerInfo.ShippingAddress.CountryId));
                            xml.WriteElementString(fieldnameQUANTITY, Item.Quantity.ToString());
                            xml.WriteElementString(fieldnamePRICE, sku.FullPrice.ToString("N2"));
                            xml.WriteElementString(fieldnameTAXRATE, SiteBasePage.CalculateTaxRate(orderItem.OrderId, Item.FullPrice).ToString());

                            if (count == 1)
                            {
                                if (orderCouponInfo.DiscountCode.Length > 0)
                                {
                                    xml.WriteElementString(fieldnamePAIDPRICE, ((sku.InitialPrice * Item.Quantity) - orderCouponInfo.DiscountAmount).ToString("N2"));
                                    xml.WriteElementString(fieldnameDISCOUNT, orderCouponInfo.DiscountAmount.ToString("n2"));
                                    xml.WriteElementString(fieldnameCOUPON_CODE, orderCouponInfo.DiscountCode);
                                }
                                else
                                {
                                    xml.WriteElementString(fieldnamePAIDPRICE, (sku.InitialPrice * Item.Quantity).ToString("N2"));
                                    xml.WriteElementString(fieldnameDISCOUNT, "");
                                    xml.WriteElementString(fieldnameCOUPON_CODE, "");
                                }
                                xml.WriteElementString(fieldnameSHIPPING, orderItem.ShippingCost.ToString("N2"));
                                xml.WriteElementString("PAID_SHIPPING_PROD01", orderItem.ShippingCost.ToString("N2"));
                                xml.WriteElementString("PAID_TAX_PROD01", Math.Round(orderItem.Tax, 2).ToString("N2"));
                            }
                            else
                            {
                                xml.WriteElementString(fieldnamePAIDPRICE, (sku.InitialPrice * Item.Quantity).ToString("N2"));
                                xml.WriteElementString(fieldnameDISCOUNT, "");
                                xml.WriteElementString(fieldnameCOUPON_CODE, "");
                            }
                            count++;
                        }
                    }

                    //if (orderCouponInfo.DiscountCode.Length > 0)
                    //{
                    //    string counter = zeropad(count.ToString(), 2);
                    //    fieldnamePRODUCT = "PRODUCT" + counter;
                    //    fieldnameQUANTITY = "QUANTITY" + counter;
                    //    fieldnamePRICE = "PRICE" + counter;
                    //    fieldnameDISCOUNT = "DISCOUNT" + counter;
                    //    fieldnameCOUPON_CODE = "COUPON_CODE" + counter;
                    //    //fieldnamePAIDPRICE = "PAID_PRICE_PROD" + counter;
                    //    //fieldnameTAXRATE = "TAX_RATE" + counter;
                    //    //fieldnameSHIPPING = "SHIPPING" + counter;
                    //    xml.WriteElementString(fieldnamePRODUCT, orderCouponInfo.DiscountCode);
                    //    xml.WriteElementString(fieldnameQUANTITY, "1");
                    //    xml.WriteElementString(fieldnamePRICE, "0");
                    //    xml.WriteElementString(fieldnameDISCOUNT, orderCouponInfo.DiscountAmount.ToString("n2"));
                    //    xml.WriteElementString(fieldnameCOUPON_CODE, orderCouponInfo.DiscountCode);
                    //    //xml.WriteElementString(fieldnameTAXRATE, "0");
                    //    //xml.WriteElementString(fieldnamePAIDPRICE, "0");
                    //    //if (count == 1)
                    //    //{
                    //    //    //xml.WriteElementString(fieldnameSHIPPING, orderItem.ShippingCost.ToString("N2"));
                    //    //    xml.WriteElementString("PAID_SHIPPING_PROD01", orderItem.ShippingCost.ToString("N2"));
                    //    //    xml.WriteElementString("PAID_TAX_PROD01", Math.Round(orderItem.Tax, 2).ToString("N2"));
                    //    //}
                    //    count++;
                    //}
                    xml.WriteEndElement();
                    xml.WriteStartElement("Settings");
                    xml.WriteElementString("MATCH_FIRST_NAME", "");
                    xml.WriteElementString("MATCH_LAST_NAME", "");
                    xml.WriteElementString("MATCH_ADDRESS", "");
                    xml.WriteElementString("MATCH_ADDRESS_2", "");
                    xml.WriteElementString("MATCH_CITY", "");
                    xml.WriteElementString("MATCH_STATE", "");
                    xml.WriteElementString("MATCH_ZIP", "");
                    xml.WriteElementString("MATCH_PHONE", "");
                    xml.WriteElementString("MATCH_EMAIL", "");
                    xml.WriteElementString("MATCH_CLIENT", "");
                    xml.WriteElementString("MATCH_CAMPAIGN", "");
                    xml.WriteElementString("API_LAYOUT_VERSION", "2");
                    xml.WriteElementString("TAX_CALCULATION_METHOD", "ITEM");
                    xml.WriteEndElement();
                    xml.WriteEndElement();
                    strXml = str.ToString();
                }
            }
            return(strXml);
        }
Exemplo n.º 14
0
        public string GetRequest(int orderId, bool CheckOrder, bool RejectedOrder)
        {
            String strXml = String.Empty;

            using (StringWriter str = new StringWriter())
            {
                using (XmlTextWriter xml = new XmlTextWriter(str))
                {
                    Order orderItem = new OrderManager().GetBatchProcessOrders(orderId);
                    //root node
                    xml.WriteStartDocument();
                    xml.WriteWhitespace("\n");
                    //DatapakServices section
                    xml.WriteStartElement("DatapakServices");
                    xml.WriteAttributeString("method", "submit_order");
                    xml.WriteWhitespace("\n");
                    //Source section
                    xml.WriteStartElement("Source");
                    xml.WriteWhitespace("\n");
                    xml.WriteStartElement("ID");
                    xml.WriteValue(config.Attributes["ID"].Value);
                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");
                    xml.WriteStartElement("Username");
                    xml.WriteValue(config.Attributes["login"].Value);
                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");
                    xml.WriteStartElement("Password");
                    xml.WriteValue(config.Attributes["password"].Value);
                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");
                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");

                    //Source section End
                    //Order section
                    xml.WriteStartElement("Order");
                    xml.WriteAttributeString("method", "order");
                    xml.WriteWhitespace("\n");
                    xml.WriteStartElement("CompanyNumber");
                    xml.WriteValue(config.Attributes["CompanyNumber"].Value);
                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");
                    xml.WriteStartElement("ProjectNumber");
                    xml.WriteValue(config.Attributes["ProjectNumber"].Value);
                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");
                    xml.WriteStartElement("OrderNumber");
                    xml.WriteValue(config.Attributes["OrderIdPrefix"].Value + orderId.ToString());
                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");
                    xml.WriteStartElement("SourceCode");
                    xml.WriteValue(config.Attributes["SourceCode"].Value);
                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");
                    xml.WriteStartElement("TrackingCode");
                    xml.WriteValue(config.Attributes["TrackingCode"].Value);
                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");
                    //xml.WriteStartElement("MediaCode");
                    //xml.WriteValue(config.Attributes["MediaCode"].Value);
                    //xml.WriteEndElement();
                    //xml.WriteWhitespace("\n");
                    xml.WriteStartElement("OrderDate");
                    xml.WriteValue(orderItem.CreatedDate.ToString("MM/dd/yyyy"));
                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");
                    xml.WriteStartElement("OrderTime");
                    xml.WriteValue(orderItem.CreatedDate.ToString("HH:mm"));
                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");

                    //Giftwrap
                    //Sku giftSku = null;
                    Sku shippingSku = null;
                    //string giftWrap = "N";
                    //decimal giftCharge = 0;
                    string shippingMethod = "01"; decimal shippingCharge = 0;
                    foreach (Sku Item in orderItem.SkuItems)
                    {
                        //if (Item.SkuCode == "Gift")
                        //    giftSku = Item;
                        //Shipping method

                        if (Item.SkuCode == "Shipping")
                        {
                            shippingSku = Item;
                        }
                    }

                    //if (giftSku != null)
                    //{
                    //    giftWrap = "Y";
                    //    giftCharge = giftSku.FullPrice ;
                    //    orderItem.SkuItems.Remove(giftSku);
                    //}
                    if (shippingSku != null)
                    {
                        shippingSku.LoadAttributeValues();
                        if (shippingSku.AttributeValues.ContainsKey("isupsell") && shippingSku.AttributeValues["isupsell"].Value != "")
                        {
                            shippingMethod = shippingSku.AttributeValues["isupsell"].Value;
                            shippingCharge = shippingSku.FullPrice;
                            orderItem.SkuItems.Remove(shippingSku);
                        }
                    }


                    decimal orderTotal = (orderItem.SubTotal + orderItem.Tax);

                    if (orderItem.CustomerInfo.ShippingAddress.CountryId == 46) // Canada
                    {
                        shippingMethod = "09";
                    }
                    else if (orderItem.CustomerInfo.ShippingAddress.CountryId == 231) //US
                    {
                        if (orderItem.CustomerInfo.ShippingAddress.StateProvinceId == 1 ||
                            orderItem.CustomerInfo.ShippingAddress.StateProvinceId == 389 ||
                            orderItem.CustomerInfo.ShippingAddress.StateProvinceId == 388 ||
                            orderItem.CustomerInfo.ShippingAddress.StateProvinceId == 11 ||
                            orderItem.CustomerInfo.ShippingAddress.StateProvinceId == 390)
                        {
                            shippingMethod = "09";
                        }
                    }

                    //if (config.SelectSingleNode("@ShippingMethod_" + orderItem.CustomerInfo.ShippingAddress.CountryId.ToString()) != null)
                    //{
                    //    ShippingMethod = config.Attributes["ShippingMethod_" + orderItem.CustomerInfo.ShippingAddress.CountryId.ToString()].Value;
                    //}

                    xml.WriteStartElement("ShippingMethod");
                    xml.WriteValue(shippingMethod);
                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");



                    List <StateProvince> states = StateManager.GetAllStates(0);


                    //BillingInfo section
                    xml.WriteStartElement("BillingInfo");
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("FirstName", orderItem.CustomerInfo.BillingAddress.FirstName.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("LastName", orderItem.CustomerInfo.BillingAddress.LastName.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("Address1", orderItem.CustomerInfo.BillingAddress.Address1.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("Address2", orderItem.CustomerInfo.BillingAddress.Address2.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("City", orderItem.CustomerInfo.BillingAddress.City.Trim());
                    xml.WriteWhitespace("\n");
                    StateProvince itemBillingStateProvince = states.FirstOrDefault(x => x.StateProvinceId == Convert.ToInt32(orderItem.CustomerInfo.BillingAddress.StateProvinceId));
                    if (itemBillingStateProvince != null)
                    {
                        xml.WriteElementString("State", itemBillingStateProvince.Abbreviation.Trim());
                        xml.WriteWhitespace("\n");
                    }
                    else
                    {
                        xml.WriteElementString("State", string.Empty);
                        xml.WriteWhitespace("\n");
                    }
                    xml.WriteElementString("ZipCode", orderItem.CustomerInfo.BillingAddress.ZipPostalCode.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("Country", orderItem.CustomerInfo.BillingAddress.CountryCode.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("Phone", orderItem.CustomerInfo.BillingAddress.PhoneNumber.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("Email", orderItem.Email.Trim());
                    xml.WriteWhitespace("\n");

                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");

                    //BillingInfo section End


                    //ShippingInfo section
                    xml.WriteStartElement("ShippingInfo");
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("FirstName", orderItem.CustomerInfo.ShippingAddress.FirstName.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("LastName", orderItem.CustomerInfo.ShippingAddress.LastName.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("Address1", orderItem.CustomerInfo.ShippingAddress.Address1.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("Address2", orderItem.CustomerInfo.ShippingAddress.Address2.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("City", orderItem.CustomerInfo.ShippingAddress.City.Trim());
                    xml.WriteWhitespace("\n");
                    StateProvince itemShippingStateProvince = states.FirstOrDefault(x => x.StateProvinceId == Convert.ToInt32(orderItem.CustomerInfo.ShippingAddress.StateProvinceId));
                    if (itemShippingStateProvince != null)
                    {
                        xml.WriteElementString("State", itemShippingStateProvince.Abbreviation.Trim());
                        xml.WriteWhitespace("\n");
                    }
                    else
                    {
                        xml.WriteElementString("State", string.Empty);
                        xml.WriteWhitespace("\n");
                    }
                    xml.WriteElementString("ZipCode", orderItem.CustomerInfo.ShippingAddress.ZipPostalCode.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("Country", orderItem.CustomerInfo.ShippingAddress.CountryCode.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("Phone", orderItem.CustomerInfo.ShippingAddress.PhoneNumber.Trim());
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("Email", orderItem.Email.Trim());
                    xml.WriteWhitespace("\n");

                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");

                    //ShippingInfo section End

                    //PaymentInfo informaiton
                    xml.WriteStartElement("PaymentInfo");
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("PaymentType", UpdateCreditCardType(orderItem.CreditInfo.CreditCardName));
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("CardNumber", orderItem.CreditInfo.CreditCardNumber);
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("ExpirationMonth", orderItem.CreditInfo.CreditCardExpired.ToString("MM"));
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("ExpirationYear", orderItem.CreditInfo.CreditCardExpired.ToString("yyyy"));
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("CVV", orderItem.CreditInfo.CreditCardCSC);
                    xml.WriteWhitespace("\n");
                    decimal additionalPayments = 0;
                    int     nop = 1;//number of payments

                    foreach (Sku Item in orderItem.SkuItems)
                    {
                        Item.LoadAttributeValues();
                        if (Item.AttributeValues.ContainsKey("numberofpayments"))
                        {
                            if (Item.AttributeValues["numberofpayments"].Value != null)
                            {
                                nop = Convert.ToInt32(Item.AttributeValues["numberofpayments"].Value);

                                additionalPayments += Item.FullPrice - Item.InitialPrice;
                            }
                        }
                    }

                    xml.WriteElementString("NumberOfPayments", nop.ToString());
                    xml.WriteWhitespace("\n");
                    xml.WriteStartElement("Payment");
                    xml.WriteAttributeString("number", "1");
                    xml.WriteValue(orderTotal.ToString("0.00"));
                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");

                    for (int i = 2; i <= nop; i++)
                    {
                        xml.WriteStartElement("Payment");
                        xml.WriteAttributeString("number", i.ToString());
                        xml.WriteValue(((additionalPayments / (nop - 1))).ToString("0.00"));
                        xml.WriteEndElement();
                        xml.WriteWhitespace("\n");
                    }


                    // Payment auth info

                    if (!string.IsNullOrEmpty(orderItem.CreditInfo.TransactionCode))
                    {
                        xml.WriteElementString("TransactionID", orderItem.CreditInfo.TransactionCode);
                        xml.WriteWhitespace("\n");
                    }

                    if (!string.IsNullOrEmpty(orderItem.CreditInfo.AuthorizationCode))
                    {
                        xml.WriteElementString("AuthCode", orderItem.CreditInfo.AuthorizationCode);
                        xml.WriteWhitespace("\n");
                    }

                    xml.WriteElementString("MerchandiseTotal", (orderTotal + additionalPayments - shippingCharge - orderItem.Tax).ToString("0.00"));
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("ShippingCharge", shippingCharge.ToString("0.00"));
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("RushCharge", orderItem.RushShippingCost.ToString("0.00"));
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("PriorityHandling", "0.00");
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("SalesTax", orderItem.Tax.ToString("0.00"));
                    xml.WriteWhitespace("\n");
                    xml.WriteElementString("OrderTotal", (orderItem.Total + additionalPayments).ToString("0.00"));
                    xml.WriteWhitespace("\n");



                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");
                    //PaymentInfo section End

                    //SkuItems
                    foreach (Sku Item in orderItem.SkuItems)
                    {
                        xml.WriteStartElement("Item");
                        xml.WriteWhitespace("\n");

                        Item.LoadAttributeValues();
                        xml.WriteElementString("ItemCode", Item.SkuCode.ToUpper());
                        xml.WriteWhitespace("\n");
                        xml.WriteElementString("Sequence", Item.OfferCode);
                        xml.WriteWhitespace("\n");
                        xml.WriteElementString("Quantity", Item.Quantity.ToString());
                        xml.WriteWhitespace("\n");
                        xml.WriteElementString("Price", Item.FullPrice.ToString("0.00"));
                        xml.WriteWhitespace("\n");
                        if (Item.AttributeValues.ContainsKey("isupsell"))
                        {
                            if (Item.AttributeValues["isupsell"].Value != "")
                            {
                                xml.WriteElementString("Upsell", Item.AttributeValues["isupsell"].Value);
                                xml.WriteWhitespace("\n");
                            }
                        }
                        xml.WriteElementString("GiftWrap", "N");
                        xml.WriteWhitespace("\n");
                        xml.WriteElementString("GiftWrapCharge", "0.00");
                        xml.WriteWhitespace("\n");
                        xml.WriteEndElement();
                        xml.WriteWhitespace("\n");
                    }



                    xml.WriteEndElement();
                    xml.WriteWhitespace("\n");

                    //Order section End


                    //rootEnd node
                    xml.WriteEndElement();
                    //flush results to string object
                    strXml = str.ToString();
                }
            }
            return(strXml);
        }
Exemplo n.º 15
0
        protected void rptShoppingCart_OnItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                Label                lblSkuCode         = e.Item.FindControl("lblSkuCode") as Label;
                Label                lblSkuDescription  = e.Item.FindControl("lblSkuDescription") as Label;
                TextBox              txtQuantity        = e.Item.FindControl("txtQuantity") as TextBox;
                Label                lblQuantity        = e.Item.FindControl("lblQuantity") as Label;
                Label                lblSkuInitialPrice = e.Item.FindControl("lblSkuInitialPrice") as Label;
                Label                lblTotalPrice      = e.Item.FindControl("lblTotalPrice") as Label;
                ImageButton          btnRemoveItem      = e.Item.FindControl("btnRemoveItem") as ImageButton;
                HtmlContainerControl holderQuantity     = e.Item.FindControl("holderQuantity") as HtmlContainerControl;
                HtmlContainerControl holderRemove       = e.Item.FindControl("holderRemove") as HtmlContainerControl;
                Image                imgProduct         = e.Item.FindControl("imgProduct") as Image;

                Sku cartItem = e.Item.DataItem as Sku;
                cartItem.LoadAttributeValues();
                lblSkuDescription.Text  = cartItem.ShortDescription;
                lblQuantity.Text        = txtQuantity.Text = cartItem.Quantity.ToString();
                lblSkuInitialPrice.Text = String.Format("${0:0.00}", cartItem.InitialPrice);
                lblTotalPrice.Text      = String.Format("${0:0.00}", (cartItem.InitialPrice * cartItem.Quantity));
                if (cartItem.ImagePath != null && cartItem.ImagePath.Length > 0)
                {
                    imgProduct.ImageUrl = cartItem.ImagePath;
                    lblSkuCode.Visible  = false;
                }
                else
                {
                    imgProduct.Visible = false;
                    if (!OrderHelper.GetVersionName().ToLower().Contains("g2") && !OrderHelper.GetVersionName().ToLower().Contains("i2") && !OrderHelper.GetVersionName().ToLower().Contains("j2") &&
                        !OrderHelper.GetVersionName().ToLower().Contains("k2"))
                    {
                        lblSkuCode.Text = cartItem.SkuCode.ToString();
                    }
                }
                DropDownList ddlQty   = e.Item.FindControl("ddlQty") as DropDownList;
                HiddenField  hidSkuId = e.Item.FindControl("hidSkuId") as HiddenField;
                hidSkuId.Value       = cartItem.SkuId.ToString();
                ddlQty.SelectedValue = cartItem.Quantity.ToString();

                if (OrderHelper.GetVersionName().ToLower().Contains("g2"))
                {
                    // for this version, qty can be maximum of 9
                    ddlQty.Items.Clear();
                    ddlQty.Items.Add(new ListItem("1", "1"));
                    ddlQty.Items.Add(new ListItem("2", "2"));
                    ddlQty.Items.Add(new ListItem("3", "3"));
                    ddlQty.Items.Add(new ListItem("4", "4"));
                    ddlQty.Items.Add(new ListItem("5", "5"));
                    ddlQty.Items.Add(new ListItem("6", "6"));
                    ddlQty.Items.Add(new ListItem("7", "7"));
                    ddlQty.Items.Add(new ListItem("8", "8"));
                    ddlQty.Items.Add(new ListItem("9", "9"));
                    ddlQty.SelectedValue = cartItem.Quantity.ToString();
                }
                btnRemoveItem.CommandArgument = cartItem.SkuId.ToString();

                txtQuantity.Attributes["onchange"] = Page.ClientScript.GetPostBackEventReference(refresh, "");

                //switch (QuantityMode)
                //{
                //    case ShoppingCartQuanityMode.Hidden:
                //        holderQuantity.Visible = false;
                //        break;
                //    case ShoppingCartQuanityMode.Editable:
                //        lblQuantity.Visible = false;
                //        break;
                //    case ShoppingCartQuanityMode.Readonly:
                //        txtQuantity.Visible = false;
                //        break;
                //    default:
                //        break;
                //}

                //if (HideRemoveButton)
                //{
                //    holderRemove.Visible = false;
                //}


                if (!cartItem.GetAttributeValue <bool>("isMainKit", false))
                {
                    holderRemove.Visible = true;
                    ddlQty.Visible       = true;
                    lblQuantity.Visible  = false;
                }
                else
                {
                    ddlQty.Visible      = false;
                    lblQuantity.Visible = true;
                }
            }
            else if (e.Item.ItemType == ListItemType.Header)
            {
                HtmlContainerControl holderHeaderQuantity = e.Item.FindControl("holderHeaderQuantity") as HtmlContainerControl;
                HtmlContainerControl holderHeaderRemove   = e.Item.FindControl("holderHeaderRemove") as HtmlContainerControl;
                if (QuantityMode == ShoppingCartQuanityMode.Hidden)
                {
                    holderHeaderQuantity.Visible = false;
                }

                if (HideRemoveButton)
                {
                    holderHeaderRemove.Visible = false;
                }
            }
        }
Exemplo n.º 16
0
        protected void rptShoppingCart_OnItemDataBound(object sender, RepeaterItemEventArgs e)
        {
            if (e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
            {
                Label                lblSkuCode         = e.Item.FindControl("lblSkuCode") as Label;
                Label                lblSkuDescription  = e.Item.FindControl("lblSkuDescription") as Label;
                TextBox              txtQuantity        = e.Item.FindControl("txtQuantity") as TextBox;
                Label                lblQuantity        = e.Item.FindControl("lblQuantity") as Label;
                Label                lblSkuInitialPrice = e.Item.FindControl("lblSkuInitialPrice") as Label;
                ImageButton          btnRemoveItem      = e.Item.FindControl("btnRemoveItem") as ImageButton;
                HtmlContainerControl holderQuantity     = e.Item.FindControl("holderQuantity") as HtmlContainerControl;
                HtmlContainerControl holderRemove       = e.Item.FindControl("holderRemove") as HtmlContainerControl;
                Image                imgProduct         = e.Item.FindControl("imgProduct") as Image;
                HiddenField          hidSkuId           = e.Item.FindControl("hidSkuId") as HiddenField;
                DropDownList         ddlQty             = e.Item.FindControl("ddlQty") as DropDownList;
                Label                lblShippingPrice   = e.Item.FindControl("lblShippingPrice") as Label;
                Sku cartItem = e.Item.DataItem as Sku;
                hidSkuId.Value          = CSCore.Utils.CommonHelper.Encrypt(Convert.ToString(cartItem.SkuId));
                lblSkuDescription.Text  = cartItem.ShortDescription;
                lblQuantity.Text        = txtQuantity.Text = cartItem.Quantity.ToString();
                lblSkuInitialPrice.Text = String.Format("${0:0.##}", cartItem.InitialPrice);
                if (cartItem.ImagePath != null && cartItem.ImagePath.Length > 0)
                {
                    imgProduct.ImageUrl = cartItem.ImagePath;
                    lblSkuCode.Visible  = false;
                }
                else
                {
                    imgProduct.Visible = false;
                    lblSkuCode.Text    = cartItem.SkuCode.ToString();
                }
                lblShippingPrice.Text = OrderHelper.CalculateSkuBaseShipping(cartItem.SkuId).ToString("n2");
                cartItem.LoadAttributeValues();

                if (cartItem.GetAttributeValue <bool>("isMainKit", false))
                {
                    btnRemoveItem.Visible = false;
                }

                btnRemoveItem.CommandArgument = cartItem.SkuId.ToString();

                txtQuantity.Attributes["onchange"] = Page.ClientScript.GetPostBackEventReference(refresh, "");
                lblQuantity.Visible  = false;
                ddlQty.SelectedValue = cartItem.Quantity.ToString();
                //switch (QuantityMode)
                //{
                //    case ShoppingCartQuanityMode.Hidden:
                //        holderQuantity.Visible = false;
                //        break;
                //    case ShoppingCartQuanityMode.Editable:
                //        lblQuantity.Visible = false;
                //        break;
                //    case ShoppingCartQuanityMode.Readonly:
                //        txtQuantity.Visible = false;
                //        break;
                //    default:
                //        break;
                //}

                if (HideRemoveButton)
                {
                    holderRemove.Visible = false;
                }
            }
            else if (e.Item.ItemType == ListItemType.Header)
            {
                HtmlContainerControl holderHeaderQuantity = e.Item.FindControl("holderHeaderQuantity") as HtmlContainerControl;
                HtmlContainerControl holderHeaderRemove   = e.Item.FindControl("holderHeaderRemove") as HtmlContainerControl;
                if (QuantityMode == ShoppingCartQuanityMode.Hidden)
                {
                    holderHeaderQuantity.Visible = false;
                }

                if (HideRemoveButton)
                {
                    holderHeaderRemove.Visible = false;
                }
            }
        }