Esempio n. 1
0
        public ActionResult Create([Bind(Include = "ProductId,Value,Name")] ProductFeatures model)

        {
            if (ModelState.IsValid)
            {
                try
                {
                    var feature = new ProductFeatures
                    {
                        ProductId = model.ProductId,
                        Value     = model.Value,
                        Name      = model.Name
                    };
                    db.ProductFeatures.Add(feature);
                    db.SaveChanges();
                    return(RedirectToAction("Index", new { id = model.ProductId }));
                }
                catch (Exception e)
                {
                    ModelState.AddModelError("", e.Message);
                    ViewData["Product"] = db.Products.Find(model.ProductId);
                    return(View(model));
                }
            }

            ViewData["Product"] = db.Products.Find(model.ProductId);
            return(View(model));
        }
        protected void OnRowDeleting(object sender, GridViewDeleteEventArgs e)
        {
            try
            {
                int             prdFeatId = Convert.ToInt32(e.Values[0].ToString());
                ProductFeatures _banner   = context.ProductFeature.Where(m => m.Product_Feature_Id == prdFeatId).FirstOrDefault();

                context.Entry(_banner).State = System.Data.Entity.EntityState.Deleted;
                context.SaveChanges();

                LoadDetail();
                pnlErrorMessage.Attributes.Remove("class");
                pnlErrorMessage.Attributes["class"] = "alert alert-success alert-dismissable";
                pnlErrorMessage.Visible             = true;
                lblMessage.Text = "Product Feature Deleted Successfully.";

                pnlProduct.Visible = false;
            }
            catch (Exception ex)
            {
                pnlProduct.Visible = false;
                pnlErrorMessage.Attributes.Remove("class");
                pnlErrorMessage.Attributes["class"] = "alert alert-danger alert-dismissable";
                pnlErrorMessage.Visible             = true;
                lblMessage.Text = ex.Message;
            }
        }
Esempio n. 3
0
        public ActionResult Edit([Bind(Include = "Id,ProductId,Value,Name")] ProductFeatures model)
        {
            if (ModelState.IsValid)
            {
                try
                {
                    var feature = db.ProductFeatures.Find(model.Id);
                    feature.Name  = model.Name;
                    feature.Value = model.Value;

                    feature.UpdateTime      = DateTime.Now;
                    db.Entry(feature).State = EntityState.Modified;
                    db.SaveChanges();
                    return(RedirectToAction("Index", new { id = model.ProductId }));
                }
                catch (Exception e)
                {
                    ModelState.AddModelError("", e.Message);
                    ViewData["Product"] = db.Products.Find(model.Product);
                    return(View(model));
                }
            }
            ViewData["Product"] = db.Products.Find(model.Product);
            return(View(model));
        }
Esempio n. 4
0
 public IActionResult Edit([FromBody] ProductFeatures model)
 {
     if (ModelState.IsValid)
     {
         var _list = _service.Edit(model);
         return(Ok(_list));
     }
     return(BadRequest(ModelState.ErrorCount));
 }
        internal void DeleteProductFeature(int id)
        {
            ProductFeatures ProductFeatures = context.ProductFeature.Where(m => m.Product_Id == id).FirstOrDefault();

            if (ProductFeatures != null)
            {
                context.Entry(ProductFeatures).State = System.Data.Entity.EntityState.Deleted;
                context.SaveChanges();
            }
        }
Esempio n. 6
0
        /// <summary>
        ///     Creates a new model for the UX.
        /// </summary>
        /// <param name="bootstrapper">Bootstrapper hosting the UX.</param>
        protected Model(BootstrapperApplication bootstrapper)
        {
            Bootstrapper = bootstrapper;

            // Set the default values ( this can be overridden with the command line)
            InstallDirectory = Environment.Is64BitOperatingSystem
                ? @"C:\Program Files (x86)\Workshare\"
                : @"C:\Program Files\Workshare\";

            Features = new ProductFeatures(this);
            DetectUpgrade();
        }
