/// <summary> /// 提交验证码 /// </summary> /// <param name="mod"></param> /// <returns></returns> public virtual JsonResult SubmitCode(SubmitCodeReq mod) { if (string.IsNullOrEmpty(mod.phone)) { return(ResultUtils.Fail("手机号码或用户名不能为空")); } if (string.IsNullOrEmpty(mod.code)) { return(ResultUtils.Fail("验证码不能为空")); } int ret = NH.Service.VerifyService.Instance().SubmitCode(mod); if (ret == 1) { return(ResultUtils.Success("验证成功")); } else if (ret == -1) { return(ResultUtils.Fail("用户不存在")); } else if (ret == -2) { return(ResultUtils.Fail("手机号码未注册")); } return(ResultUtils.Fail("验证码过期")); }
/// <summary> /// 重置密码 /// </summary> /// <param name="req"></param> /// <returns></returns> public virtual JsonResult ResetPassword(ResetPasswordReq req) { if (string.IsNullOrEmpty(req.phone)) { return(ResultUtils.Fail("手机号码或用户名不能为空")); } if (string.IsNullOrEmpty(req.code)) { return(ResultUtils.Fail("验证码不能为空")); } if (string.IsNullOrEmpty(req.password)) { return(ResultUtils.Fail("密码不能为空")); } SubmitCodeReq mod = new SubmitCodeReq() { phone = req.phone, code = req.code }; int ret = NH.Service.VerifyService.Instance().SubmitCode(mod); if (ret == 0) { return(ResultUtils.Success("验证码过期")); } else if (ret == -1) { return(ResultUtils.Fail("用户不存在")); } else if (ret == -2) { return(ResultUtils.Fail("手机号码未注册")); } userid = NH.Service.Api.AuthService.GetInstance().ResetPassword(req); if (userid > 0) { Entity.Model.Token token = base.GetToken(); return(ResultUtils.Success(new { userId = token.UserID, timeStamp = token.Timestamp, platform = token.Platform, token = token.TokenStr })); } return(ResultUtils.Fail("重置密码失败")); }
/// <summary> /// 提交验证码 /// </summary> /// <param name="req"></param> /// <returns>1:成功;0:验证码过期;-1,用户不存在;-2:手机号码未注册</returns> public virtual int SubmitCode(SubmitCodeReq req) { return(dal.SubmitCode(req)); }
/// <summary> /// 提交验证码 /// </summary> /// <param name="req"></param> /// <returns>1:成功;0:验证码过期;-1,用户不存在;-2:手机号码未注册</returns> public virtual int SubmitCode(SubmitCodeReq req) { ISession Session = null; try { Session = DBHelper.SessionFactory.OpenSession(); var query = Session.QueryOver <AuthVerify>(); if (Utils.IsValidMobile(req.phone)) //如果是手机号码 { query.Where(c => c.Phone == req.phone && c.VerifyCode == req.code); } else { query.Where(c => c.UserName == req.phone && c.VerifyCode == req.code); if (query.RowCount() == 0) //如果不存在用户名的验证码,则去用户表查手机 { var query2 = Session.QueryOver <Users>(); query2.Where(r => r.UserName == req.phone && r.IsLocked == false); var usermod = query2.SingleOrDefault(); if (usermod != null) { query.Where(c => c.Phone == usermod.Phone && c.VerifyCode == req.code); } else { return(-1); //该用户在系统不存在 } } } query.RootCriteria.AddOrder(Order.Desc("ID")).List <AuthVerify>(); AuthVerify mod = null; if (query.RowCount() > 1) { mod = query.List().FirstOrDefault(); } else { mod = query.SingleOrDefault(); } if (mod != null && mod.ID > 0) { if (mod.CreateTime.AddMinutes(mod.Expired) > DateTime.Now) { return(1); } return(0); //验证码过期 } return(-2); //该手机号码未注册 } catch (Exception ex) { LogHelper.WriteLog("用户提交验证码出错:SubmitCode," + ex.Message, "Exception_AuthVerifyDal.txt"); return(0); } finally { Session.Close(); Session.Dispose(); } }