1.新增稳态区域报告功能

This commit is contained in:
2026-01-08 13:52:09 +08:00
parent ed029139d3
commit b3ab5d2587
19 changed files with 1715 additions and 89 deletions

View File

@@ -0,0 +1,44 @@
package com.njcn.harmonic.pojo.dto.report;
import lombok.Data;
import java.util.List;
/**
* @Author: cdf
* @CreateTime: 2026-01-06
* @Description: 公共台账
*/
@Data
public class CommReportLedgerDto {
private String deptName;
private String monitorName;
private List<MonitorLedgerInfo> monitorNameList;
@Data
static class MonitorLedgerInfo {
private String monitorName;
private String gdName;
private String bdName;
private String busBarName;
private String voltageLevel;
private String shortCapacity;
private String devCapacity;
private String dealCapacity;
}
}

View File

@@ -0,0 +1,34 @@
package com.njcn.harmonic.pojo.dto.report;
import lombok.Data;
/**
* @Author: cdf
* @CreateTime: 2026-01-07
* @Description:
*/
@Data
public class TableMergeRule {
/** 文档中表格的索引从0开始 */
private Integer tableIndex;
/** 要合并的列索引比如0=第0列 */
private Integer mergeColIndex;
/** 从第几行开始合并从0开始计数比如从第2行开始填2 */
private Integer startRow = 0;
/** 每多少行合并一次比如5=每5行合并一组 */
private Integer mergeRowsPerGroup;
/** 是否启用该规则 */
private boolean enable = true;
// 快捷构造方法(包含起始行)
public static TableMergeRule build(int tableIndex, int mergeColIndex, int startRow, int mergeRowsPerGroup) {
TableMergeRule rule = new TableMergeRule();
rule.setTableIndex(tableIndex);
rule.setMergeColIndex(mergeColIndex);
rule.setStartRow(startRow);
rule.setMergeRowsPerGroup(mergeRowsPerGroup);
rule.setEnable(true);
return rule;
}
}

View File

@@ -0,0 +1,20 @@
package com.njcn.harmonic.pojo.param.report;
import com.njcn.harmonic.pojo.dto.report.CommReportLedgerDto;
import lombok.Data;
/**
* @Author: cdf
* @CreateTime: 2026-01-06
* @Description: 谐波区域报告
*/
@Data
public class AreaHarmReportParam {
private String startTime;
private String endTime;
private String deptId;
}

View File

@@ -2,6 +2,9 @@ package com.njcn.harmonic.pojo.vo;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 类的介绍:
*
@@ -37,24 +40,44 @@ public class OverAreaLimitVO {
* 个数
*/
private Integer frequencyMonitorNumber = 0;
/**
* 超标监测点集合,区域报告使用
*/
private List<String> freqMonitorList = new ArrayList<>();;
/**
* 占比
*/
private Double frequencyBiLi = -1.0;
/**
* 日均超标占比
*/
private Double frequencyDayAvgBiLi = -1.0;
/**
* 平均超标天数
*/
private Double frequencyOverDayBiLi = -1.0;
//电压偏差超标情况
/**
* 个数
*/
private Integer voltageMonitorNumber = 0;
/**
* 超标监测点集合,区域报告使用
*/
private List<String> voltageMonitorList = new ArrayList<>();;
/**
* 占比
*/
private Double voltageBiLi = -1.0;
/**
* 日均超标占比
*/
private Double voltageDayAvgBiLi = -1.0;
/**
* 平均超标天数
*/
@@ -65,10 +88,19 @@ public class OverAreaLimitVO {
* 个数
*/
private Integer harmonicVoltageMonitorNumber = 0;
/**
* 超标监测点集合,区域报告使用
*/
private List<String> harmonicVoltageMonitorList = new ArrayList<>();
/**
* 占比
*/
private Double harmonicVoltageBiLi = -1.0;
/**
* 日均超标占比
*/
private Double harmonicVoltageDayAvgBiLi = -1.0;
/**
* 平均超标天数
*/
@@ -79,10 +111,18 @@ public class OverAreaLimitVO {
* 个数
*/
private Integer harmonicCurrentMonitorNumber = 0;
/**
* 超标监测点集合,区域报告使用
*/
private List<String> harmonicCurrentMonitorList = new ArrayList<>();;
/**
* 占比
*/
private Double harmonicCurrentBiLi = -1.0;
/**
* 日均超标占比
*/
private Double harmonicCurrentDayAvgBiLi = -1.0;
/**
* 平均超标天数
*/
@@ -93,10 +133,18 @@ public class OverAreaLimitVO {
* 个数
*/
private Integer threePhaseVoltageMonitorNumber = 0;
/**
* 超标监测点集合,区域报告使用
*/
private List<String> threePhaseVoltageMonitorList = new ArrayList<>();;
/**
* 占比
*/
private Double threePhaseVoltageBiLi = -1.0;
/**
* 日均超标占比
*/
private Double threePhaseVoltageDayAvgBiLi = -1.0;
/**
* 平均超标天数
*/
@@ -107,10 +155,18 @@ public class OverAreaLimitVO {
* 个数
*/
private Integer flickerMonitorNumber = 0;
/**
* 超标监测点集合,区域报告使用
*/
private List<String> flickerMonitorList = new ArrayList<>();;
/**
* 占比
*/
private Double flickerBiLi = -1.0;
/**
* 日均超标占比
*/
private Double flickerDayAvgBiLi = -1.0;
/**
* 平均超标天数
*/
@@ -125,6 +181,10 @@ public class OverAreaLimitVO {
* 占比
*/
private Double negativeBiLi = -1.0;
/**
* 日均超标占比
*/
private Double negativeDayAvgBiLi = -1.0;
/**
* 平均超标天数
*/
@@ -139,8 +199,48 @@ public class OverAreaLimitVO {
* 占比
*/
private Double interHarmonicBiLi = -1.0;
/**
* 日均超标占比
*/
private Double interHarmonicDayAvgBiLi = -1.0;
/**
* 平均超标天数
*/
private Double interHarmonicOverDayBiLi = -1.0;
private List<InnerHarmV> innerHarmVList;
private List<InnerHarmV> innerHarmIList;
@Data
public static class InnerHarmV{
private String name;
//谐波电压超标情况
/**
* 个数
*/
private Integer limitCount = 0;
/**
* 超标监测点集合,区域报告使用
*/
private List<String> limitIdList;
/**
* 占比
*/
private Double limitRate = -1.0;
/**
* 日均超标占比
*/
private Double dayAvg = -1.0;
/**
* 平均超标天数
*/
private Double dayLimit = -1.0;
}
}

View File

@@ -31,4 +31,7 @@ public class OverAreaVO extends DeviceInfoParam.BusinessParam{
@Range(min = 1,message = "条数必须大于0")
private Integer pageSize;
@ApiModelProperty("1.报告标志")
private Integer areaReportFlag;
}