From 6206a0dfcfcf867dd4c9136deee8b27028229376 Mon Sep 17 00:00:00 2001 From: "rui.zhang" Date: Thu, 14 Apr 2016 09:53:03 +0800 Subject: [PATCH] platform permission add paging --- .../operate/web/controller/RolesController.java | 87 ++++++- .../operate/web/controller/UsersController.java | 253 +++++++++++++++++++-- 2 files changed, 313 insertions(+), 27 deletions(-) diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/RolesController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/RolesController.java index ee3e4cd..571479f 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/RolesController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/RolesController.java @@ -112,15 +112,13 @@ public class RolesController extends BaseController { } /** - * 创建角色 + * 创建用户角色 * @param response - * @param type 类型 */ - @RequestMapping(value = "/roles",method = RequestMethod.POST) + @RequestMapping(value = "/userRoles",method = RequestMethod.POST) @TokenRequired - public void addRoles(HttpServletResponse response, + public void addUserRoles(HttpServletResponse response, HttpServletRequest request, - @RequestParam(value = "type")Integer type, @RequestParam(value = "name")String name, @RequestParam(value = "enable")Integer enable, @RequestParam(value = "remarks", required = false)String remarks, @@ -130,13 +128,52 @@ public class RolesController extends BaseController { LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); Users users = usersService.getUsersByLoginCenterId(loginState.getId()); - if (type == null || StringUtils.isBlank(name) || null == users) { + if ( StringUtils.isBlank(name) || null == users) { ResultUtils.buildParameterErrorResultAndWrite(response); return; } Roles roles = new Roles(); - roles.setType(type); + roles.setType(1); + roles.setName(name); + roles.setEnable(enable); + roles.setRemarks(remarks); + roles.setShortcode(shortCode); + roles.setYn(YnEnums.YES.getId()); + roles.setPublishId(users.getId()); + roles.setPublishName(users.getName()); + roles.setModified(new Date()); + roles.setCreated(new Date()); + rolesService.addRoles(roles); + + ResultUtils.buildSuccessResultAndWrite(response); + } + + + /** + * 创建管理员角色 + * @param response + */ + @RequestMapping(value = "/adminRoles",method = RequestMethod.POST) + @TokenRequired + public void addAdminRoles(HttpServletResponse response, + HttpServletRequest request, + @RequestParam(value = "name")String name, + @RequestParam(value = "enable")Integer enable, + @RequestParam(value = "remarks", required = false)String remarks, + @RequestParam(value = "shortCode", required = false)String shortCode) { + + //获取登录用户 + LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); + Users users = usersService.getUsersByLoginCenterId(loginState.getId()); + + if (StringUtils.isBlank(name) || null == users) { + ResultUtils.buildParameterErrorResultAndWrite(response); + return; + } + + Roles roles = new Roles(); + roles.setType(0); roles.setName(name); roles.setEnable(enable); roles.setRemarks(remarks); @@ -255,12 +292,11 @@ public class RolesController extends BaseController { /** * 获取列表 */ - @RequestMapping(value = "/roles", method = RequestMethod.GET) + @RequestMapping(value = "/userRoles", method = RequestMethod.GET) @ResponseBody @TokenRequired - public void getPermissions(HttpServletResponse response, + public void getUserList(HttpServletResponse response, @RequestParam(value = "keyword",required = false) String keyword, - @RequestParam(value = "type",required = false) Integer type, @RequestParam(value = "page",required = false) Integer page, @RequestParam(value = "limit",required = false) Integer limit, @RequestParam(value = "orgId", required = false) Integer orgId) { @@ -272,7 +308,36 @@ public class RolesController extends BaseController { rolesQuery.setNeed("true"); rolesQuery.setSort("id desc"); rolesQuery.setYn(YnEnums.YES.getId()); - rolesQuery.setType(type); + rolesQuery.setType(1); + rolesQuery.setName(keyword); + rolesQuery.setPage(page); + rolesQuery.setLimit(limit); + //TODO 这里查询未完成 模糊查询 + + List roles = rolesService.queryRoles(rolesQuery); + ResultUtils.buildSuccessResultAndWrite(response, roles); + } + + + /** + * 获取列表 + */ + @RequestMapping(value = "/adminRoles", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public void getAdminList(HttpServletResponse response, + @RequestParam(value = "keyword",required = false) String keyword, + @RequestParam(value = "page",required = false) Integer page, + @RequestParam(value = "limit",required = false) Integer limit) { + + limit = limit == null ? 10 : limit; + page = page == null ? 1 : page; + + RolesQuery rolesQuery = new RolesQuery(); + rolesQuery.setNeed("true"); + rolesQuery.setSort("id desc"); + rolesQuery.setYn(YnEnums.YES.getId()); + rolesQuery.setType(0); rolesQuery.setName(keyword); rolesQuery.setPage(page); rolesQuery.setLimit(limit); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/UsersController.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/UsersController.java index 4b8dfa8..50f316d 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/UsersController.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/controller/UsersController.java @@ -54,16 +54,53 @@ public class UsersController extends BaseController { + /** + * 获取管理员列表 + */ + @RequestMapping(value = "/admins", method = RequestMethod.GET) + @ResponseBody + @TokenRequired + public void getAdminList(HttpServletResponse response, + @RequestParam(value = "keyword", required = false) String keyword, + @RequestParam(value = "rolesId", required = false) Integer rolesId, + @RequestParam(value = "page", required = false) Integer page, + @RequestParam(value = "limit", required = false) Integer limit) { + + limit = limit == null ? 10 : limit; + page = page == null ? 1 : page; + + UsersQuery usersQuery = new UsersQuery(); + usersQuery.setNeed("true"); + usersQuery.setSort("id desc"); + usersQuery.setYn(YnEnums.YES.getId()); + usersQuery.setName(keyword); + usersQuery.setType(0); + usersQuery.setPage(page); + usersQuery.setLimit(limit); + //TODO 这里查询未完成 模糊查询 + + List users = usersService.queryUsers(usersQuery); + + //设置用户角色信息 + for(Users user : users) { + user.setRoles(this.getUserRoles(user.getId())); + user.setOrganization(organizationService.getOrganization(user.getId())); + user.setDepartmentses(departmentsService.getDepartments(user.getDeptId())); + } + + + ResultUtils.buildSuccessResultAndWrite(response, users); + } + /** - * 获取列表 + * 获取用户列表 */ @RequestMapping(value = "/users", method = RequestMethod.GET) @ResponseBody @TokenRequired public void getPermissions(HttpServletResponse response, - @RequestParam(value = "type") Integer type, @RequestParam(value = "keyword", required = false) String keyword, @RequestParam(value = "rolesId", required = false) Integer rolesId, @RequestParam(value = "page", required = false) Integer page, @@ -78,7 +115,7 @@ public class UsersController extends BaseController { usersQuery.setSort("id desc"); usersQuery.setYn(YnEnums.YES.getId()); usersQuery.setName(keyword); - usersQuery.setType(type); + usersQuery.setType(1); usersQuery.setPage(page); usersQuery.setLimit(limit); //TODO 这里查询未完成 模糊查询 @@ -310,8 +347,95 @@ public class UsersController extends BaseController { } + /** + * 添加管理员信息 + */ + @RequestMapping(value = "/admin", method = RequestMethod.POST) + @TokenRequired + public void addAdmin(HttpServletResponse response, + HttpServletRequest request, + @RequestParam(value = "name", required = false) String name, + @RequestParam(value = "account", required = false)String account, + @RequestParam(value = "phone") String phone, + @RequestParam(value = "enable") Integer enable, + @RequestParam(value = "remarks", required = false) String remarks, + @RequestParam(value = "roleIds") String roleIds) { + //获取登录用户 + LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); + Users user = usersService.getUsersByLoginCenterId(loginState.getId()); + + + if (StringUtils.isBlank(roleIds) || + StringUtils.isBlank(name) || StringUtils.isBlank(phone) || null == user ) { + ResultUtils.buildParameterErrorResultAndWrite(response); + return; + } + + if (user != null) { + + //检查注册账户是否存在 + UsersQuery usersQuery = new UsersQuery(); + usersQuery.setPhone(phone); + List usersList = usersService.queryUsers(usersQuery); + if (usersList.size() != 0) { + Map map = new HashMap<>(); + map.put(ResultUtils.ERROR_CODE, ConstantInterface.PARAMETER_ERROR); + map.put(ResultUtils.ERROR_MSG, "用户已存在"); + writeJson(response, JsonUtil.obj2JsonString(map)); + return; + } + + //准备添加数据 + Users users = new Users(); + users.setType(0); + users.setName(name); + users.setAccount(account); + users.setPhone(phone); + users.setEnable(enable); + users.setRemarks(remarks); + users.setPublishId(user.getId()); + users.setPublishName(user.getName()); + users.setYn(YnEnums.YES.getId()); + users.setModified(new Date()); + users.setCreated(new Date()); + users.setLastLoginTime(new Date()); +// users.setPwd(LoginUtil.md5(NumberUtils.getRandomString(6))); + + //关联登录中心ID + Integer loginCenterId = LoginUtil.register(phone, token, typeId); + if(null == loginCenterId) { + ResultUtils.buildResultAndWrite(response, ErrorCodeConstants.SYSTEM_ERROR, "服务器内部错误"); + return; + } + users.setLogincenterId(loginCenterId); + + usersService.addUsers(users); + + + //如有角色,则对用户角色中间表新增 + UserRoleMaps userRoleMaps = new UserRoleMaps(); + + String[] roleArrayIds = roleIds.split(","); + List user1 = usersService.queryUsers(usersQuery); + for (String id : roleArrayIds) { + Roles roles = rolesService.getRoles(Integer.valueOf(id)); + if (roles == null || roles.getYn() == YnEnums.NO.getId()) { + continue; + } + + if (user1.get(0).getId() != null) { + userRoleMaps.setRoleId(Integer.valueOf(Integer.valueOf(id))); + userRoleMaps.setUserId(user1.get(0).getId()); + userRoleMaps.setYn(YnEnums.YES.getId()); + userRoleMapsService.addUserRoleMaps(userRoleMaps); + } + } + ResultUtils.buildSuccessResultAndWrite(response); + } + } + /** * 添加用户信息 @@ -320,7 +444,6 @@ public class UsersController extends BaseController { @TokenRequired public void addUsers(HttpServletResponse response, HttpServletRequest request, - @RequestParam(value = "type") Integer type, @RequestParam(value = "deptId") Integer deptId, @RequestParam(value = "orgId") Integer orgId, @RequestParam(value = "name", required = false) String name, @@ -338,7 +461,7 @@ public class UsersController extends BaseController { Departments departments = departmentsService.getDepartments(deptId); Organization organization = organizationService.getOrganization(orgId); - if (type == null || StringUtils.isBlank(roleIds) || deptId == null || + if ( StringUtils.isBlank(roleIds) || deptId == null || StringUtils.isBlank(name) || StringUtils.isBlank(phone) || null == user || null == departments || null == organization) { ResultUtils.buildParameterErrorResultAndWrite(response); return; @@ -360,7 +483,7 @@ public class UsersController extends BaseController { //准备添加数据 Users users = new Users(); - users.setType(type); + users.setType(1); //1管理员 users.setDeptId(deptId); users.setOrgId(orgId); users.setName(name); @@ -393,22 +516,120 @@ public class UsersController extends BaseController { String[] roleArrayIds = roleIds.split(","); List user1 = usersService.queryUsers(usersQuery); for (String id : roleArrayIds) { - Roles roles = rolesService.getRoles(Integer.valueOf(id)); - if (roles == null || roles.getYn() == YnEnums.NO.getId()) { - continue; - } + Roles roles = rolesService.getRoles(Integer.valueOf(id)); + if (roles == null || roles.getYn() == YnEnums.NO.getId()) { + continue; + } - if (user1.get(0).getId() != null) { - userRoleMaps.setRoleId(Integer.valueOf(Integer.valueOf(id))); - userRoleMaps.setUserId(user1.get(0).getId()); - userRoleMaps.setYn(YnEnums.YES.getId()); - userRoleMapsService.addUserRoleMaps(userRoleMaps); - } + if (user1.get(0).getId() != null) { + userRoleMaps.setRoleId(Integer.valueOf(Integer.valueOf(id))); + userRoleMaps.setUserId(user1.get(0).getId()); + userRoleMaps.setYn(YnEnums.YES.getId()); + userRoleMapsService.addUserRoleMaps(userRoleMaps); + } } ResultUtils.buildSuccessResultAndWrite(response); } } + + +// /** +// * 添加用户信息 +// */ +// @RequestMapping(value = "/users", method = RequestMethod.POST) +// @TokenRequired +// public void addUsers(HttpServletResponse response, +// HttpServletRequest request, +// @RequestParam(value = "type") Integer type, +// @RequestParam(value = "deptId") Integer deptId, +// @RequestParam(value = "orgId") Integer orgId, +// @RequestParam(value = "name", required = false) String name, +// @RequestParam(value = "account", required = false)String account, +// @RequestParam(value = "phone") String phone, +// @RequestParam(value = "enable") Integer enable, +// @RequestParam(value = "remarks", required = false) String remarks, +// @RequestParam(value = "roleIds") String roleIds) { +// +// +// //获取登录用户 +// LoginContext loginState = (LoginContext) request.getAttribute("loginContext"); +// Users user = usersService.getUsersByLoginCenterId(loginState.getId()); +// +// Departments departments = departmentsService.getDepartments(deptId); +// Organization organization = organizationService.getOrganization(orgId); +// +// if (type == null || StringUtils.isBlank(roleIds) || deptId == null || +// StringUtils.isBlank(name) || StringUtils.isBlank(phone) || null == user || null == departments || null == organization) { +// ResultUtils.buildParameterErrorResultAndWrite(response); +// return; +// } +// +// if (user != null) { +// +// //检查注册账户是否存在 +// UsersQuery usersQuery = new UsersQuery(); +// usersQuery.setPhone(phone); +// List usersList = usersService.queryUsers(usersQuery); +// if (usersList.size() != 0) { +// Map map = new HashMap<>(); +// map.put(ResultUtils.ERROR_CODE, ConstantInterface.PARAMETER_ERROR); +// map.put(ResultUtils.ERROR_MSG, "用户已存在"); +// writeJson(response, JsonUtil.obj2JsonString(map)); +// return; +// } +// +// //准备添加数据 +// Users users = new Users(); +// users.setType(type); +// users.setDeptId(deptId); +// users.setOrgId(orgId); +// users.setName(name); +// users.setAccount(account); +// users.setPhone(phone); +// users.setEnable(enable); +// users.setRemarks(remarks); +// users.setPublishId(user.getId()); +// users.setPublishName(user.getName()); +// users.setYn(YnEnums.YES.getId()); +// users.setModified(new Date()); +// users.setCreated(new Date()); +// users.setLastLoginTime(new Date()); +//// users.setPwd(LoginUtil.md5(NumberUtils.getRandomString(6))); +// +// //关联登录中心ID +// Integer loginCenterId = LoginUtil.register(phone, token, typeId); +// if(null == loginCenterId) { +// ResultUtils.buildResultAndWrite(response, ErrorCodeConstants.SYSTEM_ERROR, "服务器内部错误"); +// return; +// } +// users.setLogincenterId(loginCenterId); +// +// usersService.addUsers(users); +// +// +// //如有角色,则对用户角色中间表新增 +// UserRoleMaps userRoleMaps = new UserRoleMaps(); +// +// String[] roleArrayIds = roleIds.split(","); +// List user1 = usersService.queryUsers(usersQuery); +// for (String id : roleArrayIds) { +// Roles roles = rolesService.getRoles(Integer.valueOf(id)); +// if (roles == null || roles.getYn() == YnEnums.NO.getId()) { +// continue; +// } +// +// if (user1.get(0).getId() != null) { +// userRoleMaps.setRoleId(Integer.valueOf(Integer.valueOf(id))); +// userRoleMaps.setUserId(user1.get(0).getId()); +// userRoleMaps.setYn(YnEnums.YES.getId()); +// userRoleMapsService.addUserRoleMaps(userRoleMaps); +// } +// } +// ResultUtils.buildSuccessResultAndWrite(response); +// } +// } + /** * 用户修改 */ -- 1.8.3.1