示例#1
0
        public ActionResult InsertProductPic()
        {
            ViewBag.success = false;
            if (!AppData.IsManagerLogin)
            {
                ViewBag.msg = "抱歉,您未登录后台或会话已过期!";
                return(View());
            }
            if (PrivilegeBLL.HasNotPrivilege(AppData.SessionUserID, 4))
            {
                ViewBag.msg = "抱歉,您没有执行该操作的权限!";
                return(View());
            }

            Validation vld   = new Validation();
            int        picID = vld.GetInt("id");
            string     desc  = vld.Get("desc");
            int        type  = vld.GetInt("type");

            HttpPostedFileBase pic        = Request.Files.Count == 0 ? null : Request.Files[0];
            ProductBLL         productBLL = new ProductBLL();

            if (pic != null && !string.IsNullOrEmpty(pic.FileName))
            {
                string ext = Path.GetExtension(pic.FileName);
                if (!Regex.IsMatch(ext, @"^\.(gif|jpg|jpeg|png)$", RegexOptions.IgnoreCase))
                {
                    ViewBag.msg = "上传的图片格式不合要求,请上传gif,png,jpg格式的图片";
                    return(View());
                }

                string dirPath = Config.MediaPath + @"\Product";
                if (!Directory.Exists(dirPath))
                {
                    Directory.CreateDirectory(dirPath);
                }

                string newFileName = DateTime.Now.ToString("yyyyMMddHHmmss_ffff") + ext;
                string savePath    = Path.Combine(dirPath, newFileName);

                ProductPictureObj productPictureObj;
                if (picID == 0)
                {
                    productPictureObj             = new ProductPictureObj();
                    productPictureObj.ProductID   = string.IsNullOrEmpty(Request.Form["productID"]) ? 0 : int.Parse(Request.Form["productID"]);
                    productPictureObj.SavePath    = @"\Product\" + newFileName;
                    productPictureObj.Url         = "/Product/" + newFileName;
                    productPictureObj.PictureDesc = desc;
                    productPictureObj.Type        = type;

                    productBLL.AddPicture(productPictureObj);
                }
                else
                {
                    productPictureObj = productBLL.GetProductPicture(picID);
                    System.IO.File.Delete(Config.MediaPath + productPictureObj.SavePath);
                    productPictureObj.SavePath    = @"\Product\" + newFileName;
                    productPictureObj.Url         = "/Product/" + newFileName;
                    productPictureObj.PictureDesc = desc;
                    productBLL.ModifyPicture(productPictureObj);
                }
                ViewBag.picId = productPictureObj.PictureID;

                pic.SaveAs(savePath);

                ViewBag.success = true;
                return(View());
            }
            else if (picID == 0)
            {
                ViewBag.msg = type == 0 ? "请上传产品图片!" : "请上传颜色图片!";
                return(View());
            }
            else
            {
                ViewBag.picId = picID;
                var productPictureObj = productBLL.GetProductPicture(picID);
                productPictureObj.PictureDesc = desc;
                productBLL.ModifyPicture(productPictureObj);

                ViewBag.success = true;
                return(View());
            }
        }