Example #1
0
        public ActionResult EditTimeProduct(TimeProductModel model, int recordId = -1)
        {
            TimeProductInfo timeProductInfo = AdminProducts.GetTimeProductByRecordId(recordId);

            if (timeProductInfo == null)
            {
                return(PromptView("定时商品不存在"));
            }

            if (ModelState.IsValid)
            {
                DateTime noTime = new DateTime(1900, 1, 1);
                timeProductInfo.OnSaleTime  = model.OnSaleTime == null ? noTime : model.OnSaleTime.Value;
                timeProductInfo.OutSaleTime = model.OutSaleTime == null ? noTime : model.OutSaleTime.Value;

                if (model.OnSaleTime != timeProductInfo.OnSaleTime)
                {
                    timeProductInfo.OnSaleState = model.OnSaleTime == null ? 0 : 1;
                }
                if (model.OutSaleTime != timeProductInfo.OutSaleTime)
                {
                    timeProductInfo.OutSaleState = model.OutSaleTime == null ? 0 : 1;
                }

                AdminProducts.UpdateTimeProduct(timeProductInfo);
                AddAdminOperateLog("修改定时商品", "修改定时商品,定时商品ID为:" + timeProductInfo.Pid);
                return(PromptView("定时商品修改成功"));
            }

            ViewData["referer"] = ShopUtils.GetAdminRefererCookie();
            return(View(model));
        }
Example #2
0
        /// <summary>
        /// 添加优惠劵商品
        /// </summary>
        /// <returns></returns>
        public ActionResult AddCouponProduct(int couponTypeId = -1, int pid = 1)
        {
            CouponTypeInfo couponTypeInfo = AdminCoupons.AdminGetCouponTypeById(couponTypeId);

            if (couponTypeInfo == null)
            {
                return(PromptView("优惠劵类型不存在"));
            }
            if (couponTypeInfo.LimitProduct == 0)
            {
                return(PromptView("此优惠劵类型没有限制商品"));
            }

            PartProductInfo partProductInfo = AdminProducts.AdminGetPartProductById(pid);

            if (partProductInfo == null)
            {
                return(PromptView("此商品不存在"));
            }

            if (AdminCoupons.IsExistCouponProduct(couponTypeId, pid))
            {
                return(PromptView("此商品已经存在"));
            }

            AdminCoupons.AddCouponProduct(couponTypeId, pid);
            AddAdminOperateLog("添加优惠劵商品", "添加优惠劵商品,商品为:" + partProductInfo.Name);
            return(PromptView("优惠劵商品添加成功"));
        }
Example #3
0
        /// <summary>
        /// 更新商品关键词
        /// </summary>
        public ActionResult UpdateProductKeyword(string keyword = "", int relevancy = 0, int pid = -1)
        {
            PartProductInfo partProductInfo = AdminProducts.AdminGetPartProductById(pid);

            if (partProductInfo == null)
            {
                return(PromptView(Url.Action("productkeywordlist", new { pid = pid }), "商品不存在"));
            }

            if (string.IsNullOrWhiteSpace(keyword))
            {
                return(PromptView(Url.Action("productkeywordlist", new { pid = pid }), "关键词不能为空"));
            }

            if (keyword.Length > 20)
            {
                return(PromptView(Url.Action("productkeywordlist", new { pid = pid }), "关键词最多只能输入20个字"));
            }

            ProductKeywordInfo productKeywordInfo = new ProductKeywordInfo
            {
                Keyword   = keyword,
                Pid       = pid,
                Relevancy = relevancy
            };

            Searches.UpdateProductKeyword(productKeywordInfo);
            AddAdminOperateLog("修改商品关键词", "修改商品关键词,商品ID:" + pid);
            return(Content("1"));
        }
