|  |  | 
 |  |  | import com.doumee.service.system.SystemUserService; | 
 |  |  | import org.apache.shiro.authc.AuthenticationInfo; | 
 |  |  | import org.apache.shiro.authc.AuthenticationToken; | 
 |  |  | import org.apache.shiro.authc.UsernamePasswordToken; | 
 |  |  | import org.apache.shiro.authc.credential.HashedCredentialsMatcher; | 
 |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
 |  |  | import org.springframework.context.annotation.Lazy; | 
 |  |  | 
 |  |  |  | 
 |  |  |     @Override | 
 |  |  |     public boolean doCredentialsMatch(AuthenticationToken token, AuthenticationInfo info) { | 
 |  |  |         ShiroToken usernamePasswordToken = (ShiroToken) token; | 
 |  |  |         UsernamePasswordToken usernamePasswordToken = (UsernamePasswordToken) token; | 
 |  |  |         SystemUser queryUserDto = new SystemUser(); | 
 |  |  |         queryUserDto.setUsername(usernamePasswordToken.getUsername()); | 
 |  |  |         queryUserDto.setDeleted(Boolean.FALSE); | 
 |  |  | 
 |  |  |         if (systemUser == null) { | 
 |  |  |             return Boolean.FALSE; | 
 |  |  |         } | 
 |  |  |         if(usernamePasswordToken.getDdLogin()){ | 
 |  |  |             return Boolean.TRUE; | 
 |  |  |         } | 
 |  |  |         if(usernamePasswordToken.getWxLogin()){ | 
 |  |  |             return Boolean.TRUE; | 
 |  |  |         } | 
 |  |  | //        if(usernamePasswordToken.getDdLogin()){ | 
 |  |  | //            return Boolean.TRUE; | 
 |  |  | //        } | 
 |  |  | //        if(usernamePasswordToken.getWxLogin()){ | 
 |  |  | //            return Boolean.TRUE; | 
 |  |  | //        } | 
 |  |  |         // 加密密码 | 
 |  |  |         String pwd = Utils.Secure.encryptPassword(new String(usernamePasswordToken.getPassword()), systemUser.getSalt()); | 
 |  |  |         // 比较密码 |