Esempio n. 7
0
        public ActionResult ProductFeatures(int id, ProductFeatures model)
        {
            if (ModelState.IsValid)
            {
                model.ProductId = id;
                db.ProductFeaturesRepository.Insert(model);
                db.Save();
                return(RedirectToAction("ProductFeatures", new { id = id }));
            }

            return(RedirectToAction("ProductFeatures", new { id = id }));
        }
        protected void btnSearch_Click(object sender, EventArgs e)
        {
            try
            {
                int     prdId    = Convert.ToInt32(txtProductSearch.Text);
                Product _Product = context.Product.Include("SubCategory")
                                   .Include("ProductBanner")
                                   .Include("Admin")
                                   .Include("Store")
                                   .Include("ProductFlow")
                                   .Where(m => m.Product_Id == prdId && m.Product_Status == eProductStatus.Published.ToString())
                                   .FirstOrDefault();

                if (_Product != null)
                {
                    ProductFeatures _feature = context.ProductFeature.Where(m => m.Product_Id == _Product.Product_Id).FirstOrDefault();
                    if (_feature == null)
                    {
                        pnlProduct.Visible     = true;
                        _Product.ProductBanner = context.ProductBanner.ToList().Where(m => m.Product_Id == _Product.Product_Id).ToList();
                        lblId.Text             = _Product.Product_Id.ToString();
                        lblTitle.Text          = _Product.Product_Title;
                        Image1.ImageUrl        = "../../" + _Product.ProductBanner.Where(m => m.Product_Banner_Default == 1).FirstOrDefault().Product_Banner_Photo;
                    }
                    else
                    {
                        pnlProduct.Visible = false;
                        pnlErrorMessage.Attributes.Remove("class");
                        pnlErrorMessage.Attributes["class"] = "alert alert-danger alert-dismissable";
                        pnlErrorMessage.Visible             = true;
                        lblMessage.Text = "Selected product already added to the feature list..please try with other product";
                    }
                }
                else
                {
                    pnlProduct.Visible = false;
                    pnlErrorMessage.Attributes.Remove("class");
                    pnlErrorMessage.Attributes["class"] = "alert alert-danger alert-dismissable";
                    pnlErrorMessage.Visible             = true;
                    lblMessage.Text = "No Product found for your search or selected product does not have published status...please try with valid Product id";
                }
            }
            catch (Exception ex)
            {
                pnlProduct.Visible = false;
                pnlErrorMessage.Attributes.Remove("class");
                pnlErrorMessage.Attributes["class"] = "alert alert-danger alert-dismissable";
                pnlErrorMessage.Visible             = true;
                lblMessage.Text = ex.Message;
            }
        }
Esempio n. 9
0
        private List <ProductFeatures> GetProductFeatures(Product product)
        {
            List <ProductFeatures> lstFeatures = new List <ProductFeatures>();
            ProductFeatures        objFeature  = null;

            foreach (var feature in product.ProductFeatures)
            {
                objFeature = new ProductFeatures()
                {
                    FeatureID = feature.FeatureID, Feature = feature.Feature
                };
                lstFeatures.Add(objFeature);
                objFeature = null;
            }
            return(lstFeatures);
        }