Example #4
0
        /// <summary>
        /// 添加关联商品
        /// </summary>
        /// <param name="pid">主商品id</param>
        /// <param name="relatePid">关联商品id</param>
        /// <returns></returns>
        public ActionResult AddRelateProduct(int pid = -1, int relatePid = -1)
        {
            PartProductInfo partProductInfo1 = AdminProducts.AdminGetPartProductById(pid);

            if (partProductInfo1 == null)
            {
                return(PromptView(Url.Action("relateproductlist", new { pid = pid }), "主商品不存在"));
            }

            PartProductInfo partProductInfo2 = AdminProducts.AdminGetPartProductById(relatePid);

            if (partProductInfo2 == null)
            {
                return(PromptView(Url.Action("relateproductlist", new { pid = pid }), "关联商品不存在"));
            }

            if (pid == relatePid)
            {
                return(PromptView(Url.Action("relateproductlist", new { pid = pid }), "不能关联自身"));
            }

            if (AdminProducts.IsExistRelateProduct(pid, relatePid))
            {
                return(PromptView(Url.Action("relateproductlist", new { pid = pid }), "此关联商品已经存在"));
            }

            AdminProducts.AddRelateProduct(pid, relatePid);
            AddAdminOperateLog("添加关联商品", "添加关联商品,关联商品为:" + partProductInfo2.Name);
            return(PromptView(Url.Action("relateproductlist", new { pid = pid }), "关联商品添加成功"));
        }
Example #5
0
        /// <summary>
        /// 商品统计
        /// </summary>
        /// <param name="productName">商品名称</param>
        /// <param name="categoryName">分类名称</param>
        /// <param name="brandName">品牌名称</param>
        /// <param name="sortOptions">排序</param>
        /// <param name="cateId">分类id</param>
        /// <param name="brandId">品牌id</param>
        /// <param name="pageNumber">当前页数</param>
        /// <param name="pageSize">每页数</param>
        /// <returns></returns>
        public ActionResult ProductStat(string productName, string categoryName, string brandName, string sortColumn, string sortDirection, int cateId = -1, int brandId = -1, int pageNumber = 1, int pageSize = 15)
        {
            string condition = AdminProducts.AdminGetProductListCondition(0, 0, productName, cateId, brandId, -1);
            string sort      = AdminProducts.AdminGetProductListSort(sortColumn, sortDirection);

            PageModel pageModel = new PageModel(pageSize, pageNumber, AdminProducts.AdminGetProductCount(condition));

            DataTable     productList = AdminProducts.AdminGetProductList(pageModel.PageSize, pageModel.PageNumber, condition, sort);
            StringBuilder pidList     = new StringBuilder();

            foreach (DataRow row in productList.Rows)
            {
                pidList.AppendFormat("{0},", row["pid"]);
            }

            ProductStatModel model = new ProductStatModel()
            {
                ProductList   = pidList.Length > 0 ? AdminProducts.GetProductSummaryList(pidList.Remove(pidList.Length - 1, 1).ToString()) : new DataTable(),
                PageModel     = pageModel,
                SortColumn    = sortColumn,
                SortDirection = sortDirection,
                ProductName   = productName,
                CateId        = cateId,
                BrandId       = brandId,
                CategoryName  = string.IsNullOrWhiteSpace(categoryName) ? "全部分类" : categoryName,
                BrandName     = string.IsNullOrWhiteSpace(brandName) ? "全部品牌" : brandName
            };

            return(View(model));
        }
Example #6
0
        public ActionResult EditProduct(int pid = -1)
        {
            ProductInfo productInfo = AdminProducts.AdminGetProductById(pid);

            if (productInfo == null)
            {
                return(PromptView("商品不存在"));
            }

            CategoryInfo vCategoryInfo = AdminCategories.GetCategoryById(productInfo.CateId);
            string       vCateName     = "";

            if (vCategoryInfo != null)
            {
                vCateName = vCategoryInfo.Name;
            }


            EditProductModel model = new EditProductModel();

            model.PSN          = productInfo.PSN;
            model.CateId       = productInfo.CateId;
            model.CategoryName = vCateName;
            model.BrandId      = productInfo.BrandId;
            model.ProductName  = productInfo.Name;
            model.ShopPrice    = productInfo.ShopPrice;
            model.MarketPrice  = productInfo.MarketPrice;
            model.CostPrice    = productInfo.CostPrice;
            model.State        = productInfo.State;
            model.IsBest       = productInfo.IsBest == 1 ? true : false;
            model.IsHot        = productInfo.IsHot == 1 ? true : false;
            model.IsNew        = productInfo.IsNew == 1 ? true : false;
            model.DisplayOrder = productInfo.DisplayOrder;
            model.Weight       = productInfo.Weight;
            model.Description  = productInfo.Description;

            model.BrandName = AdminBrands.GetBrandById(productInfo.BrandId).Name;


            //库存信息
            ProductStockInfo productStockInfo = AdminProducts.GetProductStockByPid(pid);

            model.StockNumber = productStockInfo.Number;
            model.StockLimit  = productStockInfo.Limit;

            //商品属性列表
            List <ProductAttributeInfo> productAttributeList = Products.GetProductAttributeList(pid);

            //商品sku项列表
            DataTable productSKUItemList = AdminProducts.GetProductSKUItemList(productInfo.Pid);

            ViewData["pid"]                  = productInfo.Pid;
            ViewData["cateId"]               = productInfo.CateId;
            ViewData["categoryName"]         = vCateName;
            ViewData["productAttributeList"] = productAttributeList;
            ViewData["productSKUItemList"]   = productSKUItemList;
            ViewData["referer"]              = ShopUtils.GetAdminRefererCookie();

            return(View(model));
        }
