diff --git a/power-admin/pom.xml b/power-admin/pom.xml index ba48fb4..3335323 100644 --- a/power-admin/pom.xml +++ b/power-admin/pom.xml @@ -158,18 +158,18 @@ power - - - - - - - - - - - - + + + org.apache.maven.plugins + maven-compiler-plugin + 3.1 + + + 1.8 + 1.8 + UTF-8 + + org.apache.tomcat.maven tomcat7-maven-plugin diff --git a/power-admin/src/main/java/com/manage/bean/LoginVoRedis.java b/power-admin/src/main/java/com/manage/bean/LoginVoRedis.java index 2afb1eb..8ce65d6 100644 --- a/power-admin/src/main/java/com/manage/bean/LoginVoRedis.java +++ b/power-admin/src/main/java/com/manage/bean/LoginVoRedis.java @@ -1,17 +1,19 @@ package com.manage.bean; + public class LoginVoRedis { - private String username; + private String userName; private String password; private int loginFailureCount; private String loginTime; - public String getUsername() { - return username; + + public String getUserName() { + return userName; } - public void setUsername(String username) { - this.username = username; + public void setUserName(String userName) { + this.userName = userName; } public String getPassword() { @@ -41,7 +43,7 @@ public class LoginVoRedis { @Override public String toString() { return "LoginVo_Redis{" + - "username='" + username + '\'' + + "username='" + userName + '\'' + ", password='" + password + '\'' + ", loginFailureCount=" + loginFailureCount + ", loginTime='" + loginTime + '\'' + diff --git a/power-admin/src/main/java/com/manage/controller/LoginController.java b/power-admin/src/main/java/com/manage/controller/LoginController.java index 60fbec6..2de8b9a 100644 --- a/power-admin/src/main/java/com/manage/controller/LoginController.java +++ b/power-admin/src/main/java/com/manage/controller/LoginController.java @@ -62,167 +62,147 @@ public class LoginController { @Value("${POWER_PORT}") private String POWER_PORT; - @RequestMapping(value = "login",method = RequestMethod.GET) - public String toLogin(Model model){ + @RequestMapping(value = "login", method = RequestMethod.GET) + public String toLogin(Model model) { Power_Login_Set loginSet = powerLoginSetMapper.selectByPrimaryKey(1); - model.addAttribute("loginSet",loginSet); + model.addAttribute("loginSet", loginSet); CacheManager.addExcCount("noExc"); return "loginDir/login"; } - @RequestMapping(value = "login",method = RequestMethod.POST) + @RequestMapping(value = "login", method = RequestMethod.POST) @ResponseBody - public Msg login(Power_User powerUser,HttpServletResponse response, HttpServletRequest request,Model model){ - LoginVoRedis loginVo = new LoginVoRedis(); - Msg msg = new Msg(); + public Msg login(Power_User powerUser, HttpServletResponse response, HttpServletRequest request, Model model) { String userName = powerUser.getUserName(); - String userPwd = powerUser.getUserPwd(); - - if (!userName.equals("admin")){ - String s ="00" + userName; + if (!userName.equals("admin")) { + String s = "00" + userName; powerUser.setUserName(s); } - loginVo.setUsername(userName); - loginVo.setPassword(userPwd); - Date date = new Date(); - SimpleDateFormat sdFormatter = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); - loginVo.setLoginTime(sdFormatter.toString()); Jedis redis = JedisPoolUtil.getJedisPoolInstance().getResource(); String userInfo = redis.get(userName); - if (userInfo==null){ - loginVo.setLoginFailureCount(0); - redis.set(userName, JSONObject.toJSONString(loginVo)); - userInfo = redis.get(userName); - } - JSON json =JSONObject.parseObject(userInfo); - System.out.println(json); - LoginVoRedis userLoginInfo = JSONObject.toJavaObject(json, LoginVoRedis.class); - int loginFailCount = userLoginInfo.getLoginFailureCount(); - if (loginFailCount >= 5 ) { - + String errorPwsCount = "0"; + if (userInfo == null) { + redis.set(userName, errorPwsCount); } - try { - Power_UserVo user = powerUserService.findPowerUserByUserNameAndUserPwd(powerUser); - - //添加进操作日志 - Power_Log log = new Power_Log(); - - if(user != null){ - //存session密码置空 - //是否记住密码功能 - MyCookieUtil.remember(request, response); - //设置token缓存 - String token = UUID.randomUUID().toString(); - CacheManager.addExcCount("noExc"); - List list = null; - List menuList = new ArrayList<>(); - Set menus = new LinkedHashSet<>(); - if (user.getRoleId().equals(0) || user.getRoleId().equals(-100)) { - list = powerMenuService.queryAllPowerMenu(null,user.getRoleId()); - } else { - list = powerMenuService.selectUserAndRoleMenuListPower(user.getUserId(),null); - } - if(null != list && !list.isEmpty()){ - for (Power_Menu powerMenu : list) { - User_Dept_Menu deptMenu = new User_Dept_Menu(); - String menuUrl = powerMenu.getMenuUrl(); - if (StringUtils.isNotBlank(menuUrl)) { - BeanUtils.copyProperties(powerMenu, deptMenu); - deptMenu.setMethodParent(powerMenu.getParentId()); - menuList.add(deptMenu); + int i = Integer.parseInt(redis.get(userName)); + if (i < 5) { + try { + Power_UserVo user = powerUserService.findPowerUserByUserNameAndUserPwd(powerUser); + //添加进操作日志 + Power_Log log = new Power_Log(); + if (user != null) { + //存session密码置空 + //是否记住密码功能 + MyCookieUtil.remember(request, response); + //设置token缓存 + String token = UUID.randomUUID().toString(); + CacheManager.addExcCount("noExc"); + List list = null; + List menuList = new ArrayList<>(); + Set menus = new LinkedHashSet<>(); + if (user.getRoleId().equals(0) || user.getRoleId().equals(-100)) { + list = powerMenuService.queryAllPowerMenu(null, user.getRoleId()); + } else { + list = powerMenuService.selectUserAndRoleMenuListPower(user.getUserId(), null); + } + if (null != list && !list.isEmpty()) { + for (Power_Menu powerMenu : list) { + User_Dept_Menu deptMenu = new User_Dept_Menu(); + String menuUrl = powerMenu.getMenuUrl(); + if (StringUtils.isNotBlank(menuUrl)) { + BeanUtils.copyProperties(powerMenu, deptMenu); + deptMenu.setMethodParent(powerMenu.getParentId()); + menuList.add(deptMenu); + } + if (StringUtils.isNotBlank(powerMenu.getMethod())) { + menus.add(powerMenu.getMenuUrl()); + } } - if (StringUtils.isNotBlank(powerMenu.getMethod())) { - menus.add(powerMenu.getMenuUrl()); + } + user.setMenuList(menuList); + user.setMenus(menus); + //设置科室 + StringBuilder powerDepts = new StringBuilder(); + List powerDeptsList = power_deptService.selectByPrimaryKeys(user.getDeptId()); + for (int j = 0; j < powerDeptsList.size(); j++) { + if (j < powerDeptsList.size() - 1) { + powerDepts.append(powerDeptsList.get(j).getDeptName()).append(","); + } else { + powerDepts.append(powerDeptsList.get(j).getDeptName()); } } - } - user.setMenuList(menuList); - user.setMenus(menus); - //设置科室 - StringBuilder powerDepts = new StringBuilder(); - List powerDeptsList = power_deptService.selectByPrimaryKeys(user.getDeptId()); - for(int j=0;jorg.slf4j slf4j-log4j12 + + redis.clients + jedis + 3.1.0 + compile + diff --git a/power-foundaton/src/main/java/com/manage/util/Msg.java b/power-foundaton/src/main/java/com/manage/util/Msg.java index 2c162e0..9e218c9 100644 --- a/power-foundaton/src/main/java/com/manage/util/Msg.java +++ b/power-foundaton/src/main/java/com/manage/util/Msg.java @@ -45,6 +45,13 @@ public class Msg { return result; } + public static Msg failUser2(){ + Msg result=new Msg(); + result.setCode(200); + result.setMsg("账号或密码错误次数过多,请十五分钟后在尝试登录"); + return result; + } + public static Msg fail(String msg){ Msg result=new Msg(); result.setCode(200);