public string SendMessageOnFindPassWord(string destination, MessageUserInfo info) { var config = EmailCore.GetMessageContentConfig(); var text = config.FindPassWord.Replace("#userName#", info.UserName).Replace("#checkCode#", info.CheckCode).Replace("#siteName#", info.SiteName); SendMessage(destination, info.SiteName + "找回密码验证", text); return(text); }
public string SendMessageCode(string destination, MessageUserInfo info) { MessageContent messageContentConfig = SMSCore.GetMessageContentConfig(); string str = messageContentConfig.Bind.Replace("#userName#", info.UserName).Replace("#checkCode#", info.CheckCode).Replace("#siteName#", info.SiteName); SendMessage(destination, str, "2"); return(str); }
public string SendMessageOnFindPassWord(string destination, MessageUserInfo info) { MessageContent messageContentConfig = EmailCore.GetMessageContentConfig(); string str = messageContentConfig.FindPassWord.Replace("#userName#", info.UserName).Replace("#checkCode#", info.CheckCode).Replace("#siteName#", info.SiteName); SendMessage(destination, string.Concat(info.SiteName, "找回密码验证"), str, false); return(str); }
public JsonResult SendCode(string pluginId, string destination) { //ServiceHelper.Create<IMemberService>().CheckContactInfoHasBeenUsed(pluginId, destination, MemberContactsInfo.UserTypes.General); if (ServiceHelper.Create <IMemberService>().CheckEmailExist(destination)) { Result result0 = new Result() { success = false, msg = "Email has been bind" }; return(Json(result0)); } if (Cache.Get(CacheKeyCollection.MemberPluginCheckTime(destination, pluginId)) != null) { Result result = new Result() { success = false, msg = "Only allowed to request once in 120 seconds,Please wait and try it again!" }; return(Json(result)); } int num = (new Random()).Next(10000, 99999); DateTime dateTime = DateTime.Now.AddMinutes(15); if (pluginId.ToLower().Contains("email")) { dateTime = DateTime.Now.AddHours(24); } Cache.Insert(CacheKeyCollection.MemberPluginCheck(destination, pluginId), num, dateTime); MessageUserInfo messageUserInfo = new MessageUserInfo() { UserName = "", SiteName = base.CurrentSiteSetting.SiteName, CheckCode = num.ToString() }; ServiceHelper.Create <IMessageService>().SendMessageCode(destination, pluginId, messageUserInfo); string str = CacheKeyCollection.MemberPluginCheckTime(destination, pluginId); DateTime now = DateTime.Now; Cache.Insert(str, "0", now.AddSeconds(110)); Result result1 = new Result() { success = true, msg = "Send Success" }; return(Json(result1)); }
public ActionResult ChangePassWord(string passWord, string key) { var member = Core.Cache.Get <UserMemberInfo>(key + "3"); if (member == null) { return(Json(new { success = false, flag = -1, msg = "验证超时" })); } var userId = member.Id; _iMemberService.ChangePassword(userId, passWord); MessageUserInfo info = new MessageUserInfo(); info.SiteName = CurrentSiteSetting.SiteName; info.UserName = member.UserName; Task.Factory.StartNew(() => _iMessageService.SendMessageOnFindPassWord(userId, info)); return(Json(new { success = true, flag = 1, msg = "成功找回密码" })); }
public JsonResult SendCode(string pluginId, string destination, string imagecheckCode) { //验证图形验证码 var cacheCheckCode = Session[CHECK_CODE_KEY] as string; //Session.Remove(CHECK_CODE_KEY); if (cacheCheckCode == null || string.IsNullOrEmpty(imagecheckCode) || imagecheckCode.ToLower() != cacheCheckCode.ToLower()) { return(Json(new Result { success = false, msg = "验证码错误" })); } _iMemberService.CheckContactInfoHasBeenUsed(pluginId, destination); var timeout = CacheKeyCollection.MemberPluginCheckTime(destination, pluginId); if (Core.Cache.Exists(timeout)) { return(Json(new Result() { success = false, msg = "120秒内只允许请求一次,请稍后重试!" })); } var checkCode = new Random().Next(10000, 99999); var cacheTimeout = DateTime.Now.AddMinutes(15); if (pluginId.ToLower().Contains("email")) { cacheTimeout = DateTime.Now.AddMinutes(30); } Log.Debug(destination + ":" + checkCode); Core.Cache.Insert(CacheKeyCollection.MemberPluginCheck(destination, pluginId), checkCode.ToString(), cacheTimeout); var user = new MessageUserInfo() { UserName = destination, SiteName = SiteSettings.SiteName, CheckCode = checkCode.ToString() }; _iMessageService.SendMessageCode(destination, pluginId, user); Core.Cache.Insert(CacheKeyCollection.MemberPluginCheckTime(destination, pluginId), "0", DateTime.Now.AddSeconds(120)); return(Json(new Result() { success = true, msg = "发送成功" })); }
public ActionResult ChangePassWord(string passWord, string key) { UserMemberInfo userMemberInfo = Cache.Get(key) as UserMemberInfo; if (userMemberInfo == null) { return(Json(new { success = false, flag = -1, msg = "验证超时" })); } long id = userMemberInfo.Id; ServiceHelper.Create <IMemberService>().ChangePassWord(id, passWord); MessageUserInfo messageUserInfo = new MessageUserInfo() { SiteName = base.CurrentSiteSetting.SiteName, UserName = userMemberInfo.UserName }; return(Json(new { success = true, flag = 1, msg = "成功找回密码" })); }
public ActionResult ChangePassWord(string passWord, string key) { UserMemberInfo userMemberInfo = Cache.Get(string.Concat(key, "3")) as UserMemberInfo; if (userMemberInfo == null) { return(Json(new { success = false, flag = -1, msg = "Verify Timeout" })); } long id = userMemberInfo.Id; ServiceHelper.Create <IMemberService>().ChangePassWord(id, passWord); MessageUserInfo messageUserInfo = new MessageUserInfo() { SiteName = base.CurrentSiteSetting.SiteName, UserName = userMemberInfo.UserName }; Task.Factory.StartNew(() => ServiceHelper.Create <IMessageService>().SendMessageOnFindPassWord(id, messageUserInfo)); return(Json(new { success = true, flag = 1, msg = "Password recovery success" })); }
public void SetPayPwd(long memid, string pwd) { pwd = pwd.Trim(); var salt = Guid.NewGuid().ToString("N"); var pwdmd5 = Mall.Core.Helper.SecureHelper.MD5(Mall.Core.Helper.SecureHelper.MD5(pwd) + salt); var member = DbFactory.Default.Get <MemberInfo>().Where(e => e.Id == memid).FirstOrDefault(); if (member != null) { DbFactory.Default.Set <MemberInfo>().Set(n => n.PayPwd, pwdmd5).Set(n => n.PayPwdSalt, salt).Where(p => p.Id == member.Id).Succeed(); string CACHE_USER_KEY = CacheKeyCollection.Member(memid); Core.Cache.Remove(CACHE_USER_KEY); //消息通知 var userMessage = new MessageUserInfo(); userMessage.UserName = member.UserName; userMessage.SiteName = SiteSettingApplication.SiteSettings.SiteName; Task.Factory.StartNew(() => ServiceProvider.Instance <IMessageService> .Create.SendMessageOnEditPayPassWord(member.Id, userMessage)); } }
/// <summary> /// 发送验证码,认证管理员 /// </summary> /// <param name="pluginId">信息类别</param> /// <param name="destination">联系号码</param> /// <param name="UserName">会员账号</param> /// <param name="SiteName">站点设置</param> /// <returns></returns> public static bool SendShopCode(string pluginId, string destination, string UserName, string SiteName) { var timeout = CacheKeyCollection.MemberPluginReBindTime(UserName, pluginId); //验证码超时时间 if (Core.Cache.Get(timeout) != null) { return(false); } var checkCode = new Random().Next(10000, 99999); var cacheTimeout = DateTime.Now.AddMinutes(15); Core.Cache.Insert(CacheKeyCollection.MemberPluginCheck(UserName, pluginId + destination), checkCode, cacheTimeout); var user = new MessageUserInfo() { UserName = UserName, SiteName = SiteName, CheckCode = checkCode.ToString() }; _iMessageService.SendMessageCode(destination, pluginId, user); Core.Cache.Insert(CacheKeyCollection.MemberPluginReBindTime(UserName, pluginId), "0", DateTime.Now.AddSeconds(110));//验证码超时时间 return(true); }
public ActionResult SendCode(string pluginId, string destination) { ServiceHelper.Create <IMemberService>().CheckContactInfoHasBeenUsed(pluginId, destination, MemberContactsInfo.UserTypes.General); if (Cache.Get(CacheKeyCollection.MemberPluginCheckTime(base.CurrentUser.UserName, pluginId)) != null) { Result result = new Result() { success = false, msg = "120秒内只允许请求一次,请稍后重试!" }; return(Json(result)); } int num = (new Random()).Next(10000, 99999); DateTime dateTime = DateTime.Now.AddMinutes(15); if (pluginId.ToLower().Contains("email")) { dateTime = DateTime.Now.AddHours(24); } Cache.Insert(CacheKeyCollection.MemberPluginCheck(base.CurrentUser.UserName, pluginId), num, dateTime); MessageUserInfo messageUserInfo = new MessageUserInfo() { UserName = base.CurrentUser.UserName, SiteName = base.CurrentSiteSetting.SiteName, CheckCode = num.ToString() }; ServiceHelper.Create <IMessageService>().SendMessageCode(destination, pluginId, messageUserInfo); string str = CacheKeyCollection.MemberPluginCheckTime(base.CurrentUser.UserName, pluginId); DateTime now = DateTime.Now; Cache.Insert(str, "0", now.AddSeconds(110)); Result result1 = new Result() { success = true, msg = "发送成功" }; return(Json(result1)); }
/// <summary> /// (绑定银行卡)发送验证码 /// </summary> /// <param name="pluginId">信息类别</param> /// <param name="destination">联系号码</param> /// <param name="userName">会员账号</param> /// <param name="SiteName">站点设置</param> /// <returns></returns> public static bool BindBankSendCode(string pluginId, string destination, string userName, string SiteName) { var timeout = CacheKeyCollection.ShopPluginBindBankTime(userName, pluginId); //验证码超时时间 if (Core.Cache.Exists(timeout)) { return(false); } var checkCode = new Random().Next(10000, 99999); // Log.Debug("Code:" + checkCode); var cacheTimeout = DateTime.Now.AddMinutes(15); Core.Cache.Insert(CacheKeyCollection.ShopPluginBindBank(userName, pluginId + destination), checkCode, cacheTimeout); var user = new MessageUserInfo() { UserName = userName, SiteName = SiteName, CheckCode = checkCode.ToString() }; MessageApplication.SendMessageCode(destination, pluginId, user); Core.Cache.Insert(CacheKeyCollection.ShopPluginBindBankTime(userName, pluginId), "0", DateTime.Now.AddSeconds(110));//验证码超时时间 return(true); }
public ActionResult SendCode(string pluginId, string destination, bool checkBind = false) { if (checkBind && _iMessageService.GetMemberContactsInfo(pluginId, destination, Entities.MemberContactInfo.UserTypes.General) != null) { return(Json(new Result() { success = false, msg = destination + "已经绑定过了!" })); } _iMemberService.CheckContactInfoHasBeenUsed(pluginId, destination); var timeout = CacheKeyCollection.MemberPluginCheckTime(CurrentUser.UserName, pluginId); if (Core.Cache.Exists(timeout)) { return(Json(new Result() { success = false, msg = "120秒内只允许请求一次,请稍后重试!" })); } var checkCode = new Random().Next(10000, 99999); var cacheTimeout = DateTime.Now.AddMinutes(15); if (pluginId.ToLower().Contains("email")) { cacheTimeout = DateTime.Now.AddHours(24); } Core.Cache.Insert(CacheKeyCollection.MemberPluginCheck(CurrentUser.UserName, pluginId + destination), checkCode.ToString(), cacheTimeout); var user = new MessageUserInfo() { UserName = CurrentUser.UserName, SiteName = SiteSettings.SiteName, CheckCode = checkCode.ToString() }; _iMessageService.SendMessageCode(destination, pluginId, user); Core.Cache.Insert(CacheKeyCollection.MemberPluginCheckTime(CurrentUser.UserName, pluginId), "0", DateTime.Now.AddSeconds(120)); return(Json(new Result() { success = true, msg = "发送成功" })); }
public ActionResult SendCode(string pluginId, string destination, bool checkBind = false) { if (checkBind && _iMessageService.GetMemberContactsInfo(pluginId, destination, Entities.MemberContactInfo.UserTypes.General) != null) { return(Json(new Result() { success = false, msg = destination + "已经绑定过了!" })); } var timeout = CacheKeyCollection.MemberPluginReBindTime(CurrentUser.UserName, pluginId); //验证码超时时间 if (Core.Cache.Exists(timeout)) { return(Json(new Result() { success = false, msg = "120秒内只允许请求一次,请稍后重试!" })); } var checkCode = new Random().Next(10000, 99999); //TODO yx 短信验证码超时时间需改成可配置,并且短信模板需添加超时时间变量 var cacheTimeout = DateTime.Now.AddMinutes(2); #if DEBUG //Log.Debug(destination + "[SendCode]" + checkCode); #endif Core.Cache.Insert(CacheKeyCollection.MemberPluginCheck(CurrentUser.UserName, pluginId + destination), checkCode.ToString(), cacheTimeout); var user = new MessageUserInfo() { UserName = CurrentUser.UserName, SiteName = SiteSettings.SiteName, CheckCode = checkCode.ToString() }; _iMessageService.SendMessageCode(destination, pluginId, user); Core.Cache.Insert(CacheKeyCollection.MemberPluginReBindTime(CurrentUser.UserName, pluginId), "0", DateTime.Now.AddSeconds(120));//验证码超时时间 return(Json(new Result() { success = true, msg = "发送成功" })); }
public void SendMessageCode(string destination, string pluginId, MessageUserInfo info) { Plugin <IMessagePlugin> plugin = PluginsManagement.GetPlugin <IMessagePlugin>(pluginId); if (string.IsNullOrEmpty(destination) || !plugin.Biz.CheckDestination(destination)) { throw new HimallException(string.Concat(plugin.Biz.ShortName, "错误")); } string str = plugin.Biz.SendMessageCode(destination, info); if (plugin.Biz.EnableLog) { DbSet <MessageLog> messageLog = context.MessageLog; MessageLog messageLog1 = new MessageLog() { SendTime = new DateTime?(DateTime.Now), ShopId = new long?(0), MessageContent = str, TypeId = "短信" }; messageLog.Add(messageLog1); context.SaveChanges(); } }
/// <summary> /// 找回密码 /// </summary> /// <param name="destination"></param> /// <param name="info"></param> public static void SendMessageOnFindPassWord(long userId, MessageUserInfo info) { _iMessageService.SendMessageOnFindPassWord(userId, info); }
/// <summary> /// 发送验证码 /// </summary> /// <param name="destination"></param> /// <param name="info"></param> public static void SendMessageCode(string destination, string pluginId, MessageUserInfo info) { _iMessageService.SendMessageCode(destination, pluginId, info); }