public JsonResult CheckCode()
        {
            var mobile = Request.QueryString["username"];
            var code   = Request.QueryString["MsgVerifyCode"];
            var result = new PhoneCodeService().CheckMobileCode(mobile, code);

            return(new JsonNetResult(result));
        }
        public ActionResult SendValidCodeFJXX(string mobile, string type, bool isNewRegister = false, string guess = "")
        {
            string IP = (Request.ServerVariables["HTTP_VIA"] != null) ? Request.ServerVariables["HTTP_X_FORWARDED_FOR"].ToString() : Request.ServerVariables["REMOTE_ADDR"].ToString();

            if (Session[CAPTCHAS_TEXT] == null || string.IsNullOrEmpty(guess) || guess.ToLower() != Session[CAPTCHAS_TEXT].ToString().ToLower())
            {
                SysLogService.SaveSysLog("AliDaYu", IP, string.Format("SessionID:{0},手机号码:{1},验证码:{2}", Session.SessionID, mobile, guess), "发送短信验证码,图片验证码输入错误");
                return(Json(new { msg = "图片验证码输入错误", success = false }));
            }
            mobile = mobile.Trim();
            if (mobile.IsNullOrTrimEmpty())
            {
                return(Json(new { msg = "手机不能为空", success = false }));
            }
            if (new Regex(@"^1[3|5|7|8|4|][0-9]{9}$").IsMatch(mobile) == false)
            {
                return(Json(new { msg = "手机格式不正确", success = false }));
            }

            var pcsv       = new PhoneCodeService();
            var codeRecord = pcsv.GetPhoneCodeByMobile(mobile);

            if (codeRecord != null && (DateTime.Now - codeRecord.SendTime).TotalMinutes < 1)
            {
                return(Json(new { msg = "短信已发送,发送时间为:" + codeRecord.SendTime.ToString("yyyy-MM-dd HH:mm:ss") + ",一分钟后重发", success = false }));
            }

            var code   = new Random().Next(100000, 999999);
            var isUsed = pcsv.IsPhoneUsed(mobile);

            if (isUsed || isNewRegister)
            { //当情况为注册过的改密码 或 新注册时
                pcsv.CreatePhoneCode(mobile, code.ToString(), "UnKnown");
                //var data = new FCake.Bll.Services.MsgTemplateService().GetMsgTempByCategory(type);
                //var result = EChiHelper.SendSMSResult(mobile, string.Format(data, code), FormatType.MobileCheckCode);
                var sendErrorMsg = string.Empty;


                SysLogService.SaveSysLog("AliDaYu", IP, string.Format("SessionID:{0},手机号码:{1},模板ID:{2}", Session.SessionID, mobile, DaYuConfig.SMSCodeCommonTemplate), "调用阿里大鱼发送手机验证码接口");

                var result = DaYuSMSHelper.SendSMSCode(mobile, code.ToString(), out sendErrorMsg);

                if (result)
                {
                    return(Json(new { msg = "短信发送成功,一小时内有效", success = true }));
                }
                else
                {
                    SysLogService.SaveAliSMSErrorLog(sendErrorMsg, mobile, DaYuConfig.SMSCodeCommonTemplate);
                }
            }
            else
            {
                return(Json(new { msg = "该手机号未绑定账户,请确认您的手机号", success = false }));
            }
            return(Json(new { msg = "短信发送失败", success = false }));
        }
