public ActionResult upLoadImg() { HttpPostedFileBase file = Request.Files["Filedata"]; int type = Request["appOrexplain"] == null ? 0 : Convert.ToInt32(Request["appOrexplain"]); string nameType = Request.Params["nameType"];// 將 nametype 提前 使其判斷傳入的圖片是否為商品主圖 edit by zhuoqin0830w 2015/01/29 int prodCheck = file.FileName.LastIndexOf("prod_");// 將 proCheck 提前 使其判斷批量上傳的圖片中是否存在商品主圖 edit by zhuoqin0830w 2015/01/30 if (prodCheck == 0 && type == 0) { type = 3; } int mobileCheck = file.FileName.LastIndexOf("mobile_"); if (mobileCheck == 0 && type == 0) { type = 4; } string path = Server.MapPath(xmlPath); siteConfigMgr = new SiteConfigMgr(path); ViewBag.moreFileOneTime = false; SiteConfig extention_config = siteConfigMgr.GetConfigByName("PIC_Extention_Format"); SiteConfig minValue_config = siteConfigMgr.GetConfigByName("PIC_Length_MinValue"); SiteConfig maxValue_config = null; //判斷 批量上傳 或 單個上傳 的圖片是否為 商品主圖 或 手機商品圖 edit by zhuoqin0830w 2015/03/24 switch (nameType) { //如果 nameType == prod 則表示 是 單個上傳 商品主圖 case "prod": maxValue_config = siteConfigMgr.GetConfigByName("PIC_280_Length_Max"); break; //如果 nameType == mobile 則表示 是 單個上傳 手機商品圖 case "mobile": maxValue_config = siteConfigMgr.GetConfigByName("PIC_640_Length_Max"); break; //如果 nameType == null 則表示 是 批量上傳 case null: //如果 prodCheck == 0 則表示 是 單個上傳 商品主圖 if (prodCheck == 0) { maxValue_config = siteConfigMgr.GetConfigByName("PIC_280_Length_Max"); } //如果 mobileCheck == 0 則表示 是 單個上傳 手機商品圖 else if (mobileCheck == 0) { maxValue_config = siteConfigMgr.GetConfigByName("PIC_640_Length_Max"); } else { maxValue_config = siteConfigMgr.GetConfigByName("PIC_Length_MaxValue"); } break; default: maxValue_config = siteConfigMgr.GetConfigByName("PIC_Length_MaxValue"); break; } SiteConfig admin_userName = siteConfigMgr.GetConfigByName("ADMIN_USERNAME"); SiteConfig admin_passwd = siteConfigMgr.GetConfigByName("ADMIN_PASSWD"); string extention = extention_config.Value == "" ? extention_config.DefaultValue : extention_config.Value; string minValue = minValue_config.Value == "" ? minValue_config.DefaultValue : minValue_config.Value; string maxValue = maxValue_config.Value == "" ? maxValue_config.DefaultValue : maxValue_config.Value; if ((nameType == "mobile" && type == 4) || (mobileCheck == 0 && type == 4)) //add by wwei0216w 2015/4/1 添加原因:手機圖片要放在640*640路徑下 { prodPath = prodMobile640; } string localProdPath = imgLocalPath + prodPath; //string localProd50Path = imgLocalPath + prod50Path; //string localProd150Path = imgLocalPath + prod150Path; //string localProd280Path = imgLocalPath + prod280Path; string localSpecPath = imgLocalPath + specPath; //string localSpec100Path = imgLocalPath + spec100Path; //string localSpec280Path = imgLocalPath + spec280Path; string[] Mappath = new string[2]; FileManagement fileLoad = new FileManagement(); string fileName = string.Empty; string fileExtention = string.Empty; ViewBag.spec_id = -1; if (nameType != null) { fileName = nameType + fileLoad.NewFileName(file.FileName); fileName = fileName.Substring(0, fileName.LastIndexOf(".")); fileExtention = file.FileName.Substring(file.FileName.LastIndexOf('.')).ToLower(); } else { #region 批次上傳圖片操作 //此處由批次上傳進入. //判斷文件名格式是否正確 ViewBag.moreFileOneTime = true; //int prodCheck = file.FileName.LastIndexOf("prod_"); //int specCheck = file.FileName.LastIndexOf("spec_"); int descCheck = file.FileName.LastIndexOf("desc_"); int appCheck = file.FileName.LastIndexOf("app_"); string errorMsg = "ERROR/"; if (prodCheck == -1 && descCheck == -1 && appCheck == -1 && mobileCheck == -1) { errorMsg += "[" + file.FileName + "] "; errorMsg += Resources.Product.FILE_NAME_ERROR; ViewBag.fileName = errorMsg; return View("~/Views/Product/upLoad.cshtml"); } else { nameType = file.FileName.Split('_')[0]; if (nameType == "app") { type = 2; } else if (nameType == "desc") { type = 1; } fileName = nameType + fileLoad.NewFileName(file.FileName); fileName = fileName.Substring(0, fileName.LastIndexOf(".")); fileExtention = file.FileName.Substring(file.FileName.LastIndexOf('.')); } #endregion } SetPath(type);//設定圖片路徑 string localDescPath = imgLocalPath + descPath; //string localDesc400Path = imgLocalPath + desc400Path; string returnName = imgServerPath; bool result = false; string NewFileName = string.Empty; BLL.gigade.Common.HashEncrypt hash = new BLL.gigade.Common.HashEncrypt(); NewFileName = hash.Md5Encrypt(fileName, "32"); string firstFolder = NewFileName.Substring(0, 2) + "/"; string secondFolder = NewFileName.Substring(2, 2) + "/"; string ServerPath = string.Empty; if (nameType == "desc" || nameType == "app") { Mappath[0] = firstFolder; Mappath[1] = secondFolder; CreateFolder(localDescPath, Mappath); //CreateFolder(localDesc400Path, Mappath); localDescPath += firstFolder + secondFolder; //localDesc400Path += firstFolder + secondFolder; descPath += firstFolder + secondFolder; //localDesc400Path += NewFileName + fileExtention; returnName += descPath + NewFileName + fileExtention; NewFileName = localDescPath + NewFileName + fileExtention; ServerPath = Server.MapPath(imgLocalServerPath + descPath); } else { Mappath[0] = firstFolder; Mappath[1] = secondFolder; //Data:2014/06/26 //author:Castle //在前台如果各种尺寸的图档没有的时候,前台会自动产生!!! CreateFolder(localProdPath, Mappath); localProdPath += firstFolder + secondFolder; prodPath += firstFolder + secondFolder; returnName += prodPath + NewFileName + fileExtention; NewFileName = localProdPath + NewFileName + fileExtention; ServerPath = Server.MapPath(imgLocalServerPath + prodPath); } string ErrorMsg = string.Empty; Resource.CoreMessage = new CoreResource("Product"); try { //上傳圖片 result = fileLoad.UpLoadFile(file, ServerPath, NewFileName, extention, int.Parse(maxValue), int.Parse(minValue), ref ErrorMsg, ftpuser, ftppwd); //上傳對應大小圖片 //压缩图片至其它规格 } catch (Exception ex) { Log4NetCustom.LogMessage logMessage = new Log4NetCustom.LogMessage(); logMessage.Content = string.Format("TargetSite:{0},Source:{1},Message:{2}", ex.TargetSite.Name, ex.Source, ex.Message); logMessage.MethodName = System.Reflection.MethodBase.GetCurrentMethod().Name; log.Error(logMessage); } if (string.IsNullOrEmpty(ErrorMsg)) { ViewBag.fileName = returnName; ViewBag.Type = type; //獲取文件長度 add by zhuoqin0830w 2015/01/29 string[] strFile = file.FileName.Split('_'); //判斷文件名的長度是否大於 1 如果大於 1 則再次進行判斷是否為數字 如果不是則進行強制轉換 int image_sort = 0; int.TryParse(strFile.Length > 1 ? strFile[1] : "0", out image_sort); ViewBag.image_sort = image_sort; } else { // 判斷 批量上傳中 是否存在 商品圖 或 手機商品圖 edit by zhuoqin0830w 2015/03/24 if (prodCheck == 0 || mobileCheck == 0) { ViewBag.fileName = "ERROR/" + "[" + file.FileName + "] " + ErrorMsg; } else { ViewBag.fileName = "ERROR/" + "[" + file.FileName + "] " + ErrorMsg; } Log4NetCustom.LogMessage logMessage = new Log4NetCustom.LogMessage(); logMessage.Content = "ERROR/" + ErrorMsg; logMessage.MethodName = System.Reflection.MethodBase.GetCurrentMethod().Name; log.Error(logMessage); } return View("~/Views/Product/upLoad.cshtml"); }
public bool QueryStockPrerogative(string callid,string xmlPath) { siteConfigMgr = new SiteConfigMgr(xmlPath); string groupCode = siteConfigMgr.GetConfigByName("STOCK_PREROGATIVE").Value; return _fgDao.Query(callid, groupCode).Count() > 0; }
public ActionResult upLoadImg() { try { HttpPostedFileBase file = Request.Files["Filedata"]; int type = Request["appOrexplain"] == null ? 0 : Convert.ToInt32(Request["appOrexplain"]); string nameType = Request.Params["nameType"]; // 將 nametype 提前 使其判斷傳入的圖片是否為商品主圖 edit by zhuoqin0830w 2015/01/29 int prodCheck = file.FileName.LastIndexOf("prod_"); // 將 proCheck 提前 使其判斷批量上傳的圖片中是否存在商品主圖 edit by zhuoqin0830w 2015/01/30 if (nameType == "spec") { type = 5; } if (prodCheck == 0 && type == 0) //批量上傳時type才會 ==0,其他單獨上傳時是不需要根據prod處理圖片的 { type = 3; } int mobileCheck = file.FileName.LastIndexOf("mobile_");//批量上傳時type才會 ==0,其他單獨上傳時是不需要根據prod處理圖片的 if (mobileCheck == 0 && type == 0) { type = 4; } string path = Server.MapPath(xmlPath); siteConfigMgr = new SiteConfigMgr(path); SiteConfig extention_config = siteConfigMgr.GetConfigByName("PIC_Extention_Format"); SiteConfig minValue_config = siteConfigMgr.GetConfigByName("PIC_Length_MinValue"); SiteConfig maxValue_config = null; //判斷 批量上傳 或 單個上傳 的圖片是否為 商品主圖 或 手機商品圖 edit by zhuoqin0830w 2015/03/24 switch (nameType) { //如果 nameType == prod 則表示 是 單個上傳 商品主圖 case "prod": maxValue_config = siteConfigMgr.GetConfigByName("PIC_280_Length_Max"); break; //如果 nameType == mobile 則表示 是 單個上傳 手機商品圖 case "mobile": maxValue_config = siteConfigMgr.GetConfigByName("PIC_640_Length_Max"); break; //如果 nameType == null 則表示 是 批量上傳 case null: //如果 prodCheck == 0 則表示 是 批量上傳 中包含 商品主圖 if (prodCheck == 0) { maxValue_config = siteConfigMgr.GetConfigByName("PIC_280_Length_Max"); } //如果 mobileCheck == 0 則表示 是 批量上傳 中包含 手機商品圖 else if (mobileCheck == 0) { maxValue_config = siteConfigMgr.GetConfigByName("PIC_640_Length_Max"); } else { maxValue_config = siteConfigMgr.GetConfigByName("PIC_Length_MaxValue"); } break; default: maxValue_config = siteConfigMgr.GetConfigByName("PIC_Length_MaxValue"); break; } string extention = extention_config.Value == "" ? extention_config.DefaultValue : extention_config.Value; string minValue = minValue_config.Value == "" ? minValue_config.DefaultValue : minValue_config.Value; string maxValue = maxValue_config.Value == "" ? maxValue_config.DefaultValue : maxValue_config.Value; if ((nameType == "mobile" && type == 4) || (mobileCheck == 0 && type == 4)) //add by wwei0216w 2015/4/1 添加原因:手機圖片要放在640*640路徑下 { prodPath = prodMobile640; } string localProdPath = imgLocalPath + prodPath; //string localProd50Path = imgLocalPath + prod50Path; //string localProd150Path = imgLocalPath + prod150Path; //string localProd280Path = imgLocalPath + prod280Path; string localSpecPath = imgLocalPath + specPath; //string localSpec100Path = imgLocalPath + spec100Path; //string localSpec280Path = imgLocalPath + spec280Path; string[] Mappath = new string[2]; FileManagement fileLoad = new FileManagement(); string fileName = string.Empty; string fileExtention = string.Empty; ViewBag.spec_id = -1; if (nameType != null) { fileName = nameType + fileLoad.NewFileName(file.FileName); fileName = fileName.Substring(0, fileName.LastIndexOf(".")); fileExtention = file.FileName.Substring(file.FileName.LastIndexOf('.')).ToLower(); } else { #region 批次上傳圖片操作 //此處由批次上傳進入. //判斷文件名格式是否正確 ViewBag.moreFileOneTime = true; //int prodCheck = file.FileName.LastIndexOf("prod_"); int specCheck = file.FileName.LastIndexOf("spec_"); int descCheck = file.FileName.LastIndexOf("desc_"); int appCheck = file.FileName.LastIndexOf("app_"); string errorMsg = "ERROR/"; if (prodCheck == -1 && specCheck == -1 && descCheck == -1 && appCheck == -1 && mobileCheck == -1) { errorMsg += "[" + file.FileName + "] "; errorMsg += Resources.Product.FILE_NAME_ERROR; ViewBag.fileName = errorMsg; return View("~/Views/Product/upLoad.cshtml"); } else { nameType = file.FileName.Split('_')[0]; if (nameType == "app") { type = 2; } else if (nameType == "desc") { type = 1; } else if (nameType == "spec") { type = 5; } fileName = nameType + fileLoad.NewFileName(file.FileName); fileName = fileName.Substring(0, fileName.LastIndexOf(".")); fileExtention = file.FileName.Substring(file.FileName.LastIndexOf('.')); } if (specCheck == 0) { Caller _caller = (Session["caller"] as Caller); string spec = file.FileName.Split('_')[1].Split('.')[0]; bool checkStatus = true; if (!string.IsNullOrEmpty(Request.Params["product_id"].Split(';')[0].ToString())) { //product_spec uint pid = uint.Parse(Request.Params["product_id"].Split(';')[0].ToString()); _specMgr = new ProductSpecMgr(connectionString); List<ProductSpec> pSpecList = _specMgr.Query(new ProductSpec { product_id = pid, spec_type = 1 }); foreach (var item in pSpecList) { if (item.spec_name == spec) { checkStatus = false; ViewBag.spec_id = item.spec_id; } } } else { //product_spec_temp _specTempMgr = new ProductSpecTempMgr(connectionString); List<ProductSpecTemp> pSpecTempList = _specTempMgr.Query(new ProductSpecTemp { Writer_Id = _caller.user_id, spec_type = 1 }); foreach (var item in pSpecTempList) { if (item.spec_name == spec) { checkStatus = false; ViewBag.spec_id = item.spec_id; } } } if (checkStatus)//表示沒有要上傳圖片規格相同的規格一 { errorMsg += "[" + file.FileName + "] " + Resources.Product.SPEC_NOT_FIND; ViewBag.fileName = errorMsg; return View("~/Views/Product/upLoad.cshtml"); } } #endregion } SetPath(type);//設定圖片路徑 string localDescPath = imgLocalPath + descPath; //string localDesc400Path = imgLocalPath + desc400Path; string returnName = imgServerPath; bool result = false; string NewFileName = string.Empty; BLL.gigade.Common.HashEncrypt hash = new BLL.gigade.Common.HashEncrypt(); NewFileName = hash.Md5Encrypt(fileName, "32"); string firstFolder = NewFileName.Substring(0, 2) + "/"; string secondFolder = NewFileName.Substring(2, 2) + "/"; string ServerPath = string.Empty; if (nameType == "spec") { Mappath[0] = firstFolder; Mappath[1] = secondFolder; CreateFolder(localSpecPath, Mappath); //CreateFolder(localSpec100Path, Mappath); //CreateFolder(localSpec280Path, Mappath); localSpecPath += firstFolder + secondFolder; //localSpec100Path += firstFolder + secondFolder; //localSpec280Path += firstFolder + secondFolder; specPath += firstFolder + secondFolder; returnName += specPath + NewFileName + fileExtention; //localSpec100Path += NewFileName + fileExtention; //localSpec280Path += NewFileName + fileExtention; NewFileName = localSpecPath + NewFileName + fileExtention; ServerPath = Server.MapPath(imgLocalServerPath + specPath); } else if (nameType == "desc" || nameType == "app") { Mappath[0] = firstFolder; Mappath[1] = secondFolder; CreateFolder(localDescPath, Mappath); //CreateFolder(localDesc400Path, Mappath); localDescPath += firstFolder + secondFolder; //localDesc400Path += firstFolder + secondFolder; descPath += firstFolder + secondFolder; //localDesc400Path += NewFileName + fileExtention; returnName += descPath + NewFileName + fileExtention; NewFileName = localDescPath + NewFileName + fileExtention; ServerPath = Server.MapPath(imgLocalServerPath + descPath); } else { Mappath[0] = firstFolder; Mappath[1] = secondFolder; //Data:2014/06/26 //author:Castle //在前台如果各种尺寸的图档没有的时候,前台会自动产生!!! CreateFolder(localProdPath, Mappath); //CreateFolder(localProd50Path, Mappath); //CreateFolder(localProd150Path, Mappath); //CreateFolder(localProd280Path, Mappath); localProdPath += firstFolder + secondFolder; //localProd50Path += firstFolder + secondFolder; //localProd150Path += firstFolder + secondFolder; //localProd280Path += firstFolder + secondFolder; prodPath += firstFolder + secondFolder; //localProd50Path += NewFileName + fileExtention; //localProd150Path += NewFileName + fileExtention; //localProd280Path += NewFileName + fileExtention; returnName += prodPath + NewFileName + fileExtention; NewFileName = localProdPath + NewFileName + fileExtention; ServerPath = Server.MapPath(imgLocalServerPath + prodPath); } string ErrorMsg = string.Empty; Resource.CoreMessage = new CoreResource("Product"); //上傳圖片 result = fileLoad.UpLoadFile(file, ServerPath, NewFileName, extention, int.Parse(maxValue), int.Parse(minValue), ref ErrorMsg, ftpuser, ftppwd); #region // //上傳對應大小圖片 //压缩图片至其它规格 //Data:2014/06/26 //author:Castle //在前台如果各种尺寸的图档没有的时候,前台会自动产生!!! //if (result) //{ // FTP ftp = null; // string newFileName = NewFileName.Substring(NewFileName.LastIndexOf("/")); // GigadeService.TransImageClient transImg = new GigadeService.TransImageClient(); // if (nameType == "spec") // { // string sourceImgPath = Server.MapPath(imgLocalServerPath + specPath + NewFileName.Substring(NewFileName.LastIndexOf("/"))); // ErrorMsg = transImg.Trans(sourceImgPath, Server.MapPath(imgLocalServerPath + spec100Path + firstFolder + secondFolder), newFileName, 100, 100, admin_userName.Value, admin_passwd.Value); // if (string.IsNullOrWhiteSpace(ErrorMsg)) // { // file.SaveAs(Server.MapPath(imgLocalServerPath + spec100Path + firstFolder + secondFolder + newFileName)); // ftp = new FTP(localSpec100Path, ftpuser, ftppwd); // ftp.UploadFile(Server.MapPath(imgLocalServerPath + spec100Path + firstFolder + secondFolder + newFileName)); // } // if (!Directory.Exists(Server.MapPath(imgLocalServerPath + spec280Path + firstFolder + secondFolder))) // Directory.CreateDirectory(Server.MapPath(imgLocalServerPath + spec280Path + firstFolder + secondFolder)); // ErrorMsg = transImg.Trans(sourceImgPath, Server.MapPath(imgLocalServerPath + spec280Path + firstFolder + secondFolder), newFileName, 280, 280, admin_userName.Value, admin_passwd.Value); // if (string.IsNullOrWhiteSpace(ErrorMsg)) // { // file.SaveAs(Server.MapPath(imgLocalServerPath + spec280Path + firstFolder + secondFolder + newFileName)); // ftp = new FTP(localSpec100Path, ftpuser, ftppwd); // ftp.UploadFile(Server.MapPath(imgLocalServerPath + spec280Path + firstFolder + secondFolder + newFileName)); // } // } // else if (nameType == "desc") // { // string sourceImgPath = Server.MapPath(imgLocalServerPath + descPath + NewFileName.Substring(NewFileName.LastIndexOf("/"))); // ErrorMsg = transImg.Trans(sourceImgPath, Server.MapPath(imgLocalServerPath + desc400Path + firstFolder + secondFolder), newFileName, 400, 400, admin_userName.Value, admin_passwd.Value); // if (string.IsNullOrWhiteSpace(ErrorMsg)) // { // file.SaveAs(Server.MapPath(imgLocalServerPath + desc400Path + firstFolder + secondFolder + newFileName)); // ftp = new FTP(localSpec100Path, ftpuser, ftppwd); // ftp.UploadFile(Server.MapPath(imgLocalServerPath + desc400Path + firstFolder + secondFolder + newFileName)); // } // } // else // { // //string sourceImgPath = Server.MapPath(imgLocalServerPath + prodPath + NewFileName.Substring(NewFileName.LastIndexOf("/"))); // //ErrorMsg = transImg.Trans(sourceImgPath, Server.MapPath(imgLocalServerPath + prod50Path + firstFolder + secondFolder), newFileName, 50, 50, admin_userName.Value, admin_passwd.Value); // //if (string.IsNullOrWhiteSpace(ErrorMsg)) // //{ // // file.SaveAs(Server.MapPath(imgLocalServerPath + prod50Path + firstFolder + secondFolder + newFileName)); // // ftp = new FTP(localProd50Path, ftpuser, ftppwd); // // ftp.UploadFile(Server.MapPath(imgLocalServerPath + prod50Path + firstFolder + secondFolder + newFileName)); // //} // //ErrorMsg = transImg.Trans(sourceImgPath, Server.MapPath(imgLocalServerPath + prod150Path + firstFolder + secondFolder), newFileName, 150, 150, admin_userName.Value, admin_passwd.Value); // //if (string.IsNullOrWhiteSpace(ErrorMsg)) // //{ // // file.SaveAs(Server.MapPath(imgLocalServerPath + prod150Path + firstFolder + secondFolder + newFileName)); // // ftp = new FTP(localProd150Path, ftpuser, ftppwd); // // ftp.UploadFile(Server.MapPath(imgLocalServerPath + prod150Path + firstFolder + secondFolder + newFileName)); // //} // ////if (!Directory.Exists(Server.MapPath(imgLocalServerPath + prod280Path + firstFolder + secondFolder))) // //// Directory.CreateDirectory(Server.MapPath(imgLocalServerPath + prod280Path + firstFolder + secondFolder)); // ////ImageClass iC280 = new ImageClass(sourceImgPath); // //////iC280.ImageMagick(sourceImgPath, Server.MapPath(imgLocalServerPath + prod280Path + firstFolder + secondFolder + NewFileName.Substring(NewFileName.LastIndexOf("/"))), 280, 280, ref error); // ////iC150.MakeThumbnail(Server.MapPath(imgLocalServerPath + prod280Path + firstFolder + secondFolder + NewFileName.Substring(NewFileName.LastIndexOf("/"))), 280, 280, ref error); // //ErrorMsg = transImg.Trans(sourceImgPath, Server.MapPath(imgLocalServerPath + prod280Path + firstFolder + secondFolder), newFileName, 280, 280, admin_userName.Value, admin_passwd.Value); // //if (string.IsNullOrWhiteSpace(ErrorMsg)) // //{ // // file.SaveAs(Server.MapPath(imgLocalServerPath + prod280Path + firstFolder + secondFolder + newFileName)); // // ftp = new FTP(localProd280Path, ftpuser, ftppwd); // // ftp.UploadFile(Server.MapPath(imgLocalServerPath + prod280Path + firstFolder + secondFolder + newFileName)); // //} // } //} #endregion if (string.IsNullOrEmpty(ErrorMsg)) { ViewBag.fileName = returnName; ViewBag.Type = type; //獲取文件長度 add by zhuoqin0830w 2015/01/29 string[] strFile = file.FileName.Split('_'); //判斷文件名的長度是否大於 1 如果大於 1 則再次進行判斷是否為數字 如果不是則進行強制轉換 int image_sort = 0; int.TryParse(strFile.Length > 1 ? strFile[1] : "0", out image_sort); ViewBag.image_sort = image_sort; } else { // 判斷 批量上傳中 是否存在 商品圖 或 手機商品圖 edit by zhuoqin0830w 2015/03/24 if (prodCheck == 0 || mobileCheck == 0) { ViewBag.fileName = "ERROR/" + "[" + file.FileName + "] " + ErrorMsg; } else { ViewBag.fileName = "ERROR/" + "[" + file.FileName + "] " + ErrorMsg; } Log4NetCustom.LogMessage logMessage = new Log4NetCustom.LogMessage(); logMessage.Content = "ERROR/" + ErrorMsg; logMessage.MethodName = System.Reflection.MethodBase.GetCurrentMethod().Name; log.Error(logMessage); } } catch (Exception ex) { Log4NetCustom.LogMessage logMessage = new Log4NetCustom.LogMessage(); logMessage.Content = string.Format("TargetSite:{0},Source:{1},Message:{2}", ex.TargetSite.Name, ex.Source, ex.Message); logMessage.MethodName = System.Reflection.MethodBase.GetCurrentMethod().Name; log.Error(logMessage); } return View("~/Views/Product/upLoad.cshtml"); }
public ActionResult UpLoadImg() { string path = Server.MapPath(xmlPath); siteConfigMgr = new SiteConfigMgr(path); SiteConfig extention_config = siteConfigMgr.GetConfigByName("PIC_Extention_Format"); SiteConfig minValue_config = siteConfigMgr.GetConfigByName("PIC_Length_MinValue"); SiteConfig maxValue_config = siteConfigMgr.GetConfigByName("PIC_Length_MaxValue"); SiteConfig admin_userName = siteConfigMgr.GetConfigByName("ADMIN_USERNAME"); SiteConfig admin_passwd = siteConfigMgr.GetConfigByName("ADMIN_PASSWD"); string extention = extention_config.Value == "" ? extention_config.DefaultValue : extention_config.Value; string minValue = minValue_config.Value == "" ? minValue_config.DefaultValue : minValue_config.Value; string maxValue = maxValue_config.Value == "" ? maxValue_config.DefaultValue : maxValue_config.Value; string elementPath = ConfigurationManager.AppSettings["elementPath"]; FileManagement fileLoad = new FileManagement(); HttpPostedFileBase file = Request.Files["Filedata"]; string fileName = string.Empty; string fileExtention = string.Empty; string[] Mappath = new string[2]; fileName = fileLoad.NewFileName(file.FileName); fileName = fileName.Substring(0, fileName.LastIndexOf(".")); fileExtention = file.FileName.Substring(file.FileName.LastIndexOf('.')).ToLower(); string localElePath = imgLocalPath + elementPath; string returnName = imgServerPath;////"http://192.168.71.159:8080" bool result = false; string NewFileName = string.Empty; BLL.gigade.Common.HashEncrypt hash = new BLL.gigade.Common.HashEncrypt(); NewFileName = hash.Md5Encrypt(fileName, "32"); string firstFolder = NewFileName.Substring(0, 2) + "/"; string secondFolder = NewFileName.Substring(2, 2) + "/"; string ServerPath = string.Empty; Mappath[0] = firstFolder; Mappath[1] = secondFolder; //CreateFolder(localElePath, Mappath); // localElePath += firstFolder + secondFolder; // elementPath += firstFolder + secondFolder; returnName += elementPath + NewFileName + fileExtention; NewFileName = localElePath + NewFileName + fileExtention; ServerPath = Server.MapPath(imgLocalServerPath + elementPath); string ErrorMsg = string.Empty; try { result = fileLoad.UpLoadFile(file, ServerPath, NewFileName, extention, int.Parse(maxValue), int.Parse(minValue), ref ErrorMsg, ftpuser, ftppwd); } catch (Exception ex) { Log4NetCustom.LogMessage logMessage = new Log4NetCustom.LogMessage(); logMessage.Content = string.Format("TargetSite:{0},Source:{1},Message:{2}", ex.TargetSite.Name, ex.Source, ex.Message); logMessage.MethodName = System.Reflection.MethodBase.GetCurrentMethod().Name; log.Error(logMessage); } if (string.IsNullOrEmpty(ErrorMsg)) { ViewBag.fileName = returnName; ViewBag.Type = "pic"; } else { ViewBag.fileName = "ERROR/" + ErrorMsg; Log4NetCustom.LogMessage logMessage = new Log4NetCustom.LogMessage(); logMessage.Content = "ERROR/" + ErrorMsg; logMessage.MethodName = System.Reflection.MethodBase.GetCurrentMethod().Name; log.Error(logMessage); } return View("~/Views/PromotionsAmountTrial/upLoad.cshtml"); }
public ActionResult upLoadImg() { BLL.gigade.Model.Vendor vendorModel = (BLL.gigade.Model.Vendor)Session["vendor"];//獲取當前登入的供應商 int writerID = (int)vendorModel.vendor_id; string path = Server.MapPath(xmlPath); siteConfigMgr = new SiteConfigMgr(path); ViewBag.moreFileOneTime = false; SiteConfig extention_config = siteConfigMgr.GetConfigByName("PIC_Extention_Format"); SiteConfig minValue_config = siteConfigMgr.GetConfigByName("PIC_Length_MinValue"); SiteConfig maxValue_config = siteConfigMgr.GetConfigByName("PIC_Length_MaxValue"); SiteConfig admin_userName = siteConfigMgr.GetConfigByName("ADMIN_USERNAME"); SiteConfig admin_passwd = siteConfigMgr.GetConfigByName("ADMIN_PASSWD"); string extention = extention_config.Value == "" ? extention_config.DefaultValue : extention_config.Value; string minValue = minValue_config.Value == "" ? minValue_config.DefaultValue : minValue_config.Value; string maxValue = maxValue_config.Value == "" ? maxValue_config.DefaultValue : maxValue_config.Value; string localProdPath = imgLocalPath + prodPath; //string localProd50Path = imgLocalPath + prod50Path; //string localProd150Path = imgLocalPath + prod150Path; //string localProd280Path = imgLocalPath + prod280Path; string localSpecPath = imgLocalPath + specPath; //string localSpec100Path = imgLocalPath + spec100Path; //string localSpec280Path = imgLocalPath + spec280Path; string localDescPath = imgLocalPath + descPath; //string localDesc400Path = imgLocalPath + desc400Path; string[] Mappath = new string[2]; FileManagement fileLoad = new FileManagement(); HttpPostedFileBase file = Request.Files["Filedata"]; string nameType = Request.Params["nameType"]; string fileName = string.Empty; string fileExtention = string.Empty; ViewBag.spec_id = -1; if (nameType != null) { fileName = nameType + fileLoad.NewFileName(file.FileName); fileName = fileName.Substring(0, fileName.LastIndexOf(".")); fileExtention = file.FileName.Substring(file.FileName.LastIndexOf('.')).ToLower(); } else { #region 批次上傳圖片操作 //此處由批次上傳進入. //判斷文件名格式是否正確 ViewBag.moreFileOneTime = true; int prodCheck = file.FileName.LastIndexOf("prod_"); int specCheck = file.FileName.LastIndexOf("spec_"); int descCheck = file.FileName.LastIndexOf("desc_"); string errorMsg = "ERROR/"; if (prodCheck == -1 && specCheck == -1 && descCheck == -1) { errorMsg += "[" + file.FileName + "] "; errorMsg += Resources.VendorProduct.FILE_NAME_ERROR; ViewBag.fileName = errorMsg; return View("~/Views/VendorProduct/upLoad.cshtml"); } else { nameType = file.FileName.Split('_')[0]; fileName = nameType + fileLoad.NewFileName(file.FileName); fileName = fileName.Substring(0, fileName.LastIndexOf(".")); fileExtention = file.FileName.Substring(file.FileName.LastIndexOf('.')); } if (specCheck == 0) { //Caller _caller = (Session["caller"] as Caller); ProductSpecTemp proSpecTemp = new ProductSpecTemp(); string spec = file.FileName.Split('_')[1].Split('.')[0]; bool checkStatus = true; if (!string.IsNullOrEmpty(Request.Params["product_id"].Split(';')[0].ToString())) { //product_spec proSpecTemp.product_id = Request.Params["product_id"].Split(';')[0].ToString(); } //product_spec_temp _specTempMgr = new ProductSpecTempMgr(connectionString); List<ProductSpecTemp> pSpecTempList = _specTempMgr.VendorQuery(new ProductSpecTemp { Writer_Id = writerID, spec_type = 1 }); foreach (var item in pSpecTempList) { if (item.spec_name == spec) { checkStatus = false; ViewBag.spec_id = item.spec_id; } } if (checkStatus)//表示沒有要上傳圖片規格相同的規格一 { errorMsg += "[" + file.FileName + "] " + Resources.VendorProduct.SPEC_NOT_FIND; ViewBag.fileName = errorMsg; return View("~/Views/VendorProduct/upLoad.cshtml"); } } #endregion } string returnName = imgServerPath; bool result = false; string NewFileName = string.Empty; BLL.gigade.Common.HashEncrypt hash = new BLL.gigade.Common.HashEncrypt(); NewFileName = hash.Md5Encrypt(fileName, "32"); string firstFolder = NewFileName.Substring(0, 2) + "/"; string secondFolder = NewFileName.Substring(2, 2) + "/"; string ServerPath = string.Empty; if (nameType == "spec") { Mappath[0] = firstFolder; Mappath[1] = secondFolder; CreateFolder(localSpecPath, Mappath); //CreateFolder(localSpec100Path, Mappath); //CreateFolder(localSpec280Path, Mappath); localSpecPath += firstFolder + secondFolder; //localSpec100Path += firstFolder + secondFolder; //localSpec280Path += firstFolder + secondFolder; specPath += firstFolder + secondFolder; returnName += specPath + NewFileName + fileExtention; //localSpec100Path += NewFileName + fileExtention; //localSpec280Path += NewFileName + fileExtention; NewFileName = localSpecPath + NewFileName + fileExtention; ServerPath = Server.MapPath(imgLocalServerPath + specPath); } else if (nameType == "desc") { Mappath[0] = firstFolder; Mappath[1] = secondFolder; CreateFolder(localDescPath, Mappath); //CreateFolder(localDesc400Path, Mappath); localDescPath += firstFolder + secondFolder; //localDesc400Path += firstFolder + secondFolder; descPath += firstFolder + secondFolder; //localDesc400Path += NewFileName + fileExtention; returnName += descPath + NewFileName + fileExtention; NewFileName = localDescPath + NewFileName + fileExtention; ServerPath = Server.MapPath(imgLocalServerPath + descPath); } else { Mappath[0] = firstFolder; Mappath[1] = secondFolder; //Data:2014/06/26 //author:Castle //在前台如果各种尺寸的图档没有的时候,前台会自动产生!!! CreateFolder(localProdPath, Mappath); //CreateFolder(localProd50Path, Mappath); //CreateFolder(localProd150Path, Mappath); //CreateFolder(localProd280Path, Mappath); localProdPath += firstFolder + secondFolder; //localProd50Path += firstFolder + secondFolder; //localProd150Path += firstFolder + secondFolder; //localProd280Path += firstFolder + secondFolder; prodPath += firstFolder + secondFolder; //localProd50Path += NewFileName + fileExtention; //localProd150Path += NewFileName + fileExtention; //localProd280Path += NewFileName + fileExtention; returnName += prodPath + NewFileName + fileExtention; NewFileName = localProdPath + NewFileName + fileExtention; ServerPath = Server.MapPath(imgLocalServerPath + prodPath); } string ErrorMsg = string.Empty; Resource.CoreMessage = new CoreResource("VendorProduct"); try { //上傳圖片 result = fileLoad.UpLoadFile(file, ServerPath, NewFileName, extention, int.Parse(maxValue), int.Parse(minValue), ref ErrorMsg, ftpuser, ftppwd); //上傳對應大小圖片 //压缩图片至其它规格 } catch (Exception ex) { Log4NetCustom.LogMessage logMessage = new Log4NetCustom.LogMessage(); logMessage.Content = string.Format("TargetSite:{0},Source:{1},Message:{2}", ex.TargetSite.Name, ex.Source, ex.Message); logMessage.MethodName = System.Reflection.MethodBase.GetCurrentMethod().Name; log.Error(logMessage); } if (string.IsNullOrEmpty(ErrorMsg)) { ViewBag.fileName = returnName; } else { ViewBag.fileName = "ERROR/" + ErrorMsg; Log4NetCustom.LogMessage logMessage = new Log4NetCustom.LogMessage(); logMessage.Content = "ERROR/" + ErrorMsg; logMessage.MethodName = System.Reflection.MethodBase.GetCurrentMethod().Name; log.Error(logMessage); } return View("~/Views/VendorProduct/upLoad.cshtml"); }
public HttpResponseBase OrderTemplate() { siteConfigMgr = new SiteConfigMgr(Server.MapPath(xmlPath)); SiteConfig config = siteConfigMgr.GetConfigByName("Template_OrderImport_Path"); if (config != null) { string template = Server.MapPath(string.IsNullOrEmpty(config.Value) ? config.DefaultValue : config.Value); if (System.IO.File.Exists(template)) { this.Response.Clear(); this.Response.ContentType = "application/ms-excel"; this.Response.AppendHeader("Content-Disposition", "attachment;filename=t_orders.xlsx"); this.Response.WriteFile(template); this.Response.End(); } } return this.Response; }
public JsonResult ReadExcelFile() { List<OrdersImport> orders = new List<OrdersImport>(); Session["import"] = null; try { if (!string.IsNullOrEmpty(Request.Form["Files"]) && !string.IsNullOrEmpty(Request.Form["ImportType"]) && !string.IsNullOrEmpty(Request.Form["Channel"])) { string improtType = Request.Form["ImportType"]; int channel = Convert.ToInt32(Request.Form["Channel"]); string excelFile = Server.MapPath(excelPath) + Request.Form["Files"].Split('|')[0]; Resource.CoreMessage = new CoreResource("OrderImport"); orderImport = OrderImportFactory.InitOrderImport(channel); siteConfigMgr = new SiteConfigMgr(Server.MapPath(xmlPath)); SiteConfig config = siteConfigMgr.GetConfigByName("Template_OrderImport_Path"); if (orderImport != null && config != null) { string template = Server.MapPath(string.IsNullOrEmpty(config.Value) ? config.DefaultValue : config.Value); if (System.IO.File.Exists(template)) { orders = orderImport.ReadExcel2Page(excelFile, template, orderImport.CurChannel.model_in); Session["import"] = orders; } } } } catch (Exception ex) { Log4NetCustom.LogMessage logMessage = new Log4NetCustom.LogMessage(); logMessage.Content = string.Format("TargetSite:{0},Source:{1},Message:{2}", ex.TargetSite.Name, ex.Source, ex.Message); logMessage.MethodName = System.Reflection.MethodBase.GetCurrentMethod().Name; log.Error(logMessage); } return Json(orders); }
public HttpResponseBase SaveImportFile() { Session["import"] = null; string json = "{success:false}"; siteConfigMgr = new SiteConfigMgr(Server.MapPath(xmlPath)); try { if (Request.Files["channelFile"] != null && Request.Files["channelFile"].ContentLength > 0) { HttpPostedFileBase excelFile = Request.Files["channelFile"]; FileManagement fileManagement = new FileManagement(); string newExcelName = fileManagement.NewFileName(excelFile.FileName); string oldExcelName = excelFile.FileName.Split('\\').LastOrDefault(); #region Excel文件限制 SiteConfig excellConfig = siteConfigMgr.GetConfigByName("Excel_Extension_Filter"); string excelEx = string.IsNullOrEmpty(excellConfig.Value) ? excellConfig.DefaultValue : excellConfig.Value; SiteConfig minConfig = siteConfigMgr.GetConfigByName("Excel_Length_Min"); SiteConfig maxConfig = siteConfigMgr.GetConfigByName("Excel_Length_Max"); int excelMin = Convert.ToInt32(DataCheck.IsNumeric(minConfig.Value) ? minConfig.Value : minConfig.DefaultValue); int excelMax = Convert.ToInt32(DataCheck.IsNumeric(maxConfig.Value) ? maxConfig.Value : maxConfig.DefaultValue); #endregion Resource.CoreMessage = new CoreResource("Product"); if (fileManagement.UpLoadFile(excelFile, Server.MapPath(excelPath) + "/" + newExcelName, excelEx, excelMax, excelMin))//保存導入訂單excel文件 { if (!string.IsNullOrEmpty(Request.Form["importType"]) && Request.Form["importType"] == "2") { if (Request.Files["dispatch"] != null && Request.Files["dispatch"].ContentLength > 0) { HttpPostedFileBase dispatchFile = Request.Files["dispatch"]; string newPDFName = fileManagement.NewFileName(dispatchFile.FileName); #region PDF文件限制 SiteConfig pdfConfig = siteConfigMgr.GetConfigByName("PDF_Extension_Filter"); string pdfEx = string.IsNullOrEmpty(pdfConfig.Value) ? pdfConfig.DefaultValue : pdfConfig.Value; minConfig = siteConfigMgr.GetConfigByName("PDF_Length_Min"); maxConfig = siteConfigMgr.GetConfigByName("PDF_Length_Max"); int pdfMin = Convert.ToInt32(DataCheck.IsNumeric(minConfig.Value) ? minConfig.Value : minConfig.DefaultValue); int pdfMax = Convert.ToInt32(DataCheck.IsNumeric(maxConfig.Value) ? maxConfig.Value : maxConfig.DefaultValue); #endregion if (fileManagement.UpLoadFile(dispatchFile, Server.MapPath(pdfPath) + "/" + newPDFName, pdfEx, pdfMax, pdfMin))//保存選擇 ‘超商取貨’ 時需上傳的取貨單文件 { json = "{success:true,msg:\"" + newExcelName + "|" + oldExcelName + "|" + newPDFName + "\"}"; } } } else { json = "{success:true,msg:\"" + newExcelName + "|" + oldExcelName + "\"}"; } } } } catch (Exception ex) { Log4NetCustom.LogMessage logMessage = new Log4NetCustom.LogMessage(); logMessage.Content = string.Format("TargetSite:{0},Source:{1},Message:{2}", ex.TargetSite.Name, ex.Source, ex.Message); logMessage.MethodName = System.Reflection.MethodBase.GetCurrentMethod().Name; log.Error(logMessage); } this.Response.Clear(); this.Response.Write(json); this.Response.End(); return this.Response; }
public ActionResult OrderImport() { if (!System.IO.Directory.Exists(Server.MapPath(excelPath))) { System.IO.Directory.CreateDirectory(Server.MapPath(excelPath)); } if (!System.IO.Directory.Exists(Server.MapPath(pdfPath))) { System.IO.Directory.CreateDirectory(Server.MapPath(pdfPath)); } siteConfigMgr = new SiteConfigMgr(Server.MapPath(xmlPath)); SiteConfig excellConfig = siteConfigMgr.GetConfigByName("Excel_Extension_Filter"); SiteConfig pdfConfig = siteConfigMgr.GetConfigByName("PDF_Extension_Filter"); ViewBag.ExcelEx = string.IsNullOrEmpty(excellConfig.Value) ? excellConfig.DefaultValue : excellConfig.Value; ViewBag.PDFEx = string.IsNullOrEmpty(pdfConfig.Value) ? pdfConfig.DefaultValue : pdfConfig.Value; return View(); }
public bool UpLoadFile(HttpPostedFileBase file, string excelPath, ref string filePath) { Resource.CoreMessage = new CoreResource("Product"); siteConfigMgr = new SiteConfigMgr(Server.MapPath(xmlPath)); FileManagement fileManagement = new FileManagement(); string newExcelName = fileManagement.NewFileName(file.FileName); string oldExcelName = file.FileName.Split('\\').LastOrDefault(); #region Excel文件限制 SiteConfig excellConfig = siteConfigMgr.GetConfigByName("Excel_Extension_Filter"); string excelEx = string.IsNullOrEmpty(excellConfig.Value) ? excellConfig.DefaultValue : excellConfig.Value; SiteConfig minConfig = siteConfigMgr.GetConfigByName("Excel_Length_Min"); int excelMin = Convert.ToInt32(DataCheck.IsNumeric(minConfig.Value) ? minConfig.Value : minConfig.DefaultValue); SiteConfig maxConfig = siteConfigMgr.GetConfigByName("Excel_Length_Max"); int excelMax = Convert.ToInt32(DataCheck.IsNumeric(maxConfig.Value) ? maxConfig.Value : maxConfig.DefaultValue); filePath = Server.MapPath(excelPath) + "/" + newExcelName; #endregion return fileManagement.UpLoadFile(file, filePath, excelEx, excelMax, 0);//保存導入訂單excel文件 }