diff --git a/backend/src/main/java/com/yfd/platform/qgc_env/zq/controller/ZqMonitorController.java b/backend/src/main/java/com/yfd/platform/qgc_env/zq/controller/ZqMonitorController.java index 534b6b8b..b08b9126 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_env/zq/controller/ZqMonitorController.java +++ b/backend/src/main/java/com/yfd/platform/qgc_env/zq/controller/ZqMonitorController.java @@ -29,6 +29,12 @@ public class ZqMonitorController { return ResponseResult.successData(zqMonitorService.getMsstbprptList(dataSourceRequest)); } + @PostMapping("/msstbprpt/eng/GetKendoList") + @Operation(summary = "根据条件查询水文流量站基础数据(工程专题)") + public ResponseResult getEngMsstbprptList(@RequestBody DataSourceRequest dataSourceRequest) { + return ResponseResult.successData(zqMonitorService.getEngMsstbprptList(dataSourceRequest)); + } + @PostMapping("/river/GetKendoListCust") @Operation(summary = "查询流量站实时数据") public ResponseResult getRiverKendoListCust(@RequestBody DataSourceRequest dataSourceRequest) { diff --git a/backend/src/main/java/com/yfd/platform/qgc_env/zq/entity/vo/ZqBaseInfoVo.java b/backend/src/main/java/com/yfd/platform/qgc_env/zq/entity/vo/ZqBaseInfoVo.java index 0dfcbd38..ed88d45b 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_env/zq/entity/vo/ZqBaseInfoVo.java +++ b/backend/src/main/java/com/yfd/platform/qgc_env/zq/entity/vo/ZqBaseInfoVo.java @@ -30,6 +30,9 @@ public class ZqBaseInfoVo { @Schema(description = "纬度") private Double lttd; + @Schema(description = "水温设备类型") + private Integer wtDeviceType; + @Schema(description = "海拔") private Double elev; diff --git a/backend/src/main/java/com/yfd/platform/qgc_env/zq/service/ZqMonitorService.java b/backend/src/main/java/com/yfd/platform/qgc_env/zq/service/ZqMonitorService.java index 1eff40a1..9c5aff7a 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_env/zq/service/ZqMonitorService.java +++ b/backend/src/main/java/com/yfd/platform/qgc_env/zq/service/ZqMonitorService.java @@ -9,6 +9,8 @@ public interface ZqMonitorService { DataSourceResult getMsstbprptList(DataSourceRequest dataSourceRequest); + DataSourceResult getEngMsstbprptList(DataSourceRequest dataSourceRequest); + DataSourceResult getRiverKendoListCust(DataSourceRequest dataSourceRequest); ZqBaseInfoVo getStcdInfo(String stcd); diff --git a/backend/src/main/java/com/yfd/platform/qgc_env/zq/service/impl/ZqMonitorServiceImpl.java b/backend/src/main/java/com/yfd/platform/qgc_env/zq/service/impl/ZqMonitorServiceImpl.java index af6eb22c..b95f56e2 100644 --- a/backend/src/main/java/com/yfd/platform/qgc_env/zq/service/impl/ZqMonitorServiceImpl.java +++ b/backend/src/main/java/com/yfd/platform/qgc_env/zq/service/impl/ZqMonitorServiceImpl.java @@ -33,6 +33,17 @@ public class ZqMonitorServiceImpl implements ZqMonitorService { @Override public DataSourceResult getMsstbprptList(DataSourceRequest dataSourceRequest) { + return getMsstbprptListInternal(dataSourceRequest, false); + } + + @Override + public DataSourceResult getEngMsstbprptList(DataSourceRequest dataSourceRequest) { + DataSourceRequest request = dataSourceRequest == null ? new DataSourceRequest() : dataSourceRequest; + request.setSelect(Arrays.asList("stcd", "stnm", "wtDeviceType", "dtinType", "mway")); + return getMsstbprptListInternal(request, true); + } + + private DataSourceResult getMsstbprptListInternal(DataSourceRequest dataSourceRequest, boolean onlyZq) { DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest(); if (CollUtil.isEmpty(dataSourceRequest == null ? null : dataSourceRequest.getGroup())) { StringBuilder sql = new StringBuilder(); @@ -48,6 +59,9 @@ public class ZqMonitorServiceImpl implements ZqMonitorService { .append("LEFT JOIN SD_RVCD_DIC rv ON rv.RVCD = eng.RVCD ") .append("LEFT JOIN SD_ADDVCD_DIC addv ON addv.ADDVCD = eng.ADDVCD ") .append("WHERE NVL(t.IS_DELETED, 0) = 0 "); + if (onlyZq) { + sql.append("AND t.STTP = 'ZQ' "); + } Map paramMap = new HashMap<>(); String filterSql = buildMsstbprptFilterCondition(dataSourceRequest == null ? null : dataSourceRequest.getFilter(), paramMap, new int[]{0}); @@ -89,6 +103,9 @@ public class ZqMonitorServiceImpl implements ZqMonitorService { .append("FROM SD_RIVER_B_H t ") .append("LEFT JOIN SD_ENGINFO_B_H eng ON eng.STCD = t.RSTCD AND NVL(eng.IS_DELETED, 0) = 0 ") .append("WHERE NVL(t.IS_DELETED, 0) = 0 "); + if (onlyZq) { + sql.append("AND t.STTP = 'ZQ' "); + } Map paramMap = new HashMap<>(); String filterSql = buildMsstbprptFilterCondition(dataSourceRequest == null ? null : dataSourceRequest.getFilter(), paramMap, new int[]{0}); @@ -778,6 +795,7 @@ public class ZqMonitorServiceImpl implements ZqMonitorService { } return switch (field) { case "isDeleted" -> "NVL(t.IS_DELETED, 0)"; + case "sttpFullPath" -> null; case "sttpCode" -> "t.STTP"; case "mway" -> "t.MWAY"; case "dtinType" -> "t.DTIN_TYPE"; @@ -800,6 +818,7 @@ public class ZqMonitorServiceImpl implements ZqMonitorService { selectMap.put("sttpCode", "t.STTP AS sttpCode"); selectMap.put("lgtd", "t.LGTD AS lgtd"); selectMap.put("lttd", "t.LTTD AS lttd"); + selectMap.put("wtDeviceType", "CAST(NULL AS NUMBER(10,0)) AS wtDeviceType"); selectMap.put("elev", "t.ELEV AS elev"); selectMap.put("stlc", "t.STLC AS stlc"); selectMap.put("jcdt", "t.JCDT AS jcdt"); @@ -921,6 +940,7 @@ public class ZqMonitorServiceImpl implements ZqMonitorService { case "sttp", "sttpCode" -> "t.STTP"; case "lgtd" -> "t.LGTD"; case "lttd" -> "t.LTTD"; + case "wtDeviceType" -> "CAST(NULL AS NUMBER(10,0))"; case "elev" -> "t.ELEV"; case "stlc" -> "t.STLC"; case "jcdt" -> "t.JCDT";