protected void ddlPosNo_SelectedIndexChanged(object sender, EventArgs e) { try { string selectedPos = ddlPosNo.SelectedValue; BindData(); SKUInfo skuDetails = SKUInfoProvider.GetSKUs().WhereEquals("SKUNumber", selectedPos).FirstObject; if (skuDetails != null) { string folderName = libraryFolderName; folderName = !string.IsNullOrEmpty(folderName) ? folderName.Replace(" ", "") : "CampaignProducts"; txtLongDes.Text = skuDetails.SKUDescription; txtEstPrice.Text = ValidationHelper.GetString(skuDetails.SKUPrice, string.Empty); ddlPosNo.SelectedValue = ValidationHelper.GetString(skuDetails.SKUNumber, string.Empty); txtShortDes.Text = skuDetails.SKUName; txtActualPrice.Text = ValidationHelper.GetString(skuDetails.SKUPrice, string.Empty); ddlStatus.SelectedValue = skuDetails.SKUEnabled == true ? "1" : "0"; imgProduct.ImageUrl = ValidationHelper.GetString(skuDetails.SKUImagePath, string.Empty); imgProduct.Visible = imgProduct.ImageUrl != string.Empty ? true : false; txtExpDate.Text = ValidationHelper.GetString(skuDetails.SKUValidUntil, string.Empty); txtQuantity.Text = ValidationHelper.GetString(skuDetails.SKUAvailableItems, string.Empty); txtWeight.Text = ValidationHelper.GetString(skuDetails.SKUWeight, string.Empty); CampaignsProduct product = CampaignsProductProvider.GetCampaignsProducts().WhereEquals("NodeSKUID", skuDetails.SKUID).FirstObject; if (product != null) { txtBundleQnt.Text = ValidationHelper.GetString(product.QtyPerPack, string.Empty); ddlBrand.SelectedValue = ValidationHelper.GetString(product.BrandID, string.Empty); ddlState.SelectedValue = ValidationHelper.GetString(product.State, string.Empty); ddlProdCategory.SelectedValue = ValidationHelper.GetString(product.CategoryID, string.Empty); BindEditProduct(ValidationHelper.GetInteger(product.CampaignsProductID, 0)); ViewState["ProductId"] = product.CampaignsProductID; } } else { ViewState["ProductId"] = null; EmptyFields(false); var pos = CustomTableItemProvider.GetItems(POSNumberItem.CLASS_NAME) .WhereEquals("POSNumber", selectedPos) .FirstOrDefault(); if (pos != null && pos.GetValue("BrandID") != null) { var brand = CustomTableItemProvider.GetItems(BrandItem.CLASS_NAME) .WhereEquals("BrandCode", pos.GetValue("BrandID")) .FirstOrDefault(); if (brand != null) { ddlBrand.SelectedValue = brand.GetValue("ItemId").ToString(); } } } ddlPosNo.SelectedValue = selectedPos; } catch (Exception ex) { EventLogProvider.LogException("CMSWebParts_Kadena_Inventory_porduct_POSchanged", "BindCategories", ex, CurrentSite.SiteID, ex.Message); } }
private void UpdateProduct(int productID) { CampaignsProduct product = CampaignsProductProvider .GetCampaignsProducts() .WhereEquals("NodeSiteID", CurrentSite.SiteID) .WhereEquals("CampaignsProductID", productID) .FirstOrDefault(); if (product != null) { product.DocumentName = ValidationHelper.GetString(txtShortDes.Text, string.Empty); product.QtyPerPack = ValidationHelper.GetInteger(txtBundleQnt.Text, default(int)); product.BrandID = ValidationHelper.GetInteger(ddlBrand.SelectedValue, default(int)); product.CategoryID = ValidationHelper.GetInteger(ddlProdCategory.SelectedValue, default(int)); product.EstimatedPrice = ValidationHelper.GetInteger(txtEstPrice.Text, default(int)); product.ProductName = ValidationHelper.GetString(txtShortDes.Text, string.Empty); product.State = ValidationHelper.GetInteger(ddlState.SelectedValue, default(int)); SKUInfo updateProduct = SKUInfoProvider.GetSKUs().WhereEquals("SKUID", product.NodeSKUID).FirstObject; if (updateProduct != null) { if (productImage.HasFile) { if (updateProduct.SKUImagePath != string.Empty) { UploadImage.DeleteImage(updateProduct.SKUImagePath, libraryFolderName); } updateProduct.SKUImagePath = UploadImage.UploadImageToMeadiaLibrary(productImage, libraryFolderName); } updateProduct.SKUName = ValidationHelper.GetString(txtShortDes.Text, string.Empty); updateProduct.SKUShortDescription = ValidationHelper.GetString(txtShortDes.Text, string.Empty); updateProduct.SKUDescription = ValidationHelper.GetString(txtLongDes.Text, string.Empty); updateProduct.SKUPrice = ValidationHelper.GetDouble(txtActualPrice.Text, default(double)); updateProduct.SKUEnabled = ValidationHelper.GetString(ddlStatus.SelectedValue, "1") == "1" ? true : false; updateProduct.SKUSiteID = CurrentSite.SiteID; updateProduct.SKUProductType = SKUProductTypeEnum.EProduct; updateProduct.SKUAvailableItems = ValidationHelper.GetInteger(txtQuantity.Text, 0); updateProduct.SKUWeight = ValidationHelper.GetDouble(txtWeight.Text, default(double)); updateProduct.SKUValidUntil = ValidationHelper.GetDateTime(txtExpDate.Text, DateTime.MinValue); SKUInfoProvider.SetSKUInfo(updateProduct); } product.Update(); var saveproductID = ValidationHelper.GetInteger(product.CampaignsProductID, 0); UpdateAllocateProduct(saveproductID); lblSuccessMsg.Visible = true; lblFailureText.Visible = false; EmptyFields(true); Response.Cookies["status"].Value = QueryStringStatus.Updated; Response.Cookies["status"].HttpOnly = false; URLHelper.Redirect($"{CurrentDocument.Parent.DocumentUrlPath}?status={QueryStringStatus.Updated}"); } else { lblFailureText.Visible = true; } }
/// <summary> /// Set the field with the record which user wants to edit /// </summary> /// <param name="productid">The id of the product which user wants to edit</param> private void SetFeild(int productID) { try { if (productID != 0) { CampaignsProduct product = CampaignsProductProvider.GetCampaignsProducts() .WhereEquals("NodeSiteID", CurrentSite.SiteID) .WhereEquals("CampaignsProductID", productID) .FirstOrDefault(); if (product != null) { SKUInfo skuDetails = SKUInfoProvider.GetSKUs() .WhereEquals("SKUID", product.NodeSKUID) .FirstObject; if (skuDetails != null) { string folderName = libraryFolderName; folderName = !string.IsNullOrEmpty(folderName) ? folderName.Replace(" ", "") : "InventoryProducts"; txtLongDes.Text = skuDetails.SKUDescription; txtEstPrice.Text = ValidationHelper.GetString(product.EstimatedPrice, string.Empty); ddlPosNo.Items.Add(new ListItem(ValidationHelper.GetString(skuDetails.GetValue("SKUProductCustomerReferenceNumber", string.Empty), string.Empty), ValidationHelper.GetString(skuDetails.GetValue("SKUProductCustomerReferenceNumber", string.Empty), string.Empty))); ddlPosNo.Enabled = false; txtShortDes.Text = skuDetails.SKUName; txtActualPrice.Text = ValidationHelper.GetString(skuDetails.SKUPrice, string.Empty); ddlStatus.SelectedValue = skuDetails.SKUEnabled == true ? "1" : "0"; imgProduct.ImageUrl = ValidationHelper.GetString(skuDetails.SKUImagePath, string.Empty); imgProduct.Visible = imgProduct.ImageUrl != string.Empty ? true : false; if (skuDetails.SKUValidUntil != DateTime.MinValue) { txtExpDate.Text = ValidationHelper.GetString(skuDetails.SKUValidUntil.ToShortDateString(), string.Empty); } txtQuantity.Text = ValidationHelper.GetString(skuDetails.SKUAvailableItems, string.Empty); txtWeight.Text = ValidationHelper.GetString(skuDetails.SKUWeight, string.Empty); } txtBundleQnt.Text = ValidationHelper.GetString(product.QtyPerPack, string.Empty); ddlBrand.SelectedValue = ValidationHelper.GetString(product.BrandID, string.Empty); ddlState.SelectedValue = ValidationHelper.GetString(product.State, string.Empty); ddlProdCategory.SelectedValue = ValidationHelper.GetString(product.CategoryID, string.Empty); BindEditProduct(ValidationHelper.GetInteger(product.CampaignsProductID, 0)); } } } catch (Exception ex) { EventLogProvider.LogException("GetProductFromButtonClick", "EXCEPTION", ex); } }
/// <summary> /// For saving the product /// </summary> private void SaveProduct() { string imagePath = string.Empty; TreeProvider tree = new TreeProvider(MembershipContext.AuthenticatedUser); CMS.DocumentEngine.TreeNode parentPage = tree.SelectNodes() .Path(folderpath) .OnCurrentSite() .Culture(DocumentContext.CurrentDocument.DocumentCulture) .FirstObject; if (parentPage != null) { CampaignsProduct products = new CampaignsProduct() { QtyPerPack = ValidationHelper.GetInteger(txtBundleQnt.Text, default(int)), BrandID = ValidationHelper.GetInteger(ddlBrand.SelectedValue, default(int)), EstimatedPrice = ValidationHelper.GetDouble(txtEstPrice.Text, default(double)), State = ValidationHelper.GetInteger(ddlState.SelectedValue, default(int)), CategoryID = ValidationHelper.GetInteger(ddlProdCategory.SelectedValue, default(int)), ProductName = ValidationHelper.GetString(txtShortDes.Text, string.Empty) }; if (productImage.HasFile) { imagePath = UploadImage.UploadImageToMeadiaLibrary(productImage, libraryFolderName); } SKUInfo newSkuProduct = new SKUInfo() { SKUName = ValidationHelper.GetString(txtShortDes.Text, string.Empty), SKUNumber = ValidationHelper.GetString("00000", string.Empty), SKUDescription = ValidationHelper.GetString(txtLongDes.Text, string.Empty), SKUPrice = ValidationHelper.GetDouble(txtActualPrice.Text, default(double)), SKUEnabled = ValidationHelper.GetBoolean(ddlStatus.SelectedValue, false), SKUAvailableItems = ValidationHelper.GetInteger(txtQuantity.Text, 0), SKUImagePath = ValidationHelper.GetString(imagePath, string.Empty), SKUSiteID = CurrentSite.SiteID, SKUProductType = SKUProductTypeEnum.EProduct, SKUWeight = ValidationHelper.GetDouble(txtWeight.Text, default(double)) }; if (!string.IsNullOrEmpty(txtExpDate.Text)) { newSkuProduct.SKUValidUntil = ValidationHelper.GetDateTime(txtExpDate.Text, DateTime.Now); } newSkuProduct.SetValue("SKUProductCustomerReferenceNumber", ValidationHelper.GetString(ddlPosNo.SelectedValue, string.Empty)); products.DocumentName = ValidationHelper.GetString(txtShortDes.Text, string.Empty); products.DocumentCulture = CurrentDocument.DocumentCulture; SKUInfoProvider.SetSKUInfo(newSkuProduct); products.NodeSKUID = newSkuProduct.SKUID; PageTemplateInfo template = PageTemplateInfoProvider.GetPageTemplateInfo(SettingsKeyInfoProvider.GetValue("KDA_InventoryProductPageTemplateName", CurrentSiteName)); if (template != null) { products.DocumentPageTemplateID = template.PageTemplateId; } products.Insert(parentPage, true); var productID = ValidationHelper.GetInteger(products.CampaignsProductID, 0); AllocateProductToUsers(productID); lblSuccessMsg.Visible = true; lblFailureText.Visible = false; EmptyFields(true); Response.Cookies["status"].Value = QueryStringStatus.Added; Response.Cookies["status"].HttpOnly = false; URLHelper.Redirect($"{CurrentDocument.Parent.DocumentUrlPath}?status={QueryStringStatus.Added}"); } else { lblFailureText.Visible = true; } }
/// <summary> /// Update the product data. /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnUpdate_Click(object sender, EventArgs e) { try { int programID = ValidationHelper.GetInteger(ddlProgram.SelectedValue, 0); TreeProvider tree = new TreeProvider(MembershipContext.AuthenticatedUser); if (ViewState["ProductNodeID"] != null) { CampaignsProduct product = CampaignsProductProvider.GetCampaignsProduct(ValidationHelper.GetInteger(ViewState["ProductNodeID"], 0), CurrentDocument.DocumentCulture, CurrentSiteName); if (product != null) { string itemSpecsID, customItemSpecs; GetItemSpecsValue(out itemSpecsID, out customItemSpecs); product.DocumentName = ValidationHelper.GetString(txtProductName.Text, string.Empty); product.ProgramID = ValidationHelper.GetInteger(ddlProgram.SelectedValue, 0); product.State = ValidationHelper.GetInteger(ddlState.SelectedValue, default(int)); product.BrandID = ValidationHelper.GetInteger(ddlBrand.SelectedValue, default(int)); product.CategoryID = ValidationHelper.GetInteger(ddlProductcategory.SelectedValue, 0); product.QtyPerPack = ValidationHelper.GetInteger(txtQty.Text, default(int)); product.ItemSpecs = ValidationHelper.GetString(itemSpecsID, string.Empty); product.CustomItemSpecs = ValidationHelper.GetString(customItemSpecs, string.Empty); product.EstimatedPrice = ValidationHelper.GetDouble(txtEstimatedprice.Text, default(double)); product.ProductName = ValidationHelper.GetString(txtProductName.Text, string.Empty); SKUInfo updateProduct = SKUInfoProvider.GetSKUs().WhereEquals("SKUID", product.NodeSKUID).FirstObject; if (updateProduct != null) { if (productImage.HasFile) { string libraryFolderName = SettingsKeyInfoProvider.GetValue(CurrentSite.SiteName + ".KDA_ImagesFolderName"); if (updateProduct.SKUImagePath != string.Empty) { UploadImage.DeleteImage(updateProduct.SKUImagePath, libraryFolderName); } updateProduct.SKUImagePath = UploadImage.UploadImageToMeadiaLibrary(productImage, libraryFolderName); } updateProduct.SKUName = ValidationHelper.GetString(txtProductName.Text, string.Empty); updateProduct.SKUShortDescription = ValidationHelper.GetString(txtProductName.Text, string.Empty); updateProduct.SKUDescription = ValidationHelper.GetString(txtLongDescription.Text, string.Empty); updateProduct.SKUValidUntil = ValidationHelper.GetDate(txtExpireDate.Text, DateTime.MinValue); updateProduct.SKUEnabled = ValidationHelper.GetString(ddlStatus.SelectedValue, "1") == "1" ? true : false; updateProduct.SKUSiteID = CurrentSite.SiteID; updateProduct.SKUProductType = SKUProductTypeEnum.EProduct; updateProduct.SKUPrice = 0; SKUInfoProvider.SetSKUInfo(updateProduct); } product.Update(); } if (ViewState["ProgramID"] != null) { if (ValidationHelper.GetInteger(ViewState["ProgramID"], 0) != programID) { var targetProgram = ProgramProvider.GetPrograms() .WhereEquals("NodeSiteID", CurrentSite.SiteID) .WhereEquals("ProgramID", programID) .Column("NodeID") .FirstOrDefault(); if (targetProgram != null) { var tagetDocument = DocumentHelper.GetDocument(targetProgram.NodeID, CurrentDocument.DocumentCulture, tree); var targetPage = tree.SelectSingleNode(SiteContext.CurrentSiteName, tagetDocument.NodeAliasPath, CurrentDocument.DocumentCulture); if ((product != null) && (targetPage != null)) { DocumentHelper.MoveDocument(product, targetPage, tree, true); } } } } int capaignNodeID = ValidationHelper.GetInteger(Request.QueryString["camp"], default(int)); var campDoc = DocumentHelper.GetDocument(capaignNodeID, CurrentDocument.DocumentCulture, tree); if (campDoc != null) { Response.Redirect($"{campDoc.DocumentUrlPath}?status={QueryStringStatus.Updated}"); } } } catch (Exception ex) { EventLogProvider.LogException("CMSWebParts_Kadena_Campaign_Web_Form_AddCampaignProducts", "btnUpdate_Click", ex, CurrentSite.SiteID, ex.Message); } }
/// <summary> /// Insert product data to database /// </summary> /// <param name="sender"></param> /// <param name="e"></param> protected void btnSave_Click(object sender, EventArgs e) { string imagePath = string.Empty; try { int programID = ValidationHelper.GetInteger(ddlProgram.SelectedValue, default(int)); if (programID != default(int)) { Program program = new Program(); TreeProvider tree = new TreeProvider(MembershipContext.AuthenticatedUser); var programDoc = ProgramProvider.GetPrograms() .WhereEquals("NodeSiteID", CurrentSite.SiteID) .Columns("NodeID") .WhereEquals("ProgramID", programID) .FirstOrDefault(); if (!DataHelper.DataSourceIsEmpty(programDoc)) { int programNodeID = programDoc.NodeID; var document = DocumentHelper.GetDocument(programNodeID, CurrentDocument.DocumentCulture, tree); var createNode = tree.SelectSingleNode(SiteContext.CurrentSiteName, document.NodeAliasPath, CurrentDocument.DocumentCulture); if (createNode != null) { string itemSpecsID, customItemSpecs; GetItemSpecsValue(out itemSpecsID, out customItemSpecs); CampaignsProduct products = new CampaignsProduct() { ProgramID = ValidationHelper.GetInteger(ddlProgram.SelectedValue, default(int)), EstimatedPrice = ValidationHelper.GetDouble(txtEstimatedprice.Text, default(double)), BrandID = ValidationHelper.GetInteger(hfBrandItemID.Value, default(int)), CategoryID = ValidationHelper.GetInteger(ddlProductcategory.SelectedValue, default(int)), QtyPerPack = ValidationHelper.GetInteger(txtQty.Text, default(int)), ItemSpecs = ValidationHelper.GetString(itemSpecsID, string.Empty), CustomItemSpecs = ValidationHelper.GetString(customItemSpecs, string.Empty), State = ValidationHelper.GetInteger(ddlState.SelectedValue, default(int)), ProductName = ValidationHelper.GetString(txtProductName.Text, string.Empty) }; products.DocumentName = ValidationHelper.GetString(txtProductName.Text, string.Empty); products.DocumentCulture = CurrentDocument.DocumentCulture; if (productImage.HasFile) { string libraryFolderName = SettingsKeyInfoProvider.GetValue(CurrentSite.SiteName + ".KDA_ImagesFolderName"); imagePath = UploadImage.UploadImageToMeadiaLibrary(productImage, libraryFolderName); } SKUInfo newProduct = new SKUInfo() { SKUName = ValidationHelper.GetString(txtProductName.Text, string.Empty), SKUNumber = ValidationHelper.GetString("00000", string.Empty), SKUShortDescription = ValidationHelper.GetString(txtProductName.Text, string.Empty), SKUDescription = ValidationHelper.GetString(txtLongDescription.Text, string.Empty), SKUEnabled = ValidationHelper.GetString(ddlStatus.SelectedValue, "1") == "1" ? true : false, SKUImagePath = imagePath, SKUSiteID = CurrentSite.SiteID, SKUProductType = SKUProductTypeEnum.EProduct, SKUPrice = 0 }; if (!string.IsNullOrEmpty(txtExpireDate.Text)) { newProduct.SKUValidUntil = ValidationHelper.GetDateTime(txtExpireDate.Text, DateTime.MinValue); } newProduct.SetValue("SKUProductCustomerReferenceNumber", ValidationHelper.GetString(ddlPos.SelectedValue, string.Empty)); SKUInfoProvider.SetSKUInfo(newProduct); products.NodeSKUID = newProduct.SKUID; products.Insert(createNode, true); int capaignNodeID = ValidationHelper.GetInteger(Request.QueryString["camp"], default(int)); var campDoc = DocumentHelper.GetDocument(capaignNodeID, CurrentDocument.DocumentCulture, tree); if (campDoc != null) { Response.Redirect($"{campDoc.DocumentUrlPath}?status={QueryStringStatus.Added}"); } } } } } catch (Exception ex) { EventLogProvider.LogException("CMSWebParts_Kadena_Campaign_Web_Form_AddCampaignProducts", "btnSave_Click", ex, CurrentSite.SiteID, ex.Message); } }
/// <summary> /// Initializes the control properties. /// </summary> protected void SetupControl() { if (!this.StopProcessing) { try { if (!IsPostBack) { BindPrograms(); BindCategories(); BindResorceStrings(); BindPOS(); GetStateGroup(); GetBrandName(); BindItemSpecsDropdown(); int productID = ValidationHelper.GetInteger(Request.QueryString["id"], 0); if (productID != 0) { CampaignsProduct product = CampaignsProductProvider .GetCampaignsProducts() .WhereEquals("NodeSiteID", CurrentSite.SiteID) .WhereEquals("CampaignsProductID", productID) .FirstOrDefault(); if (product != null) { SKUInfo skuDetails = SKUInfoProvider .GetSKUs() .WhereEquals("SKUID", product.NodeSKUID) .FirstObject; if (skuDetails != null) { string folderName = SettingsKeyInfoProvider.GetValue(CurrentSite.SiteName + ".KDA_ImagesFolderName"); folderName = !string.IsNullOrEmpty(folderName) ? folderName.Replace(" ", "") : "CampaignProducts"; txtLongDescription.Text = skuDetails.SKUDescription; ddlPos.SelectedValue = ValidationHelper.GetString(skuDetails.GetValue("SKUProductCustomerReferenceNumber", string.Empty), string.Empty); ddlPos.Enabled = false; txtProductName.Text = skuDetails.SKUName; txtActualPrice.Text = ValidationHelper.GetString(skuDetails.SKUPrice, string.Empty); ddlStatus.SelectedValue = skuDetails.SKUEnabled == true ? "1" : "0"; imgProduct.ImageUrl = ValidationHelper.GetString(skuDetails.SKUImagePath, string.Empty); imgProduct.Visible = imgProduct.ImageUrl != string.Empty ? true : false; if (skuDetails.SKUValidUntil != DateTime.MinValue) { txtExpireDate.Text = ValidationHelper.GetString(skuDetails.SKUValidUntil.ToShortDateString(), string.Empty); } } ddlProgram.SelectedValue = ValidationHelper.GetString(product.ProgramID, string.Empty); ddlProgram.Enabled = false; ddlState.SelectedValue = ValidationHelper.GetString(product.State, string.Empty); ddlBrand.SelectedValue = product.BrandID.ToString(); txtEstimatedprice.Text = ValidationHelper.GetString(product.EstimatedPrice, string.Empty); ddlProductcategory.SelectedValue = product.CategoryID.ToString(); txtQty.Text = ValidationHelper.GetString(product.QtyPerPack, string.Empty); if (!string.IsNullOrEmpty(product.CustomItemSpecs)) { txtItemSpec.Text = ValidationHelper.GetString(product.CustomItemSpecs, string.Empty); ddlItemSpecs.SelectedValue = ValidationHelper.GetString(ResHelper.GetString("Kadena.CampaignProduct.ItemSpecsOtherText"), string.Empty); divItemSpecs.Visible = true; } else { ddlItemSpecs.SelectedValue = ValidationHelper.GetString(product.ItemSpecs, string.Empty); } ViewState["ProgramID"] = product.ProgramID; ViewState["ProductNodeID"] = product.NodeID; btnSave.Visible = false; btnUpdate.Visible = true; } } else { btnSave.Visible = true; btnUpdate.Visible = false; } string currentDate = DateTime.Today.ToShortDateString(); compareDate.ValueToCompare = currentDate; } } catch (Exception ex) { EventLogProvider.LogException("CMSWebParts_Kadena_Campaign_Web_Form_AddCampaignProducts", "SetupControl", ex, CurrentSite.SiteID, ex.Message); } } }