From 438c21880f86c43edeac2907fa95888b6ce6594d Mon Sep 17 00:00:00 2001 From: wr <1754607820@qq.com> Date: Wed, 3 Apr 2024 09:28:32 +0800 Subject: [PATCH] =?UTF-8?q?1.=E6=95=B0=E6=8D=AE=E5=AE=8C=E6=95=B4=E6=80=A7?= =?UTF-8?q?=E5=88=97=E8=A1=A8=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/njcn/mapper/data/IntegrityMapper.java | 2 + .../configuration/DeviceServiceImpl.java | 31 ++++++++++- .../mybatis/mappers/data/IntegrityMapper.xml | 53 +++++++++++++++++++ 3 files changed, 85 insertions(+), 1 deletion(-) diff --git a/comService/src/main/java/com/njcn/mapper/data/IntegrityMapper.java b/comService/src/main/java/com/njcn/mapper/data/IntegrityMapper.java index 1469c60..cefb66a 100644 --- a/comService/src/main/java/com/njcn/mapper/data/IntegrityMapper.java +++ b/comService/src/main/java/com/njcn/mapper/data/IntegrityMapper.java @@ -25,4 +25,6 @@ public interface IntegrityMapper extends Mapper { //查询监测点时间范围内详细的数据完整性 List selectIntegrityData(@Param("list") List tempIndexs,@Param("startTime")Date startTime,@Param("endTime") Date endTime); + + List selectGWIntegrityData(@Param("list") List tempIndexs,@Param("startTime")Date startTime,@Param("endTime") Date endTime); } diff --git a/comService/src/main/java/com/njcn/serviceimpl/configuration/DeviceServiceImpl.java b/comService/src/main/java/com/njcn/serviceimpl/configuration/DeviceServiceImpl.java index 5e466fd..7fd79d3 100644 --- a/comService/src/main/java/com/njcn/serviceimpl/configuration/DeviceServiceImpl.java +++ b/comService/src/main/java/com/njcn/serviceimpl/configuration/DeviceServiceImpl.java @@ -325,7 +325,7 @@ public class DeviceServiceImpl implements DeviceService { //国网监测点 List countryLineIndexs = getGwLine(lineIndexs); if (!CollectionUtils.isEmpty(countryLineIndexs)) { - intergralityData.setCountryNets(getIntegralityTable(startTime, endTime, countryLineIndexs)); + intergralityData.setCountryNets(getGWIntegralityTable(startTime, endTime, countryLineIndexs)); } return intergralityData; } @@ -359,6 +359,35 @@ public class DeviceServiceImpl implements DeviceService { return intergralityTables; } + /** + * 分片处理获取监测点数据完整性所有数据 + * + * @param startTime 起始时间 + * @param endTime 截止时间 + * @param lineIndexs 监测点索引 + */ + private List getGWIntegralityTable(Date startTime, Date endTime, List lineIndexs) { + List intergralityTables = new ArrayList<>(); + //分片1000个监测点 + if (lineIndexs.size() > 1000) { + int times = lineIndexs.size() / 1000 + 1; + for (int i = 1; i <= times; i++) { + if (lineIndexs.size() > 1000) { + List tempIndexs = lineIndexs.subList(0, 1000); + List tempTables = integrityMapper.selectGWIntegrityData(tempIndexs, startTime, endTime); + intergralityTables.addAll(tempTables); + tempIndexs.clear(); + } else { + List tempTables = integrityMapper.selectGWIntegrityData(lineIndexs, startTime, endTime); + intergralityTables.addAll(tempTables); + } + } + } else { + intergralityTables = integrityMapper.selectGWIntegrityData(lineIndexs, startTime, endTime); + } + return intergralityTables; + } + /** * 根据装置索引,查询出需要展示的数据 */ diff --git a/pqs9000/src/main/resources/mybatis/mappers/data/IntegrityMapper.xml b/pqs9000/src/main/resources/mybatis/mappers/data/IntegrityMapper.xml index e3f960c..71bcc66 100644 --- a/pqs9000/src/main/resources/mybatis/mappers/data/IntegrityMapper.xml +++ b/pqs9000/src/main/resources/mybatis/mappers/data/IntegrityMapper.xml @@ -121,4 +121,57 @@ AND T9.DIC_INDEX = T3.DEVTYPE + +