Example #7
0
        /// <summary>
        /// 添加商品图片
        /// </summary>
        public ActionResult AddProductImage(string showImg, int isMain = 0, int displayOrder = 0, int pid = -1)
        {
            PartProductInfo partProductInfo = AdminProducts.AdminGetPartProductById(pid);

            if (partProductInfo == null)
            {
                return(PromptView("商品不存在"));
            }
            if (partProductInfo.StoreId != WorkContext.StoreId)
            {
                return(PromptView("不能操作其它店铺的商品"));
            }

            if (string.IsNullOrWhiteSpace(showImg))
            {
                return(PromptView(Url.Action("productimagelist", new { pid = pid }), "图片不能为空"));
            }

            ProductImageInfo productImageInfo = new ProductImageInfo
            {
                Pid          = pid,
                ShowImg      = showImg,
                IsMain       = isMain == 0 ? 0 : 1,
                DisplayOrder = displayOrder,
                StoreId      = partProductInfo.StoreId
            };

            AdminProducts.CreateProductImage(productImageInfo);
            AddStoreAdminLog("添加商品图片", "添加商品图片,商品ID为:" + pid);
            return(PromptView(Url.Action("productimagelist", new { pid = pid }), "商品图片添加成功"));
        }
Example #8
0
        /// <summary>
        /// 下架商品列表
        /// </summary>
        /// <param name="productName">商品名称</param>
        /// <param name="categoryName">分类名称</param>
        /// <param name="brandName">品牌名称</param>
        /// <param name="sortOptions">排序</param>
        /// <param name="cateId">分类id</param>
        /// <param name="brandId">品牌id</param>
        /// <param name="pageNumber">当前页数</param>
        /// <param name="pageSize">每页数</param>
        /// <returns></returns>
        public ActionResult OutSaleProductList(string productName, string categoryName, string brandName, string sortColumn, string sortDirection, int cateId = -1, int brandId = -1, int pageNumber = 1, int pageSize = 15)
        {
            string condition = AdminProducts.AdminGetProductListCondition(productName, cateId, brandId, (int)ProductState.OutSale);
            string sort      = AdminProducts.AdminGetProductListSort(sortColumn, sortDirection);

            PageModel pageModel = new PageModel(pageSize, pageNumber, AdminProducts.AdminGetProductCount(condition));

            ProductListModel model = new ProductListModel()
            {
                ProductList   = AdminProducts.AdminGetProductList(pageModel.PageSize, pageModel.PageNumber, condition, sort),
                PageModel     = pageModel,
                SortColumn    = sortColumn,
                SortDirection = sortDirection,
                ProductName   = productName,
                CateId        = cateId,
                BrandId       = brandId,
                CategoryName  = string.IsNullOrWhiteSpace(categoryName) ? "全部分类" : categoryName,
                BrandName     = string.IsNullOrWhiteSpace(brandName) ? "全部品牌" : brandName
            };

            ShopUtils.SetAdminRefererCookie(string.Format("{0}?pageNumber={1}&pageSize={2}&sortColumn={3}&sortDirection={4}&ProductName={5}&cateId={6}&brandId={7}&categoryName={8}&brandName={9}",
                                                          Url.Action("outsaleproductlist"),
                                                          pageModel.PageNumber, pageModel.PageSize,
                                                          sortColumn, sortDirection,
                                                          productName,
                                                          cateId, brandId,
                                                          categoryName, brandName));
            return(View(model));
        }
