diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/session/strategy/LocalCacheSessionStrategy.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/session/strategy/LocalCacheSessionStrategy.java index ce50593..74dcd52 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/session/strategy/LocalCacheSessionStrategy.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/session/strategy/LocalCacheSessionStrategy.java @@ -26,7 +26,7 @@ import java.util.concurrent.TimeUnit; /** * 本地session缓存策略 - *

+ *

* Created by Administrator on 2016/6/2 0002. */ public class LocalCacheSessionStrategy implements ISessionProvider { @@ -37,18 +37,18 @@ public class LocalCacheSessionStrategy implements ISessionProvider { private Map localSessionCache = new ConcurrentHashMap<>(); - public static Cache cache = CacheBuilder.newBuilder() + public static Cache cache = CacheBuilder.newBuilder() .expireAfterAccess(6, TimeUnit.HOURS) .build(); @Override public LoginContext checkSession(HttpServletRequest request, HttpServletResponse response, String token) { - LoginContext loginContext = cache.getIfPresent(token); - if(null==loginContext||!loginContext.isLogin()) { + LoginContext loginContext = cache.getIfPresent(token); + if (null == loginContext || !loginContext.isLogin()) { throw new TokenException(); } Users users = usersService.getUsers(loginContext.getId()); - if(null == users) { + if (null == users) { throw new TokenException(); } request.setAttribute("loginContext", loginContext); @@ -66,35 +66,40 @@ public class LocalCacheSessionStrategy implements ISessionProvider { UsersQuery membersQuery = new UsersQuery(); membersQuery.setAccount(account); - if(StringUtils.isNotEmpty(password)){ - membersQuery.setPwd(MD5Utils.md5(password).toUpperCase()); - }else{ - if(StringUtils.isNotEmpty(code)){ - throw new BusinessException(ErrorCodeConstants.BUSINESS_ERROR+"","该版本不支持手机号登录."); - }else{ - throw new BusinessException(ErrorCodeConstants.BUSINESS_ERROR+"","密码不能为空."); - } + if (StringUtils.isEmpty(password)) { + throw new BusinessException(ErrorCodeConstants.BUSINESS_ERROR + "", "密码不能为空."); + } else if (StringUtils.isNotEmpty(code)) { + throw new BusinessException(ErrorCodeConstants.BUSINESS_ERROR + "", "该版本不支持手机号登录."); } + membersQuery.setYn(YnEnums.YES.getId()); //本地版本忽略code没有短信验证码 List membersList = usersService.queryUsers(membersQuery); LoginContext loginContext = new LoginContext(); - loginContext.setErrormsg("用户不存在."); - loginContext.setErrorcode(4003); if (CollectionUtils.isNotEmpty(membersList)) { Integer userId = membersList.get(0).getId(); - loginContext.setId(userId); - String token = preFix + TokenUtils.getToken(UUID.randomUUID().toString()); - loginContext.setToken(token); - loginContext.setErrorcode(0); - loginContext.setErrormsg("登录成功"); - cache.put(token, loginContext); + if(MD5Utils.md5(password).toUpperCase().equals(membersList.get(0).getPwd())){ + loginContext.setId(userId); + String token = preFix + TokenUtils.getToken(UUID.randomUUID().toString()); + loginContext.setToken(token); + loginContext.setErrorcode(0); + loginContext.setErrormsg("登录成功"); + cache.put(token, loginContext); + }else{ + loginContext.setErrormsg("密码错误."); + loginContext.setErrorcode(4003); + } + }else{ + loginContext.setErrormsg("用户不存在."); + loginContext.setErrorcode(4003); } return loginContext; } - public static void main(String[] args){ + + public static void main(String[] args) { System.out.print(MD5Utils.md5("123456").toUpperCase()); } + @Override public LoginContext register(String userId, String phone, String account, String pwd) { LoginContext loginContext = new LoginContext();