From 4706e1d82bcbee256b22581e2f5398e122896a02 Mon Sep 17 00:00:00 2001 From: "zangch@mesnac.com" Date: Fri, 13 Mar 2026 17:08:10 +0800 Subject: [PATCH] =?UTF-8?q?change(record/EmsRecordSteamInstantServiceImpl)?= =?UTF-8?q?:=20=E6=B2=88=E9=98=B3=E5=8D=9A=E6=B3=B0(monitor=5Fcode?= =?UTF-8?q?=E4=B8=BAE0003=5F0017)=E7=9A=84=E5=A4=A7=E4=BA=8E50=E5=BA=A6?= =?UTF-8?q?=E5=B0=8F=E4=BA=8E130=E5=BA=A6=E7=9A=84=E6=B8=A9=E5=BA=A6?= =?UTF-8?q?=E6=95=B0=E6=8D=AE=E9=83=BD=E5=8A=A0=E4=B8=8A80=E5=BA=A6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../EmsRecordSteamInstantServiceImpl.java | 32 ++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/os-ems/src/main/java/com/os/ems/record/service/impl/EmsRecordSteamInstantServiceImpl.java b/os-ems/src/main/java/com/os/ems/record/service/impl/EmsRecordSteamInstantServiceImpl.java index d1527ff..0fe2070 100644 --- a/os-ems/src/main/java/com/os/ems/record/service/impl/EmsRecordSteamInstantServiceImpl.java +++ b/os-ems/src/main/java/com/os/ems/record/service/impl/EmsRecordSteamInstantServiceImpl.java @@ -20,6 +20,13 @@ import com.os.ems.record.service.IEmsRecordSteamInstantService; */ @Service public class EmsRecordSteamInstantServiceImpl implements IEmsRecordSteamInstantService { + + //沈阳博泰(monitor_code为E0003_0017)的大于50度小于130度的温度数据都加上80度 + private static final String YANG_BOTAI_MONITOR_CODE = "E0003_0017"; + private static final BigDecimal YANG_BOTAI_MIN_TEMPERATURE = BigDecimal.valueOf(50); + private static final BigDecimal YANG_BOTAI_MAX_TEMPERATURE = BigDecimal.valueOf(130); + private static final BigDecimal YANG_BOTAI_TEMPERATURE_OFFSET = BigDecimal.valueOf(80); + @Autowired private EmsRecordSteamInstantMapper emsRecordSteamInstantMapper; @@ -42,7 +49,10 @@ public class EmsRecordSteamInstantServiceImpl implements IEmsRecordSteamInstantS */ @Override public List selectEmsRecordSteamInstantList(EmsRecordSteamInstant emsRecordSteamInstant) { - return emsRecordSteamInstantMapper.selectEmsRecordSteamInstantList(emsRecordSteamInstant); + List steamInstantList = emsRecordSteamInstantMapper + .selectEmsRecordSteamInstantList(emsRecordSteamInstant); + steamInstantList.forEach(this::adjustYangBotaiTemperature); + return steamInstantList; } /** @@ -119,6 +129,7 @@ public class EmsRecordSteamInstantServiceImpl implements IEmsRecordSteamInstantS emsRecordSteamInstants = emsRecordSteamInstantMapper .selectEmsRecordLatestSteamInstantListByMonitorCode(emsRecordSteamInstant).subList(0, 1); } + emsRecordSteamInstants.forEach(this::adjustYangBotaiTemperature); //返回查询结果 return emsRecordSteamInstants; } @@ -134,4 +145,23 @@ public class EmsRecordSteamInstantServiceImpl implements IEmsRecordSteamInstantS return emsRecordSteamInstantMapper.selectEmsRecordSteamInstantListByTime(emsRecordSteamInstant); } + private void adjustYangBotaiTemperature(EmsRecordSteamInstant steamInstant) + { + if (steamInstant == null || steamInstant.getTemperature() == null) + { + return; + } + if (!YANG_BOTAI_MONITOR_CODE.equals(steamInstant.getMonitorCode())) + { + return; + } + BigDecimal temperature = steamInstant.getTemperature(); + if (temperature.compareTo(YANG_BOTAI_MIN_TEMPERATURE) > 0 + && temperature.compareTo(YANG_BOTAI_MAX_TEMPERATURE) < 0) + { + // 沈阳博泰该测点温度存在固定偏移,仅在查询返回时补偿 80 度,避免改写原始实时采集数据。 + steamInstant.setTemperature(temperature.add(YANG_BOTAI_TEMPERATURE_OFFSET)); + } + } + }