Example #9
0
        /// <summary>
        /// 添加商品关键词
        /// </summary>
        public ActionResult AddProductKeyword(string keyword, int relevancy = 0, int pid = -1)
        {
            PartProductInfo partProductInfo = AdminProducts.AdminGetPartProductById(pid);

            if (partProductInfo == null)
            {
                return(PromptView(Url.Action("productkeywordlist", new { pid = pid }), "商品不存在"));
            }

            if (string.IsNullOrWhiteSpace(keyword))
            {
                return(PromptView(Url.Action("productkeywordlist", new { pid = pid }), "关键词不能为空"));
            }

            if (keyword.Length > 20)
            {
                return(PromptView(Url.Action("productkeywordlist", new { pid = pid }), "关键词最多只能输入20个字"));
            }

            if (AdminProducts.IsExistProductKeyWord(pid, keyword))
            {
                return(PromptView(Url.Action("productkeywordlist", new { pid = pid }), "关键词已经存在"));
            }

            ProductKeywordInfo productKeywordInfo = new ProductKeywordInfo
            {
                Keyword   = keyword,
                Pid       = pid,
                Relevancy = relevancy
            };

            AdminProducts.CreateProductKeyword(productKeywordInfo);
            AddAdminOperateLog("添加商品关键词", "添加商品关键词,商品ID为:" + pid);
            return(PromptView(Url.Action("productkeywordlist", new { pid = pid }), "商品关键词添加成功"));
        }
Example #10
0
        /// <summary>
        /// 添加商品图片
        /// </summary>
        public ActionResult AddProductImage(string showImg, int displayOrder = 0, int pid = -1)
        {
            PartProductInfo partProductInfo = AdminProducts.AdminGetPartProductById(pid);

            if (partProductInfo == null)
            {
                return(PromptView(Url.Action("productimagelist", new { pid = pid }), "商品不存在"));
            }

            if (string.IsNullOrWhiteSpace(showImg))
            {
                return(PromptView(Url.Action("productimagelist", new { pid = pid }), "图片不能为空"));
            }

            ProductImageInfo productImageInfo = new ProductImageInfo
            {
                Pid          = pid,
                ShowImg      = showImg,
                IsMain       = 0,
                DisplayOrder = displayOrder
            };

            AdminProducts.CreateProductImage(productImageInfo);
            AddAdminOperateLog("添加商品图片", "添加商品图片,商品ID为:" + pid);
            return(PromptView(Url.Action("productimagelist", new { pid = pid }), "商品图片添加成功"));
        }
Example #11
0
        /// <summary>
        /// 回收站商品列表
        /// </summary>
        /// <param name="productName">商品名称</param>
        /// <param name="categoryName">分类名称</param>
        /// <param name="brandName">品牌名称</param>
        /// <param name="cateId">分类id</param>
        /// <param name="brandId">品牌id</param>
        /// <param name="pageNumber">当前页数</param>
        /// <param name="pageSize">每页数</param>
        /// <returns></returns>
        public ActionResult RecycleBinProductList(string productName, string categoryName, string brandName, int cateId = -1, int brandId = -1, int pageNumber = 1, int pageSize = 15)
        {
            string condition = AdminProducts.AdminGetProductListCondition(productName, cateId, brandId, (int)ProductState.RecycleBin);

            PageModel pageModel = new PageModel(pageSize, pageNumber, AdminProducts.AdminGetProductCount(condition));

            ProductListModel model = new ProductListModel()
            {
                PageModel    = pageModel,
                ProductList  = AdminProducts.AdminGetProductList(pageModel.PageSize, pageModel.PageNumber, condition),
                CateId       = cateId,
                CategoryName = string.IsNullOrWhiteSpace(categoryName) ? "全部分类" : categoryName,
                BrandId      = brandId,
                BrandName    = string.IsNullOrWhiteSpace(brandName) ? "全部品牌" : brandName,
                ProductName  = productName
            };

            ShopUtils.SetAdminRefererCookie(string.Format("{0}?pageNumber={1}&pageSize={2}&ProductName={3}&cateId={4}&brandId={5}&categoryName={6}&brandName={7}",
                                                          Url.Action("recyclebinproductlist"),
                                                          pageModel.PageNumber, pageModel.PageSize,
                                                          productName,
                                                          cateId, brandId,
                                                          categoryName, brandName));
            return(View(model));
        }
