From cc795fd54280d63f4b1892ee7f27b9424e7aeff7 Mon Sep 17 00:00:00 2001 From: xy <748613696@qq.com> Date: Fri, 14 Jun 2024 14:36:45 +0800 Subject: [PATCH] =?UTF-8?q?1.=E9=92=88=E5=AF=B9=E7=94=B5=E5=8E=8B=E5=81=8F?= =?UTF-8?q?=E5=B7=AE=E5=90=88=E6=A0=BC=E7=8E=87=E5=88=A4=E6=96=AD=E7=AE=97?= =?UTF-8?q?=E6=B3=95=E8=B0=83=E6=95=B4=202.=E6=96=87=E4=BB=B6=E5=AF=BC?= =?UTF-8?q?=E5=87=BAbug=E8=B0=83=E6=95=B4?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/business/DeviceController.java | 89 +++++++++++++------ .../pojo/report/enumReport/EnumPass.java | 1 + .../com/pqs9000/task/HarmonicDetailTask.java | 2 +- .../com/pqs9000/util/ComplexHeadExcel.java | 24 ++--- 4 files changed, 78 insertions(+), 38 deletions(-) diff --git a/pqs9000/src/main/java/com/pqs9000/controller/business/DeviceController.java b/pqs9000/src/main/java/com/pqs9000/controller/business/DeviceController.java index ed7a567..d42a0e8 100644 --- a/pqs9000/src/main/java/com/pqs9000/controller/business/DeviceController.java +++ b/pqs9000/src/main/java/com/pqs9000/controller/business/DeviceController.java @@ -17,6 +17,7 @@ import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.util.ObjectUtil; import com.njcn.enums.LogTypeEnum; import com.njcn.mapper.user.UserMapper; @@ -1088,10 +1089,9 @@ public class DeviceController { return result; } - private void transformData(List list, List listValue, List listOverlimit, boolean b) { + private void transformData(List list, List listValue, List listOverlimit, boolean b,Float lowLimit) { int offset = 1;//b ? 3 : 1; int i = 0; - for (int index = 0; index < listValue.size(); index += offset) { ReportTarget reportTarget = new ReportTarget(); reportTarget.setList(listValue.subList(index, index + offset)); @@ -1103,7 +1103,7 @@ public class DeviceController { for (int k = 0; k < reportTarget.getList().size(); k++) { if (null == reportTarget.getList().get(k).getFmaxValue()) { break; - } else if (Math.abs(reportTarget.getList().get(k).getFmaxValue().floatValue()) > overLimit.floatValue()) { + } else if (reportTarget.getList().get(k).getFmaxValue().floatValue() > overLimit.floatValue()) { reportTarget.setPass(EnumPass.NOPASS.getCode()); break; } else { @@ -1147,6 +1147,21 @@ public class DeviceController { } } break; + case 6: + for (int k = 0; k < reportTarget.getList().size(); k++) { + if (null == reportTarget.getList().get(k).getFmaxValue() || null == reportTarget.getList().get(k).getMinValue()) { + break; + } else if (reportTarget.getList().get(k).getFmaxValue() < lowLimit || reportTarget.getList().get(k).getFmaxValue() > overLimit) { + reportTarget.setPass(EnumPass.NOPASS.getCode()); + break; + } else if (reportTarget.getList().get(k).getMinValue() < lowLimit || reportTarget.getList().get(k).getMinValue() > overLimit) { + reportTarget.setPass(EnumPass.NOPASS.getCode()); + break; + } else { + reportTarget.setPass(EnumPass.PASS.getCode()); + } + } + break; default: break; } @@ -1156,6 +1171,29 @@ public class DeviceController { } } + /** + * 根据监测点的电压等级获取电压偏差的下限,因为目前oracle库中只有上限的值 + */ + public Float getDevLowLimit(Integer line,Float upLimit) { + float low = 0.0f; + MachineAccount machineAccount = lineService.getLineName(line); + if (!Objects.isNull(machineAccount.getScale()) || !"".equals(machineAccount.getScale())) { + float nScale = Float.parseFloat(machineAccount.getScale().substring(0, machineAccount.getScale().length() - 2)); + if (Objects.equals(nScale,220.0f) || nScale <= 20.0f) { + low = 0.0f; + } else if (nScale >= 66.0f && nScale <= 110.0f) { + low = -3.0f; + } else if (Objects.equals(nScale,35.0f)) { + if (upLimit >= 0.0f) { + low = -(10.0f - upLimit); + } else { + low = 10.0f - Math.abs(upLimit); + } + } + } + return low; + } + @PostMapping("getHistoryTableData") @ResponseBody public HttpResult getHistoryTableData(String startTime, String endTime, String lineId, String type, String index, String harmonicInHarms) { @@ -1254,6 +1292,7 @@ public class DeviceController { tempCondition.setPltCount(overLimitInfo.getPltCount()); tempCondition.setPstCount(overLimitInfo.getPstCount()); saveConditionData(tempCondition, key); + Float low = getDevLowLimit(lineIds[j],new Pass(overLimitInfo.getOverLimitRate().get(0).getVoltageDev(), EnumPass.MAX_AND_MIN.getCode()).getOverLimit()); for (int i = 0; i < types.length; i++) { HistoryTableData.data data; List list1; @@ -1267,7 +1306,7 @@ public class DeviceController { data.setTypeId(21); transformData(list1, getVirtualDataService.getVirtualData(condition, "i"), new ArrayList() {{ add(new Pass(null)); - }}, true); + }}, true, low); data.setList(list1); historyTableData.setData(data); break; @@ -1279,7 +1318,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, getVirtualDataService.getVirtualData(condition, "v"), new ArrayList() {{ add(new Pass(null)); - }}, true); + }}, true, low); data.setList(list1); historyTableData.setData(data); break; @@ -1291,7 +1330,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, getVirtualDataService.getVVirtualData(condition), new ArrayList() {{ add(new Pass(null)); - }}, true); + }}, true, low); data.setList(list1); data.getList().get(0).getList().get(0).setPhaseType("AB"); data.getList().get(0).getList().get(1).setPhaseType("BC"); @@ -1306,7 +1345,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, getPowerDataService.getPower(condition, "P"), new ArrayList() {{ add(new Pass(null)); - }}, true); + }}, true, low); data.setList(list1); historyTableData.setData(data); break; @@ -1318,7 +1357,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, getPowerDataService.getPower(condition, "Q"), new ArrayList() {{ add(new Pass(null)); - }}, true); + }}, true, low); data.setList(list1); historyTableData.setData(data); break; @@ -1330,7 +1369,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, getPowerDataService.getPower(condition, "S"), new ArrayList() {{ add(new Pass(null)); - }}, true); + }}, true, low); data.setList(list1); historyTableData.setData(data); break; @@ -1342,7 +1381,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, getFlickerDataService.getPFlickerData(condition), new ArrayList() {{ add(new Pass(null)); - }}, true); + }}, true, low); data.setList(list1); historyTableData.setData(data); break; @@ -1354,7 +1393,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, getFlickerDataService.getLLFlickerData(condition), new ArrayList() {{ add(new Pass(overLimitInfo.getOverLimitRate().get(0).getFlicker(), EnumPass.MAX.getCode())); - }}, true); + }}, true, low); data.setList(list1); historyTableData.setData(data); break; @@ -1366,7 +1405,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, getDistortionDataService.getDistortionData(condition, "V"), new ArrayList() {{ add(new Pass(overLimitInfo.getOverLimitRate().get(0).getUaberrance(), EnumPass.CP95.getCode())); - }}, true); + }}, true, low); data.setList(list1); historyTableData.setData(data); break; @@ -1378,7 +1417,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, getDistortionDataService.getDistortionData(condition, "I"), new ArrayList() {{ add(new Pass(null)); - }}, true); + }}, true, low); data.setList(list1); historyTableData.setData(data); break; @@ -1390,7 +1429,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, getInegDataService.getInegData(condition), new ArrayList() {{ add(new Pass(overLimitInfo.getOverLimitRate().get(0).getiNeg(), EnumPass.MAX.getCode())); - }}, true); + }}, true, low); data.setList(list1); historyTableData.setData(data); break; @@ -1401,8 +1440,8 @@ public class DeviceController { data.setTypeId(13); list1 = new ArrayList<>(); transformData(list1, getVdeviationDataService.getVdeviationData(condition), new ArrayList() {{ - add(new Pass(overLimitInfo.getOverLimitRate().get(0).getVoltageDev(), EnumPass.MAX.getCode())); - }}, true); + add(new Pass(overLimitInfo.getOverLimitRate().get(0).getVoltageDev(), EnumPass.MAX_AND_MIN.getCode())); + }}, true, low); data.setList(list1); historyTableData.setData(data); break; @@ -1414,7 +1453,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, getFrequencyDataService.getFreqData(condition), new ArrayList() {{ add(new Pass(overLimitInfo.getOverLimitRate().get(0).getFreqDev(), EnumPass.MAX.getCode())); - }}, false); + }}, false, low); data.setList(list1); historyTableData.setData(data); break; @@ -1427,7 +1466,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, list2.subList(1, 2), new ArrayList() {{ add(new Pass(null)); - }}, false); + }}, false, low); data.setList(list1); historyTableData.setData(data); @@ -1437,7 +1476,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, list2.subList(2, 3), new ArrayList() {{ add(new Pass(null)); - }}, false); + }}, false, low); data.setList(list1); historyTableData.setData(data); @@ -1447,7 +1486,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, list2.subList(3, 4), new ArrayList() {{ add(new Pass(null)); - }}, false); + }}, false, low); data.setList(list1); historyTableData.setData(data); break; @@ -1460,7 +1499,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, listResult, new ArrayList() {{ add(new Pass(overLimitInfo.getOverLimitRate().get(0).getUbalance(), EnumPass.CP95.getCode())); - }}, false); + }}, false, low); data.setList(list1); historyTableData.setData(data); break; @@ -1477,7 +1516,7 @@ public class DeviceController { int m = inde[k] - 2; transformData(list1, list3, new ArrayList() {{ add(new Pass(overLimitInfo.getOverLimitRate().get(0).getVHarmList().get(m), EnumPass.CP95.getCode())); - }}, false); + }}, false, low); data.setList(list1); historyTableData.setData(data); } @@ -1495,7 +1534,7 @@ public class DeviceController { int m = inde[k] - 2; transformData(list1, list3, new ArrayList() {{ add(new Pass(overLimitInfo.getOverLimitRate().get(0).getIHarmList().get(m), EnumPass.CP95.getCode())); - }}, false); + }}, false, low); data.setList(list1); historyTableData.setData(data); } @@ -1514,7 +1553,7 @@ public class DeviceController { int m = inharm[k]; transformData(list1, list3, new ArrayList() {{ add(new Pass(overLimitInfo.getOverLimitRate().get(0).getInHarmList().get(m-1), EnumPass.CP95.getCode())); - }}, false); + }}, false, low); data.setList(list1); historyTableData.setData(data); } @@ -1528,7 +1567,7 @@ public class DeviceController { list1 = new ArrayList<>(); transformData(list1, getVoltage.getVoltageData(condition), new ArrayList() {{ add(new Pass(null)); - }}, true); + }}, true, low); data.setList(list1); historyTableData.setData(data); break; diff --git a/pqs9000/src/main/java/com/pqs9000/pojo/report/enumReport/EnumPass.java b/pqs9000/src/main/java/com/pqs9000/pojo/report/enumReport/EnumPass.java index 1df0150..5414c3b 100644 --- a/pqs9000/src/main/java/com/pqs9000/pojo/report/enumReport/EnumPass.java +++ b/pqs9000/src/main/java/com/pqs9000/pojo/report/enumReport/EnumPass.java @@ -5,6 +5,7 @@ public enum EnumPass { MIN(2, "使用最小值与国标限值比较,判断指标是否合格"), MEAN(3, "使用平均值与国标限值比较,判断指标是否合格"), CP95(4, "使用CP95值与国标限值比较,判断指标是否合格"), + MAX_AND_MIN(6, "使用最大值与最小值同国标限值比较,判断指标是否合格"), DEFAULT(5, "不作比较"), PASS(0, "合格"), FPYVALUE(98, "合格率限值"), diff --git a/pqs9000/src/main/java/com/pqs9000/task/HarmonicDetailTask.java b/pqs9000/src/main/java/com/pqs9000/task/HarmonicDetailTask.java index 2e5f4a8..c1dd0c4 100644 --- a/pqs9000/src/main/java/com/pqs9000/task/HarmonicDetailTask.java +++ b/pqs9000/src/main/java/com/pqs9000/task/HarmonicDetailTask.java @@ -28,7 +28,7 @@ public class HarmonicDetailTask { @Autowired private OverLimitMonitorService overLimitMonitorService; - @Scheduled(cron = "0 0 6 * * ?") + @Scheduled(cron = "0 0 8 * * ?") public void timer() { try { //获取前一天时间 diff --git a/pqs9000/src/main/java/com/pqs9000/util/ComplexHeadExcel.java b/pqs9000/src/main/java/com/pqs9000/util/ComplexHeadExcel.java index aadf7bb..12b8c0b 100644 --- a/pqs9000/src/main/java/com/pqs9000/util/ComplexHeadExcel.java +++ b/pqs9000/src/main/java/com/pqs9000/util/ComplexHeadExcel.java @@ -1212,31 +1212,31 @@ public class ComplexHeadExcel{ cell.setCellValue(list.get(i).getDiffHarmonicVoltageData()); cell = row.createCell(34); - cell.setCellValue(list.get(i).getOverFrequencyDeviationDay()); + cell.setCellValue(list.get(i).getOverThreeVoltageUnbalanceDay()); cell = row.createCell(35); - cell.setCellValue(list.get(i).getMaxFrequencyDeviationData()); + cell.setCellValue(list.get(i).getMaxThreeVoltageUnbalanceData()); cell = row.createCell(36); - cell.setCellValue(list.get(i).getLimitFrequencyDeviationData()); + cell.setCellValue(list.get(i).getLimitThreeVoltageUnbalanceData()); cell = row.createCell(37); - cell.setCellValue(list.get(i).getDiffFrequencyDeviationData()); + cell.setCellValue(list.get(i).getDiffThreeVoltageUnbalanceData()); cell = row.createCell(38); - cell.setCellValue(list.get(i).getOverInterharmonicsDay()); + cell.setCellValue(list.get(i).getOverFrequencyDeviationDay()); cell = row.createCell(39); - cell.setCellValue(list.get(i).getMaxInterharmonicsData()); + cell.setCellValue(list.get(i).getMaxFrequencyDeviationData()); cell = row.createCell(40); - cell.setCellValue(list.get(i).getLimitInterharmonicsData()); + cell.setCellValue(list.get(i).getLimitFrequencyDeviationData()); cell = row.createCell(41); - cell.setCellValue(list.get(i).getDiffInterharmonicsData()); + cell.setCellValue(list.get(i).getDiffFrequencyDeviationData()); cell = row.createCell(42); - cell.setCellValue(list.get(i).getOverThreeVoltageUnbalanceDay()); + cell.setCellValue(list.get(i).getOverInterharmonicsDay()); cell = row.createCell(43); - cell.setCellValue(list.get(i).getMaxThreeVoltageUnbalanceData()); + cell.setCellValue(list.get(i).getMaxInterharmonicsData()); cell = row.createCell(44); - cell.setCellValue(list.get(i).getLimitThreeVoltageUnbalanceData()); + cell.setCellValue(list.get(i).getLimitInterharmonicsData()); cell = row.createCell(45); - cell.setCellValue(list.get(i).getDiffThreeVoltageUnbalanceData()); + cell.setCellValue(list.get(i).getDiffInterharmonicsData()); cell = row.createCell(46); cell.setCellValue(list.get(i).getOverNegativeDay());