Exemple #3
0
        public JsonNetResult SaveMemberInfo(Customers newEntity, string ddlProvince, string ddlCity, string ddlArea, string ttbAddress)
        {
            newEntity.Mobile = newEntity.Mobile.Trim();
            if (newEntity.Mobile.IsNullOrTrimEmpty())
            {
                return(new JsonNetResult(new OpResult()
                {
                    Successed = false, Message = "手机不能为空"
                }));
            }
            if (new Regex(@"^1[3|5|7|8|][0-9]{9}$").IsMatch(newEntity.Mobile) == false)
            {
                return(new JsonNetResult(new OpResult()
                {
                    Successed = false, Message = "手机格式不正确"
                }));
            }

            var userId = CurrentMember.MemberId.ToString();

            var code     = Request.Params["Code"];
            var customer = new MemberService().GetMember(userId);

            if (customer == null)
            {
                return(new JsonNetResult(new OpResult()
                {
                    Successed = false, Message = "找不到会员信息"
                }));
            }
            else
            {
                if (customer.Mobile.IsNullOrTrimEmpty())
                {
                    return(new JsonNetResult(new OpResult()
                    {
                        Successed = false, Message = "找不到会员手机号"
                    }));
                }
                if (customer.Mobile != newEntity.Mobile)
                { //当修改手机(账户名)时
                    var r = new PhoneCodeService().CheckMobileCode(newEntity.Mobile, code);
                    if (r == false)
                    {
                        return(new JsonNetResult(new OpResult()
                        {
                            Successed = false, Message = "修改手机号时,验证码错误"
                        }));
                    }
                }
                var result = new MemberService().SaveMemberInfo(userId, newEntity, ddlProvince, ddlCity, ddlArea, ttbAddress);

                CurrentMember.ReSetMemberSession(CurrentMember.MemberId);
                return(new JsonNetResult(result));
            }
        }
Exemple #4
0
        public OpResult ResetPassword(string mobile, string code, string newPwd)
        {
            var pcsv = new PhoneCodeService();

            if (pcsv.CheckMobileCode(mobile, code))
            { //true
                var member = context.Customers.SingleOrDefault(c => c.Mobile.Equals(mobile));
                try
                {
                    if (RegPwd(newPwd))
                    {
                        member.Password = GetEncryPwd(newPwd);
                        member.ChangePasswordTimeStamp = long.Parse(DateTime.Now.ToString("yyyyMMddHHmmss"));
                        context.SaveChanges();
                        pcsv.DeletePhoneCode(mobile, "mobile");
                        return(new OpResult()
                        {
                            Successed = true, Message = "修改成功"
                        });
                    }
                    else
                    {
                        return new OpResult()
                               {
                                   Successed = false, Message = "新密码格式不正确"
                               }
                    };
                }
                catch (Exception e)
                {
                    return(new OpResult()
                    {
                        Successed = false, Message = e.Message
                    });
                }
            }
            else
            { //false
                return(new OpResult()
                {
                    Successed = false, Message = "验证码不正确"
                });
            }
        }
Exemple #5
0
        public JsonNetResult SaveNewPhone(Customers newEntity)
        {
            newEntity.Mobile = newEntity.Mobile.Trim();
            if (newEntity.Mobile.IsNullOrTrimEmpty())
            {
                return(new JsonNetResult(new OpResult()
                {
                    Successed = false, Message = "手机不能为空"
                }));
            }
            if (new Regex(@"^1[3|5|7|8|][0-9]{9}$").IsMatch(newEntity.Mobile) == false)
            {
                return(new JsonNetResult(new OpResult()
                {
                    Successed = false, Message = "手机格式不正确"
                }));
            }

            var userId = CurrentMember.MemberId.ToString();

            var code     = Request.Params["Code"];
            var customer = new MemberService().GetMember(userId);

            if (customer == null)
            {
                return(new JsonNetResult(new OpResult()
                {
                    Successed = false, Message = "找不到会员信息"
                }));
            }
            else
            {
                if (customer.Mobile.IsNullOrTrimEmpty())
                {
                    return(new JsonNetResult(new OpResult()
                    {
                        Successed = false, Message = "找不到会员手机号"
                    }));
                }
                if (customer.Mobile != newEntity.Mobile)
                { //当修改手机(账户名)时
                    var r = new PhoneCodeService().CheckMobileCode(newEntity.Mobile, code);
                    if (r == false)
                    {
                        return(new JsonNetResult(new OpResult()
                        {
                            Successed = false, Message = "验证码错误"
                        }));
                    }
                    else
                    {
                        return(new JsonNetResult(new MemberService().SaveNewPhone(userId, newEntity)));
                    }
                }
                else
                {
                    return(new JsonNetResult(new OpResult()
                    {
                        Successed = false, Message = "该手机号已注册"
                    }));
                }

                var result = new OpResult()
                {
                    Successed = false, Message = "绑定失败"
                };
                return(new JsonNetResult(result));
            }
        }