Example #12
0
        public ActionResult EditTimeProduct(int recordId = -1)
        {
            TimeProductInfo timeProductInfo = AdminProducts.GetTimeProductByRecordId(recordId);

            if (timeProductInfo == null)
            {
                return(PromptView("定时商品不存在"));
            }
            if (timeProductInfo.StoreId != WorkContext.StoreId)
            {
                return(PromptView("不能编辑其它店铺的定时商品"));
            }

            DateTime?nullTime = null;
            DateTime noTime   = new DateTime(1900, 1, 1);

            TimeProductModel model = new TimeProductModel();

            model.Pid         = timeProductInfo.Pid;
            model.ProductName = AdminProducts.GetPartProductById(timeProductInfo.Pid).Name;
            model.OnSaleTime  = timeProductInfo.OnSaleTime == noTime ? nullTime : timeProductInfo.OnSaleTime;
            model.OutSaleTime = timeProductInfo.OutSaleTime == noTime ? nullTime : timeProductInfo.OutSaleTime;

            ViewData["referer"] = MallUtils.GetStoreAdminRefererCookie();
            return(View(model));
        }
Example #13
0
        public ActionResult AddTimeProduct(TimeProductModel model)
        {
            PartProductInfo partProductInfo = AdminProducts.AdminGetPartProductById(model.Pid);

            if (partProductInfo == null)
            {
                ModelState.AddModelError("Pid", "请选择商品");
            }
            if (AdminProducts.IsExistTimeProduct(model.Pid))
            {
                ModelState.AddModelError("Pid", "此商品已经存在");
            }

            if (ModelState.IsValid)
            {
                DateTime        noTime          = new DateTime(1900, 1, 1);
                TimeProductInfo timeProductInfo = new TimeProductInfo()
                {
                    Pid          = model.Pid,
                    OnSaleState  = model.OnSaleTime == null ? 0 : 1,
                    OutSaleState = model.OutSaleTime == null ? 0 : 1,
                    OnSaleTime   = model.OnSaleTime == null ? noTime : model.OnSaleTime.Value,
                    OutSaleTime  = model.OutSaleTime == null ? noTime : model.OutSaleTime.Value
                };
                AdminProducts.AddTimeProduct(timeProductInfo);
                AddAdminOperateLog("添加定时商品", "添加定时商品,定时商品为:" + partProductInfo.Name);
                return(PromptView("定时商品添加成功"));
            }
            ViewData["referer"] = ShopUtils.GetAdminRefererCookie();
            return(View(model));
        }
Example #14
0
        /// <summary>
        /// 添加优惠劵商品
        /// </summary>
        /// <returns></returns>
        public ActionResult AddCouponProduct(int couponTypeId = -1, int pid = 1)
        {
            CouponTypeInfo couponTypeInfo = AdminCoupons.AdminGetCouponTypeById(couponTypeId);

            if (couponTypeInfo == null)
            {
                return(PromptView("优惠劵类型不存在"));
            }
            if (couponTypeInfo.LimitProduct == 0)
            {
                return(PromptView("此优惠劵类型没有限制商品"));
            }

            PartProductInfo partProductInfo = AdminProducts.AdminGetPartProductById(pid);

            if (partProductInfo == null)
            {
                return(PromptView("此商品不存在"));
            }

            if (couponTypeInfo.StoreId != partProductInfo.StoreId)
            {
                return(PromptView(Url.Action("couponproductlist", new { couponTypeId = couponTypeId }), "只能关联同一店铺的商品"));
            }

            if (AdminCoupons.IsExistCouponProduct(couponTypeId, pid))
            {
                return(PromptView("此商品已经存在"));
            }

            AdminCoupons.AddCouponProduct(couponTypeId, pid);
            AddMallAdminLog("添加优惠劵商品", "添加优惠劵商品,商品为:" + partProductInfo.Name);
            return(PromptView("优惠劵商品添加成功"));
        }
Example #15
0
        /// <summary>
        /// 下架商品
        /// </summary>
        public ActionResult OutSaleProduct(int[] pidList)
        {
            bool result = AdminProducts.OutSaleProductById(pidList);

            if (result)
            {
                AddAdminOperateLog("下架商品", "下架商品,商品ID为:" + CommonHelper.IntArrayToString(pidList));
                if (WorkContext.IsHttpAjax)
                {
                    return(Content("1"));
                }
                else
                {
                    return(PromptView("商品下架成功"));
                }
            }
            else
            {
                if (WorkContext.IsHttpAjax)
                {
                    return(Content("0"));
                }
                else
                {
                    return(PromptView("商品下架失败"));
                }
            }
        }
