From 7b3709636fa1bd3d1769d0d44386754e984d6054 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E2=80=9Clyd=E2=80=9D?= <“lyd@datametatech.com”> Date: Wed, 19 Mar 2025 19:27:18 +0800 Subject: [PATCH] =?UTF-8?q?add:=E6=B0=B4=E5=BA=93=E6=80=BB=E8=A7=88?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ReservoirOverviewDataController.java | 4 +- .../com/kms/yg/cz/enmu/MonitorSourceEnum.java | 13 +- .../com/kms/yg/cz/service/MonitorService.java | 138 +++++++++++++--- .../monitor/att/AttDamBaseJsonMolde.java | 121 -------------- .../monitor/att/AttResRsppJsonModel.java | 41 ----- .../domain/monitor/att/AttResSwJsonMode.java | 150 ------------------ .../domain/monitor/att/RelStResJsonMode.java | 71 --------- .../kms/yxgh/base/domain/sk/SkAttDamBase.java | 24 +++ .../kms/yxgh/base/domain/sk/SkRelStRes.java | 14 +- .../ReservoirOverviewController.java | 62 ++++---- .../service/BsSgcSkStatisticsService.java | 2 +- sql/sy/v1.6.0/增量脚本/v1.6.2-update.sql | 4 +- 12 files changed, 196 insertions(+), 448 deletions(-) delete mode 100644 shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/AttDamBaseJsonMolde.java delete mode 100644 shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/AttResRsppJsonModel.java delete mode 100644 shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/AttResSwJsonMode.java delete mode 100644 shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/RelStResJsonMode.java diff --git a/shuili-system/src/main/java/com/kms/yg/cz/controller/ReservoirOverviewDataController.java b/shuili-system/src/main/java/com/kms/yg/cz/controller/ReservoirOverviewDataController.java index 273d39d2..42372181 100644 --- a/shuili-system/src/main/java/com/kms/yg/cz/controller/ReservoirOverviewDataController.java +++ b/shuili-system/src/main/java/com/kms/yg/cz/controller/ReservoirOverviewDataController.java @@ -17,13 +17,13 @@ import org.springframework.web.bind.annotation.RestController; */ @RestController @AllArgsConstructor -@RequestMapping("/run/sk/data") +@RequestMapping("/run/sk/statistics") public class ReservoirOverviewDataController { private final MonitorService monitorService; - @PostMapping("/preview") + @PostMapping("/view") @ApiOperation("水库总览") public Response getPreview(@RequestBody AttResTaskViewDto dto) { return Response.ok(monitorService.getPreview(dto)); diff --git a/shuili-system/src/main/java/com/kms/yg/cz/enmu/MonitorSourceEnum.java b/shuili-system/src/main/java/com/kms/yg/cz/enmu/MonitorSourceEnum.java index 25368350..494e321a 100644 --- a/shuili-system/src/main/java/com/kms/yg/cz/enmu/MonitorSourceEnum.java +++ b/shuili-system/src/main/java/com/kms/yg/cz/enmu/MonitorSourceEnum.java @@ -6,9 +6,10 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.google.common.base.Strings; import com.kms.yg.cz.dto.MonitorQueDto; import com.kms.yg.sk.domain.AttResRspp; -import com.kms.yxgh.base.domain.monitor.att.AttResRsppJsonModel; -import com.kms.yxgh.base.domain.monitor.att.AttResSwJsonMode; import com.kms.yxgh.base.domain.monitor.*; +import com.kms.yxgh.base.domain.sk.AttResSw; +import com.kms.yxgh.base.domain.sk.SkAttDamBase; +import com.kms.yxgh.base.domain.sk.SkRelStRes; import lombok.Data; import lombok.Getter; import lombok.extern.slf4j.Slf4j; @@ -49,10 +50,10 @@ public enum MonitorSourceEnum { MS_DSM_PR("应力监测表", MsDsmPr.class), MS_DSM_ST("应变监测表", MsDsmSt.class), MS_HDM_WAS("堰闸水情监测表", MsHdmWas.class), - - ATT_RES_SW("水库溢洪道表", AttResSwJsonMode.class), - ATT_RES_RSPP("水库溢洪道表", AttResRsppJsonModel.class) - + ATT_RES_SW("水库溢洪道表", AttResSw.class), + ATT_RES_RSPP("水库溢洪道表", AttResRspp.class), + ATT_DAM_BASE("水库大坝基础信息表", SkAttDamBase.class), + DWS_REL_ST_RES("代表站", SkRelStRes.class), ; private final String zhName; diff --git a/shuili-system/src/main/java/com/kms/yg/cz/service/MonitorService.java b/shuili-system/src/main/java/com/kms/yg/cz/service/MonitorService.java index dd5c7367..37e51c98 100644 --- a/shuili-system/src/main/java/com/kms/yg/cz/service/MonitorService.java +++ b/shuili-system/src/main/java/com/kms/yg/cz/service/MonitorService.java @@ -2,7 +2,6 @@ package com.kms.yg.cz.service; import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.Wrapper; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.kms.yg.cz.domain.MonitorConfig; @@ -14,14 +13,16 @@ import com.kms.yg.cz.enmu.*; import com.kms.yg.cz.enmu.MonitorTypeEnum; import com.kms.yg.cz.mapper.MonitorConfigMapper; import com.kms.yg.sk.domain.AttResRspp; -import com.kms.yxgh.base.domain.monitor.att.AttResRsppJsonModel; -import com.kms.yxgh.base.domain.monitor.att.AttResSwJsonMode; import com.kms.yg.sk.dto.AttResTaskViewDto; import com.kms.yxgh.base.domain.monitor.MsHdmObp; import com.kms.yxgh.base.domain.monitor.MsHdmRsvr; import com.kms.yxgh.base.domain.monitor.MsHdmRsvrav; import com.kms.yxgh.base.domain.monitor.MsHdmRsvrevs; +import com.kms.yxgh.base.domain.sk.AttResSw; +import com.kms.yxgh.base.domain.sk.SkAttDamBase; +import com.kms.yxgh.base.domain.sk.SkRelStRes; import com.kms.yxgh.common.dto.OperatorDto; +import com.kms.yxgh.common.service.BsSgcSkStatisticsService; import com.kms.yxgh.util.BeanCopyUtils; import com.kms.yxgh.util.DataCenterRestTemplateUtils; import com.shuili.common.utils.StringUtils; @@ -29,6 +30,7 @@ import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; +import org.springframework.util.CollectionUtils; import java.util.*; import java.util.concurrent.CompletableFuture; @@ -52,12 +54,24 @@ public class MonitorService { @Value("${dataSync.url:}") private String dataSyncUrl; @Value("#{${dataSync.paths:{}}}") - private Map paths = new HashMap<>(); + private Map paths = new HashMap<>(); + + // todo 临时 + private void initPath (Map map) { + paths.put("att_res_sw","/ZHSL_ZY/jck/yggx/dws_att_res_sw"); + paths.put("att_res_rspp","/ZHSL_ZY/jck/ytjgx/dws_att_res_rspp"); + paths.put("att_dam_base","/ZHSL_ZY/jck/yggx/dws_att_dam_base"); + paths.put("ms_hdm_rsvr","/ZHSL_ZY/bzjck/ms_hdm_rsvr"); + paths.put("dws_rel_st_res","/ZHSL_ZY/jck/ytjgx/dws_rel_st_res"); + paths.put("ms_hdm_obp","/ZHSL_ZY/bzjck/ms_hdm_obp"); + } public IPage pageQuery(MonitorQueDto queDto) { MonitorSourceEnum table = queDto.getMonitorType(); String path = paths.get(table.getTableName()); + // todo 水库总揽临时 等淮哥来 + initPath(paths); if (path == null) { log.error("未找到对应的路径配置, table:{}", table); return table.getMockData(queDto); @@ -288,33 +302,115 @@ public class MonitorService { MonitorQueDto sp=new MonitorQueDto(); sp.setResCode(dto.getResCode()); - CompletableFuture currentWatterFuture = CompletableFuture.supplyAsync(() -> queryDataOne(ATT_RES_SW, sp)); - AttResSwJsonMode attResSw = currentWatterFuture.join(); + CompletableFuture currentWatterFuture = CompletableFuture.supplyAsync(() -> queryDataOne(MonitorSourceEnum.ATT_RES_SW, sp)); + AttResSw attResSw = currentWatterFuture.join(); // 堰顶高程 if (!Objects.isNull(attResSw)) { attResTaskViewDto.setElevationWeirCrest(attResSw.getWrcrel()); } // 设计洪水位、校核洪水位 - CompletableFuture attResRsppJsonModelFuture = CompletableFuture.supplyAsync(() -> queryDataOne(ATT_RES_RSPP, sp)); - AttResRsppJsonModel attResRsppJsonModel = attResRsppJsonModelFuture.join(); + CompletableFuture attResRsppJsonModelFuture = CompletableFuture.supplyAsync(() -> queryDataOne(MonitorSourceEnum.ATT_RES_RSPP, sp)); + AttResRspp attResRsppJsonModel = attResRsppJsonModelFuture.join(); if (!Objects.isNull(attResRsppJsonModel)) { attResTaskViewDto.setDesignLevel(attResRsppJsonModel.getDsfllv()); attResTaskViewDto.setCheckWaterLevel(attResRsppJsonModel.getChfllv()); } + // 坝顶高程 + CompletableFuture> attDamBaseJsonMoldeFuture = CompletableFuture.supplyAsync(() -> queryDataList(MonitorSourceEnum.ATT_DAM_BASE, sp)); + List attDamBaseJsonMoldeList = attDamBaseJsonMoldeFuture.join(); + if (!CollectionUtils.isEmpty(attDamBaseJsonMoldeList)) { + attDamBaseJsonMoldeList.stream() + .map(SkAttDamBase::getDamTopElev) + .filter(e-> !StringUtils.isNotEmpty(e)) + .mapToDouble(Double::parseDouble) + .max() + .ifPresent(aDouble -> attResTaskViewDto.setCrestElevation(String.format("%.2f", aDouble))); + } + // 代表站 + CompletableFuture relStResJsonModeFuture = CompletableFuture.supplyAsync(() -> queryDataOne(MonitorSourceEnum.DWS_REL_ST_RES, sp)); + SkRelStRes relStResJsonMode = relStResJsonModeFuture.join(); + if (Objects.isNull(relStResJsonMode)) { + return attResTaskViewDto; + } + attResTaskViewDto.setStationName(relStResJsonMode.getStName()); + attResTaskViewDto.setStationCode(relStResJsonMode.getStCode()); -// -// CompletableFuture currentWatterFuture = CompletableFuture.supplyAsync(() -> queryDataOne(MS_HDM_RSVR, sp)); -// -// CompletableFuture avWatterFuture = CompletableFuture.supplyAsync(() -> queryDataOne(MonitorSourceEnum.MS_HDM_RSVRAV, sp)); -// CompletableFuture mxWatterFuture = CompletableFuture.supplyAsync(() -> queryDataOne(MonitorSourceEnum.MS_HDM_RSVREVS, sp)); -// CompletableFuture> currentFlowFuture = CompletableFuture.supplyAsync(() -> queryDataList(MonitorSourceEnum.MS_HDM_OBP, sp)); -// CompletableFuture.allOf(currentWatterFuture, avWatterFuture, mxWatterFuture, currentFlowFuture).join(); -// -// MsHdmRsvr currentWatter = currentWatterFuture.join(); -// MsHdmRsvrav avWatter = avWatterFuture.join(); -// MsHdmRsvrevs mxWatter = mxWatterFuture.join(); -// List currentFlow = currentFlowFuture.join(); - return null; + // 当前水位 + sp.setStcd(relStResJsonMode.getStCode()); + sp.setStartTime(BsSgcSkStatisticsService.getStartOfDay()); + sp.setEndTime(BsSgcSkStatisticsService.getStartOfNextDay()); + CompletableFuture> msHdmRsvrFuture = CompletableFuture.supplyAsync(() -> queryDataList(MonitorSourceEnum.MS_HDM_RSVR, sp)); + List msHdmRsvrFutureList = msHdmRsvrFuture.join(); + if (!CollectionUtils.isEmpty(msHdmRsvrFutureList)) { + // 当前水位 + MsHdmRsvr msHdmRsvr = msHdmRsvrFutureList.stream() + .filter(e->!Objects.isNull(e.getTm())) + .max(Comparator.comparing(MsHdmRsvr::getTm)).orElse(null); + if (!Objects.isNull(msHdmRsvr)) { + attResTaskViewDto.setCurrentWaterLevel(msHdmRsvr.getRz()); + // 入库流量 + attResTaskViewDto.setIncomingFlow(msHdmRsvr.getInq()); + // 出库流量 + attResTaskViewDto.setOutboundFlow(msHdmRsvr.getOtq()); + } + } + + // 去年今日 + sp.setStartTime(BsSgcSkStatisticsService.getLastYearTodayStartOfDay()); + sp.setEndTime(BsSgcSkStatisticsService.getLastYearTomorrowStartOfDay()); + CompletableFuture> msHdmRsvrLastFuture = CompletableFuture.supplyAsync(() -> queryDataList(MonitorSourceEnum.MS_HDM_RSVR, sp)); + List msHdmRsvrLastFutureList = msHdmRsvrLastFuture.join(); + if (!CollectionUtils.isEmpty(msHdmRsvrLastFutureList)) { + MsHdmRsvr msHdmRsvr = msHdmRsvrFutureList.stream() + .filter(e->!Objects.isNull(e.getTm())) + .max(Comparator.comparing(MsHdmRsvr::getTm)).orElse(null); + if (!Objects.isNull(msHdmRsvr)) { + // 去年今日 + attResTaskViewDto.setLastYearToday(msHdmRsvr.getRz()); + } + } + + // 近一个小时 + sp.setStartTime(BsSgcSkStatisticsService.getTimeBeforeHours(1)); + sp.setEndTime(BsSgcSkStatisticsService.getCurrentTime()); + CompletableFuture> msHdmObpOneListFuture = CompletableFuture.supplyAsync(() -> queryDataList(MS_HDM_OBP, sp)); + List msHdmObpOneList = msHdmObpOneListFuture.join(); + if (!CollectionUtils.isEmpty(msHdmObpOneList)) { + // 近一个小时 + attResTaskViewDto.setNearlyAnHour(BsSgcSkStatisticsService.getSum(msHdmObpOneList)); + } + + // 近6个小时 + sp.setStartTime(BsSgcSkStatisticsService.getTimeBeforeHours(6)); + sp.setEndTime(BsSgcSkStatisticsService.getCurrentTime()); + CompletableFuture> msHdmObpSixListFuture = CompletableFuture.supplyAsync(() -> queryDataList(MS_HDM_OBP, sp)); + List msHdmObpSixList = msHdmObpSixListFuture.join(); + if (!CollectionUtils.isEmpty(msHdmObpSixList)) { + // 近6个小时 + attResTaskViewDto.setNearlySixHours(BsSgcSkStatisticsService.getSum(msHdmObpSixList)); + } + + // 近9个小时 + sp.setStartTime(BsSgcSkStatisticsService.getTimeBeforeHours(9)); + sp.setEndTime(BsSgcSkStatisticsService.getCurrentTime()); + CompletableFuture> msHdmObpNineListFuture = CompletableFuture.supplyAsync(() -> queryDataList(MS_HDM_OBP, sp)); + List msHdmObpNineList = msHdmObpNineListFuture.join(); + if (!CollectionUtils.isEmpty(msHdmObpNineList)) { + // 近9个小时 + attResTaskViewDto.setNearlyNineHours(BsSgcSkStatisticsService.getSum(msHdmObpNineList)); + } + + // 近12个小时 + sp.setStartTime(BsSgcSkStatisticsService.getTimeBeforeHours(12)); + sp.setEndTime(BsSgcSkStatisticsService.getCurrentTime()); + CompletableFuture> msHdmObpTwelveListFuture = CompletableFuture.supplyAsync(() -> queryDataList(MS_HDM_OBP, sp)); + List msHdmObpTwelveList = msHdmObpTwelveListFuture.join(); + if (!CollectionUtils.isEmpty(msHdmObpTwelveList)) { + // 近12个小时 + attResTaskViewDto.setNearlyTwelveHours(BsSgcSkStatisticsService.getSum(msHdmObpNineList)); + } + return attResTaskViewDto; } + } diff --git a/shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/AttDamBaseJsonMolde.java b/shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/AttDamBaseJsonMolde.java deleted file mode 100644 index 380143c8..00000000 --- a/shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/AttDamBaseJsonMolde.java +++ /dev/null @@ -1,121 +0,0 @@ -package com.kms.yxgh.base.domain.monitor.att; - -import com.alibaba.fastjson.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonFormat; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.util.Date; - -@TableName("att_dam_base") -@Data -@ApiModel("水库大坝基础信息表") -public class AttDamBaseJsonMolde { - - /** - * 大坝代码 - */ - @ApiModelProperty("大坝代码") - @JSONField(name = "DAM_CODE") - private String damCode; - - /** - * 大坝名称 - */ - @ApiModelProperty("大坝名称") - @JSONField(name = "DAM_NAME") - private String damName; - - /** - * 水库代码 - */ - @ApiModelProperty("水库代码") - @JSONField(name = "RES_CODE") - private String resCode; - - /** - * 水库大坝中点经度 - */ - @ApiModelProperty("水库大坝中点经度") - @JSONField(name = "DAM_START_LONG") - private String damStartLong; - - /** - * 水库大坝中点纬度 - */ - @ApiModelProperty("水库大坝中点纬度") - @JSONField(name = "DAM_START_LAT") - private String damStartLat; - - @ApiModelProperty("大坝所在位置") - @JSONField(name = "DAM_LOC") - private String damLoc; - - @ApiModelProperty("是否主坝") - @JSONField(name = "IF_MAIN_DAM") - private String ifMainDam; - - @ApiModelProperty("是否溢流坝") - @JSONField(name = "IF_YL_DAM") - private String ifYlDam; - - @ApiModelProperty("工程等别") - @JSONField(name = "ENG_GRAD") - private String engGrad; - - @ApiModelProperty("大坝级别") - @JSONField(name = "DAM_GRAD") - private String damGrad; - - @ApiModelProperty("最大坝高") - @JSONField(name = "DAM_MAX_HEIG") - private String damMaxHeig; - - @ApiModelProperty("坝顶长度") - @JSONField(name = "DAM_TOP_LEN") - private String damTopLen; - - @ApiModelProperty("坝顶宽度") - @JSONField(name = "DAM_TOP_WID") - private String damTopWid; - - @ApiModelProperty("高程系统") - @JSONField(name = "ELEV_SYS") - private String elevSys; - - @ApiModelProperty("高程转换值") - @JSONField(name = "ELEV_SYS_CONVER") - private String elevSysConver; - - @ApiModelProperty("坝顶高程") - @JSONField(name = "DAM_TOP_ELEV") - private String damTopElev; - - @ApiModelProperty("防浪墙顶高程") - @JSONField(name = "WVWLTPEL") - private String wvwltpel; - - @ApiModelProperty("大坝材料类型") - @JSONField(name = "DAM_TYPE_MAT") - private String damTypeMat; - - @ApiModelProperty("大坝结构类型") - @JSONField(name = "DAM_TYPE_STR") - private String damTypeStr; - - @ApiModelProperty("大坝概况") - @JSONField(name = "DAM_OV") - private String damOv; - - @ApiModelProperty("备注") - @JSONField(name = "NOTE") - private String note; - - @ApiModelProperty("记录更新时间") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "UPDATE_DATE", format = "yyyy-MM-dd HH:mm:ss") - private Date updateDate; - -} diff --git a/shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/AttResRsppJsonModel.java b/shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/AttResRsppJsonModel.java deleted file mode 100644 index 2c052ef9..00000000 --- a/shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/AttResRsppJsonModel.java +++ /dev/null @@ -1,41 +0,0 @@ -package com.kms.yxgh.base.domain.monitor.att; - -import com.alibaba.fastjson.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonFormat; -import com.shuili.common.annotation.Excel; -import com.shuili.common.core.domain.BaseEntity; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.io.Serializable; -import java.util.Date; - - -/** - * 【请填写功能名称】对象 att_res_rspp - * - * @author kms - * @date 2024-04-24 - */ -@TableName("att_res_rspp") -@Data -@ApiModel("水库主要特征") -public class AttResRsppJsonModel { - - /** - * 设计洪水位 - */ - @JSONField(name = "dsfllv") - @ApiModelProperty("设计洪水位") - private String dsfllv; - - /** - * 校核洪水位 - */ - @ApiModelProperty("校核洪水位") - @JSONField(name = "chfllv") - private String chfllv; - -} diff --git a/shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/AttResSwJsonMode.java b/shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/AttResSwJsonMode.java deleted file mode 100644 index 78d50f6b..00000000 --- a/shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/AttResSwJsonMode.java +++ /dev/null @@ -1,150 +0,0 @@ -package com.kms.yxgh.base.domain.monitor.att; - -import com.alibaba.fastjson.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonFormat; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.util.Date; - - -/** - * 【请填写功能名称】对象 ATT_RES_SW - * - * @author kms - * @date 2024-04-24 - */ -@TableName("att_res_sw") -@Data -@ApiModel("水库溢洪道表") -public class AttResSwJsonMode { - - /** - * 水库编码 - */ - - @ApiModelProperty("水库编码") - @JSONField(name = "RES_CODE") - private String resCode; - - /** - * 溢洪道名称 - */ - @ApiModelProperty("溢洪道名称") - @JSONField(name = "SWNM") - private String swnm; - - /** - * 布置位置 - */ - @ApiModelProperty("布置位置") - @JSONField(name = "LYPS") - private String lyps; - - /** - * 控制方式 - */ - @ApiModelProperty("控制方式") - @JSONField(name = "CRMT") - private String crmt; - - - /** - * 堰顶高程 - */ - @ApiModelProperty("堰顶高程") - @JSONField(name = "WRCREL") - private String wrcrel; - - /** - * 堰顶净宽 - */ - @ApiModelProperty("堰顶净宽") - @JSONField(name = "WRCRNTWD") - private String wrcrntwd; - - /** - * 溢流堰型式 - */ - @ApiModelProperty("溢流堰型式") - @JSONField(name = "OFWRST") - private String ofwrst; - - /** - * 闸门型式 - */ - @ApiModelProperty("闸门型式") - @JSONField(name = "GTST") - private String gtst; - - - /** - * 闸门尺寸 - */ - @ApiModelProperty("闸门尺寸") - @JSONField(name = "GTSZ") - private String gtsz; - - /** - * 闸门数量 - */ - @ApiModelProperty("闸门数量") - @JSONField(name = "GTAM") - private String gtam; - - /** - * 最大泄量 - */ - @ApiModelProperty("最大泄量") - @JSONField(name = "MAXDS") - private String maxds; - - /** - * 消能型式 - */ - @ApiModelProperty("消能型式") - @JSONField(name = "ENDSST") - private String endsst; - - - /** - * 启闭设备 - */ - @ApiModelProperty("启闭设备") - @JSONField(name = "HSEQ") - private String hseq; - - /** - * 启闭机数量 - */ - @ApiModelProperty("启闭机数量") - @JSONField(name = "HSGRAM") - private String hsgram; - - - /** - * 电源条件 - */ - @ApiModelProperty("电源条件") - @JSONField(name = "PWSPCN") - private String pwspcn; - - /** - * 备注 - */ - @ApiModelProperty("备注") - @JSONField(name = "NOTE") - private String note; - - /** - * 修改时间 - */ - @ApiModelProperty("修改时间") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "UPDATE_DATE", format = "yyyy-MM-dd HH:mm:ss") - private Date updateDate; - - -} diff --git a/shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/RelStResJsonMode.java b/shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/RelStResJsonMode.java deleted file mode 100644 index 543bdcb6..00000000 --- a/shuili-system/src/main/java/com/kms/yxgh/base/domain/monitor/att/RelStResJsonMode.java +++ /dev/null @@ -1,71 +0,0 @@ -package com.kms.yxgh.base.domain.monitor.att; - -import com.alibaba.fastjson.annotation.JSONField; -import com.baomidou.mybatisplus.annotation.TableName; -import com.fasterxml.jackson.annotation.JsonFormat; -import io.swagger.annotations.ApiModel; -import io.swagger.annotations.ApiModelProperty; -import lombok.Data; - -import java.util.Date; - -@TableName("rel_st_res") -@Data -@ApiModel("代表站") -public class RelStResJsonMode { - - private static final long serialVersionUID = 1L; - - - /** - * 水库编码 - */ - @ApiModelProperty("类型标识 1代表站") - @JSONField(name = "FLAG") - private String flag; - - /** - * 水库编码 - */ - @ApiModelProperty("水库编码") - @JSONField(name = "RES_CODE") - private String resCode; - - /** - * 水库名称 - */ - @ApiModelProperty("水库名称") - @JSONField(name = "RES_NAME") - private String resName; - - /** - * 河流代码 - */ - @ApiModelProperty("测站代码") - @JSONField(name = "ST_CODE") - private String stCode; - - /** - * 河流名称 - */ - @ApiModelProperty("测站名称") - @JSONField(name = "ST_NAME") - private String stName; - - /** - * 关系建立时间 - */ - @ApiModelProperty("关系建立时间") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "FROM_DATE", format = "yyyy-MM-dd HH:mm:ss") - private Date fromDate; - - /** - * 关系终止时间 - */ - @ApiModelProperty("关系终止时间") - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") - @JSONField(name = "TO_DATE", format = "yyyy-MM-dd HH:mm:ss") - private Date toDate; - -} diff --git a/shuili-system/src/main/java/com/kms/yxgh/base/domain/sk/SkAttDamBase.java b/shuili-system/src/main/java/com/kms/yxgh/base/domain/sk/SkAttDamBase.java index d1575f08..6978e57e 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/base/domain/sk/SkAttDamBase.java +++ b/shuili-system/src/main/java/com/kms/yxgh/base/domain/sk/SkAttDamBase.java @@ -1,5 +1,6 @@ package com.kms.yxgh.base.domain.sk; +import com.alibaba.fastjson.annotation.JSONField; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; @@ -17,81 +18,104 @@ public class SkAttDamBase { * 大坝代码 */ @ApiModelProperty("大坝代码") + @JSONField(name = "DAM_CODE") private String damCode; /** * 大坝名称 */ @ApiModelProperty("大坝名称") + @JSONField(name = "DAM_NAME") private String damName; /** * 水库代码 */ @ApiModelProperty("水库代码") + @JSONField(name = "RES_CODE") private String resCode; /** * 水库大坝中点经度 */ @ApiModelProperty("水库大坝中点经度") + @JSONField(name = "DAM_START_LONG") private String damStartLong; /** * 水库大坝中点纬度 */ @ApiModelProperty("水库大坝中点纬度") + @JSONField(name = "DAM_START_LAT") private String damStartLat; @ApiModelProperty("大坝所在位置") + @JSONField(name = "DAM_LOC") private String damLoc; @ApiModelProperty("是否主坝") + @JSONField(name = "IF_MAIN_DAM") private String ifMainDam; @ApiModelProperty("是否溢流坝") + @JSONField(name = "IF_YL_DAM") private String ifYlDam; @ApiModelProperty("工程等别") + @JSONField(name = "ENG_GRAD") private String engGrad; @ApiModelProperty("大坝级别") + @JSONField(name = "DAM_GRAD") private String damGrad; @ApiModelProperty("最大坝高") + @JSONField(name = "DAM_MAX_HEIG") private String damMaxHeig; @ApiModelProperty("坝顶长度") + @JSONField(name = "DAM_TOP_LEN") private String damTopLen; @ApiModelProperty("坝顶宽度") + @JSONField(name = "DAM_TOP_WID") private String damTopWid; @ApiModelProperty("高程系统") + @JSONField(name = "ELEV_SYS") private String elevSys; @ApiModelProperty("高程转换值") + @JSONField(name = "ELEV_SYS_CONVER") private String elevSysConver; @ApiModelProperty("坝顶高程") + @JSONField(name = "DAM_TOP_ELEV") private String damTopElev; @ApiModelProperty("防浪墙顶高程") + @JSONField(name = "WVWLTPEL") private String wvwltpel; @ApiModelProperty("大坝材料类型") + @JSONField(name = "DAM_TYPE_MAT") private String damTypeMat; @ApiModelProperty("大坝结构类型") + @JSONField(name = "DAM_TYPE_STR") private String damTypeStr; @ApiModelProperty("大坝概况") + @JSONField(name = "DAM_OV") private String damOv; @ApiModelProperty("备注") + @JSONField(name = "NOTE") private String note; @ApiModelProperty("记录更新时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "UPDATE_DATE", format = "yyyy-MM-dd HH:mm:ss") private Date updateDate; } diff --git a/shuili-system/src/main/java/com/kms/yxgh/base/domain/sk/SkRelStRes.java b/shuili-system/src/main/java/com/kms/yxgh/base/domain/sk/SkRelStRes.java index 786be2c3..eb11dac9 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/base/domain/sk/SkRelStRes.java +++ b/shuili-system/src/main/java/com/kms/yxgh/base/domain/sk/SkRelStRes.java @@ -1,11 +1,12 @@ package com.kms.yxgh.base.domain.sk; +import com.alibaba.fastjson.annotation.JSONField; import com.baomidou.mybatisplus.annotation.TableName; import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.util.Date; -@TableName("rel_st_res") +@TableName("dw_rel_st_res") @Data @ApiModel("代表站") public class SkRelStRes { @@ -17,44 +18,51 @@ public class SkRelStRes { * 水库编码 */ @ApiModelProperty("类型标识 1代表站") + @JSONField(name = "FLAG") private String flag; /** * 水库编码 */ @ApiModelProperty("水库编码") + @JSONField(name = "RES_CODE") private String resCode; /** * 水库名称 */ @ApiModelProperty("水库名称") + @JSONField(name = "RES_NAME") private String resName; /** * 河流代码 */ @ApiModelProperty("测站代码") + @JSONField(name = "ST_CODE") private String stCode; /** * 河流名称 */ @ApiModelProperty("测站名称") + @JSONField(name = "ST_NAME") private String stName; /** * 关系建立时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty("关系建立时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "FROM_DATE", format = "yyyy-MM-dd HH:mm:ss") private Date fromDate; /** * 关系终止时间 */ - @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty("关系终止时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @JSONField(name = "TO_DATE", format = "yyyy-MM-dd HH:mm:ss") private Date toDate; } diff --git a/shuili-system/src/main/java/com/kms/yxgh/common/controller/ReservoirOverviewController.java b/shuili-system/src/main/java/com/kms/yxgh/common/controller/ReservoirOverviewController.java index 852c15d3..b0627e64 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/common/controller/ReservoirOverviewController.java +++ b/shuili-system/src/main/java/com/kms/yxgh/common/controller/ReservoirOverviewController.java @@ -1,31 +1,31 @@ -package com.kms.yxgh.common.controller; - -import com.kms.yg.sk.dto.AttResTaskViewDto; -import com.kms.yxgh.base.Response; -import com.kms.yxgh.common.service.BsSgcSkStatisticsService; -import io.swagger.annotations.ApiOperation; -import lombok.AllArgsConstructor; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; - -/** - * @author lyd - * @company 数元科技有限公司 - * @create 2025-03-19 9:34 - */ -@RestController -@AllArgsConstructor -@RequestMapping("/run/sk/statistics") -public class ReservoirOverviewController { - - private final BsSgcSkStatisticsService bsSgcSkStatisticsService; - - @PostMapping("/view") - @ApiOperation("水库总览") - public Response getView(@RequestBody AttResTaskViewDto dto) { - return Response.ok(bsSgcSkStatisticsService.getView(dto)); - } - -} +//package com.kms.yxgh.common.controller; +// +//import com.kms.yg.sk.dto.AttResTaskViewDto; +//import com.kms.yxgh.base.Response; +//import com.kms.yxgh.common.service.BsSgcSkStatisticsService; +//import io.swagger.annotations.ApiOperation; +//import lombok.AllArgsConstructor; +//import org.springframework.web.bind.annotation.PostMapping; +//import org.springframework.web.bind.annotation.RequestBody; +//import org.springframework.web.bind.annotation.RequestMapping; +//import org.springframework.web.bind.annotation.RestController; +// +/// ** +// * @author lyd +// * @company 数元科技有限公司 +// * @create 2025-03-19 9:34 +// */ +//@RestController +//@AllArgsConstructor +//@RequestMapping("/run/sk/statistics") +//public class ReservoirOverviewController { +// +// private final BsSgcSkStatisticsService bsSgcSkStatisticsService; +// +// @PostMapping("/view") +// @ApiOperation("水库总览") +// public Response getView(@RequestBody AttResTaskViewDto dto) { +// return Response.ok(bsSgcSkStatisticsService.getView(dto)); +// } +// +//} diff --git a/shuili-system/src/main/java/com/kms/yxgh/common/service/BsSgcSkStatisticsService.java b/shuili-system/src/main/java/com/kms/yxgh/common/service/BsSgcSkStatisticsService.java index 39849e08..aeeff614 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/common/service/BsSgcSkStatisticsService.java +++ b/shuili-system/src/main/java/com/kms/yxgh/common/service/BsSgcSkStatisticsService.java @@ -166,7 +166,7 @@ public class BsSgcSkStatisticsService { return view; } - private String getSum(List list) { + public static String getSum(List list) { // 使用 Stream API 处理 BigDecimal sum = list.stream() .map(MsHdmObp::getDrp) diff --git a/sql/sy/v1.6.0/增量脚本/v1.6.2-update.sql b/sql/sy/v1.6.0/增量脚本/v1.6.2-update.sql index 95f6c1bd..5deca057 100644 --- a/sql/sy/v1.6.0/增量脚本/v1.6.2-update.sql +++ b/sql/sy/v1.6.0/增量脚本/v1.6.2-update.sql @@ -56,4 +56,6 @@ create table att_dam_base ( dam_ov varchar(3000) default null comment '大坝概况', note varchar(256) default null comment '备注', update_date datetime not null comment '记录更新时间' -)engine=innodb auto_increment=1 default charset=utf8mb4 collate=utf8mb4_general_ci row_format=dynamic comment='水库大坝基础信息表'; \ No newline at end of file +)engine=innodb auto_increment=1 default charset=utf8mb4 collate=utf8mb4_general_ci row_format=dynamic comment='水库大坝基础信息表'; + +ALTER TABLE rel_st_res RENAME TO dws_rel_st_res; \ No newline at end of file