public ActionResult SendMobileCode(string mobile)
        {
            if (Regex.IsMatch(mobile, "^(13[0-9]|15[012356789]|18[0123456789]|14[57])[0-9]{8}$"))
            {
                //send message
                if (Session["LastSendSMS"] != null)
                {
                    var time = (DateTime)Session["LastSendSMS"];
                    if (DateTime.Now - time < new TimeSpan(0, 1, 0))
                    {
                        return(Json(new { success = false, msg = "发送频率过快" }, JsonRequestBehavior.AllowGet));
                    }
                }
                Session["LastSendSMS"] = DateTime.Now;
                var svc    = ServiceLocator.Resolve <IModelService>("Internal");
                var tenant = svc.Select(new TenantQuery()
                {
                    Account = mobile
                }).FirstOrDefault();
                if (tenant != null)
                {
                    return(Json(new { success = false, msg = "该手机号已经注册" }, JsonRequestBehavior.AllowGet));
                }
                var verify = new SMSVerify()
                {
                    Code   = RandomUtil.Number(),
                    Mobile = mobile,
                    Type   = SMSVerifyTypes.Account
                };

                svc.Create(verify);
                return(Json(new { success = true, msg = verify.Code }, JsonRequestBehavior.AllowGet));
            }
            return(Json(new { success = false, msg = "手机号错误" }, JsonRequestBehavior.AllowGet));
        }
Example #2
0
        public ActionResult SendSMS()
        {
            if (Session["Account"] == null)
            {
                return(Json(new { success = false, msg = "" }, JsonRequestBehavior.AllowGet));
            }
            var svc    = ServiceLocator.Resolve <IModelService>("Internal");
            var verify = new SMSVerify()
            {
                Mobile = (string)Session["Account"],
                Code   = RandomUtil.Number(),
                Type   = SMSVerifyTypes.ResetPwd
            };

            svc.Create(verify);
            return(Json(new { success = true, msg = "" }, JsonRequestBehavior.AllowGet));
        }