Example #16
0
        public ActionResult EditProduct(EditProductModel model, int pid = -1)
        {
            ProductInfo productInfo = AdminProducts.AdminGetProductById(pid);

            if (productInfo == null)
            {
                return(PromptView("商品不存在"));
            }

            int pid2 = AdminProducts.AdminGetProductIdByName(model.ProductName);

            if (pid2 > 0 && pid2 != pid)
            {
                ModelState.AddModelError("ProductName", "名称已经存在");
            }

            if (ModelState.IsValid)
            {
                productInfo.PSN          = model.PSN ?? "";
                productInfo.BrandId      = model.BrandId;
                productInfo.StoreCid     = model.StoreCid;
                productInfo.StoreSTid    = model.StoreSTid;
                productInfo.Name         = model.ProductName;
                productInfo.ShopPrice    = model.ShopPrice;
                productInfo.MarketPrice  = model.MarketPrice;
                productInfo.CostPrice    = model.CostPrice;
                productInfo.State        = model.State;
                productInfo.IsBest       = model.IsBest == true ? 1 : 0;
                productInfo.IsHot        = model.IsHot == true ? 1 : 0;
                productInfo.IsNew        = model.IsNew == true ? 1 : 0;
                productInfo.DisplayOrder = model.DisplayOrder;
                productInfo.Weight       = model.Weight;
                productInfo.Description  = model.Description ?? "";
                productInfo.Spec         = model.Spec ?? "";

                AdminProducts.UpdateProduct(productInfo, model.StockNumber, model.StockLimit);
                AddMallAdminLog("修改商品", "修改商品,商品ID为:" + pid);
                return(PromptView("商品修改成功"));
            }


            //商品属性列表
            List <ProductAttributeInfo> productAttributeList = Products.GetProductAttributeList(pid);

            //商品sku项列表
            DataTable productSKUItemList = AdminProducts.GetProductSKUItemList(productInfo.Pid);

            ViewData["pid"]                  = productInfo.Pid;
            ViewData["storeId"]              = productInfo.StoreId;
            ViewData["storeName"]            = AdminStores.GetStoreById(productInfo.StoreId).Name;
            ViewData["cateId"]               = productInfo.CateId;
            ViewData["categoryName"]         = AdminCategories.GetCategoryById(productInfo.CateId).Name;
            ViewData["productAttributeList"] = productAttributeList;
            ViewData["productSKUItemList"]   = productSKUItemList;
            ViewData["referer"]              = MallUtils.GetMallAdminRefererCookie();

            return(View(model));
        }
Example #17
0
        public ActionResult AddSKU(AddSKUModel model)
        {
            if (model.AttrIdList == null || model.AttrIdList.Length < 1)
            {
                ModelState.AddModelError("CateId", "请选择SKU");
            }

            if (ModelState.IsValid)
            {
                //商品信息
                ProductInfo productInfo = new ProductInfo()
                {
                    PSN          = "",
                    CateId       = model.CateId,
                    BrandId      = model.BrandId,
                    SKUGid       = 0,
                    Name         = model.ProductName,
                    ShopPrice    = model.ShopPrice,
                    MarketPrice  = model.MarketPrice,
                    CostPrice    = model.CostPrice,
                    State        = (int)ProductState.OutSale,//设为下架状态
                    IsBest       = model.IsBest == true ? 1 : 0,
                    IsHot        = model.IsHot == true ? 1 : 0,
                    IsNew        = model.IsNew == true ? 1 : 0,
                    DisplayOrder = model.DisplayOrder,
                    Weight       = model.Weight,
                    ShowImg      = "",
                    Description  = model.Description ?? "",
                    AddTime      = DateTime.Now
                };

                //SKU处理
                List <ProductSKUItemInfo> productSKUItemList = new List <ProductSKUItemInfo>();
                for (int i = 0; i < model.AttrIdList.Length; i++)
                {
                    int    attrId      = model.AttrIdList[i];         //属性id
                    int    attrValueId = model.AttrValueIdList[i];    //属性值id
                    string inputValue  = model.AttrInputValueList[i]; //属性输入值
                    if (attrId > 0 && attrValueId > 0)
                    {
                        productSKUItemList.Add(new ProductSKUItemInfo()
                        {
                            AttrId      = attrId,
                            AttrValueId = attrValueId,
                            InputValue  = inputValue ?? ""
                        });
                    }
                }

                AdminProducts.AddSKU(productInfo, productSKUItemList);
                AddAdminOperateLog("添加SKU商品", "添加SKU商品,商品为:" + model.ProductName);

                return(PromptView(Url.Action("outsaleproductlist"), "SKU商品添加成功"));
            }
            ViewData["referer"] = ShopUtils.GetAdminRefererCookie();
            return(View(model));
        }
