/** * 获得指定产品下权限json串 * * @param userDetails * @param productCode * @param roleId * @return String */ private String getPermissionJsonDatas(UserDetails userDetails, String productCode, Long roleId) { StringBuffer jsonObject = new StringBuffer("["); List<PermissionGroup> permissionGroupList = userManager.getPermissionGroups(roleId, productCode, userDetails); for (PermissionGroup group : permissionGroupList) { List<Permission> permList = userManager.getPermissions(roleId, group.getCode(), userDetails); // if(null!=permList && !permList.isEmpty()){ jsonObject.append("{"); jsonObject.append("\"name\":\"" + group.getName() + "\","); jsonObject.append("\"code\":\"" + group.getCode() + "\","); jsonObject.append("\"imgPath\":\"" + group.getImgPath() + "\","); jsonObject.append("\"id\":\"" + group.getId() + "\","); jsonObject.append("\"sortId\":\"" + group.getSortId() + "\","); if (null != permList && !permList.isEmpty()) { jsonObject.append("\"permList\":["); for (int j = 0; j < permList.size(); j++) { Permission perm = permList.get(j); jsonObject.append("{"); jsonObject.append("\"name\":\"" + perm.getName() + "\","); jsonObject.append("\"code\":\"" + perm.getCode() + "\","); jsonObject.append("\"imgPath\":\"" + perm.getImgPath() + "\","); jsonObject.append("\"id\":\"" + perm.getId() + "\","); jsonObject.append("\"sortId\":\"" + perm.getSortId() + "\","); jsonObject.append("\"url\":\"" + perm.getUrl() + "\""); if (j < permList.size() - 1) { jsonObject.append("},"); } else { jsonObject.append("}"); } } jsonObject.append("]"); } jsonObject.append("},"); // } } String permJson = jsonObject.toString(); if (permJson.endsWith(",")) { permJson = permJson.substring(0, permJson.length() - 1); } permJson += "]"; return permJson; }