/// <summary> /// 找回通行证密码 /// </summary> /// <param name="retrievePassword"></param> /// <returns></returns> /// <exception cref="BIStudio.Framework.DefinedException"></exception> public void PassportRetrievePassword(SYSPassportRetrievePasswordDTO dto) { if (string.IsNullOrEmpty(dto.LoginName)) { throw CFException.Create(SYSPassportChangePasswordResult.LoginNameDoesNotExist); } try { var passport = _passportRepository.Get(item => item.LoginName == dto.LoginName); //检查用户信息 if (!passport.ID.HasValue) { throw CFException.Create(SYSPassportChangePasswordResult.LoginNameDoesNotExist); } //检查新密码 if (string.IsNullOrEmpty(dto.Password) || !ALValidator.IsLengthStr(dto.Password, 6, 16)) { throw CFException.Create(SYSPassportChangePasswordResult.PasswordTooWeak); } if (string.IsNullOrEmpty(dto.ConfirmedPassword) || dto.Password != dto.ConfirmedPassword) { throw CFException.Create(SYSPassportChangePasswordResult.RePasswordIncorrect); } //更改密码 passport.Password = passport.ComputePassword(dto.LoginName, dto.Password); _passportRepository.Modify(passport); return; } catch (Exception ex) { throw CFException.Create(SYSPassportChangePasswordResult.Fail, ex.Message, ex); } }
/// <summary> /// 注册通行证 /// </summary> /// <param name="passport"></param> /// <returns></returns> /// <exception cref="BIStudio.Framework.DefinedException"></exception> public SYSPassport PassportRegist(SYSPassportRegistDTO passport) { if (string.IsNullOrEmpty(passport.LoginName) || !ALValidator.IsLengthStr(passport.LoginName, 4, 50) || !ALValidator.IsNormalChar(passport.LoginName)) { throw CFException.Create(SYSPassportRegistResult.LoginNameInvalid); } if (string.IsNullOrEmpty(passport.Password) || !ALValidator.IsLengthStr(passport.Password, 6, 16)) { throw CFException.Create(SYSPassportRegistResult.PasswordTooWeak); } if (string.IsNullOrEmpty(passport.RePassword) || passport.Password != passport.RePassword) { throw CFException.Create(SYSPassportRegistResult.RePasswordIncorrect); } if (string.IsNullOrEmpty(passport.Email) || !ALValidator.IsEmail(passport.Email)) { throw CFException.Create(SYSPassportRegistResult.EmailInvalid); } try { if (_passportRepository.Get(item => item.LoginName == passport.LoginName).ID != null) { throw CFException.Create(SYSPassportRegistResult.LoginNameAlreadyExists); } if (_passportRepository.Get(item => item.Email == passport.Email).ID != null) { throw CFException.Create(SYSPassportRegistResult.EmailAlreadyExists); } var now = DateTime.Now; var entity = new SYSPassport { LoginName = passport.LoginName, Email = passport.Email, Remarks = passport.Remarks, LastLoginTime = now, LastLoginError = 0, IsValid = true, IsLocked = false, Inputer = CFContext.User.UserName, InputerID = CFContext.User.ID, InputTime = now }; entity.Password = entity.ComputePassword(passport.LoginName, passport.Password); _passportRepository.Add(entity); return(entity); } catch (Exception ex) { throw CFException.Create(SYSPassportRegistResult.Fail, ex.Message, ex); } }