/// <summary> /// 生成验证码 /// </summary> /// <param name="email">邮箱地址</param> /// <param name="mobile">手机号码</param> /// <returns>验证码</returns> private string BuildVerifyCode(string appSign, string terminalSign, string email, string mobile = "") { try { //1.强制该邮件或手机号对应验证码失效 CancelVerifyCode(appSign, email, mobile); //1.生成验证码及失效日期 var dbNow = CommonUtil.GetDBDateTime(); string verifyCode = VerifyCodeUtil.Intance.GenNumCode(Consts.APP_VALIDATE_CODE_LENGTH); DateTime expireDate = dbNow.AddSeconds(ConfigUtil.ValidatecodeExpire); //2.登记用户验证码信息 McpSysVerifycodeInfo verifyCodeModel = new McpSysVerifycodeInfo(); verifyCodeModel.AppSign = appSign; verifyCodeModel.Mobile = mobile; verifyCodeModel.Email = email; verifyCodeModel.VerifyCode = verifyCode; verifyCodeModel.CreatedBy = mobile; verifyCodeModel.ExpireDate = expireDate; verifyCodeModel.Verified = 0; verifyCodeModel.CreatedOn = dbNow; verifyCodeModel.TerminalCode = terminalSign; this.GetRepository <McpSysVerifycodeInfo>().Create(verifyCodeModel); //3.返回产生的验证码 return(verifyCode); } catch (Exception ex) { LogUtil.Error(ex.StackTrace); throw new MessageException("系统错误,生成验证码失败!"); } }
/// <summary> /// 使用验证码 /// </summary> /// <param name="verifyCodeId">验证码Id</param> public void UpdateVerifyCodeStatus(string appSign, long verifyCodeId) { McpSysVerifycodeInfo verifyCodeModel = new McpSysVerifycodeInfo(); verifyCodeModel.VerifyCodeId = verifyCodeId; verifyCodeModel.AppSign = appSign; verifyCodeModel.Verified = 1; verifyCodeModel.VerifiedDate = CommonUtil.GetDBDateTime(); long vid = this.GetRepository <McpSysVerifycodeInfo>().Update(verifyCodeModel, "verified,verified_date"); if (vid <= 0) { throw new MessageException("系统错误,更新验证码状态失败!"); } }