Example #18
0
        /// <summary>
        /// 更新商品属性
        /// </summary>
        /// <param name="pid">商品id</param>
        /// <param name="attrId">属性id</param>
        /// <param name="attrValueId">属性值id</param>
        /// <param name="inputValue">输入值</param>
        /// <param name="type">更新类型</param>
        /// <returns></returns>
        public ActionResult UpdateProductAttribute(int pid = -1, int attrId = -1, int attrValueId = -1, string inputValue = "", int type = -1)
        {
            PartProductInfo partProductInfo = AdminProducts.AdminGetPartProductById(pid);

            if (partProductInfo == null || partProductInfo.StoreId != WorkContext.StoreId)
            {
                return(Content("0"));
            }

            bool result = false;
            ProductAttributeInfo productAttributeInfo = AdminProducts.GetProductAttributeByPidAndAttrId(pid, attrId);

            if (productAttributeInfo == null)
            {
                productAttributeInfo = new ProductAttributeInfo();

                productAttributeInfo.Pid         = pid;
                productAttributeInfo.AttrId      = attrId;
                productAttributeInfo.AttrValueId = attrValueId;
                if (AdminCategories.GetAttributeValueById(attrValueId).IsInput == 0 || string.IsNullOrWhiteSpace(inputValue))
                {
                    productAttributeInfo.InputValue = "";
                }
                else
                {
                    productAttributeInfo.InputValue = inputValue;
                }

                result = AdminProducts.CreateProductAttribute(productAttributeInfo);
            }
            else
            {
                if (type == 1)
                {
                    productAttributeInfo.AttrValueId = attrValueId;
                    productAttributeInfo.InputValue  = inputValue;
                    result = AdminProducts.UpdateProductAttribute(productAttributeInfo);
                }
                else if (type == 0)
                {
                    productAttributeInfo.AttrValueId = attrValueId;
                    productAttributeInfo.InputValue  = "";
                    result = AdminProducts.UpdateProductAttribute(productAttributeInfo);
                }
            }
            if (result)
            {
                AddStoreAdminLog("修改商品属性", "修改商品属性,商品属性ID:" + pid + "_" + attrId);
                return(Content("1"));
            }
            else
            {
                return(Content("0"));
            }
        }
Example #19
0
        /// <summary>
        /// 恢复商品
        /// </summary>
        public ActionResult RestoreProduct(int[] pidList)
        {
            if (!AdminProducts.IsStoreProductByPid(WorkContext.StoreId, pidList))
            {
                return(PromptView("不能还原其它店铺的商品"));
            }

            AdminProducts.RestoreProductById(pidList);
            AddStoreAdminLog("还原商品", "还原商品,商品ID为:" + pidList);
            return(PromptView("商品还原成功"));
        }
Example #20
0
        /// <summary>
        /// 删除商品
        /// </summary>
        public ActionResult DelProduct(int[] pidList)
        {
            if (!AdminProducts.IsStoreProductByPid(WorkContext.StoreId, pidList))
            {
                return(PromptView("不能删除其它店铺的商品"));
            }

            AdminProducts.DeleteProductById(pidList);
            AddStoreAdminLog("删除商品", "删除商品,商品ID为:" + CommonHelper.IntArrayToString(pidList));
            return(PromptView("商品删除成功"));
        }
Example #21
0
        /// <summary>
        /// 改变商品图片的排序
        /// </summary>
        public ActionResult ChangeProductImageDisplayOrder(int pImgId = -1, int displayOrder = 0)
        {
            ProductImageInfo productImageInfo = AdminProducts.GetProductImageById(pImgId);

            if (productImageInfo == null || productImageInfo.StoreId != WorkContext.StoreId)
            {
                return(Content("0"));
            }

            AdminProducts.ChangeProductImageDisplayOrder(pImgId, displayOrder);
            AddStoreAdminLog("修改商品图片顺序", "修改商品图片顺序,商品图片ID:" + pImgId);
            return(Content("1"));
        }
Example #22
0
        /// <summary>
        /// 删除商品图片
        /// </summary>
        public ActionResult DelProductImage(int pImgId = -1)
        {
            ProductImageInfo productImageInfo = AdminProducts.GetProductImageById(pImgId);

            if (productImageInfo == null || productImageInfo.StoreId != WorkContext.StoreId)
            {
                return(Content("0"));
            }

            AdminProducts.DeleteProductImageById(pImgId);
            AddStoreAdminLog("删除商品图片", "删除商品图片,商品图片ID:" + pImgId);
            return(Content("1"));
        }
