示例#1
0
        public virtual ActionResult DeleteImageProduct(List <string> checkboxImage, int Id)
        {
            var list    = new List <ImageProduct>();
            var address = Server.MapPath("~/Content/Images/Product/GallerySize/");

            foreach (var item in checkboxImage)
            {
                list.Add(new ImageProduct {
                    Id = int.Parse(item.Split('/')[0])
                });
                TODO.DeleteImage(Path.Combine(address, item.Split('/')[1]));
            }

            _unitOfWork.RemoveRange <ImageProduct>(list);
            if (_unitOfWork.SaveAllChanges() > 0)
            {
                //Remove Id From Document
                LuceneProductSearch.ClearLuceneIndexRecord(Id);
                return(RedirectToAction(actionName: MVC.admin.Product.ActionNames.DetailsProduct, routeValues: new { Id = Id }));
            }
            else
            {
                ViewData["deleteImageProduct"] = Helperalert.alert(new AlertViewModel {
                    Alert = AlertOperation.SurveyOperation(StatusOperation.Dependencies), Status = AlertMode.info
                });
                return(RedirectToAction(MVC.admin.Product.ActionNames.DeleteImageProduct, new { Id = Id }));
            }
        }
示例#2
0
        public virtual ActionResult UpdateProduct(ProductEditViewModel model, string _PrimryImage)
        {
            var product = _productService.GetById(model.Id);

            if (model.Image != null)
            {
                if (model.Image.ContentLength > 0)
                {
                    //delete with 3 address
                    TODO.DeleteImage(Path.Combine(Server.MapPath("~/Content/Images/Product/MainSize/") + _PrimryImage));
                    TODO.DeleteImage(Path.Combine(Server.MapPath("~/Content/Images/Product/ThumbLine_New/") + _PrimryImage));
                    TODO.DeleteImage(Path.Combine(Server.MapPath("~/Content/Images/Product/ThumbLine_Offer") + _PrimryImage));

                    //add with 3 address
                    using (var img = Image.FromStream(model.Image.InputStream))
                    {
                        string fileName = TODO.CheckExistFile(Server.MapPath("~/Content/Images/Product/MainSize/"), model.Image.FileName);

                        TODO.UploadImage(img, new Size(180, 180), Server.MapPath("~/Content/Images/Product/MainSize/"), fileName);
                        TODO.UploadImage(img, new Size(70, 70), Server.MapPath("~/Content/Images/Product/ThumbLine_New/"), fileName);
                        TODO.UploadImage(img, new Size(60, 75), Server.MapPath("~/Content/Images/Product/ThumbLine_Offer"), fileName);
                        product.PrimryImage = fileName;
                    }
                }
            }

            product.Explain = model.Explain; product.Name = model.Name; product.Time = model.Time; product.Date = model.Date; product.Price = model.Price; product.Company = _companyService.GetById(model.Company_Id); product.Category = _categoryService.GetById(model.Category_Id);

            product.Labels.Clear();
            product.Labels = null;
            if (model.LabelsId != null)
            {
                var labels = _labelService.GetLabelsByIds(model.LabelsId);
                product.Labels = labels;
            }
            else
            {
                product.Labels = null;
            }

            product.ModifiedDate = DateTime.Now;

            _productService.Update(product);
            if (_unitOfWork.SaveAllChanges() > 0)
            {
                //Remove Id From Document
                LuceneProductSearch.ClearLuceneIndexRecord(model.Id);

                //Add New Document
                LuceneProductSearch.AddUpdateLuceneIndex(new LuceneProductModel
                {
                    Product_Id      = model.Id,
                    Product_Explain = model.Explain.ToSafeHtml().RemoveHtmlTags(),
                    Product_Name    = model.Name
                });

                return(RedirectToAction(actionName: MVC.admin.Product.ActionNames.DetailsProduct, routeValues: new { Id = model.Id }));
            }
            else
            {
                TempData["createProduct"] = Helperalert.alert(new AlertViewModel {
                    Alert = AlertOperation.SurveyOperation(StatusOperation.FailUpdate), Status = AlertMode.warning
                });
                return(RedirectToAction(actionName: MVC.admin.Product.ActionNames.UpdateProduct, routeValues: new { Id = model.Id }));
            }
        }