public Moooyo.BiZ.Photo.Photo SavePhoto(string memberID, int holderNo, Stream file, String filename) { Moooyo.BiZ.Photo.Photo myp = new BiZ.Photo.Photo(); if (file != null && file.Length > 0 && !string.IsNullOrEmpty(filename)) { string fname = filename; string ext = fname.Substring(fname.LastIndexOf('.') + 1); string month = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString(); string nFilename = month + "_" + CBB.Security.MD5Helper.getMd5Hash(fname + memberID + DateTime.Now.ToString()) + "." + ext; myp = Moooyo.BiZ.Photo.PhotoManager.AddPhoto(memberID, (BiZ.Photo.PhotoType)holderNo, ext, fname, ext, nFilename); myp.FileName = nFilename; CBB.ImageHelper.ImageWaterMark wm = new CBB.ImageHelper.ImageWaterMark(); //打文字水印 if (CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrOn") == "true") { wm.WaterStrOn = true; wm.WaterStrMarginRight = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrMarginRight") == "" ? 5 : Int32.Parse(CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrMarginRight")); wm.WaterStrMarginBottom = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrMarginBottom") == "" ? 5 : Int32.Parse(CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrMarginBottom")); wm.WaterStrFontSize = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrFontSize"); wm.WaterStrFont = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrFont"); wm.WaterStr = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStr"); } //打图片水印 if (CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterPicOn") == "true") { wm.WaterPicOn = true; wm.WaterPicMarginRight = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterPicMarginRight") == "" ? 5 : Int32.Parse(CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterPicMarginRight")); wm.WaterPicMarginBottom = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterPicMarginBottom") == "" ? 5 : Int32.Parse(CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterPicMarginBottom")); wm.WaterPicPath = System.Web.Hosting.HostingEnvironment.MapPath(CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterPicPath")); } CBB.ImageHelper.ImageSizeType[] imagetypes; BiZ.Photo.PhotoType photoType = (BiZ.Photo.PhotoType)holderNo; if (photoType == BiZ.Photo.PhotoType.ImageContentPhoto || photoType == BiZ.Photo.PhotoType.SuoSuoContentPhoto || photoType == BiZ.Photo.PhotoType.CallForContentPhoto || photoType == BiZ.Photo.PhotoType.MemberSkinPersonalityPicture || photoType == BiZ.Photo.PhotoType.InterestSelfhoodPicture) { imagetypes = SetImageSize(800, 800, wm); } else if (photoType == BiZ.Photo.PhotoType.MemberSkinPersonalityBackgroundPicture || photoType == BiZ.Photo.PhotoType.WebsiteHome) { imagetypes = SetImageSize(1600, 1600, wm); } else { imagetypes = SetImageSize(600, 600, wm); } CBB.ImageHelper.ImageUpload upload = new CBB.ImageHelper.ImageUpload(); upload.AddImageToGridFS(nFilename, file, imagetypes); } return myp; }
public ActionResult RegByPhotoStep1() { if (Request.Files == null || Request.Files.Count == 0) { //上传文件为空,返回 return Json(new int[] { -1 }); } BiZ.Member.Member mym = BiZ.MemberManager.MemberManager.AddMember("", "", "", 0); if (mym == null) return Json(new int[] { -1 }); BiZ.Photo.Photo myp = new BiZ.Photo.Photo(); if (Request.Files != null && Request.Files.Count > 0) { HttpPostedFileBase file = Request.Files[0]; if (file != null && file.ContentLength > 0 && !string.IsNullOrEmpty(file.FileName)) { string fname = file.FileName; string ext = fname.Substring(fname.LastIndexOf('.') + 1); string month = DateTime.Now.Year.ToString() + DateTime.Now.Month.ToString(); Random ran = new Random(file.ContentLength); string nFilename = month + "_" + CBB.Security.MD5Helper.getMd5Hash(fname + mym.ID + DateTime.Now.ToString()) + "." + ext; myp = Moooyo.BiZ.Photo.PhotoManager.AddPhotoOrgin(mym.ID, BiZ.Photo.PhotoType.RegisterPhoto, ext, fname, ext, nFilename); myp.FileName = nFilename; CBB.ImageHelper.ImageWaterMark wm = new CBB.ImageHelper.ImageWaterMark(); if (CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrOn") == "true") { wm.WaterStrOn = true; wm.WaterStrMarginRight = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrMarginRight") == "" ? 5 : Int32.Parse(CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrMarginRight")); wm.WaterStrMarginBottom = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrMarginBottom") == "" ? 5 : Int32.Parse(CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrMarginBottom")); wm.WaterStrFontSize = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrFontSize"); wm.WaterStrFont = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrFont"); wm.WaterStr = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStr"); } if (CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterPicOn") == "true") { wm.WaterPicOn = true; wm.WaterPicMarginRight = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterPicMarginRight") == "" ? 5 : Int32.Parse(CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterPicMarginRight")); wm.WaterPicMarginBottom = CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterPicMarginBottom") == "" ? 5 : Int32.Parse(CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterPicMarginBottom")); wm.WaterPicPath = Server.MapPath(CBB.ConfigurationHelper.AppSettingHelper.GetConfig("WaterStrFontSize")); } CBB.ImageHelper.ImageSizeType[] imagetypes = new CBB.ImageHelper.ImageSizeType[]{ new CBB.ImageHelper.ImageSizeType(600,600,false,false,"", CBB.ImageHelper.ImageMakeMode.W,wm), new CBB.ImageHelper.ImageSizeType(240,240,false,false,"_s", CBB.ImageHelper.ImageMakeMode.W,null), new CBB.ImageHelper.ImageSizeType(110,110,false,false,"_p", CBB.ImageHelper.ImageMakeMode.Cut,null), new CBB.ImageHelper.ImageSizeType(50,50,false,false,"_i", CBB.ImageHelper.ImageMakeMode.Cut,null) }; new CBB.ImageHelper.ImageUpload().AddImageToGridFS(nFilename, file.InputStream, imagetypes); } } mym.MemberPhoto.IconID = myp.ID; mym.MemberInfomation.IconPath = myp.FileName; mym.Status.PhotoCount = 1; BiZ.MemberManager.MemberManager.SaveMember(mym); return Json(mym); }