diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/RiskReportFacade.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/RiskReportFacade.java index bfff26e..f329ced 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/RiskReportFacade.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/facade/RiskReportFacade.java @@ -282,24 +282,18 @@ public class RiskReportFacade { String permission = permissionsModelList.get(0).getAreaPermission(); System.out.println("permission======" + permission); - String parentId = ""; if (StringUtils.isNotEmpty(countRequest.getProvinceId())) { basicQuery.setParentId(countRequest.getProvinceId()); countRequest.setExportType(1); - parentId = countRequest.getProvinceId(); } if (StringUtils.isNotEmpty(countRequest.getCityId())) { basicQuery.setParentId(countRequest.getCityId()); countRequest.setExportType(2); - parentId = countRequest.getCityId(); } - //获取地址列表 - List> list = mongoUtil.getChilds(parentId,null); - if (StringUtils.isNotEmpty(countRequest.getAreaId())) { basicQuery.setParentId(countRequest.getAreaId()); @@ -315,28 +309,34 @@ public class RiskReportFacade { //用于存在没有机构的区域Id List addrId = new ArrayList<>(); -// -// List childsId = new ArrayList<>(); -// -// if (addrType == 1) -// { -// if (StringUtils.isNotEmpty(permission)) -// { -// List permissions = JsonUtil.toList(permission,Map.class); -// } -// } -// else if(addrType == 2) -// { -// } -// else -// { -// } -// -// if (addrType < 3) -// { -// } + //权限的id + List childsId = new ArrayList<>(); + if (StringUtils.isNotEmpty(permission)) { + List permissions = JsonUtil.toList(permission, Map.class); + if (CollectionUtils.isNotEmpty(permissions)) + { + for (Map map : permissions) + { + if (addrType == 1) + { + String c = String.valueOf(map.get("c")); + childsId.add(c); + } + else if (addrType == 2) + { + String a = String.valueOf(map.get("a")); + childsId.add(a); + } + + } + } + } + basicQuery.setIds(childsId); + + //获取地址列表 + List configList = basicConfigService.queryBasicConfig(basicQuery); //序列号 int seq = 0; @@ -347,7 +347,7 @@ public class RiskReportFacade { //统计城市和区县表格数据 if (addrType < 3) { - List configList = basicConfigService.queryBasicConfig(basicQuery); + OrganizationQuery query = new OrganizationQuery(); query.setYn(YnEnums.YES.getId()); if (CollectionUtils.isNotEmpty(configList)) @@ -567,15 +567,15 @@ public class RiskReportFacade { if (addrType < 3) { - if (CollectionUtils.isNotEmpty(list)) + if (CollectionUtils.isNotEmpty(configList)) { - for (Map addr : list) + for (BasicConfig addr : configList) { - if (addrId.contains(String.valueOf(addr.get("id")) + String.valueOf(addr.get("name")))) + if (addrId.contains(addr.getId() + addr.getName())) { continue; } - xAxis.add(String.valueOf(addr.get("name"))); + xAxis.add(addr.getName()); } for (BasicConfig config : riskLevelConfig) { @@ -588,14 +588,14 @@ public class RiskReportFacade { List items = new ArrayList<>(); - for (Map addr : list) + for (BasicConfig addr : configList) { - if (addrId.contains(String.valueOf(addr.get("id")) + String.valueOf(addr.get("name")))) + if (addrId.contains(addr.getId() + addr.getName())) { continue; } - String id = String.valueOf(addr.get("id")); + String id = addr.getId(); if (addrType == 1) { idQuery.setCityId(id); diff --git a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MongoUtil.java b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MongoUtil.java index cfaa462..dd72adc 100644 --- a/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MongoUtil.java +++ b/platform-operate-api/src/main/java/com/lyms/platform/operate/web/utils/MongoUtil.java @@ -66,13 +66,13 @@ public class MongoUtil { } } - public List> getChilds(String parentId,String childId) { + public List> getChilds(String parentId,List childIds) { List> childList = new ArrayList<>(); Criteria c = Criteria.where("parentId").is(parentId); - if (StringUtils.isNotEmpty(childId)) + if (org.apache.commons.collections.CollectionUtils.isNotEmpty(childIds)) { - c.and("id").is(childId); + c.and("id").in(childIds); } c.and("typeId").is("b7ea005c-dfac-4c2a-bdae-25239b3f44fd");