Ver código fonte

市自来水更新:
1.更改泵组优化接口调用预测时间增加未来一天
2.增加营业片区小时实际用水量数据定时任务
3.更改预测的组织机构条件范围查新
4.更改营业片区预测插值bug和原始数据采集bug
5.更改小时水量预测查询接口,支持查询营业所数据
6.优化数据库链接回收机制
7.15分钟预测值查询接口支持营业所查询
8.15分钟实际值查询接口支持营业所查询

1037015548@qq.com 2 semanas atrás
pai
commit
f5447f3043

+ 13 - 4
src/main/java/com/shkpr/service/aimodelpower/bizmgr/KprAimWaterCollecationBizFun.java

@@ -439,6 +439,15 @@ public class KprAimWaterCollecationBizFun {
                         String zoneName = zoneNameOpt.get().toString();
                         childList.add(zoneName);
                     }
+                }else if(level==-1){
+                    List<Map<String,Object>> orgConfig = getWaterTapWaterApi().getOrgConfig(false,0,0,"");
+                    Map<String,Object> objectMap = orgConfig.stream()
+                            .filter(mapX -> Objects.equals(jpTbMWater.getOrgId(), mapX.get("org_id")))
+                            .findFirst().orElse(null);
+                    if(objectMap!=null) {
+                        childList.add(objectMap.get("org_name").toString());
+                        childIdList.add(objectMap.get("org_id").toString());
+                    }
                 }
                 //TODO 开始查询
                 // 结果集合,存储 childList 对应的组织机构 ID
@@ -523,13 +532,13 @@ public class KprAimWaterCollecationBizFun {
         responseRes.setRescode(ResponseCode.RESULT_NORMAL.toStrCode());
         responseRes.setResmsg(ResponseCode.RESULT_NORMAL.toStrMsg());
         try {
-            List<Map<String, Object>> orgConfig = getWaterTapWaterApi().getOrgConfig(false, 0, 0, " AND org_name not like '%水厂'");
+            List<Map<String, Object>> orgConfig = getWaterTapWaterApi().getOrgConfig(false, 0, 0, "");
             if ("water_volume_prediction_jiangjin2".equals(databaseName)) {
                 orgConfig = getWaterTapWaterApi().getOrgConfig(false, 0, 0, "");
             }
             if(!CollectionUtils.isEmpty(orgConfig)){
                 //TODO 根据分区编号找到对应的名称
-                if(level==null||level!=1) {
+                if(level==null||level!=1||level==-1) {
                     Optional<Map<String, Object>> mapOrg = orgConfig.stream()
                             .filter(maps -> jpTbMHourWater.getOrgId().equals(maps.get("org_id")))
                             .findFirst();
@@ -636,13 +645,13 @@ public class KprAimWaterCollecationBizFun {
         responseRes.setRescode(ResponseCode.RESULT_NORMAL.toStrCode());
         responseRes.setResmsg(ResponseCode.RESULT_NORMAL.toStrMsg());
         try {
-            List<Map<String, Object>> orgConfig = getWaterTapWaterApi().getOrgConfig(false, 0, 0, " AND org_name not like '%水厂'");
+            List<Map<String, Object>> orgConfig = getWaterTapWaterApi().getOrgConfig(false, 0, 0, "");
             if ("water_volume_prediction_jiangjin2".equals(databaseName)) {
                 orgConfig = getWaterTapWaterApi().getOrgConfig(false, 0, 0, "");
             }
             if(!CollectionUtils.isEmpty(orgConfig)){
                 //TODO 根据分区编号找到对应的名称
-                if(level==null||level!=1) {
+                if(level==null||level!=1||level==-1) {
                     Optional<Map<String, Object>> mapOrg = orgConfig.stream()
                             .filter(maps -> jpTbMHourWater.getOrgId().equals(maps.get("org_id")))
                             .findFirst();

+ 8 - 4
src/main/java/com/shkpr/service/aimodelpower/controllerapi/WaterCollecationController.java

@@ -128,7 +128,8 @@ public class WaterCollecationController {
                 Map<String, Map<String, List<String>>> result = getWaterWorks();
                 Map<String, String> workZonIds = getWaterZoneIds();
                 if (!MapUtils.isEmpty(result) && !MapUtils.isEmpty(workZonIds)) {
-                    int level = findOrgLevel(result, KprAimWaterCollecationBizFun.findOrgNameByOrgId(workZonIds, oJsonParam.getOrgId()).get().toString());
+                    String orgId = KprAimWaterCollecationBizFun.findOrgNameByOrgId(workZonIds, oJsonParam.getOrgId()).orElse(null);
+                    int level = findOrgLevel(result, orgId);
                     oRes = KprAimWaterCollecationBizFun.selectTbWaterList(oJsonParam, level, result, workZonIds);
                 }
             } else {
@@ -303,7 +304,8 @@ public class WaterCollecationController {
             if ("water_volume_prediction".equals(KprAimWaterCollecationBizFun.databaseName)) {
                 Map<String, Map<String, List<String>>> result = getWaterWorks();
                 Map<String, String> workZonIds = getWaterZoneIds();
-                int level = findOrgLevel(result, KprAimWaterCollecationBizFun.findOrgNameByOrgId(workZonIds, oJsonParam.getOrgId()).get().toString());
+                String orgId = KprAimWaterCollecationBizFun.findOrgNameByOrgId(workZonIds, oJsonParam.getOrgId()).orElse(null);
+                int level = findOrgLevel(result, orgId);
                 oRes = KprAimWaterCollecationBizFun.selectRealMinutesWaterList(oJsonParam, level, result, workZonIds);
             }else{
                 oRes = KprAimWaterCollecationBizFun.selectRealMinutesWaterList(oJsonParam, null,null,null);
@@ -369,7 +371,8 @@ public class WaterCollecationController {
             if ("water_volume_prediction".equals(KprAimWaterCollecationBizFun.databaseName)) {
                 Map<String, Map<String, List<String>>> result = getWaterWorks();
                 Map<String, String> workZonIds = getWaterZoneIds();
-                int level = findOrgLevel(result, KprAimWaterCollecationBizFun.findOrgNameByOrgId(workZonIds, oJsonParam.getOrgId()).get().toString());
+                String orgId = KprAimWaterCollecationBizFun.findOrgNameByOrgId(workZonIds, oJsonParam.getOrgId()).orElse(null);
+                int level = findOrgLevel(result, orgId);
                 oRes = KprAimWaterCollecationBizFun.selectRealHourWaterList(oJsonParam, level, result, workZonIds);
             }else{
                 oRes = KprAimWaterCollecationBizFun.selectRealHourWaterList(oJsonParam, null,null,null);
@@ -643,7 +646,8 @@ public class WaterCollecationController {
                 Map<String, Map<String, List<String>>> result = getWaterWorks();
                 Map<String, String> workZonIds = getWaterZoneIds();
                 if (!MapUtils.isEmpty(result) && !MapUtils.isEmpty(workZonIds)) {
-                    int level = findOrgLevel(result, KprAimWaterCollecationBizFun.findOrgNameByOrgId(workZonIds, oJsonParam.getOrgId()).get().toString());
+                    String seeorgId = KprAimWaterCollecationBizFun.findOrgNameByOrgId(workZonIds, oJsonParam.getOrgId()).orElse(null);
+                    int level = findOrgLevel(result, seeorgId);
                     List<String> childList = new ArrayList<>();//要查询的组织机构名称集合
                     List<String> childIdList = new ArrayList<>();//要查询的组织机构id集合
                     if (level==1){