Esempio n. 10
0
        public IActionResult AddProductFeatures([FromBody] ProductFeatures request)
        {
            var response = new OperationResponse <bool>();

            try
            {
                response.Data = _categoriesService.AddProductFeatures(request);
            }
            catch (Exception exception)
            {
                response.State = ResponseState.Error;
                response.Messages.Add(exception.Message);
                _logger.LogError(exception, "Error in AddProductFeatures ==>" + exception.StackTrace, request);
            }
            return(new JsonResult(response));
        }
        protected void btnAddToFeature_Click(object sender, EventArgs e)
        {
            List <ProductFeatures> _features = context.ProductFeature.ToList();

            if (_features.Where(m => m.Product_Feature_Type == Rachna.Teracotta.Project.Source.Entity.eProductFeature.Best.ToString()).Count() > 4 && ddlFeature.Text == Rachna.Teracotta.Project.Source.Entity.eProductFeature.Best.ToString())
            {
                pnlProduct.Visible = false;
                pnlErrorMessage.Attributes.Remove("class");
                pnlErrorMessage.Attributes["class"] = "alert alert-danger alert-dismissable";
                pnlErrorMessage.Visible             = true;
                lblMessage.Text = "There are already 5 items found for selected feature type. If you want to continue please delete the existing item";
            }
            else if (_features.Where(m => m.Product_Feature_Type == eProductFeature.Featured.ToString()).Count() > 4 && ddlFeature.Text == eProductFeature.Featured.ToString())
            {
                pnlProduct.Visible = false;
                pnlErrorMessage.Attributes.Remove("class");
                pnlErrorMessage.Attributes["class"] = "alert alert-danger alert-dismissable";
                pnlErrorMessage.Visible             = true;
                lblMessage.Text = "There are already 5 items found for selected feature type. If you want to continue please delete the existing item";
            }
            else if (_features.Where(m => m.Product_Feature_Type == eProductFeature.Latest.ToString()).Count() > 4 && ddlFeature.Text == eProductFeature.Latest.ToString())
            {
                pnlProduct.Visible = false;
                pnlErrorMessage.Attributes.Remove("class");
                pnlErrorMessage.Attributes["class"] = "alert alert-danger alert-dismissable";
                pnlErrorMessage.Visible             = true;
                lblMessage.Text = "There are already 5 items found for selected feature type. If you want to continue please delete the existing item";
            }
            else if (_features.Where(m => m.Product_Feature_Type == eProductFeature.Top.ToString()).Count() > 4 && ddlFeature.Text == eProductFeature.Top.ToString())
            {
                pnlProduct.Visible = false;
                pnlErrorMessage.Attributes.Remove("class");
                pnlErrorMessage.Attributes["class"] = "alert alert-danger alert-dismissable";
                pnlErrorMessage.Visible             = true;
                lblMessage.Text = "There are already 5 items found for selected feature type. If you want to continue please delete the existing item";
            }
            else if (_features.Where(m => m.Product_Feature_Type == eProductFeature.Hot.ToString()).Count() > 4 && ddlFeature.Text == eProductFeature.Hot.ToString())
            {
                pnlProduct.Visible = false;
                pnlErrorMessage.Attributes.Remove("class");
                pnlErrorMessage.Attributes["class"] = "alert alert-danger alert-dismissable";
                pnlErrorMessage.Visible             = true;
                lblMessage.Text = "There are already 5 items found for selected feature type. If you want to continue please delete the existing item";
            }
            else if (_features.Where(m => m.Product_Feature_Type == eProductFeature.OurChoice.ToString()).Count() > 4 && ddlFeature.Text == eProductFeature.OurChoice.ToString())
            {
                pnlProduct.Visible = false;
                pnlErrorMessage.Attributes.Remove("class");
                pnlErrorMessage.Attributes["class"] = "alert alert-danger alert-dismissable";
                pnlErrorMessage.Visible             = true;
                lblMessage.Text = "There are already 5 items found for selected feature type. If you want to continue please delete the existing item";
            }
            else
            {
                ProductFeatures ProductFeature = new ProductFeatures()
                {
                    Product_Id                  = Convert.ToInt32(lblId.Text),
                    Product_Feature_Type        = ddlFeature.Text,
                    Administrators_Id           = Convert.ToInt32(Session[ConfigurationSettings.AppSettings["AdminSession"].ToString()].ToString()),
                    Product_Feature_CreatedDate = DateTime.Now,
                    Product_Feature_UpdatedDate = DateTime.Now
                };

                int maxAdminId = 1;
                if (context.ProductFeature.ToList().Count > 0)
                {
                    maxAdminId = context.ProductFeature.Max(m => m.Product_Feature_Id);
                }
                ProductFeature.Product_Feature_Code = "PRDFETRACH" + maxAdminId + "TERA" + (maxAdminId + 1);
                context.ProductFeature.Add(ProductFeature);
                context.SaveChanges();

                pnlErrorMessage.Attributes.Remove("class");
                pnlErrorMessage.Attributes["class"] = "alert alert-success alert-dismissable";
                pnlErrorMessage.Visible             = true;
                lblMessage.Text    = "Selected Product Added to the feature list Successfully.";
                pnlProduct.Visible = false;
                LoadDetail();
            };
        }
        /// <summary>
        /// The execute.
        /// </summary>
        /// <param name="arg">
        /// The pipeline argument.
        /// </param>
        /// <param name="context">
        /// The context.
        /// </param>
        /// <returns>
        /// The <see cref="PipelineArgument"/>.
        /// </returns>
        public override Task <EntityView> Run(EntityView arg, CommercePipelineExecutionContext context)
        {
            Condition.Requires(arg).IsNotNull($"{Name}: The argument cannot be null.");


            var productFeatureActionPolicy = context.GetPolicy <ProductFeaturesActionsPolicy>();

            // Only proceed if the right action was invoked
            if (string.IsNullOrEmpty(arg.Action) || !arg.Action.Equals(productFeatureActionPolicy.ProductFeatures, StringComparison.OrdinalIgnoreCase))
            {
                return(Task.FromResult(arg));
            }

            // Get the sellable item from the context
            var entity = context.CommerceContext.GetObject <Sitecore.Commerce.Plugin.Catalog.SellableItem>(x => x.Id.Equals(arg.EntityId));

            if (entity == null)
            {
                return(Task.FromResult(arg));
            }

            ProductFeatures component = null;

            // Get the notes component from the sellable item or its variation
            if (!string.IsNullOrWhiteSpace(arg.ItemId))
            {
                component = entity.GetVariation(arg.ItemId).GetComponent <ProductFeatures>();
            }
            else
            {
                component = entity.GetComponent <ProductFeatures>();
            }


            component.Feature_Bullets_1 =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Feature_Bullets_1), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Feature_Bullets_2 =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Feature_Bullets_2), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Feature_Bullets_3 =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Feature_Bullets_3), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Feature_Bullets_4 =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Feature_Bullets_4), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Feature_Bullets_5 =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Feature_Bullets_5), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Feature_Bullets_6 =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Feature_Bullets_6), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Feature_Bullets_7 =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Feature_Bullets_7), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Feature_Bullets_8 =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Feature_Bullets_8), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Feature_Bullets_9 =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Feature_Bullets_9), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Feature_Bullets_10 =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Feature_Bullets_10), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Marketing_Claims_1 =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Marketing_Claims_1), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Fitting_Features =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Fitting_Features), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Mirror_Bath_Product_Type =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Mirror_Bath_Product_Type), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Mirror_Beveled_Frame_YN =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Mirror_Beveled_Frame_YN), StringComparison.OrdinalIgnoreCase))?.Value;

            component.Mirror_Frame_Finish_Family =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Mirror_Frame_Finish_Family), StringComparison.OrdinalIgnoreCase))?.Value;



            component.Mirror_Beveled_Frame_YN =
                arg.Properties.FirstOrDefault(x =>
                                              x.Name.Equals(nameof(ProductFeatures.Mirror_Beveled_Frame_YN), StringComparison.OrdinalIgnoreCase))?.Value;

            context.Logger.LogInformation("Current Entity Version : " + entity.Version);

            // Persist changes
            this.Commander.Pipeline <IPersistEntityPipeline>().Run(new PersistEntityArgument(entity), context);

            return(Task.FromResult(arg));
        }