public MenuTree(AuthMenu authMenu) { this.id = authMenu.getMenuId() + ""; this.pid = authMenu.getPid() + ""; this.label = authMenu.getMenuName(); this.url = authMenu.getUrl(); this.path = authMenu.getPath(); }
@RabbitHandler public void receive(AuthLog authLog) { Log sysLog = authLog.getLog(); MDC.put(CommonConstant.KEY_USER, authLog.getLog().getCreateBy()); Date currentDate = new Date(); if (null == sysLog.getCreateTime()) sysLog.setCreateTime(currentDate); if (null == sysLog.getUpdateTime()) sysLog.setUpdateTime(currentDate); LogInfo logInfo = new LogInfo(); BeanUtils.copyProperties(sysLog, logInfo); logInfoService.saveOrUpdate(logInfo); MDC.remove(CommonConstant.KEY_USER); } }
@Override public List<MenuTree> findAllMenuTreeList() { List<Menu> rList = this.findMenuList(); List<MenuTree> menuTreeList = new ArrayList<MenuTree>(); rList.forEach(menu -> { AuthMenu authMenu = new AuthMenu(); BeanUtils.copyProperties(menu, authMenu); menuTreeList.add(new MenuTree(authMenu)); }); return TreeUtil.build(menuTreeList, "0"); }
String requestUri = request.getRequestURI(); String method = request.getMethod(); Log syslog = new Log(); syslog.setType(CommonConstant.STATUS_NORMAL); syslog.setRemoteAddr(HttpUtil.getClientIP(request)); syslog.setRequestUri(URLUtil.getPath(requestUri)); syslog.setMethod(method); syslog.setUserAgent(request.getHeader("user-agent")); syslog.setParams(HttpUtil.toParams(request.getParameterMap())); Long startTime = (Long) requestContext.get("startTime"); syslog.setTime(System.currentTimeMillis() - startTime); Date currentDate = new Date(); syslog.setCreateTime(currentDate); syslog.setUpdateTime(currentDate); if (requestContext.get(CommonConstant.SERVICE_ID) != null) { syslog.setServiceId(requestContext.get(CommonConstant.SERVICE_ID).toString()); responseDataStream = new ByteArrayInputStream(baos.toByteArray()); String response = IoUtil.read(inputStream, CommonConstant.UTF8); syslog.setType(CommonConstant.STATUS_LOCK); syslog.setException(response); requestContext.setResponseDataStream(responseDataStream); } catch (IOException e) { syslog.setException(throwable.getMessage()); AuthLog authLog = new AuthLog(); syslog.setCreateBy(authentication.getName());
@Override @ApiOperation(httpMethod = GET, value = "通过角色获取菜单权限") @ApiImplicitParam(name = "roleCode", value = "用户roleCode", required = true, dataType = "string", paramType = "path") public Set<AuthPermission> findMenuByRole(@PathVariable("roleCode") String roleCode) { Set<AuthPermission> permissions = new HashSet<AuthPermission>(); if (StringHelper.isBlank(roleCode)) return permissions; Set<AuthMenu> menus = menuService.findMenuByRole(roleCode); if (null == menus || menus.size() == 0) return permissions; menus.stream().forEach(r -> { permissions.add(new AuthPermission(r.getUrl())); }); return permissions; }
/** * 返回当前用户树形菜单集合 * * @return 树形菜单 */ @GetMapping("/userTree") public R<List<Integer>> userTree(HttpServletRequest request) { String roleCode = JwtUtil.getRole(request, jwtConfiguration.getJwtkey()).get(0); Set<AuthMenu> menus = menuService.findMenuByRole(roleCode); List<Integer> menuList = new ArrayList<>(); if (null == menus || menus.size() == 0) return new R<List<Integer>>().data(menuList); menus.stream().forEach(menu -> { menuList.add(menu.getMenuId()); }); return new R<List<Integer>>().data(menuList); }
@Override public Set<AuthMenu> findMenuByRole(String roleCode) { if (StringHelper.isBlank(roleCode)) return null; Role role = roleService.findRoleByCode(roleCode.trim()); if (null == role) return null; List<Menu> rList = this.findMenuByRoleId(role.getRoleId()); if (null == rList || rList.size() == 0) return null; Set<AuthMenu> mList = new HashSet<AuthMenu>(); for (Menu m : rList) { AuthMenu authMenu = new AuthMenu(); BeanUtils.copyProperties(m, authMenu); mList.add(authMenu); } return mList; }