diff --git a/shuili-system/src/main/java/com/kms/yg/cz/enmu/MarkTypeEnum.java b/shuili-system/src/main/java/com/kms/yg/cz/enmu/MarkTypeEnum.java index f583e38f..f3631168 100644 --- a/shuili-system/src/main/java/com/kms/yg/cz/enmu/MarkTypeEnum.java +++ b/shuili-system/src/main/java/com/kms/yg/cz/enmu/MarkTypeEnum.java @@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper; import com.kms.yg.cz.dto.CharInfoDto; import com.kms.yg.sk.mapper.AttResRfkwlvMapper; import com.kms.yg.sk.mapper.AttResRsppMapper; +import com.kms.yg.sz.mapper.BsSgcSzSwtzMapper; import com.shuili.common.utils.SpringUtils; import com.shuili.common.utils.StringUtils; import lombok.Getter; @@ -17,7 +18,8 @@ public enum MarkTypeEnum implements MonitorIndexInfo { FSLTDZ_LIMIT("汛限水位", "m", Constants.DEFAULT_KEY_FIELD, "rsltdz", AttResRfkwlvMapper.class), CHFLLV("校准洪核水位", "m", Constants.DEFAULT_KEY_FIELD, "chfllv", AttResRsppMapper.class), - ; + NORM_WAT_LEV("正常蓄水位", "m", Constants.DEFAULT_KEY_FIELD, "normWatLev ", BsSgcSzSwtzMapper.class), + DSFLLV("设计洪水位", "m", Constants.DEFAULT_KEY_FIELD, "dsfllv", BsSgcSzSwtzMapper.class); private final String zhName; private final String unit; diff --git a/shuili-system/src/main/java/com/kms/yg/cz/enmu/MonitorComposeEnum.java b/shuili-system/src/main/java/com/kms/yg/cz/enmu/MonitorComposeEnum.java index 2cba8e62..392ea5d2 100644 --- a/shuili-system/src/main/java/com/kms/yg/cz/enmu/MonitorComposeEnum.java +++ b/shuili-system/src/main/java/com/kms/yg/cz/enmu/MonitorComposeEnum.java @@ -114,7 +114,8 @@ public enum MonitorComposeEnum { } charInfoDto.setYAxis(yAxis); charInfoDto.setMarkLine(Stream.concat(this.leftElements.stream(), this.rightElements.stream()) - .map(MonitorTypeEnum::getMarkType) + .map(MonitorTypeEnum::getMarkTypes) + .flatMap(Collection::stream) .filter(Objects::nonNull) .map(markType -> markType.toMarkLine(sp.getResCode())) .collect(Collectors.toList())); diff --git a/shuili-system/src/main/java/com/kms/yg/cz/enmu/MonitorTypeEnum.java b/shuili-system/src/main/java/com/kms/yg/cz/enmu/MonitorTypeEnum.java index 3729b534..7c957c25 100644 --- a/shuili-system/src/main/java/com/kms/yg/cz/enmu/MonitorTypeEnum.java +++ b/shuili-system/src/main/java/com/kms/yg/cz/enmu/MonitorTypeEnum.java @@ -2,14 +2,19 @@ package com.kms.yg.cz.enmu; import lombok.Getter; +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + @Getter public enum MonitorTypeEnum implements MonitorIndexInfo { - WATER_LEVEL("水位", MonitorSourceEnum.MS_HDM_RSVR, "rz", "collTime", "m", MarkTypeEnum.FSLTDZ_LIMIT), + WATER_LEVEL("水位", MonitorSourceEnum.MS_HDM_RSVR, "rz", "collTime", "m", + Arrays.asList(MarkTypeEnum.FSLTDZ_LIMIT, MarkTypeEnum.CHFLLV)), DF_WATER_LEVEL("水位", MonitorSourceEnum.MS_HDM_RIVER, "z", "tm", "m"), STORE_WATER("蓄水量", MonitorSourceEnum.MS_HDM_RSVR, "w", "collTime", "m³"), - SK_RAINFALL("降雨量", MonitorSourceEnum.MS_HDM_OBP, "drp", "collTime", "mm", MarkTypeEnum.CHFLLV), - RAINFALL("降雨量", MonitorSourceEnum.MS_HDM_OBP, "drp", "collTime", "mm" ), + SK_RAINFALL("降雨量", MonitorSourceEnum.MS_HDM_OBP, "drp", "collTime", "mm"), + RAINFALL("降雨量", MonitorSourceEnum.MS_HDM_OBP, "drp", "collTime", "mm"), INFLOW_RATE("入库流量", MonitorSourceEnum.MS_HDM_RSVR, "inq", "collTime", "m³/s"), OUTFLOW_RATE("出库流量", MonitorSourceEnum.MS_HDM_RSVR, "otq", "collTime", "m³/s"), AIR_TEMPE("气温", MonitorSourceEnum.MS_HDM_TMP, "atmp", "tm", "℃"), @@ -26,7 +31,7 @@ public enum MonitorTypeEnum implements MonitorIndexInfo { STRESS("应力", MonitorSourceEnum.MS_DSM_PR, "sts", "mstm", "MPa"), STRAIN("应变", MonitorSourceEnum.MS_DSM_ST, "stn", "mstm", "με"), - WATER_LEVEL_ABOVE_GATE("闸上水位", MonitorSourceEnum.MS_HDM_WAS, "upz", "tm", "m"), + WATER_LEVEL_ABOVE_GATE("闸上水位", MonitorSourceEnum.MS_HDM_WAS, "upz", "tm", "m", Arrays.asList(MarkTypeEnum.NORM_WAT_LEV, MarkTypeEnum.DSFLLV)), WATER_LEVEL_BELOW_GATE("闸下水位", MonitorSourceEnum.MS_HDM_WAS, "dwz", "tm", "m"), GATE_FLOW_RATE("过闸流量", MonitorSourceEnum.MS_HDM_WAS, "tgtq", "tm", "m³/s"), SEEPAGE_AROUND_DAM("绕坝渗流", MonitorSourceEnum.MS_DSM_PTMP, "bypassSeepage", "pstm", "L/s");; @@ -36,19 +41,19 @@ public enum MonitorTypeEnum implements MonitorIndexInfo { private final String valueField; private final String timeField; private final String unit; - private final MarkTypeEnum markType; + private final List markTypes; MonitorTypeEnum(String zhName, MonitorSourceEnum source, String valueField, String timeField, String unit) { - this(zhName, source, valueField, timeField, unit, null); + this(zhName, source, valueField, timeField, unit, Collections.emptyList()); } - MonitorTypeEnum(String zhName, MonitorSourceEnum source, String valueField, String timeField, String unit, MarkTypeEnum markType) { + MonitorTypeEnum(String zhName, MonitorSourceEnum source, String valueField, String timeField, String unit, List markTypes) { this.zhName = zhName; this.source = source; this.valueField = valueField; this.unit = unit; - this.markType = markType; + this.markTypes = markTypes; this.timeField = timeField; } diff --git a/shuili-system/src/main/java/com/kms/yxgh/common/enums/DataSyncBasicEnum.java b/shuili-system/src/main/java/com/kms/yxgh/common/enums/DataSyncBasicEnum.java index 8bcdcfea..2116c9af 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/common/enums/DataSyncBasicEnum.java +++ b/shuili-system/src/main/java/com/kms/yxgh/common/enums/DataSyncBasicEnum.java @@ -26,7 +26,7 @@ import java.util.stream.Collectors; */ @Getter public enum DataSyncBasicEnum { - ATT_WAGA_ESCPP("水闸水位过闸流量关系表",Constants.SZ_ID), + ATT_WAGA_ESCPP("水闸水位过闸流量关系表", Constants.SZ_ID), ATT_RES_BASE("水库基础信息", Constants.SK_MAP), ATT_RES_RSPP("水库主要特征", Constants.SK_MAP), ATT_RES_CODE("水库编码查找表", Constants.SK_MAP), @@ -250,8 +250,15 @@ public enum DataSyncBasicEnum { if (StringUtils.isEmpty(stcd)) { return null; } - String cacheKey = RelCacheEnum.DWS_REL_ST_RES.getCacheKey(); - return SpringUtils.getBean(RedisCache.class).getCacheMapValue(cacheKey, stcd); + RedisCache redisCache = SpringUtils.getBean(RedisCache.class); + String code = redisCache.getCacheMapValue(RelCacheEnum.DWS_REL_ST_RES.getCacheKey(), stcd); + if (StringUtils.isEmpty(code)) { + code = redisCache.getCacheMapValue(RelCacheEnum.DWS_REL_ST_DIKE.getCacheKey(), stcd); + } + if (StringUtils.isEmpty(code)) { + code = redisCache.getCacheMapValue(RelCacheEnum.DWS_REL_ST_WAGA.getCacheKey(), stcd); + } + return code; }); put("prjtp", obj -> { Function prjcd = get("prjcd"); diff --git a/shuili-system/src/main/java/com/kms/yxgh/common/enums/RelCacheEnum.java b/shuili-system/src/main/java/com/kms/yxgh/common/enums/RelCacheEnum.java index 274290bc..4ee519dc 100644 --- a/shuili-system/src/main/java/com/kms/yxgh/common/enums/RelCacheEnum.java +++ b/shuili-system/src/main/java/com/kms/yxgh/common/enums/RelCacheEnum.java @@ -8,6 +8,8 @@ public enum RelCacheEnum { DWS_REL_DIKE_AD("dike_code", "adcd"), DWS_REL_RES_DSCDNM("res_code", "adcd"), DWS_REL_ST_RES("stcd", "res_code"), + DWS_REL_ST_WAGA("stcd", "waga_code"), + DWS_REL_ST_DIKE("stcd", "dike_code"), ; private final String key; private final String value;