feat: 查询低温水减缓设施数量

This commit is contained in:
tangwei 2026-05-27 14:31:24 +08:00
parent 8c2cc3b00a
commit 584f1fa7f8
4 changed files with 88 additions and 0 deletions

View File

@ -167,6 +167,12 @@ public class SdWTMonitorController {
return ResponseResult.successData(sdWtMonitorService.getEvnmAutoMonitorList());
}
@PostMapping("/dwInfo/GetKendoListCust")
@Operation(summary = "查询低温水减缓设施数量")
public ResponseResult getDfltkwFacilityCount(@RequestBody DataSourceRequest dataSourceRequest) {
return ResponseResult.successData(sdWtMonitorService.getDfltkwFacilityCount(dataSourceRequest));
}
@PostMapping("/vmsstbprpt/GetKendoList")
@Operation(summary = "根据类型查询水温表基本数据")
public ResponseResult getVmsstbprptList(@RequestBody DataSourceRequest dataSourceRequest) {

View File

@ -0,0 +1,29 @@
package com.yfd.platform.env.wt.entity.vo;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.io.Serializable;
@Data
@Schema(description = "低温水减缓设施数量统计")
public class DfltkwFacilityCountVo implements Serializable {
@Schema(description = "类型编码")
private String dwtp;
@Schema(description = "类型名称")
private String name;
@Schema(description = "已接入数量")
private Integer accessNum;
@Schema(description = "已建数量")
private Integer buildNum;
@Schema(description = "在建数量")
private Integer zjNum;
@Schema(description = "总数量")
private Integer totalNum;
}

View File

@ -2,6 +2,7 @@ package com.yfd.platform.env.wt.service;
import com.yfd.platform.common.DataSourceRequest;
import com.yfd.platform.common.DataSourceResult;
import com.yfd.platform.env.wt.entity.vo.DfltkwFacilityCountVo;
import com.yfd.platform.env.wt.entity.vo.RstcdTreeInfoVo;
import com.yfd.platform.env.wt.entity.vo.SdYearDetailVO;
import com.yfd.platform.env.wt.entity.vo.WbsbVo;
@ -23,6 +24,8 @@ public interface SdWtMonitorService {
DataSourceResult<WbsbVo> getWbsbList(DataSourceRequest dataSourceRequest);
DataSourceResult<DfltkwFacilityCountVo> getDfltkwFacilityCount(DataSourceRequest dataSourceRequest);
DataSourceResult<SdYearDetailVO> getYearDetailList(DataSourceRequest dataSourceRequest);
List<RstcdTreeInfoVo> getWtvtDefaultTreeStcd(DataSourceRequest dataSourceRequest);

View File

@ -3,6 +3,7 @@ package com.yfd.platform.env.wt.service.impl;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yfd.platform.common.*;
import com.yfd.platform.env.wt.entity.vo.DfltkwFacilityCountVo;
import com.yfd.platform.env.wt.entity.vo.FishSpawnVo;
import com.yfd.platform.env.wt.entity.vo.RstcdTreeInfoVo;
import com.yfd.platform.env.wt.entity.vo.SdYearDetailVO;
@ -126,6 +127,55 @@ public class SdWtMonitorServiceImpl implements SdWtMonitorService {
return result;
}
@Override
public DataSourceResult<DfltkwFacilityCountVo> getDfltkwFacilityCount(DataSourceRequest dataSourceRequest) {
String sql = """
SELECT c.dwtp AS dwtp,
c.name AS name,
NVL(s.accessNum, 0) AS accessNum,
NVL(s.buildNum, 0) AS buildNum,
NVL(s.zjNum, 0) AS zjNum,
NVL(s.totalNum, 0) AS totalNum
FROM (
SELECT '1' AS dwtp, '叠梁门' AS name, 1 AS sortOrder FROM DUAL
UNION ALL
SELECT '2' AS dwtp, '前置挡墙' AS name, 2 AS sortOrder FROM DUAL
UNION ALL
SELECT '3' AS dwtp, '隔水幕墙' AS name, 3 AS sortOrder FROM DUAL
UNION ALL
SELECT '4' AS dwtp, '其它' AS name, 4 AS sortOrder FROM DUAL
) c
LEFT JOIN (
SELECT CASE
WHEN t.STTP = 'DW_2' THEN '1'
WHEN t.STTP = 'DW_5' THEN '2'
WHEN t.STTP = 'DW_6' THEN '3'
ELSE '4'
END AS dwtp,
COUNT(1) AS totalNum,
SUM(CASE WHEN NVL(t.DTIN, 0) = 1 THEN 1 ELSE 0 END) AS accessNum,
SUM(CASE WHEN NVL(t.BLDSTT_CODE, 0) = 2 THEN 1 ELSE 0 END) AS buildNum,
SUM(CASE WHEN NVL(t.BLDSTT_CODE, 0) = 1 THEN 1 ELSE 0 END) AS zjNum
FROM SD_DFLTKW_B_H t
WHERE NVL(t.IS_DELETED, 0) = 0
GROUP BY CASE
WHEN t.STTP = 'DW_2' THEN '1'
WHEN t.STTP = 'DW_5' THEN '2'
WHEN t.STTP = 'DW_6' THEN '3'
ELSE '4'
END
) s
ON s.dwtp = c.dwtp
ORDER BY c.sortOrder
""";
List<DfltkwFacilityCountVo> list = microservicDynamicSQLMapper.getAllListWithResultType(sql, new HashMap<>(), DfltkwFacilityCountVo.class);
DataSourceResult<DfltkwFacilityCountVo> result = new DataSourceResult<>();
result.setData(list);
result.setTotal((long) list.size());
result.setAggregates(new HashMap<>());
return result;
}
@Override
public DataSourceResult<SdYearDetailVO> getYearDetailList(DataSourceRequest dataSourceRequest) {
DataSourceLoadOptionsBase loadOptions = dataSourceRequest == null ? null : dataSourceRequest.toDevRequest();