Example #23
0
        /// <summary>
        /// 设置图片为商品主图
        /// </summary>
        public ActionResult SetProductMianImage(int pImgId = -1)
        {
            ProductImageInfo productImageInfo = AdminProducts.GetProductImageById(pImgId);

            if (productImageInfo == null || productImageInfo.StoreId != WorkContext.StoreId)
            {
                return(Content("0"));
            }

            AdminProducts.SetProductMainImage(pImgId);
            AddStoreAdminLog("设置商品主图", "设置商品主图,商品图片ID:" + pImgId);
            return(Content("1"));
        }
Example #24
0
        /// <summary>
        /// 删除商品关键词
        /// </summary>
        public ActionResult DelProductKeyword(int[] keywordIdList)
        {
            bool result = AdminProducts.DeleteProductKeyword(keywordIdList);

            if (result)
            {
                AddMallAdminLog("删除商品关键词", "删除商品关键词,商品关键词ID:" + CommonHelper.IntArrayToString(keywordIdList));
                return(Content("1"));
            }
            else
            {
                return(Content("0"));
            }
        }
Example #25
0
        /// <summary>
        /// 更新商品关键词的相关性
        /// </summary>
        public ActionResult UpdateProductKeywordRelevancy(int keywordId = -1, int relevancy = 0)
        {
            bool result = AdminProducts.UpdateProductKeywordRelevancy(keywordId, relevancy);

            if (result)
            {
                AddMallAdminLog("修改商品关键词的相关性", "修改商品关键词的相关性,商品关键词ID:" + keywordId);
                return(Content("1"));
            }
            else
            {
                return(Content("0"));
            }
        }
Example #26
0
        /// <summary>
        /// 改变商品图片的排序
        /// </summary>
        public ActionResult ChangeProductImageDisplayOrder(int pImgId = -1, int displayOrder = 0)
        {
            bool result = AdminProducts.ChangeProductImageDisplayOrder(pImgId, displayOrder);

            if (result)
            {
                AddMallAdminLog("修改商品图片顺序", "修改商品图片顺序,商品图片ID:" + pImgId);
                return(Content("1"));
            }
            else
            {
                return(Content("0"));
            }
        }
Example #27
0
        /// <summary>
        /// 设置图片为商品主图
        /// </summary>
        public ActionResult SetProductMianImage(int pImgId = -1)
        {
            bool result = AdminProducts.SetProductMainImage(pImgId);

            if (result)
            {
                AddMallAdminLog("设置商品主图", "设置商品主图,商品图片ID:" + pImgId);
                return(Content("1"));
            }
            else
            {
                return(Content("0"));
            }
        }
Example #28
0
        /// <summary>
        /// 删除商品图片
        /// </summary>
        public ActionResult DelProductImage(int pImgId = -1)
        {
            bool result = AdminProducts.DeleteProductImageById(pImgId);

            if (result)
            {
                AddMallAdminLog("删除商品图片", "删除商品图片,商品图片ID:" + pImgId);
                return(Content("1"));
            }
            else
            {
                return(Content("0"));
            }
        }
Example #29
0
        /// <summary>
        /// 删除商品属性
        /// </summary>
        /// <param name="pid">商品id</param>
        /// <param name="attrId">属性id</param>
        /// <returns></returns>
        public ActionResult DelProductAttribute(int pid = -1, int attrId = -1)
        {
            bool result = AdminProducts.DeleteProductAttributeByPidAndAttrId(pid, attrId);

            if (result)
            {
                AddMallAdminLog("删除商品属性", "删除商品属性,商品属性ID:" + pid + "_" + attrId);
                return(Content("1"));
            }
            else
            {
                return(Content("0"));
            }
        }
Example #30
0
        /// <summary>
        /// 修改商品库存数量
        /// </summary>
        public ActionResult UpdateProductStockNumber(int pid = -1, int stockNumber = 0)
        {
            bool result = AdminProducts.UpdateProductStockNumber(pid, stockNumber);

            if (result)
            {
                AddMallAdminLog("更新商品库存数量", "更新商品库存数量,商品ID和库存数量为:" + pid + "_" + stockNumber);
                return(Content("1"));
            }
            else
            {
                return(Content("0"));
            }
        }