Example #1
0
    /// <summary>
    /// 
    /// </summary>
    /// <param name="ds"></param>
    /// <param name="appSettings"></param>
    /// <param name="connString"></param>
    private void UploadProductRetailPrice(ZNode.Libraries.Framework.Business.ZNodeGenericCollection<ProductSKUEntity> ProdSKUList, string connString)
    {
        #region Local Variable Declaration
        SqlConnection conn = new SqlConnection(connString);
        ZNode.Libraries.DataAccess.Service.ProductService ProductServ = new ProductService();
        ZNode.Libraries.DataAccess.Service.SKUService ProductSKUServ = new SKUService();
        ZNode.Libraries.DataAccess.Service.AddOnValueService ProductAddOnValueServ = new AddOnValueService();
        #endregion

        foreach (ProductSKUEntity entity in ProdSKUList)
        {
            SKU _sku = new SKU();

            //Update Prodcut table
            int ProductID = GetProductBySKU(entity.SKU, connString);

            if (ProductID > 0)
            {
                Product _productObject = ProductServ.GetByProductID(ProductID);
                _productObject.RetailPrice = entity.RetailPrice;
                _productObject.SalePrice = entity.SalePrice;
                _productObject.WholesalePrice = entity.WholesalePrice;
                _productObject.UpdateDte = System.DateTime.Now;

                ProductServ.Update(_productObject);
            }

            //Update SKU table
            int SkuId = GetSkuID(entity.SKU, connString);

            if (SkuId > 0)
            {
                _sku = ProductSKUServ.GetBySKUID(SkuId);
                //Set Quantity available value
                _sku.RetailPriceOverride = entity.RetailPrice;
                _sku.SalePriceOverride = entity.SalePrice;
                _sku.WholesalePriceOverride = entity.WholesalePrice;

                _sku.UpdateDte = System.DateTime.Now;

                //Upate SKU
                ProductSKUServ.Update(_sku);
            }

            //Update Add-On table
            AddOnValue _addOnvalue = new AddOnValue();

            int AddOnValueId = GetSkuIDByAddOnValueSKU(entity.SKU, connString);

            if (AddOnValueId > 0)
            {
                _addOnvalue = ProductAddOnValueServ.GetByAddOnValueID(AddOnValueId);

                _addOnvalue.RetailPrice = entity.RetailPrice;
                _addOnvalue.SalePrice = entity.SalePrice;
                _addOnvalue.WholesalePrice = entity.WholesalePrice;

                _addOnvalue.UpdateDte = System.DateTime.Now;

                ProductAddOnValueServ.Update(_addOnvalue);
            }
        }
    }
    /// <summary>
    /// Submit Button Click Event
    /// </summary>
    /// <param name="sender"></param>
    /// <param name="e"></param>
    protected void btnAddOnValueSubmit_Click(object sender, EventArgs e)
    {
        ProductAddOnAdmin AddOnValueAdmin = new ProductAddOnAdmin();
        AddOnValue addOnValue = new AddOnValue();

        if (AddOnValueId > 0)
        {
            addOnValue = AddOnValueAdmin.GetByAddOnValueID(AddOnValueId);
        }

        // Set Properties
        // General Settings
        addOnValue.AddOnID = ItemId; // AddOnId from querystring
        addOnValue.Name = txtAddOnValueName.Text.Trim();
        addOnValue.RetailPrice = decimal.Parse(txtAddOnValueRetailPrice.Text.Trim());
        addOnValue.SalePrice = null;
        addOnValue.WholesalePrice = null;

        if(txtSalePrice.Text.Trim().Length > 0)
        addOnValue.SalePrice = decimal.Parse(txtSalePrice.Text.Trim());
        if(txtWholeSalePrice.Text.Trim().Length > 0)
        addOnValue.WholesalePrice = decimal.Parse(txtWholeSalePrice.Text.Trim());

        // Display Settings
        addOnValue.DisplayOrder = int.Parse(txtAddonValueDispOrder.Text.Trim());
        addOnValue.DefaultInd = chkIsDefault.Checked;

        // Inventory Settings
        addOnValue.SKU = txtAddOnValueSKU.Text.Trim();
        addOnValue.QuantityOnHand = int.Parse(txtAddOnValueQuantity.Text.Trim());
        if (txtReOrder.Text.Trim().Length > 0)
        {
            addOnValue.ReorderLevel = int.Parse(txtReOrder.Text.Trim());
        }
        else
        { addOnValue.ReorderLevel = null; }
        if (txtAddOnValueWeight.Text.Trim().Length > 0)
        {
            addOnValue.Weight = decimal.Parse(txtAddOnValueWeight.Text.Trim());
        }

        # region Add-On Package Dimensions
        if (Height.Text.Trim().Length > 0)
        {
            addOnValue.Height = decimal.Parse(Height.Text.Trim());
        }
        else { addOnValue.Height = null; }

        if (Width.Text.Trim().Length > 0)
        {
            addOnValue.Width = decimal.Parse(Width.Text.Trim());
        }
        else { addOnValue.Width = null; }

        if (Length.Text.Trim().Length > 0)
        {
            addOnValue.Length = decimal.Parse(Length.Text.Trim());
        }
        else
        { addOnValue.Length = null; }
        #endregion

        // set shipping type for this add-on item
        addOnValue.ShippingRuleTypeID = int.Parse(ShippingTypeList.SelectedValue);
        addOnValue.FreeShippingInd = chkFreeShippingInd.Checked;

        if (chkRecurringBillingInd.Checked)
        {
            // Recurring Billing
            addOnValue.RecurringBillingInd = chkRecurringBillingInd.Checked;
            addOnValue.RecurringBillingPeriod = ddlBillingPeriods.SelectedItem.Value;
            addOnValue.RecurringBillingFrequency = ddlBillingFrequency.SelectedItem.Text;
            addOnValue.RecurringBillingTotalCycles = int.Parse(txtSubscrptionCycles.Text.Trim());
        }
        else
        {
            addOnValue.RecurringBillingInd = false;
            addOnValue.RecurringBillingInstallmentInd = false;
        }

        // Supplier
        if (ddlSupplier.SelectedIndex != -1)
        {
            if (ddlSupplier.SelectedItem.Text.Equals("None"))
            {
                addOnValue.SupplierID = null;
            }
            else
            {
                addOnValue.SupplierID = Convert.ToInt32(ddlSupplier.SelectedValue);
            }
        }

        // Tax Class
        if (ddlTaxClass.SelectedIndex != -1)
        {
            addOnValue.TaxClassID = int.Parse(ddlTaxClass.SelectedValue);
        }

        bool status = false;

        if (AddOnValueId > 0)
        {
            // set update date
            addOnValue.UpdateDte = System.DateTime.Now;

            // Update option values
            status = AddOnValueAdmin.UpdateAddOnValue(addOnValue);
        }
        else
        {
            // Add new option values
            status = AddOnValueAdmin.AddNewAddOnValue(addOnValue);
        }

        if (status)
        {
            Response.Redirect(ViewLink + ItemId);
        }
        else
        {
            lblAddonValueMsg.Text = "Could not update the Add-On Value. Please try again.";
            return;
        }
    }