From 339cf9c75ec5e2287d5b448a35dd8ed702b12635 Mon Sep 17 00:00:00 2001
From: hongawen <83944980@qq.com>
Date: Thu, 15 Dec 2022 10:36:12 +0800
Subject: [PATCH] =?UTF-8?q?=E5=90=88=E5=B9=B6=E4=BB=A3=E7=A0=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
pom.xml | 21 +-
.../pms/api/DistributionMonitorClient.java | 11 +-
.../njcn/device/pms/api/PwMonitorClient.java | 8 +
...tributionMonitorClientFallbackFactory.java | 6 +
.../PwMonitorClientFallbackFactory.java | 6 +
.../pms/pojo/dto/PmsTractionStationDTO.java | 12 +-
.../pms/pojo/param/SpecialAnalysisParam.java | 51 +
.../RStatTractionStationAccountDetailPO.java | 2 +-
.../pms/pojo/vo/SpecialAnalysisMonitorVO.java | 222 ++++
.../distribution/PwMonitorController.java | 20 +-
.../DistributionMonitorController.java | 20 +
.../SpecialAnalysisController.java | 122 +++
.../mapper/distribution/PwMonitorMapper.java | 10 +
.../distribution/mapping/PwMonitorMapper.xml | 89 ++
.../DistributionMonitorMapper.java | 2 +
.../majornetwork/SpecialAnalysisMapper.java | 60 ++
.../mapping/DistributionMonitorMapper.xml | 69 +-
.../RStatMeasurementAccountDetailMapper.xml | 6 +
.../mapping/SpecialAnalysisMapper.xml | 363 +++++++
.../mapping/TractionStationMapper.xml | 52 +-
.../distribution/IPwMonitorService.java | 7 +
.../impl/IPwMonitorServiceImpl.java | 16 +
.../IDistributionMonitorService.java | 8 +
.../majornetwork/SpecialAnalysisService.java | 51 +
.../impl/DistributionMonitorServiceImpl.java | 25 +
.../impl/SpecialAnalysisServiceImpl.java | 131 +++
pqs-event/event-api/pom.xml | 6 +-
.../com/njcn/event/pojo/vo/DeptLevelVO.java | 30 +
.../com/njcn/event/pojo/vo/RStatEventVO.java | 45 +
.../java/com/njcn/event/utils/DeptUtil.java | 83 ++
.../PwRStatEventOrgController.java | 2 +-
.../majornetwork/RStatEventOrgController.java | 2 +-
.../RStatSubstationController.java | 6 +-
.../majornetwork/RStatEventOrgMMapper.java | 15 +
.../majornetwork/RStatEventOrgQMapper.java | 15 +
.../majornetwork/RStatEventOrgYMapper.java | 15 +-
.../mapping/RStatEventOrgMMapper.xml | 35 +
.../mapping/RStatEventOrgQMapper.xml | 35 +
.../mapping/RStatEventOrgYMapper.xml | 35 +
.../Impl/RStatEventOrgMServiceImpl.java | 17 +-
.../Impl/RStatEventOrgQServiceImpl.java | 17 +-
.../Impl/RStatEventOrgYServiceImpl.java | 246 +++--
.../Impl/RmpEventDetailServiceImpl.java | 32 +-
...ticsOfTransientIndicatorssServiceImpl.java | 2 +-
.../majornetwork/RStatEventOrgYService.java | 11 +-
pqs-gateway/src/main/resources/bootstrap.yml | 17 +-
pqs-harmonic/harmonic-api/pom.xml | 5 +
.../pojo/param/PowerQualityParam.java | 7 +
.../pojo/po/RMpPartHarmonicDetailD.java | 985 ++++++++++++------
.../pojo/po/RMpRailwayTractionDetail.java | 52 +
.../pojo/po/RMpSurplusHarmonicDetailD.java | 295 ++++--
.../harmonic/pojo/po/RMpWpPowerDetailM.java | 14 +
.../harmonic/pojo/po/RMpWpPowerDetailQ.java | 15 +
.../harmonic/pojo/po/RMpWpPowerDetailY.java | 14 +
.../njcn/harmonic/pojo/vo/DeptLevelVO.java | 30 +
.../pojo/vo/RMpRailwayTractionDetailVO.java | 68 ++
.../harmonic/pojo/vo/RMpWpPowerDetailVO.java | 111 ++
.../harmonic/pojo/vo/RStatHarmonicVO.java | 42 +
.../harmonic/pojo/vo/ReportTemplateVO.java | 2 +
.../com/njcn/harmonic/utils/DeptUtil.java | 82 ++
.../PwRStatHarmonicOrgController.java | 4 +-
.../RStatHarmonicOrgController.java | 4 +-
.../specialanalysis/WindFarmController.java | 47 +-
.../mapper/StatHarmonicOrgMMapper.java | 12 +
.../mapper/StatHarmonicOrgQMapper.java | 13 +
.../mapper/StatHarmonicOrgYMapper.java | 13 +
.../mapper/mapping/ExcelRptTempMapper.xml | 3 +-
.../mapper/mapping/StatHarmonicOrgMMapper.xml | 34 +
.../mapper/mapping/StatHarmonicOrgQMapper.xml | 34 +
.../mapper/mapping/StatHarmonicOrgYMapper.xml | 35 +
.../RMpRailwayTractionDetailMapper.java | 16 +
.../RMpRailwayTractionDetailMapper.xml | 16 +
.../mapping/RMpWpPowerDetailMMapper.xml | 5 +
.../mapping/RMpWpPowerDetailQMapper.xml | 5 +
.../mapping/RMpWpPowerDetailYMapper.xml | 5 +
.../RStatHarmonicOrgYService.java | 22 +-
.../impl/RStatHarmonicOrgMServiceImpl.java | 9 +-
.../impl/RStatHarmonicOrgQServiceImpl.java | 134 ++-
.../impl/RStatHarmonicOrgYServiceImpl.java | 518 ++++++---
.../RMpWpPowerDetailMService.java | 17 +
.../impl/RMpEmissionMServiceImpl.java | 13 +-
.../impl/RMpInfluenceMServiceImpl.java | 15 +-
.../impl/RMpWpPowerDetailMServiceImpl.java | 153 ++-
.../RStatOrgPvPowerQualityServiceImpl.java | 13 +-
pqs-prepare/harmonic-prepare/pom.xml | 16 +
85 files changed, 4172 insertions(+), 762 deletions(-)
create mode 100644 pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/param/SpecialAnalysisParam.java
create mode 100644 pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/vo/SpecialAnalysisMonitorVO.java
create mode 100644 pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/controller/majornetwork/SpecialAnalysisController.java
create mode 100644 pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/SpecialAnalysisMapper.java
create mode 100644 pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/mapper/majornetwork/mapping/SpecialAnalysisMapper.xml
create mode 100644 pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/majornetwork/SpecialAnalysisService.java
create mode 100644 pqs-device/pms-device/pms-device-boot/src/main/java/com/njcn/device/pms/service/majornetwork/impl/SpecialAnalysisServiceImpl.java
create mode 100644 pqs-event/event-api/src/main/java/com/njcn/event/pojo/vo/DeptLevelVO.java
create mode 100644 pqs-event/event-api/src/main/java/com/njcn/event/pojo/vo/RStatEventVO.java
create mode 100644 pqs-event/event-api/src/main/java/com/njcn/event/utils/DeptUtil.java
create mode 100644 pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpRailwayTractionDetail.java
create mode 100644 pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/DeptLevelVO.java
create mode 100644 pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/RMpRailwayTractionDetailVO.java
create mode 100644 pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/RMpWpPowerDetailVO.java
create mode 100644 pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/RStatHarmonicVO.java
create mode 100644 pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/utils/DeptUtil.java
create mode 100644 pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/RMpRailwayTractionDetailMapper.java
create mode 100644 pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpRailwayTractionDetailMapper.xml
diff --git a/pom.xml b/pom.xml
index 56193c803..f1078fd1b 100644
--- a/pom.xml
+++ b/pom.xml
@@ -23,6 +23,7 @@
pqs-advance
pqs-prepare
pqs-process
+ pqs-algorithm
pom
灿能微服务生态系统
@@ -41,15 +42,17 @@
- 192.168.1.28
+ 192.168.1.31
- 192.168.1.29
+
+ 192.168.1.111
192.168.1.13
${middle.server.url}:18848
+
@@ -63,7 +66,7 @@
${docker.server.url}:8090
njcn
- install
+ test
1.8
8
8
@@ -78,7 +81,10 @@
2.1.3
1.2.5
8.0.19
+ 21.6.0.0
+ 21.1.0.0
3.4.2
+ 3.5.1
1.5.1-RELEASE
3.5.1
2.3
@@ -191,7 +197,7 @@
com.oracle.database.nls
orai18n
- 21.1.0.0
+ ${orai18n.version}
@@ -343,6 +349,13 @@
+
+
+ com.baomidou
+ dynamic-datasource-spring-boot-starter
+ ${dynamic-datasource.version}
+
+
diff --git a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/DistributionMonitorClient.java b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/DistributionMonitorClient.java
index ec94cfbd0..6389af7eb 100644
--- a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/DistributionMonitorClient.java
+++ b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/DistributionMonitorClient.java
@@ -51,6 +51,13 @@ public interface DistributionMonitorClient {
*/
@PostMapping("distributionMonitorList")
HttpResult> distributionMonitorList(@RequestBody List monitorIds);
-
-
+ /**
+ * @Description: 获取配网所有监测点数据
+ * @Param: []
+ * @return: com.njcn.common.pojo.response.HttpResult>
+ * @Author: clam
+ * @Date: 2022/12/13
+ */
+ @PostMapping("distributionMonitorListByCondition")
+ public HttpResult> distributionMonitorListByCondition(@RequestParam("orgId")String orgId,@RequestParam("monitorSort")String monitorSort);
}
diff --git a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/PwMonitorClient.java b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/PwMonitorClient.java
index 1e67fd790..89bb3f03c 100644
--- a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/PwMonitorClient.java
+++ b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/PwMonitorClient.java
@@ -31,4 +31,12 @@ public interface PwMonitorClient {
*/
@PostMapping("/getPwMonitorList")
HttpResult> getPwMonitorList(@RequestBody PwPmsMonitorParam pwPmsMonitorParam);
+
+ /**
+ * 获取分布式光伏配网所有监测点信息
+ * @param pwPmsMonitorParam 参数条件
+ * @return 配网所有监测点信息
+ */
+ @PostMapping("/getPwPhotovoltaicMonitorList")
+ HttpResult> getPwPhotovoltaicMonitorList(@RequestBody PwPmsMonitorParam pwPmsMonitorParam);
}
diff --git a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/fallback/DistributionMonitorClientFallbackFactory.java b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/fallback/DistributionMonitorClientFallbackFactory.java
index e8e2dc218..9845e9d4a 100644
--- a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/fallback/DistributionMonitorClientFallbackFactory.java
+++ b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/fallback/DistributionMonitorClientFallbackFactory.java
@@ -53,6 +53,12 @@ public class DistributionMonitorClientFallbackFactory implements FallbackFactory
throw new BusinessException(finalExceptionEnum);
}
+ @Override
+ public HttpResult> distributionMonitorListByCondition(@RequestParam("orgId")String orgId,@RequestParam("monitorSort")String monitorSort) {
+ log.error("{}异常,降级处理,异常为:{}", "获取配网所有监测点", throwable.toString());
+ throw new BusinessException(finalExceptionEnum);
+ }
+
};
}
diff --git a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/fallback/PwMonitorClientFallbackFactory.java b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/fallback/PwMonitorClientFallbackFactory.java
index 786d59feb..b0cebf43a 100644
--- a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/fallback/PwMonitorClientFallbackFactory.java
+++ b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/api/fallback/PwMonitorClientFallbackFactory.java
@@ -38,6 +38,12 @@ public class PwMonitorClientFallbackFactory implements FallbackFactory> getPwPhotovoltaicMonitorList(PwPmsMonitorParam pwPmsMonitorParam) {
+ log.error("{}异常,降级处理,异常为:{}", "获取分布式光伏配网所有监测点信息", throwable.toString());
+ throw new BusinessException(finalExceptionEnum);
+ }
};
}
}
diff --git a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/dto/PmsTractionStationDTO.java b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/dto/PmsTractionStationDTO.java
index 92fa6c93e..7c159b81c 100644
--- a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/dto/PmsTractionStationDTO.java
+++ b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/dto/PmsTractionStationDTO.java
@@ -3,7 +3,7 @@ package com.njcn.device.pms.pojo.dto;
import lombok.Data;
import java.io.Serializable;
-import java.util.Date;
+import java.time.LocalDateTime;
/**
* (PmsTractionStation)实体类
@@ -22,6 +22,10 @@ public class PmsTractionStationDTO implements Serializable {
* 牵引站名称
*/
private String name;
+ /**
+ * 铁路类型
+ */
+ private Integer railwayType;
/**
* 组织机构名称
*/
@@ -77,7 +81,7 @@ public class PmsTractionStationDTO implements Serializable {
/**
* 创建日期
*/
- private Date createdDate;
+ private LocalDateTime createdDate;
/**
* 用户标签
*/
@@ -97,7 +101,7 @@ public class PmsTractionStationDTO implements Serializable {
/**
* 创建时间
*/
- private Date createTime;
+ private LocalDateTime createTime;
/**
* 更新用户
*/
@@ -105,7 +109,7 @@ public class PmsTractionStationDTO implements Serializable {
/**
* 更新时间
*/
- private Date updateTime;
+ private LocalDateTime updateTime;
}
diff --git a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/param/SpecialAnalysisParam.java b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/param/SpecialAnalysisParam.java
new file mode 100644
index 000000000..f60f7414a
--- /dev/null
+++ b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/param/SpecialAnalysisParam.java
@@ -0,0 +1,51 @@
+package com.njcn.device.pms.pojo.param;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+/**
+ * <专项分析-入参>
+ *
+ * @author wr
+ * @createTime: 2022-12-01
+ */
+@Data
+public class SpecialAnalysisParam {
+
+// @ApiModelProperty(name = "id", value = "按单位统计,id为单位索引")
+// private String id;
+
+ @ApiModelProperty(name = "type", value = "类型(0-风电场 1-光伏电站 2冶炼负荷)")
+ private Integer type;
+
+ /**
+ * 数据传参
+ */
+ @Data
+ public static class CompareDateParam {
+
+ @ApiModelProperty(name = "year", value = "年份")
+ private String year;
+
+ @ApiModelProperty(name = "month", value = "月份")
+ private List month;
+ }
+ /**
+ * 数据传参
+ */
+ @Data
+ public static class CompareParam {
+
+ @ApiModelProperty(name = "powerVoltageLevel", value = "电压等级")
+ private List powerVoltageLevel;
+
+ @ApiModelProperty(name = "year", value = "年份")
+ private String year;
+
+ @ApiModelProperty(name = "month", value = "月份")
+ private List month;
+ }
+
+}
diff --git a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/po/RStatTractionStationAccountDetailPO.java b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/po/RStatTractionStationAccountDetailPO.java
index b649697a9..6ab225ed3 100644
--- a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/po/RStatTractionStationAccountDetailPO.java
+++ b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/po/RStatTractionStationAccountDetailPO.java
@@ -7,7 +7,7 @@ import java.io.Serializable;
import java.util.Date;
/**
- * 牵引站台账数据质量问题-核查详情(RStatTractionStationAccountDetail)实体类
+ * 台账数据质量问题-核查详情(RStatTractionStationAccountDetail)实体类
*
* @author yzh
* @since 2022-11-09 09:42:42
diff --git a/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/vo/SpecialAnalysisMonitorVO.java b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/vo/SpecialAnalysisMonitorVO.java
new file mode 100644
index 000000000..eec279fb4
--- /dev/null
+++ b/pqs-device/pms-device/pms-device-api/src/main/java/com/njcn/device/pms/pojo/vo/SpecialAnalysisMonitorVO.java
@@ -0,0 +1,222 @@
+package com.njcn.device.pms.pojo.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+import java.util.Map;
+
+/**
+ * 专项分析
+ * @author wr
+ */
+@Data
+public class SpecialAnalysisMonitorVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ /**
+ * 监测点信息
+ */
+ @ApiModelProperty(name = "specialAnalysisVOList", value = "监测点信息")
+ List specialAnalysisVOList;
+
+ /**
+ * 电压等级分布(监测点)
+ */
+ @ApiModelProperty(name = "voltageLevelMap", value = "电压等级分布(监测点)")
+ List
*
* @author rui.wu
- * @since 2022-10-24
+ * @since 2022-10-2433333333333
*/
@Data
@EqualsAndHashCode(callSuper = false)
@@ -25,356 +24,704 @@ import java.time.LocalDate;
@ApiModel(value="RMpPartHarmonicDetailD对象", description="")
public class RMpPartHarmonicDetailD implements Serializable {
- private static final long serialVersionUID = 1L;
-
- @ApiModelProperty(value = "监测点ID")
- @TableId(value = "measurement_point_id", type = IdType.ASSIGN_ID)
+ /**
+ * 监测点ID
+ */
+ @MppMultiId(value = "measurement_point_id")
private String measurementPointId;
- @ApiModelProperty(value = "生成数据的时间,每月统计一次")
+ /**
+ * 生成数据的时间,每月统计一次
+ */
+ @MppMultiId(value = "data_date")
private LocalDate dataDate;
- @ApiModelProperty(value = "稳态指标是否超标(0:否 1:是)")
+ /**
+ * 稳态指标是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_harmonic")
private Integer isHarmonic;
- @ApiModelProperty(value = "频率偏差是否超标(0:否 1:是)")
+ /**
+ * 频率偏差是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_freq")
private Integer isFreq;
- @ApiModelProperty(value = "频率偏差超标次数")
+ /**
+ * 频率偏差超标次数
+ */
+ @TableField(value = "freq_times")
private Integer freqTimes;
- @ApiModelProperty(value = "电压上偏差是否超标(0:否 1:是)")
+ /**
+ * 电压上偏差是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_dev_up")
private Integer isVDevUp;
- @ApiModelProperty(value = "电压下偏差超是否超标(0:否 1:是)")
+ /**
+ * 电压下偏差超是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_dev_low")
private Integer isVDevLow;
- @ApiModelProperty(value = "电压偏差是否超标(0:否 1:是)")
+ /**
+ * 电压偏差是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_dev")
private Integer isVDev;
- @ApiModelProperty(value = "电压总谐波畸变率是否超标(0:否 1:是)")
+ /**
+ * 电压总谐波畸变率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_thd")
private Integer isVThd;
- @ApiModelProperty(value = "电压偏差超标次数")
+ /**
+ * 电压偏差超标次数
+ */
+ @TableField(value = "v_dev_times")
private Integer vDevTimes;
- @ApiModelProperty(value = "谐波电压是否超标(0:否 1:是)")
+ /**
+ * 谐波电压是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v")
private Integer isV;
- @ApiModelProperty(value = "谐波电压超标次数")
+ /**
+ * 谐波电压超标次数
+ */
+ @TableField(value = "v_times")
private Integer vTimes;
- @ApiModelProperty(value = "谐波电流是否超标(0:否 1:是)")
+ /**
+ * 谐波电流是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i")
private Integer isI;
- @ApiModelProperty(value = "谐波电流超标次数")
+ /**
+ * 谐波电流超标次数
+ */
+ @TableField(value = "i_times")
private Integer iTimes;
- @ApiModelProperty(value = "2次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_2;
-
- @ApiModelProperty(value = "3次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_3;
-
- @ApiModelProperty(value = "4次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_4;
-
- @ApiModelProperty(value = "5次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_5;
-
- @ApiModelProperty(value = "6次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_6;
-
- @ApiModelProperty(value = "7次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_7;
-
- @ApiModelProperty(value = "8次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_8;
-
- @ApiModelProperty(value = "9次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_9;
-
- @ApiModelProperty(value = "10次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_10;
-
- @ApiModelProperty(value = "11次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_11;
-
- @ApiModelProperty(value = "12次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_12;
-
- @ApiModelProperty(value = "13次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_13;
-
- @ApiModelProperty(value = "14次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_14;
-
- @ApiModelProperty(value = "15次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_15;
-
- @ApiModelProperty(value = "16次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_16;
-
- @ApiModelProperty(value = "17次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_17;
-
- @ApiModelProperty(value = "18次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_18;
-
- @ApiModelProperty(value = "19次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_19;
-
- @ApiModelProperty(value = "20次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_20;
-
- @ApiModelProperty(value = "21次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_21;
-
- @ApiModelProperty(value = "22次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_22;
-
- @ApiModelProperty(value = "23次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_23;
-
- @ApiModelProperty(value = "24次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_24;
-
- @ApiModelProperty(value = "25次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_25;
-
- @ApiModelProperty(value = "26次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_26;
-
- @ApiModelProperty(value = "27次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_27;
-
- @ApiModelProperty(value = "28次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_28;
-
- @ApiModelProperty(value = "29次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_29;
-
- @ApiModelProperty(value = "30次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_30;
-
- @ApiModelProperty(value = "31次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_31;
-
- @ApiModelProperty(value = "32次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_32;
-
- @ApiModelProperty(value = "33次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_33;
-
- @ApiModelProperty(value = "34次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_34;
-
- @ApiModelProperty(value = "35次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_35;
-
- @ApiModelProperty(value = "36次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_36;
-
- @ApiModelProperty(value = "37次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_37;
-
- @ApiModelProperty(value = "38次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_38;
-
- @ApiModelProperty(value = "39次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_39;
-
- @ApiModelProperty(value = "40次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_40;
-
- @ApiModelProperty(value = "41次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_41;
-
- @ApiModelProperty(value = "42次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_42;
-
- @ApiModelProperty(value = "43次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_43;
-
- @ApiModelProperty(value = "44次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_44;
-
- @ApiModelProperty(value = "45次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_45;
-
- @ApiModelProperty(value = "46次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_46;
-
- @ApiModelProperty(value = "47次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_47;
-
- @ApiModelProperty(value = "48次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_48;
-
- @ApiModelProperty(value = "49次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_49;
-
- @ApiModelProperty(value = "50次谐波电压含有率是否超标(0:否 1:是)")
- private Integer is_v_50;
-
- @ApiModelProperty(value = "2次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_2;
-
- @ApiModelProperty(value = "3次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_3;
-
- @ApiModelProperty(value = "4次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_4;
-
- @ApiModelProperty(value = "5次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_5;
-
- @ApiModelProperty(value = "6次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_6;
-
- @ApiModelProperty(value = "7次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_7;
-
- @ApiModelProperty(value = "8次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_8;
-
- @ApiModelProperty(value = "9次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_9;
-
- @ApiModelProperty(value = "10次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_10;
-
- @ApiModelProperty(value = "11次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_11;
-
- @ApiModelProperty(value = "12次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_12;
-
- @ApiModelProperty(value = "13次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_13;
-
- @ApiModelProperty(value = "14次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_14;
-
- @ApiModelProperty(value = "15次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_15;
-
- @ApiModelProperty(value = "16次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_16;
-
- @ApiModelProperty(value = "17次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_17;
-
- @ApiModelProperty(value = "18次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_18;
-
- @ApiModelProperty(value = "19次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_19;
-
- @ApiModelProperty(value = "20次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_20;
-
- @ApiModelProperty(value = "21次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_21;
-
- @ApiModelProperty(value = "22次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_22;
-
- @ApiModelProperty(value = "23次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_23;
-
- @ApiModelProperty(value = "24次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_24;
-
- @ApiModelProperty(value = "25次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_25;
-
- @ApiModelProperty(value = "26次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_26;
-
- @ApiModelProperty(value = "27次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_27;
-
- @ApiModelProperty(value = "28次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_28;
-
- @ApiModelProperty(value = "29次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_29;
-
- @ApiModelProperty(value = "30次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_30;
-
- @ApiModelProperty(value = "31次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_31;
-
- @ApiModelProperty(value = "32次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_32;
-
- @ApiModelProperty(value = "33次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_33;
-
- @ApiModelProperty(value = "34次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_34;
-
- @ApiModelProperty(value = "35次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_35;
-
- @ApiModelProperty(value = "36次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_36;
-
- @ApiModelProperty(value = "37次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_37;
-
- @ApiModelProperty(value = "38次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_38;
-
- @ApiModelProperty(value = "39次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_39;
-
- @ApiModelProperty(value = "40次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_40;
-
- @ApiModelProperty(value = "41次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_41;
-
- @ApiModelProperty(value = "42次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_42;
-
- @ApiModelProperty(value = "43次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_43;
-
- @ApiModelProperty(value = "44次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_44;
-
- @ApiModelProperty(value = "45次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_45;
-
- @ApiModelProperty(value = "46次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_46;
-
- @ApiModelProperty(value = "47次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_47;
-
- @ApiModelProperty(value = "48次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_48;
-
- @ApiModelProperty(value = "49次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_49;
-
- @ApiModelProperty(value = "50次谐波电流含有率是否超标(0:否 1:是)")
- private Integer is_i_50;
-
- @ApiModelProperty(value = "三相电压不平衡度是否超标(0:否 1:是)")
+ /**
+ * 2次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_2")
+ private Integer isV2;
+
+ /**
+ * 3次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_3")
+ private Integer isV3;
+
+ /**
+ * 4次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_4")
+ private Integer isV4;
+
+ /**
+ * 5次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_5")
+ private Integer isV5;
+
+ /**
+ * 6次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_6")
+ private Integer isV6;
+
+ /**
+ * 7次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_7")
+ private Integer isV7;
+
+ /**
+ * 8次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_8")
+ private Integer isV8;
+
+ /**
+ * 9次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_9")
+ private Integer isV9;
+
+ /**
+ * 10次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_10")
+ private Integer isV10;
+
+ /**
+ * 11次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_11")
+ private Integer isV11;
+
+ /**
+ * 12次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_12")
+ private Integer isV12;
+
+ /**
+ * 13次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_13")
+ private Integer isV13;
+
+ /**
+ * 14次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_14")
+ private Integer isV14;
+
+ /**
+ * 15次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_15")
+ private Integer isV15;
+
+ /**
+ * 16次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_16")
+ private Integer isV16;
+
+ /**
+ * 17次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_17")
+ private Integer isV17;
+
+ /**
+ * 18次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_18")
+ private Integer isV18;
+
+ /**
+ * 19次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_19")
+ private Integer isV19;
+
+ /**
+ * 20次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_20")
+ private Integer isV20;
+
+ /**
+ * 21次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_21")
+ private Integer isV21;
+
+ /**
+ * 22次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_22")
+ private Integer isV22;
+
+ /**
+ * 23次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_23")
+ private Integer isV23;
+
+ /**
+ * 24次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_24")
+ private Integer isV24;
+
+ /**
+ * 25次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_25")
+ private Integer isV25;
+
+ /**
+ * 26次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_26")
+ private Integer isV26;
+
+ /**
+ * 27次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_27")
+ private Integer isV27;
+
+ /**
+ * 28次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_28")
+ private Integer isV28;
+
+ /**
+ * 29次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_29")
+ private Integer isV29;
+
+ /**
+ * 30次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_30")
+ private Integer isV30;
+
+ /**
+ * 31次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_31")
+ private Integer isV31;
+
+ /**
+ * 32次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_32")
+ private Integer isV32;
+
+ /**
+ * 33次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_33")
+ private Integer isV33;
+
+ /**
+ * 34次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_34")
+ private Integer isV34;
+
+ /**
+ * 35次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_35")
+ private Integer isV35;
+
+ /**
+ * 36次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_36")
+ private Integer isV36;
+
+ /**
+ * 37次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_37")
+ private Integer isV37;
+
+ /**
+ * 38次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_38")
+ private Integer isV38;
+
+ /**
+ * 39次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_39")
+ private Integer isV39;
+
+ /**
+ * 40次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_40")
+ private Integer isV40;
+
+ /**
+ * 41次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_41")
+ private Integer isV41;
+
+ /**
+ * 42次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_42")
+ private Integer isV42;
+
+ /**
+ * 43次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_43")
+ private Integer isV43;
+
+ /**
+ * 44次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_44")
+ private Integer isV44;
+
+ /**
+ * 45次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_45")
+ private Integer isV45;
+
+ /**
+ * 46次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_46")
+ private Integer isV46;
+
+ /**
+ * 47次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_47")
+ private Integer isV47;
+
+ /**
+ * 48次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_48")
+ private Integer isV48;
+
+ /**
+ * 49次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_49")
+ private Integer isV49;
+
+ /**
+ * 50次谐波电压含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_v_50")
+ private Integer isV50;
+
+ /**
+ * 2次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_2")
+ private Integer isI2;
+
+ /**
+ * 3次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_3")
+ private Integer isI3;
+
+ /**
+ * 4次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_4")
+ private Integer isI4;
+
+ /**
+ * 5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_5")
+ private Integer isI5;
+
+ /**
+ * 6次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_6")
+ private Integer isI6;
+
+ /**
+ * 7次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_7")
+ private Integer isI7;
+
+ /**
+ * 8次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_8")
+ private Integer isI8;
+
+ /**
+ * 9次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_9")
+ private Integer isI9;
+
+ /**
+ * 10次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_10")
+ private Integer isI10;
+
+ /**
+ * 11次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_11")
+ private Integer isI11;
+
+ /**
+ * 12次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_12")
+ private Integer isI12;
+
+ /**
+ * 13次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_13")
+ private Integer isI13;
+
+ /**
+ * 14次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_14")
+ private Integer isI14;
+
+ /**
+ * 15次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_15")
+ private Integer isI15;
+
+ /**
+ * 16次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_16")
+ private Integer isI16;
+
+ /**
+ * 17次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_17")
+ private Integer isI17;
+
+ /**
+ * 18次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_18")
+ private Integer isI18;
+
+ /**
+ * 19次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_19")
+ private Integer isI19;
+
+ /**
+ * 20次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_20")
+ private Integer isI20;
+
+ /**
+ * 21次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_21")
+ private Integer isI21;
+
+ /**
+ * 22次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_22")
+ private Integer isI22;
+
+ /**
+ * 23次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_23")
+ private Integer isI23;
+
+ /**
+ * 24次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_24")
+ private Integer isI24;
+
+ /**
+ * 25次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_25")
+ private Integer isI25;
+
+ /**
+ * 26次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_26")
+ private Integer isI26;
+
+ /**
+ * 27次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_27")
+ private Integer isI27;
+
+ /**
+ * 28次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_28")
+ private Integer isI28;
+
+ /**
+ * 29次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_29")
+ private Integer isI29;
+
+ /**
+ * 30次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_30")
+ private Integer isI30;
+
+ /**
+ * 31次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_31")
+ private Integer isI31;
+
+ /**
+ * 32次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_32")
+ private Integer isI32;
+
+ /**
+ * 33次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_33")
+ private Integer isI33;
+
+ /**
+ * 34次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_34")
+ private Integer isI34;
+
+ /**
+ * 35次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_35")
+ private Integer isI35;
+
+ /**
+ * 36次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_36")
+ private Integer isI36;
+
+ /**
+ * 37次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_37")
+ private Integer isI37;
+
+ /**
+ * 38次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_38")
+ private Integer isI38;
+
+ /**
+ * 39次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_39")
+ private Integer isI39;
+
+ /**
+ * 40次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_40")
+ private Integer isI40;
+
+ /**
+ * 41次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_41")
+ private Integer isI41;
+
+ /**
+ * 42次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_42")
+ private Integer isI42;
+
+ /**
+ * 43次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_43")
+ private Integer isI43;
+
+ /**
+ * 44次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_44")
+ private Integer isI44;
+
+ /**
+ * 45次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_45")
+ private Integer isI45;
+
+ /**
+ * 46次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_46")
+ private Integer isI46;
+
+ /**
+ * 47次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_47")
+ private Integer isI47;
+
+ /**
+ * 48次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_48")
+ private Integer isI48;
+
+ /**
+ * 49次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_49")
+ private Integer isI49;
+
+ /**
+ * 50次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_50")
+ private Integer isI50;
+
+ /**
+ * 三相电压不平衡度是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_unbalance")
private Integer isUnbalance;
- @ApiModelProperty(value = "负序电流是否超标(0:否 1:是)")
+ /**
+ * 负序电流是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_i_neg")
private Integer isINeg;
- @ApiModelProperty(value = "三相电压不平衡度超标次数")
+ /**
+ * 三相电压不平衡度超标次数
+ */
+ @TableField(value = "unbalance_times")
private Integer unbalanceTimes;
- @ApiModelProperty(value = "负序电流超标次数")
+ /**
+ * 负序电流超标次数
+ */
+ @TableField(value = "i_neg_times")
private Integer iNegTimes;
+ @TableField(exist = false)
+ private static final long serialVersionUID = 1L;
+
}
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpRailwayTractionDetail.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpRailwayTractionDetail.java
new file mode 100644
index 000000000..5da1b4e64
--- /dev/null
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpRailwayTractionDetail.java
@@ -0,0 +1,52 @@
+package com.njcn.harmonic.pojo.po;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.annotation.IdType;
+import java.time.LocalDate;
+import com.baomidou.mybatisplus.annotation.TableId;
+import java.io.Serializable;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+/**
+ *
+ * 电气化铁路_详细信息表(专项分析)
+ *
+ *
+ * @author wr
+ * @since 2022-12-09
+ */
+@Data
+@EqualsAndHashCode(callSuper = false)
+@TableName("r_mp_railway_traction_detail")
+@ApiModel(value="RMpRailwayTractionDetail对象", description="电气化铁路_详细信息表(专项分析)")
+public class RMpRailwayTractionDetail implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "牵引站id")
+ @TableId(value = "traction_station_id", type = IdType.ASSIGN_ID)
+ private String tractionStationId;
+
+ @ApiModelProperty(value = "统计时间")
+ private LocalDate dataDate;
+
+ @ApiModelProperty(value = "有功功率")
+ private Float activePowerTimes;
+
+ @ApiModelProperty(value = "谐波电压")
+ private Integer vTimes;
+
+ @ApiModelProperty(value = "谐波电流")
+ private Integer iTimes;
+
+ @ApiModelProperty(value = "电压不平衡")
+ private Integer unbalanceTimes;
+
+ @ApiModelProperty(value = "负序电流")
+ private Integer iNegTimes;
+
+
+}
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpSurplusHarmonicDetailD.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpSurplusHarmonicDetailD.java
index b0cf41b74..ce6ee70e3 100644
--- a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpSurplusHarmonicDetailD.java
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpSurplusHarmonicDetailD.java
@@ -1,15 +1,15 @@
package com.njcn.harmonic.pojo.po;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
-import com.baomidou.mybatisplus.annotation.IdType;
-import java.time.LocalDate;
-import com.baomidou.mybatisplus.annotation.TableId;
-import java.io.Serializable;
+import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
+import java.io.Serializable;
+import java.time.LocalDate;
+
/**
*
*
@@ -24,176 +24,343 @@ import lombok.EqualsAndHashCode;
@ApiModel(value="RMpSurplusHarmonicDetailD对象", description="")
public class RMpSurplusHarmonicDetailD implements Serializable {
- private static final long serialVersionUID = 1L;
-
- @ApiModelProperty(value = "监测点ID")
- @TableId(value = "measurement_point_id", type = IdType.ASSIGN_ID)
+ /**
+ * 监测点ID
+ */
+ @MppMultiId(value = "measurement_point_id")
private String measurementPointId;
- @ApiModelProperty(value = "生成数据的时间,每月统计一次")
+ /**
+ * 生成数据的时间,每月统计一次
+ */
+ @MppMultiId(value = "data_date")
private LocalDate dataDate;
- @ApiModelProperty(value = "闪变发生次数")
+ /**
+ * 闪变发生次数
+ */
+ @TableField(value = "flicker_times")
private Integer flickerTimes;
- @ApiModelProperty(value = "闪变是否超标(0:否 1:是)")
+ /**
+ * 闪变是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_flicker")
private Integer isFlicker;
- @ApiModelProperty(value = "间谐波电压超标次数")
+ /**
+ * 间谐波电压超标次数
+ */
+ @TableField(value = "inuharm_times")
private Integer inuharmTimes;
- @ApiModelProperty(value = "间谐波电压是否超标(0:否 1:是)")
+ /**
+ * 间谐波电压是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm")
private Integer isInuharm;
- @ApiModelProperty(value = "0.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 0.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_1")
private Integer isInuharm1;
- @ApiModelProperty(value = "1.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 1.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_2")
private Integer isInuharm2;
- @ApiModelProperty(value = "2.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 2.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_3")
private Integer isInuharm3;
- @ApiModelProperty(value = "3.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 3.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_4")
private Integer isInuharm4;
- @ApiModelProperty(value = "4.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 4.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_5")
private Integer isInuharm5;
- @ApiModelProperty(value = "5.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 5.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_6")
private Integer isInuharm6;
- @ApiModelProperty(value = "6.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 6.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_7")
private Integer isInuharm7;
- @ApiModelProperty(value = "7.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 7.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_8")
private Integer isInuharm8;
- @ApiModelProperty(value = "8.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 8.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_9")
private Integer isInuharm9;
- @ApiModelProperty(value = "9.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 9.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_10")
private Integer isInuharm10;
- @ApiModelProperty(value = "10.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 10.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_11")
private Integer isInuharm11;
- @ApiModelProperty(value = "11.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 11.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_12")
private Integer isInuharm12;
- @ApiModelProperty(value = "12.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 12.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_13")
private Integer isInuharm13;
- @ApiModelProperty(value = "13.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 13.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_14")
private Integer isInuharm14;
- @ApiModelProperty(value = "14.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 14.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_15")
private Integer isInuharm15;
- @ApiModelProperty(value = "15.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 15.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_16")
private Integer isInuharm16;
- @ApiModelProperty(value = "16.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 16.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_17")
private Integer isInuharm17;
- @ApiModelProperty(value = "17.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 17.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_18")
private Integer isInuharm18;
- @ApiModelProperty(value = "18.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 18.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_19")
private Integer isInuharm19;
- @ApiModelProperty(value = "19.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 19.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_20")
private Integer isInuharm20;
- @ApiModelProperty(value = "20.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 20.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_21")
private Integer isInuharm21;
- @ApiModelProperty(value = "21.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 21.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_22")
private Integer isInuharm22;
- @ApiModelProperty(value = "22.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 22.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_23")
private Integer isInuharm23;
- @ApiModelProperty(value = "23.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 23.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_24")
private Integer isInuharm24;
- @ApiModelProperty(value = "24.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 24.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_25")
private Integer isInuharm25;
- @ApiModelProperty(value = "25.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 25.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_26")
private Integer isInuharm26;
- @ApiModelProperty(value = "26.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 26.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_27")
private Integer isInuharm27;
- @ApiModelProperty(value = "27.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 27.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_28")
private Integer isInuharm28;
- @ApiModelProperty(value = "28.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 28.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_29")
private Integer isInuharm29;
- @ApiModelProperty(value = "29.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 29.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_30")
private Integer isInuharm30;
- @ApiModelProperty(value = "30.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 30.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_31")
private Integer isInuharm31;
- @ApiModelProperty(value = "31.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 31.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_32")
private Integer isInuharm32;
- @ApiModelProperty(value = "32.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 32.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_33")
private Integer isInuharm33;
- @ApiModelProperty(value = "33.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 33.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_34")
private Integer isInuharm34;
- @ApiModelProperty(value = "34.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 34.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_35")
private Integer isInuharm35;
- @ApiModelProperty(value = "35.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 35.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_36")
private Integer isInuharm36;
- @ApiModelProperty(value = "36.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 36.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_37")
private Integer isInuharm37;
- @ApiModelProperty(value = "37.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 37.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_38")
private Integer isInuharm38;
- @ApiModelProperty(value = "38.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 38.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_39")
private Integer isInuharm39;
- @ApiModelProperty(value = "39.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 39.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_40")
private Integer isInuharm40;
- @ApiModelProperty(value = "40.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 40.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_41")
private Integer isInuharm41;
- @ApiModelProperty(value = "41.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 41.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_42")
private Integer isInuharm42;
- @ApiModelProperty(value = "42.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 42.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_43")
private Integer isInuharm43;
- @ApiModelProperty(value = "43.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 43.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_44")
private Integer isInuharm44;
- @ApiModelProperty(value = "44.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 44.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_45")
private Integer isInuharm45;
- @ApiModelProperty(value = "45.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 45.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_46")
private Integer isInuharm46;
- @ApiModelProperty(value = "46.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 46.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_47")
private Integer isInuharm47;
- @ApiModelProperty(value = "47.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 47.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_48")
private Integer isInuharm48;
- @ApiModelProperty(value = "48.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 48.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_49")
private Integer isInuharm49;
- @ApiModelProperty(value = "49.5次谐波电流含有率是否超标(0:否 1:是)")
+ /**
+ * 49.5次谐波电流含有率是否超标(0:否 1:是)
+ */
+ @TableField(value = "is_inuharm_50")
private Integer isInuharm50;
+ @TableField(exist = false)
+ private static final long serialVersionUID = 1L;
}
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpWpPowerDetailM.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpWpPowerDetailM.java
index 4ac89705e..58abf32c0 100644
--- a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpWpPowerDetailM.java
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpWpPowerDetailM.java
@@ -34,6 +34,9 @@ public class RMpWpPowerDetailM implements Serializable {
@ApiModelProperty(value = "统计时间")
private LocalDate dataDate;
+ @ApiModelProperty(value = "监测点标签")
+ private String monitorTag;
+
@ApiModelProperty(value = "负载率(平均值)")
private Float loadRateAvg;
@@ -96,6 +99,17 @@ public class RMpWpPowerDetailM implements Serializable {
@ApiModelProperty(value = "B相有功功率平均值")
private Float bpActivePowerAvg;
+ @ApiModelProperty(value = "C相有功功率95值")
+ @TableField(value = "cp_active_power_99")
+ private Float cpActivePower95;
+
+ @ApiModelProperty(value = "C相有功功率99值")
+ @TableField(value = "cp_active_power_99")
+ private Float cpActivePower99;
+
+ @ApiModelProperty(value = "C相有功功率平均值")
+ private Float cpActivePowerAvg;
+
@ApiModelProperty(value = "A相基波电压")
private Float apFundamentalVoltage;
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpWpPowerDetailQ.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpWpPowerDetailQ.java
index 69a8edd07..3b2f63950 100644
--- a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpWpPowerDetailQ.java
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpWpPowerDetailQ.java
@@ -31,6 +31,10 @@ public class RMpWpPowerDetailQ implements Serializable {
@TableId(value = "measurement_point_id", type = IdType.ASSIGN_ID)
private String measurementPointId;
+
+ @ApiModelProperty(value = "监测点标签")
+ private String monitorTag;
+
@ApiModelProperty(value = "统计时间")
private LocalDate dataDate;
@@ -96,6 +100,17 @@ public class RMpWpPowerDetailQ implements Serializable {
@ApiModelProperty(value = "B相有功功率平均值")
private Float bpActivePowerAvg;
+ @ApiModelProperty(value = "C相有功功率95值")
+ @TableField(value = "cp_active_power_99")
+ private Float cpActivePower95;
+
+ @ApiModelProperty(value = "C相有功功率99值")
+ @TableField(value = "cp_active_power_99")
+ private Float cpActivePower99;
+
+ @ApiModelProperty(value = "C相有功功率平均值")
+ private Float cpActivePowerAvg;
+
@ApiModelProperty(value = "A相基波电压")
private Float apFundamentalVoltage;
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpWpPowerDetailY.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpWpPowerDetailY.java
index 1cea51d21..00213d02b 100644
--- a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpWpPowerDetailY.java
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/RMpWpPowerDetailY.java
@@ -34,6 +34,9 @@ public class RMpWpPowerDetailY implements Serializable {
@ApiModelProperty(value = "统计时间")
private LocalDate dataDate;
+ @ApiModelProperty(value = "监测点标签")
+ private String monitorTag;
+
@ApiModelProperty(value = "负载率(平均值)")
private Float loadRateAvg;
@@ -96,6 +99,17 @@ public class RMpWpPowerDetailY implements Serializable {
@ApiModelProperty(value = "B相有功功率平均值")
private Float bpActivePowerAvg;
+ @ApiModelProperty(value = "C相有功功率95值")
+ @TableField(value = "cp_active_power_99")
+ private Float cpActivePower95;
+
+ @ApiModelProperty(value = "C相有功功率99值")
+ @TableField(value = "cp_active_power_99")
+ private Float cpActivePower99;
+
+ @ApiModelProperty(value = "C相有功功率平均值")
+ private Float cpActivePowerAvg;
+
@ApiModelProperty(value = "A相基波电压")
private Float apFundamentalVoltage;
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/DeptLevelVO.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/DeptLevelVO.java
new file mode 100644
index 000000000..8c1f734ff
--- /dev/null
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/DeptLevelVO.java
@@ -0,0 +1,30 @@
+package com.njcn.harmonic.pojo.vo;
+
+import lombok.Data;
+
+import java.io.Serializable;
+import java.util.List;
+
+/**
+ * <功能描述>
+ *
+ * @author wr
+ * @createTime: 2022-12-13
+ */
+@Data
+public class DeptLevelVO implements Serializable {
+
+ private String id;
+ private String pid;
+ private String pids;
+ private String name;
+ private String code;
+ private Integer specialType;
+ private String area;
+ private String remark;
+ private Integer sort;
+ private Integer type;
+
+ //子孙部门
+ List deptList;
+}
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/RMpRailwayTractionDetailVO.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/RMpRailwayTractionDetailVO.java
new file mode 100644
index 000000000..d0c4574a8
--- /dev/null
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/RMpRailwayTractionDetailVO.java
@@ -0,0 +1,68 @@
+package com.njcn.harmonic.pojo.vo;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+
+import java.io.Serializable;
+import java.time.LocalDate;
+
+/**
+ *
+ * 电气化铁路_详细信息表(专项分析)
+ *
+ *
+ * @author wr
+ * @since 2022-12-09
+ */
+@Data
+@ApiModel("电气化铁路实体类")
+public class RMpRailwayTractionDetailVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "牵引站id")
+ private String tractionStationId;
+
+ @ApiModelProperty(value = "牵引站名称")
+ private String tractionStationName;
+
+ @ApiModelProperty(value = "公司名称")
+ private String orgName;
+
+ @ApiModelProperty(value = "电铁路线")
+ private String railwayLineName;
+
+ @ApiModelProperty(value = "铁路类型")
+ private Integer railwayType;
+
+ @ApiModelProperty(value = "电压等级")
+ private String voltageLevel;
+
+ @ApiModelProperty(value = "牵引站变电容量")
+ private Double ratedCapacity;
+
+ @ApiModelProperty(value = "统计时间")
+ private LocalDate dataDate;
+
+ @ApiModelProperty(value = "有功功率")
+ private Float activePowerTimes;
+
+ @ApiModelProperty(value = "谐波电压")
+ private Float vTimes;
+
+ @ApiModelProperty(value = "谐波电流")
+ private Float iTimes;
+
+ @ApiModelProperty(value = "电压不平衡")
+ private Float unbalanceTimes;
+
+ @ApiModelProperty(value = "负序电流")
+ private Float iNegTimes;
+
+
+}
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/RMpWpPowerDetailVO.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/RMpWpPowerDetailVO.java
new file mode 100644
index 000000000..22d293675
--- /dev/null
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/RMpWpPowerDetailVO.java
@@ -0,0 +1,111 @@
+package com.njcn.harmonic.pojo.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDate;
+import java.util.List;
+
+/**
+ * 专项分析-风电场-详细数据表
+ *
+ * @author wr
+ * @date 2022-11-30
+ *
+ */
+@Data
+public class RMpWpPowerDetailVO implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "部门名称")
+ private String orgName;
+
+ @ApiModelProperty(value = "监测点id")
+ private String measurementPointId;
+
+ @ApiModelProperty(value = "监测点名称")
+ private String measurementPointName;
+
+ @ApiModelProperty(value = "负载率(平均值)")
+ private Float loadRateAvg;
+
+ @ApiModelProperty(value = "负载率(95%值)")
+ private Float loadRate95;
+
+ @ApiModelProperty(value = "负载率(99%值)")
+ private Float loadRate99;
+
+ @ApiModelProperty(value = "谐波电压超标情况(0:否 1:是)")
+ private Integer isV;
+
+ @ApiModelProperty(value = "谐波电流超标情况(0:否 1:是)")
+ private Integer isI;
+
+ @ApiModelProperty(value = "电压不平衡度超标情况(0:否 1:是)")
+ private Integer isUnbalance;
+
+ @ApiModelProperty(value = "负序电流超标情况(0:否 1:是)")
+ private Integer isINeg;
+
+ @ApiModelProperty(value = "谐波电压超标次数")
+ private Integer vTimes;
+
+ @ApiModelProperty(value = "谐波电流超标次数")
+ private Integer iTimes;
+
+ @ApiModelProperty(value = "总有功功率99值")
+ private Float totalActivePower99;
+
+ @ApiModelProperty(value = "总有功功率95值")
+ private Float totalActivePower95;
+
+ @ApiModelProperty(value = "总有功功率平均值")
+ private Float totalActivePowerAvg;
+
+ @ApiModelProperty(value = "A相有功功率95值")
+ private Float apActivePower95;
+
+ @ApiModelProperty(value = "A相有功功率99值")
+ private Float apActivePower99;
+
+ @ApiModelProperty(value = "A相有功功率平均值")
+ private Float apActivePowerAvg;
+
+ @ApiModelProperty(value = "B相有功功率95值")
+ private Float bpActivePower95;
+
+ @ApiModelProperty(value = "B相有功功率99值")
+ private Float bpActivePower99;
+
+ @ApiModelProperty(value = "B相有功功率平均值")
+ private Float bpActivePowerAvg;
+
+ @ApiModelProperty(value = "C相有功功率95值")
+ private Float cpActivePower95;
+
+ @ApiModelProperty(value = "C相有功功率99值")
+ private Float cpActivePower99;
+
+ @ApiModelProperty(value = "C相有功功率平均值")
+ private Float cpActivePowerAvg;
+
+ @ApiModelProperty(value = "A相基波电压")
+ private Float apFundamentalVoltage;
+
+ @ApiModelProperty(value = "B相基波电压")
+ private Float bpFundamentalVoltage;
+
+ @ApiModelProperty(value = "C相基波电压")
+ private Float cpFundamentalVoltage;
+
+ @ApiModelProperty(value = "负序电压不平衡度")
+ private Float negativeSequenceVoltageUnbalance;
+
+ @ApiModelProperty(value = "电网暂降次数")
+ private Integer gridDipNum;
+
+ @ApiModelProperty(value = "脱网事件次数")
+ private Integer offlineNum;
+}
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/RStatHarmonicVO.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/RStatHarmonicVO.java
new file mode 100644
index 000000000..3e5da3e96
--- /dev/null
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/RStatHarmonicVO.java
@@ -0,0 +1,42 @@
+package com.njcn.harmonic.pojo.vo;
+
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+/**
+ *
+ *
+ *
+ *
+ * @author rui.wu
+ * @since 2022-10-09
+ */
+@Data
+public class RStatHarmonicVO {
+
+ private static final long serialVersionUID = 1L;
+
+ @ApiModelProperty(value = "单位id")
+ private String orgNo;
+
+ @ApiModelProperty(value = "稳态指标")
+ private String harmonicType;
+
+ @ApiModelProperty(value = "日均超标监测点数")
+ private Integer overLimitMeasurementAverage;
+
+ @ApiModelProperty(value = "累计超标监测点数")
+ private Integer overLimitMeasurementAccrued;
+
+ @ApiModelProperty(value = "累计超标天数")
+ private Integer overDay;
+
+ @ApiModelProperty(value = "日均超标监测点数占比")
+ private Float overLimitMeasurementRatioAverage;
+
+ @ApiModelProperty(value = "累计超标监测点数占比")
+ private Float overLimitMeasurementRatioAccrued;
+
+ @ApiModelProperty(value = "平均超标天数")
+ private Float averageOverDay;
+}
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/ReportTemplateVO.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/ReportTemplateVO.java
index bd18eb4b7..2d96e9fe6 100644
--- a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/ReportTemplateVO.java
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/vo/ReportTemplateVO.java
@@ -27,4 +27,6 @@ public class ReportTemplateVO extends BaseEntity {
private String deptName;
+ private String reportForm;
+
}
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/utils/DeptUtil.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/utils/DeptUtil.java
new file mode 100644
index 000000000..77544801a
--- /dev/null
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/utils/DeptUtil.java
@@ -0,0 +1,82 @@
+package com.njcn.harmonic.utils;
+
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.collection.CollectionUtil;
+import com.njcn.harmonic.pojo.vo.DeptLevelVO;
+import com.njcn.user.pojo.dto.DeptDTO;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.stream.Collectors;
+
+/**
+ * <功能描述>
+ *
+ * @author wr
+ * @createTime: 2022-12-14
+ */
+public class DeptUtil {
+
+ /***
+ * 获取层级部门信息(展示下级部门)
+ * @param deptDTOList
+ * @param deptId
+ * @return
+ */
+ public static List getDeptSubsetVOList(List deptDTOList, String deptId){
+ //获取子部门
+ List directDeptInfos = deptDTOList.stream()
+ .filter(deptDTO -> deptDTO.getPid().equals(deptId))
+ .collect(Collectors.toList());
+ if (CollectionUtil.isEmpty(directDeptInfos)) {
+ //没有直接子部门,获取当前部门所有信息
+ List dept = deptDTOList.stream()
+ .filter(deptDTO -> deptDTO.getId().equals(deptId))
+ .collect(Collectors.toList());
+ return dept;
+ }
+ return directDeptInfos;
+ }
+
+
+ /***
+ * 获取层级部门信息(展示下级部门,但是数据是包含下部门的所有部门)
+ * @param deptDTOList
+ * @param deptId
+ * @return
+ */
+ public static List getDeptLevelVOList(List deptDTOList, String deptId){
+ //获取子部门
+ List directDeptInfos = deptDTOList.stream()
+ .filter(deptDTO -> deptDTO.getPid().equals(deptId))
+ .collect(Collectors.toList());
+ List deptLevelVOS = new ArrayList<>();
+ if (CollectionUtil.isEmpty(directDeptInfos)) {
+ //没有直接子部门,获取当前部门所有信息
+ List dept = deptDTOList.stream()
+ .filter(deptDTO -> deptDTO.getId().equals(deptId))
+ .collect(Collectors.toList());
+ deptLevelVOS = BeanUtil.copyToList(dept, DeptLevelVO.class);
+ }else{
+ DeptLevelVO deptLevelVO;
+ for (DeptDTO deptDTO : directDeptInfos) {
+ //添加当前部门,添加当前部门下的子部门
+ deptLevelVO = BeanUtil.copyProperties(deptDTO, DeptLevelVO.class);
+ deptLevelVOS.add(deptLevelVO);
+
+ //筛选上级部门pids包含该id的所有部门
+ List descendantDeptDTO = deptDTOList.stream()
+ .filter(d -> d.getPids().contains(deptDTO.getId()))
+ .collect(Collectors.toList());
+ //获取当前部门
+ List dept = deptDTOList.stream()
+ .filter(dto -> dto.getId().equals(deptDTO.getId()))
+ .collect(Collectors.toList());
+ descendantDeptDTO.addAll(dept);
+ List seedList = BeanUtil.copyToList(descendantDeptDTO, DeptLevelVO.class);
+ deptLevelVO.setDeptList(seedList);
+ }
+ }
+ return deptLevelVOS;
+ }
+}
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/distribution/PwRStatHarmonicOrgController.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/distribution/PwRStatHarmonicOrgController.java
index 802c467b8..d016a38af 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/distribution/PwRStatHarmonicOrgController.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/distribution/PwRStatHarmonicOrgController.java
@@ -55,7 +55,7 @@ public class PwRStatHarmonicOrgController extends BaseController {
switch (string) {
//查询各单位累计超标监测点数-年数据
case BizParamConstant.STAT_BIZ_YEAR:
- org = rStatHarmonicOrgYService.getPwRStatHarmonicYAll(param);
+ org = rStatHarmonicOrgYService.getPwRStatHarmonicYOldAll(param,2);
break;
//查询各单位累计超标监测点数-季数据
case BizParamConstant.STAT_BIZ_QUARTER:
@@ -86,7 +86,7 @@ public class PwRStatHarmonicOrgController extends BaseController {
switch (string) {
//查询各单位累计超标监测点数统计图-年数据
case BizParamConstant.STAT_BIZ_YEAR:
- icon = rStatHarmonicOrgYService.getPwRStatHarmonicOrgYIcon(param);
+ icon = rStatHarmonicOrgYService.getPwRStatHarmonicOrgYOldIcon(param,2);
break;
//查询各单位累计超标监测点数-季数据
case BizParamConstant.STAT_BIZ_QUARTER:
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/majornetwork/RStatHarmonicOrgController.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/majornetwork/RStatHarmonicOrgController.java
index badb83a8b..43540f880 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/majornetwork/RStatHarmonicOrgController.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/majornetwork/RStatHarmonicOrgController.java
@@ -56,7 +56,7 @@ public class RStatHarmonicOrgController extends BaseController {
switch (string) {
//查询各单位累计超标监测点数-年数据
case BizParamConstant.STAT_BIZ_YEAR:
- rStatHarmonicOrgMAll = rStatHarmonicOrgYService.getRStatHarmonicYAll(param);
+ rStatHarmonicOrgMAll = rStatHarmonicOrgYService.getPwRStatHarmonicYOldAll(param,1);
break;
//查询各单位累计超标监测点数-季数据
case BizParamConstant.STAT_BIZ_QUARTER:
@@ -86,7 +86,7 @@ public class RStatHarmonicOrgController extends BaseController {
switch (string) {
//查询各单位累计超标监测点数统计图-年数据
case BizParamConstant.STAT_BIZ_YEAR:
- getAllRStatHarmonicOrgIcon = rStatHarmonicOrgYService.getRStatHarmonicOrgYIcon(param);
+ getAllRStatHarmonicOrgIcon = rStatHarmonicOrgYService.getPwRStatHarmonicOrgYOldIcon(param,1);
break;
//查询各单位累计超标监测点数-季数据
case BizParamConstant.STAT_BIZ_QUARTER:
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/specialanalysis/WindFarmController.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/specialanalysis/WindFarmController.java
index 86d429d19..57bfe2440 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/specialanalysis/WindFarmController.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/controller/specialanalysis/WindFarmController.java
@@ -1,13 +1,27 @@
package com.njcn.harmonic.controller.specialanalysis;
-
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.njcn.common.pojo.annotation.OperateInfo;
+import com.njcn.common.pojo.enums.common.LogEnum;
+import com.njcn.common.pojo.enums.response.CommonResponseEnum;
+import com.njcn.common.pojo.response.HttpResult;
+import com.njcn.common.utils.HttpResultUtil;
+import com.njcn.harmonic.pojo.param.PowerQualityParam;
+import com.njcn.harmonic.pojo.vo.RMpRailwayTractionDetailVO;
+import com.njcn.harmonic.pojo.vo.RMpWpPowerDetailVO;
+import com.njcn.harmonic.service.specialanalysis.RMpWpPowerDetailMService;
import com.njcn.web.controller.BaseController;
import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiImplicitParam;
+import io.swagger.annotations.ApiOperation;
import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
+
/**
*
* 专项分析-风电站-详细数据
@@ -22,5 +36,36 @@ import org.springframework.web.bind.annotation.RestController;
@RequestMapping("/windFarm")
public class WindFarmController extends BaseController {
+ private final RMpWpPowerDetailMService rMpWpPowerDetailMService;
+
+ /**
+ * 详细数据表分页查询
+ * @param param
+ * @return
+ */
+ @PostMapping("/getWindFarmDetailInfo")
+ @OperateInfo(info = LogEnum.BUSINESS_COMMON)
+ @ApiOperation("详细数据表分页查询")
+ @ApiImplicitParam(name = "param", value = "分页查询参数", required = true)
+ public HttpResult> getWindFarmDetailInfo(@RequestBody PowerQualityParam.PowerQualityInfoParam param) {
+ String methodDescribe = getMethodDescribe("getWindFarmDetailInfo");
+ Page powerQualityInfo = rMpWpPowerDetailMService.getWindFarmDetailInfo(param);
+ return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, powerQualityInfo, methodDescribe);
+ }
+
+ /**
+ * 详细数据表分页查询
+ * @param param
+ * @return
+ */
+ @PostMapping("/getRailwayDetailInfo")
+ @OperateInfo(info = LogEnum.BUSINESS_COMMON)
+ @ApiOperation("电气化铁路详细数据表分页查询")
+ @ApiImplicitParam(name = "param", value = "分页查询参数", required = true)
+ public HttpResult> getRailwayDetailInfo(@RequestBody PowerQualityParam param) {
+ String methodDescribe = getMethodDescribe("getRailwayDetailInfo");
+ Page powerQualityInfo = rMpWpPowerDetailMService.getRailwayDetailInfo(param);
+ return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, powerQualityInfo, methodDescribe);
+ }
}
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/StatHarmonicOrgMMapper.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/StatHarmonicOrgMMapper.java
index 2f5b8310d..d9ce6796c 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/StatHarmonicOrgMMapper.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/StatHarmonicOrgMMapper.java
@@ -1,7 +1,9 @@
package com.njcn.harmonic.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatHarmonicOrgM;
+import com.njcn.harmonic.pojo.vo.RStatHarmonicVO;
import com.njcn.harmonic.pojo.vo.StatHarmonicOrgVO;
import com.njcn.user.pojo.dto.DeptDTO;
import org.apache.ibatis.annotations.Param;
@@ -21,4 +23,14 @@ public interface StatHarmonicOrgMMapper extends BaseMapper {
* @return 结果
*/
List listMonthRatio(@Param("list") List list, @Param("startTime") String startTime, @Param("endTime") String endTime);
+
+ /**
+ *各单位监测点数
+ * @param param
+ * @param dataType
+ * @return
+ */
+ List selectInfoList(@Param("param") StatSubstationBizBaseParam param,
+ @Param("ids") List ids,
+ @Param("dataType") String dataType);
}
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/StatHarmonicOrgQMapper.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/StatHarmonicOrgQMapper.java
index 62a9c00eb..a2e428e95 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/StatHarmonicOrgQMapper.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/StatHarmonicOrgQMapper.java
@@ -1,7 +1,10 @@
package com.njcn.harmonic.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatHarmonicOrgQ;
+import com.njcn.harmonic.pojo.po.RStatHarmonicOrgY;
+import com.njcn.harmonic.pojo.vo.RStatHarmonicVO;
import com.njcn.harmonic.pojo.vo.StatHarmonicOrgVO;
import com.njcn.user.pojo.dto.DeptDTO;
import org.apache.ibatis.annotations.Param;
@@ -21,4 +24,14 @@ public interface StatHarmonicOrgQMapper extends BaseMapper {
* @return 结果
*/
List listQuarterRatio(@Param("list") List list, @Param("startTime") String startTime, @Param("endTime") String endTime);
+
+ /**
+ *各单位监测点数
+ * @param param
+ * @param dataType
+ * @return
+ */
+ List selectInfoList(@Param("param") StatSubstationBizBaseParam param,
+ @Param("ids") List ids,
+ @Param("dataType") String dataType);
}
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/StatHarmonicOrgYMapper.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/StatHarmonicOrgYMapper.java
index c4faf70c8..cd11659a8 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/StatHarmonicOrgYMapper.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/StatHarmonicOrgYMapper.java
@@ -1,7 +1,9 @@
package com.njcn.harmonic.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatHarmonicOrgY;
+import com.njcn.harmonic.pojo.vo.RStatHarmonicVO;
import com.njcn.harmonic.pojo.vo.StatHarmonicOrgVO;
import com.njcn.user.pojo.dto.DeptDTO;
import org.apache.ibatis.annotations.Param;
@@ -21,4 +23,15 @@ public interface StatHarmonicOrgYMapper extends BaseMapper {
* @return 结果
*/
List listYearRatio(@Param("list") List list, @Param("startTime") String startTime, @Param("endTime") String endTime);
+
+ /**
+ * 各单位监测点查询
+ * @param param
+ * @param ids
+ * @param dataType
+ * @return
+ */
+ List selectInfoList(@Param("param") StatSubstationBizBaseParam param,
+ @Param("ids") List ids,
+ @Param("dataType") String dataType);
}
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/ExcelRptTempMapper.xml b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/ExcelRptTempMapper.xml
index 1feb8fb4b..24b04077a 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/ExcelRptTempMapper.xml
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/ExcelRptTempMapper.xml
@@ -41,7 +41,8 @@
DISTINCT
a.id,
a.NAME,
- b.activation
+ b.activation,
+ a.report_form
FROM
sys_excel_rpt_temp a
LEFT JOIN sys_dept_temp b ON a.Id = b.temp_id
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/StatHarmonicOrgMMapper.xml b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/StatHarmonicOrgMMapper.xml
index bf02506ed..7f473c467 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/StatHarmonicOrgMMapper.xml
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/StatHarmonicOrgMMapper.xml
@@ -18,5 +18,39 @@
and DATE_FORMAT(data_date,'%Y-%m-%d') between #{startTime} and #{endTime}
+
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/StatHarmonicOrgQMapper.xml b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/StatHarmonicOrgQMapper.xml
index 34628a395..bb1d1991d 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/StatHarmonicOrgQMapper.xml
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/StatHarmonicOrgQMapper.xml
@@ -18,5 +18,39 @@
and DATE_FORMAT(data_date,'%Y-%m-%d') between #{startTime} and #{endTime}
+
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/StatHarmonicOrgYMapper.xml b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/StatHarmonicOrgYMapper.xml
index 335f59227..2401f8b1a 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/StatHarmonicOrgYMapper.xml
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/mapping/StatHarmonicOrgYMapper.xml
@@ -18,4 +18,39 @@
and DATE_FORMAT(data_date,'%Y-%m-%d') between #{startTime} and #{endTime}
+
+
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/RMpRailwayTractionDetailMapper.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/RMpRailwayTractionDetailMapper.java
new file mode 100644
index 000000000..aee8cfb74
--- /dev/null
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/RMpRailwayTractionDetailMapper.java
@@ -0,0 +1,16 @@
+package com.njcn.harmonic.mapper.specialanalysis;
+
+import com.njcn.harmonic.pojo.po.RMpRailwayTractionDetail;
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+
+/**
+ *
+ * 电气化铁路_详细信息表(专项分析) Mapper 接口
+ *
+ *
+ * @author wr
+ * @since 2022-12-09
+ */
+public interface RMpRailwayTractionDetailMapper extends BaseMapper {
+
+}
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpRailwayTractionDetailMapper.xml b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpRailwayTractionDetailMapper.xml
new file mode 100644
index 000000000..fdbf0a6d1
--- /dev/null
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpRailwayTractionDetailMapper.xml
@@ -0,0 +1,16 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpWpPowerDetailMMapper.xml b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpWpPowerDetailMMapper.xml
index 0c798cca7..e18859394 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpWpPowerDetailMMapper.xml
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpWpPowerDetailMMapper.xml
@@ -6,6 +6,7 @@
+
@@ -24,6 +25,10 @@
+
+
+
+
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpWpPowerDetailQMapper.xml b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpWpPowerDetailQMapper.xml
index 2b64ed0eb..47e76f011 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpWpPowerDetailQMapper.xml
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpWpPowerDetailQMapper.xml
@@ -6,6 +6,7 @@
+
@@ -24,6 +25,10 @@
+
+
+
+
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpWpPowerDetailYMapper.xml b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpWpPowerDetailYMapper.xml
index 858ac3275..34ccf6d03 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpWpPowerDetailYMapper.xml
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/mapper/specialanalysis/mapping/RMpWpPowerDetailYMapper.xml
@@ -6,6 +6,7 @@
+
@@ -24,6 +25,10 @@
+
+
+
+
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/RStatHarmonicOrgYService.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/RStatHarmonicOrgYService.java
index 0ebeca440..2b4bd5098 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/RStatHarmonicOrgYService.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/RStatHarmonicOrgYService.java
@@ -35,19 +35,39 @@ public interface RStatHarmonicOrgYService extends IService {
*/
List getRStatHarmonicOrgYIcon(RStatHarmonicMParam param);
+ /**
+ * 配网各单位累计超标监测点数统计图-年数据()
+ *
+ * @param param
+ * @return
+ */
+ List getPwRStatHarmonicOrgYOldIcon(RStatHarmonicMParam param,Integer type);
+
+
/**
* 配网查询各单位稳态指标(年)
*
* @param param
* @return
*/
+ List getPwRStatHarmonicYOldAll(StatisticsBizBaseParam param,Integer type);
+
+ /**
+ * 配网查询各单位稳态指标(年 )统计暂不使用
+ *
+ * @param param
+ * @return
+ */
List getPwRStatHarmonicYAll(StatisticsBizBaseParam param);
/**
- * 配网各单位累计超标监测点数统计图-年数据
+ * 配网各单位累计超标监测点数统计图-年数据(暂不使用,里面包含子孙部门统计)
*
* @param param
* @return
*/
List getPwRStatHarmonicOrgYIcon(RStatHarmonicMParam param);
+
+
+
}
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RStatHarmonicOrgMServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RStatHarmonicOrgMServiceImpl.java
index 0b0740674..f19fdf34e 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RStatHarmonicOrgMServiceImpl.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RStatHarmonicOrgMServiceImpl.java
@@ -15,6 +15,7 @@ import com.njcn.harmonic.pojo.vo.RIconVO;
import com.njcn.harmonic.pojo.vo.RStatHarmonicMVO;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicOrgMService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.njcn.harmonic.utils.DeptUtil;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
@@ -225,7 +226,9 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptDTOList= DeptUtil.getDeptSubsetVOList(deptList,param.getId());
+
//获取部门id集合
List deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
Map deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
@@ -295,7 +298,9 @@ public class RStatHarmonicOrgMServiceImpl extends ServiceImpl getPwRStatHarmonicOrgMIcon(RStatHarmonicMParam param) {
//各单位类型
- List deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptDTOList= DeptUtil.getDeptSubsetVOList(deptList,param.getId());
+
Map deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取部门id集合
List deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RStatHarmonicOrgQServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RStatHarmonicOrgQServiceImpl.java
index 44b607f66..74e1eead3 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RStatHarmonicOrgQServiceImpl.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RStatHarmonicOrgQServiceImpl.java
@@ -8,13 +8,17 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
import com.njcn.harmonic.pojo.param.RStatHarmonicMParam;
+import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatHarmonicOrgQ;
import com.njcn.harmonic.mapper.StatHarmonicOrgQMapper;
+import com.njcn.harmonic.pojo.po.RStatHarmonicOrgY;
+import com.njcn.harmonic.pojo.vo.DeptLevelVO;
import com.njcn.harmonic.pojo.vo.RArrayVO;
import com.njcn.harmonic.pojo.vo.RIconVO;
import com.njcn.harmonic.pojo.vo.RStatHarmonicMVO;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicOrgQService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.njcn.harmonic.utils.DeptUtil;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
@@ -47,88 +51,76 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl getRStatHarmonicQAll(StatisticsBizBaseParam param) {
+ //对象主节点 获取所有的稳态类型
+ List steadyData = dicDataFeignClient.getDicDataByTypeCode(
+ DicDataTypeEnum.STEADY_STATIS.getCode()).getData();
+ Map steadyMap = steadyData.stream()
+ .collect(Collectors.toMap(DictData::getId, Function.identity()));
+
//子节点 获取所有得各单位类型
- List deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptDTOList= DeptUtil.getDeptSubsetVOList(deptList,param.getId());
+
//获取部门id集合
List deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
Map deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
- //对象主节点 获取所有得指标类型
- List lineTypeData = dicDataFeignClient.getDicDataByTypeCode
- (DicDataTypeEnum.STEADY_STATIS.getCode()).getData();
- Map lineTypeMap = lineTypeData.stream()
- .collect(Collectors.toMap(DictData::getId, Function.identity()));
- //获取主网id信息
+ //获取配网信息
DictData mainnetData = dicDataFeignClient.getDicDataByCode(DicDataEnum.MAINNET_POINT.getCode()).getData();
-
+ //初始化指标类型(横向)
+ List arrayVOList = new ArrayList<>();
//数据库查询
List list = statHarmonicOrgQMapper.selectList(new LambdaQueryWrapper()
.eq(RStatHarmonicOrgQ::getDataType, mainnetData.getId())
.in(RStatHarmonicOrgQ::getOrgNo, deptIds)
- .ge(StrUtil.isNotBlank(param.getStartTime()), RStatHarmonicOrgQ::getDataDate, param.getStartTime())
- .le(StrUtil.isNotBlank(param.getEndTime()), RStatHarmonicOrgQ::getDataDate, param.getEndTime()));
+ .ge(param.getStartTime() != null, RStatHarmonicOrgQ::getDataDate, param.getStartTime())
+ .le(param.getEndTime() != null, RStatHarmonicOrgQ::getDataDate, param.getEndTime()));
+ //根据稳态指标分组
+ Map> measurementMap = list.stream().collect(Collectors.groupingBy(RStatHarmonicOrgQ::getHarmonicType));
+ //判断对象是否为空
+ if (CollUtil.isNotEmpty(list)) {
+ //重新生成数据结构
+ measurementMap.forEach((key, value) -> {
+ List eventVO = new ArrayList<>();
+ if (steadyMap.containsKey(key)) {
+ RArrayVO arrayVO = new RArrayVO();
+ DictData data = steadyMap.get(key);
+ arrayVO.setRowName(data.getName());
+ arrayVO.setSort(data.getSort());
+ for (RStatHarmonicOrgQ statHarmonic : value) {
+ if(deptMap.containsKey(statHarmonic.getOrgNo())){
+ RStatHarmonicMVO r = BeanUtil.copyProperties(statHarmonic, RStatHarmonicMVO.class);
+ DeptDTO deptDTO = deptMap.get(statHarmonic.getOrgNo());
+ r.setHarmonicName(deptDTO.getName());
+ r.setSort(deptDTO.getSort());
+ eventVO.add(r);
+ }
- //初始化指标类型(横向)
- List arrayVOList = new ArrayList<>();
- List rm = new ArrayList<>();
- for (DeptDTO deptDTO : deptDTOList) {
- RStatHarmonicMVO r = new RStatHarmonicMVO();
- r.setHarmonicName(deptDTO.getName());
- r.setSort(deptDTO.getSort());
- r.setOverLimitMeasurementAverage(0);
- r.setOverLimitMeasurementAccrued(0);
- r.setAverageOverDay(0.0F);
- r.setOverDay(0);
- r.setOverLimitMeasurementRatioAverage(0.0F);
- r.setOverLimitMeasurementRatioAccrued(0.0F);
- rm.add(r);
- }
- for (DictData lineTypeDatum : lineTypeData) {
- RArrayVO r = new RArrayVO();
- r.setRowName(lineTypeDatum.getName());
- r.setColumns(rm);
- r.setSort(lineTypeDatum.getSort());
- arrayVOList.add(r);
- }
- //根据检测点对象分组
- Map> MeasurementTypeClassMap = list.stream().collect(Collectors.groupingBy(RStatHarmonicOrgQ::getHarmonicType));
- //重新生成数据结构
- MeasurementTypeClassMap.forEach((key, value) -> {
- if (lineTypeMap.containsKey(key)) {
- RArrayVO arrayVO = new RArrayVO();
- DictData data = lineTypeMap.get(key);
- arrayVO.setRowName(data.getName());
- arrayVO.setSort(data.getSort());
- List b = new ArrayList<>();
- b.addAll(rm);
- for (RStatHarmonicOrgQ orgY : value) {
- RStatHarmonicMVO r = BeanUtil.copyProperties(orgY, RStatHarmonicMVO.class);
- DeptDTO data1 = deptMap.get(orgY.getOrgNo());
- if (ObjectUtil.isNotNull(data1)) {
- r.setHarmonicName(data1.getName());
- r.setSort(data1.getSort());
- r.setOverDay(0);
- b.add(r);
}
+ //根据监测点类别获取差集
+ Map> listMap = value.stream().collect(Collectors.groupingBy(RStatHarmonicOrgQ::getOrgNo));
+ List notDeptDTOS = deptDTOList.stream().filter(r -> !listMap.containsKey(r.getId()))
+ .collect(Collectors.toList());
+ this.assignDict(notDeptDTOS, eventVO, arrayVO);
+ eventVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getSort()));
+ arrayVOList.add(arrayVO);
}
- Map linkedHashMap = new LinkedHashMap<>();
- for (RStatHarmonicMVO harmonicMVO : b) {
- linkedHashMap.put(harmonicMVO.getHarmonicName(), harmonicMVO);
- }
- List aa = new ArrayList<>(linkedHashMap.values());
- aa.sort(Comparator.comparing(rStatHarmonicMVO -> rStatHarmonicMVO.getSort()));
- arrayVO.setColumns(aa);
- arrayVOList.add(arrayVO);
- }
-
- });
- Map linkedHashMap = new LinkedHashMap<>();
- for (RArrayVO rStatHarmonicMVO : arrayVOList) {
- linkedHashMap.put(rStatHarmonicMVO.getRowName(), rStatHarmonicMVO);
+ });
+ }
+ //处理主节点不存在的集合
+ List notMeasurementList = steadyData.stream().filter(r -> !measurementMap.containsKey(r.getId()))
+ .collect(Collectors.toList());
+ for (DictData notData : notMeasurementList) {
+ List statharmonicVO = new ArrayList<>();
+ RArrayVO arrayVO = new RArrayVO();
+ arrayVO.setRowName(notData.getName());
+ arrayVO.setSort(notData.getSort());
+ this.assignDict(deptDTOList, statharmonicVO, arrayVO);
+ statharmonicVO.sort(Comparator.comparing(statHarmonic -> statHarmonic.getSort()));
+ arrayVOList.add(arrayVO);
}
- List aa = new ArrayList<>(linkedHashMap.values());
arrayVOList.sort(Comparator.comparing(rArrayVO -> rArrayVO.getSort()));
- return aa;
+ return arrayVOList;
}
@Override
@@ -218,7 +210,9 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptDTOList= DeptUtil.getDeptSubsetVOList(deptList,param.getId());
+
//获取部门id集合
List deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
Map deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
@@ -284,7 +278,9 @@ public class RStatHarmonicOrgQServiceImpl extends ServiceImpl getPwRStatHarmonicOrgQIcon(RStatHarmonicMParam param) {
//各单位类型
- List deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptDTOList= DeptUtil.getDeptSubsetVOList(deptList,param.getId());
+
Map deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//获取部门id集合
List deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RStatHarmonicOrgYServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RStatHarmonicOrgYServiceImpl.java
index 0144249f6..0d0297f8f 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RStatHarmonicOrgYServiceImpl.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/majornetwork/impl/RStatHarmonicOrgYServiceImpl.java
@@ -6,15 +6,18 @@ import cn.hutool.core.lang.Assert;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.njcn.common.pojo.constant.BizParamConstant;
import com.njcn.common.pojo.param.StatisticsBizBaseParam;
+import com.njcn.harmonic.mapper.StatHarmonicOrgMMapper;
+import com.njcn.harmonic.mapper.StatHarmonicOrgQMapper;
import com.njcn.harmonic.pojo.param.RStatHarmonicMParam;
+import com.njcn.harmonic.pojo.param.StatSubstationBizBaseParam;
import com.njcn.harmonic.pojo.po.RStatHarmonicOrgY;
import com.njcn.harmonic.mapper.StatHarmonicOrgYMapper;
-import com.njcn.harmonic.pojo.vo.RArrayVO;
-import com.njcn.harmonic.pojo.vo.RIconVO;
-import com.njcn.harmonic.pojo.vo.RStatHarmonicMVO;
+import com.njcn.harmonic.pojo.vo.*;
import com.njcn.harmonic.service.majornetwork.RStatHarmonicOrgYService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.njcn.harmonic.utils.DeptUtil;
import com.njcn.system.api.DicDataFeignClient;
import com.njcn.system.enums.DicDataEnum;
import com.njcn.system.enums.DicDataTypeEnum;
@@ -44,66 +47,100 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl getRStatHarmonicYAll(StatisticsBizBaseParam param) {
- //子节点 获取所有得各单位类型
- List deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
- //获取部门id集合
- List deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
- Map deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
//对象主节点 获取所有得指标类型
- List lineTypeData = dicDataFeignClient.getDicDataByTypeCode
+ List steadyData = dicDataFeignClient.getDicDataByTypeCode
(DicDataTypeEnum.STEADY_STATIS.getCode()).getData();
- Map lineTypeMap = lineTypeData.stream()
+ List steadyDataIds = steadyData.stream().map(DictData::getId).collect(Collectors.toList());
+ Map lineTypeMap = steadyData.stream()
.collect(Collectors.toMap(DictData::getId, Function.identity()));
+
+
+ //子节点 获取所有得各单位类型
+ List deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ //获取子部门(按照code改变数据结构)
+ List deptLevelVOList = DeptUtil.getDeptLevelVOList(deptDTOList, param.getId());
+ Map deptMap = deptLevelVOList.stream().collect(Collectors.toMap(DeptLevelVO::getCode, Function.identity()));
+
//获取主网id信息
DictData mainnetData = dicDataFeignClient.getDicDataByCode(DicDataEnum.MAINNET_POINT.getCode()).getData();
- //数据库查询
- List list = statHarmonicOrgYMapper.selectList(new LambdaQueryWrapper()
- .eq(RStatHarmonicOrgY::getDataType,mainnetData.getId())
- .in(RStatHarmonicOrgY::getOrgNo,deptIds)
- .ge(StrUtil.isNotBlank(param.getStartTime()), RStatHarmonicOrgY::getDataDate, param.getStartTime())
- .le(StrUtil.isNotBlank(param.getEndTime()), RStatHarmonicOrgY::getDataDate, param.getEndTime()));
-
+ StatSubstationBizBaseParam baseParam;
//初始化指标类型(横向)
- List arrayVOList=new ArrayList<>();
- List rm=new ArrayList<>();
- for (DeptDTO deptDTO : deptDTOList) {
- RStatHarmonicMVO r = new RStatHarmonicMVO();
- r.setHarmonicName(deptDTO.getName());
- r.setSort(deptDTO.getSort());
- r.setOverLimitMeasurementAverage(0);
- r.setOverLimitMeasurementAccrued(0);
- r.setAverageOverDay(0.0F);
- r.setOverDay(0);
- r.setOverLimitMeasurementRatioAverage(0.0F);
- r.setOverLimitMeasurementRatioAccrued(0.0F);
- rm.add(r);
+ List arrayVOList = new ArrayList<>();
+ List newList=new ArrayList<>();
+ for (DeptLevelVO deptLevelVO : deptLevelVOList) {
+ //数据库查询
+ baseParam=BeanUtil.copyProperties(param, StatSubstationBizBaseParam.class);
+ //没有子部门说明就是最底层部门
+ if(CollUtil.isNotEmpty(deptLevelVO.getDeptList())){
+ List deptCodeS = deptLevelVO.getDeptList().stream().map(DeptLevelVO::getCode).collect(Collectors.toList());
+ baseParam.setIds(deptCodeS);
+ }else{
+ baseParam.setIds(Arrays.asList(deptLevelVO.getCode()));
+ }
+ //区分 年 季 月
+ String string = param.getType().toString();
+ List list = new ArrayList<>();
+ switch (string) {
+ //查询各单位累计超标监测点数-年数据
+ case BizParamConstant.STAT_BIZ_YEAR:
+ list = statHarmonicOrgYMapper.selectInfoList(baseParam,steadyDataIds,mainnetData.getId());
+ break;
+ //查询各单位累计超标监测点数-季数据
+ case BizParamConstant.STAT_BIZ_QUARTER:
+ list = statHarmonicOrgQMapper.selectInfoList(baseParam,steadyDataIds,mainnetData.getId());
+ break;
+ //查询各单位累计超标监测点数-月数据
+ case BizParamConstant.STAT_BIZ_MONTH:
+ list = statHarmonicOrgMMapper.selectInfoList(baseParam,steadyDataIds,mainnetData.getId());
+ break;
+ default:
+ break;
+ }
+ //获取数据库数据
+ Map orgMap = list.stream()
+ .collect(Collectors.toMap(RStatHarmonicVO::getHarmonicType, Function.identity()));
+
+ List notMeasurementList = steadyData.stream().filter(r -> !orgMap.containsKey(r.getId()))
+ .collect(Collectors.toList());
+ for (RStatHarmonicVO org : list) {
+ org.setOrgNo(deptLevelVO.getCode());
+ }
+ RStatHarmonicVO org;
+ for (DictData notData : notMeasurementList) {
+ org=new RStatHarmonicVO();
+ org.setOrgNo(deptLevelVO.getCode());
+ org.setHarmonicType(notData.getId());
+ org.setOverLimitMeasurementAverage(0);
+ org.setOverLimitMeasurementAccrued(0);
+ org.setAverageOverDay(0.0F);
+ org.setOverLimitMeasurementRatioAverage(0.0F);
+ org.setOverLimitMeasurementRatioAccrued(0.0F);
+ list.add(org);
+ }
+ newList.addAll(list);
}
- for (DictData lineTypeDatum : lineTypeData) {
- RArrayVO r = new RArrayVO();
- r.setRowName(lineTypeDatum.getName());
- r.setColumns(rm);
- r.setSort(lineTypeDatum.getSort());
- arrayVOList.add(r);
- }
- //根据检测点对象分组
- Map> MeasurementTypeClassMap = list.stream().collect(Collectors.groupingBy(RStatHarmonicOrgY::getHarmonicType));
+
+ Map> harmonicMap =
+ newList.stream().collect(Collectors.groupingBy(RStatHarmonicVO::getHarmonicType));
+
//重新生成数据结构
- MeasurementTypeClassMap.forEach((key, value) -> {
+ harmonicMap.forEach((key, value) -> {
if(lineTypeMap.containsKey(key)){
- RArrayVO arrayVO=new RArrayVO();
+ RArrayVO arrayVO=new RArrayVO();
DictData data = lineTypeMap.get(key);
arrayVO.setRowName(data.getName());
arrayVO.setSort(data.getSort());
List b=new ArrayList<>();
- b.addAll(rm);
- for (RStatHarmonicOrgY orgY : value) {
+ for (RStatHarmonicVO orgY : value) {
RStatHarmonicMVO r = BeanUtil.copyProperties(orgY, RStatHarmonicMVO.class);
- DeptDTO data1 = deptMap.get(orgY.getOrgNo());
+ DeptLevelVO data1 = deptMap.get(orgY.getOrgNo());
if (ObjectUtil.isNotNull(data1)){
r.setHarmonicName(data1.getName());
r.setSort(data1.getSort());
@@ -111,34 +148,28 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl linkedHashMap=new LinkedHashMap<>();
- for (RStatHarmonicMVO harmonicMVO : b) {
- linkedHashMap.put(harmonicMVO.getHarmonicName(),harmonicMVO);
- }
- List aa=new ArrayList<>(linkedHashMap.values());
- aa.sort(Comparator.comparing(rStatHarmonicMVO -> rStatHarmonicMVO.getSort()));
- arrayVO.setColumns(aa);
+ b.sort(Comparator.comparing(rStatHarmonicMVO -> rStatHarmonicMVO.getSort()));
+ arrayVO.setColumns(b);
arrayVOList.add(arrayVO);
}
-
});
- Map linkedHashMap=new LinkedHashMap<>();
- for (RArrayVO rStatHarmonicMVO : arrayVOList) {
- linkedHashMap.put(rStatHarmonicMVO.getRowName(),rStatHarmonicMVO);
- }
- List aa=new ArrayList<>(linkedHashMap.values());
+
arrayVOList.sort(Comparator.comparing(rArrayVO -> rArrayVO.getSort()));
- return aa;
+ return arrayVOList;
}
@Override
public List getRStatHarmonicOrgYIcon(RStatHarmonicMParam param) {
- //各单位类型
+ //子节点 获取所有得各单位类型
List deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
- Map deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
- //获取部门id集合
- List deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
- //指标对象类型属性
+
+ //获取子部门(按照code改变数据结构)
+ List deptLevelVOList = DeptUtil.getDeptLevelVOList(deptDTOList, param.getId());
+ Map deptMap = deptLevelVOList.stream().collect(Collectors.toMap(DeptLevelVO::getCode, Function.identity()));
+
+ //获取主网id信息
+ DictData mainnetData = dicDataFeignClient.getDicDataByCode(DicDataEnum.MAINNET_POINT.getCode()).getData();
+
DictData harmonicData;
//判断是是否传入检测点信息值(电压)
if(StrUtil.isBlank(param.getStasisID())&&StrUtil.isBlank(param.getMonitorID())){
@@ -152,66 +183,174 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl arrayVOList=new ArrayList<>();
- List rStatHarmonicVoltageMS = statHarmonicOrgYMapper.selectList(new LambdaQueryWrapper()
- .eq(RStatHarmonicOrgY::getDataType,mainnetData.getId())
- .in(RStatHarmonicOrgY::getOrgNo,deptIds)
- .eq(RStatHarmonicOrgY::getHarmonicType, harmonicData.getId())
- .ge(StrUtil.isNotBlank(param.getStartTime()), RStatHarmonicOrgY::getDataDate, param.getStartTime())
- .le(StrUtil.isNotBlank(param.getEndTime()), RStatHarmonicOrgY::getDataDate, param.getEndTime())
- );
- //将数据转换为map进行便利
- Map> voltageMMap = rStatHarmonicVoltageMS.stream()
- .collect(Collectors.groupingBy(RStatHarmonicOrgY::getOrgNo));
- //对象
- if (CollUtil.isNotEmpty(rStatHarmonicVoltageMS)){
- voltageMMap.forEach((key, value) -> {
- if(deptMap.containsKey(key)){
- DeptDTO data = deptMap.get(key);
- for (RStatHarmonicOrgY orgY : value) {
- RIconVO rIconVO = new RIconVO();
- rIconVO.setRowName(data.getName());
- rIconVO.setSort(data.getSort());
- rIconVO.setOverLimitMeasurementAccrued(orgY.getOverLimitMeasurementAccrued());
- rIconVO.setOverLimitMeasurementAverage(orgY.getOverLimitMeasurementAverage());
- rIconVO.setOverLimitMeasurementRatioAccrued(orgY.getOverLimitMeasurementRatioAccrued());
- rIconVO.setOverLimitMeasurementRatioAverage(orgY.getOverLimitMeasurementRatioAverage());
- rIconVO.setAverageOverDay(orgY.getAverageOverDay());
- arrayVOList.add(rIconVO);
- }
+ for (DeptLevelVO deptLevelVO : deptLevelVOList) {
+ //数据库查询
+ baseParam = BeanUtil.copyProperties(param, StatSubstationBizBaseParam.class);
+ //没有子部门说明就是最底层部门
+ if (CollUtil.isNotEmpty(deptLevelVO.getDeptList())) {
+ List deptCodeS = deptLevelVO.getDeptList().stream().map(DeptLevelVO::getCode).collect(Collectors.toList());
+ baseParam.setIds(deptCodeS);
+ } else {
+ baseParam.setIds(Arrays.asList(deptLevelVO.getCode()));
+ }
+ //区分 年 季 月
+ String string = param.getType().toString();
+ List list = new ArrayList<>();
+ switch (string) {
+ //查询各单位累计超标监测点数-年数据
+ case BizParamConstant.STAT_BIZ_YEAR:
+ list = statHarmonicOrgYMapper.selectInfoList(baseParam, Arrays.asList(harmonicData.getId()), mainnetData.getId());
+ break;
+ //查询各单位累计超标监测点数-季数据
+ case BizParamConstant.STAT_BIZ_QUARTER:
+ list = statHarmonicOrgQMapper.selectInfoList(baseParam, Arrays.asList(harmonicData.getId()), mainnetData.getId());
+ break;
+ //查询各单位累计超标监测点数-月数据
+ case BizParamConstant.STAT_BIZ_MONTH:
+ list = statHarmonicOrgMMapper.selectInfoList(baseParam, Arrays.asList(harmonicData.getId()), mainnetData.getId());
+ break;
+ default:
+ break;
+ }
- }
- });
- }
- //处理主节点不存在的集合
- List notMeasurementList = deptDTOList.stream().filter(r -> !voltageMMap.containsKey(r.getCode()))
- .collect(Collectors.toList());
- for (DeptDTO notData : notMeasurementList) {
- RIconVO iconVO = new RIconVO();
- iconVO.setRowName(notData.getName());
- iconVO.setSort(notData.getSort());
- iconVO.setOverLimitMeasurementAverage(0);
- iconVO.setOverLimitMeasurementAccrued(0);
- iconVO.setOverLimitMeasurementRatioAverage(0.0F);
- iconVO.setOverLimitMeasurementRatioAccrued(0.0F);
- iconVO.setAverageOverDay(0.0F);
- arrayVOList.add(iconVO);
+ RIconVO rIconVO = new RIconVO();
+ rIconVO.setRowName(deptLevelVO.getName());
+ rIconVO.setSort(deptLevelVO.getSort());
+ if(CollUtil.isNotEmpty(list)){
+ rIconVO.setOverLimitMeasurementAccrued(list.get(0).getOverLimitMeasurementAccrued());
+ rIconVO.setOverLimitMeasurementAverage(list.get(0).getOverLimitMeasurementAverage());
+ rIconVO.setOverLimitMeasurementRatioAccrued(list.get(0).getOverLimitMeasurementRatioAccrued());
+ rIconVO.setOverLimitMeasurementRatioAverage(list.get(0).getOverLimitMeasurementRatioAverage());
+ rIconVO.setAverageOverDay(list.get(0).getAverageOverDay());
+ }else{
+ rIconVO.setOverLimitMeasurementAverage(0);
+ rIconVO.setOverLimitMeasurementAccrued(0);
+ rIconVO.setOverLimitMeasurementRatioAverage(0.0F);
+ rIconVO.setOverLimitMeasurementRatioAccrued(0.0F);
+ rIconVO.setAverageOverDay(0.0F);
+ }
+ arrayVOList.add(rIconVO);
}
+
arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getSort()));
return arrayVOList;
}
@Override
public List getPwRStatHarmonicYAll(StatisticsBizBaseParam param) {
+ //对象主节点 获取所有得指标类型
+ List steadyData = dicDataFeignClient.getDicDataByTypeCode
+ (DicDataTypeEnum.STEADY_STATIS.getCode()).getData();
+ List steadyDataIds = steadyData.stream().map(DictData::getId).collect(Collectors.toList());
+ Map lineTypeMap = steadyData.stream()
+ .collect(Collectors.toMap(DictData::getId, Function.identity()));
+
+
+ //子节点 获取所有得各单位类型
+ List deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+
+ //获取子部门(按照code改变数据结构)
+ List deptLevelVOList = DeptUtil.getDeptLevelVOList(deptDTOList, param.getId());
+ Map deptMap = deptLevelVOList.stream().collect(Collectors.toMap(DeptLevelVO::getCode, Function.identity()));
+
+ //获取主网id信息
+ DictData distributionData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
+
+ StatSubstationBizBaseParam baseParam;
+ //初始化指标类型(横向)
+ List arrayVOList = new ArrayList<>();
+ List newList=new ArrayList<>();
+ for (DeptLevelVO deptLevelVO : deptLevelVOList) {
+ //数据库查询
+ baseParam=BeanUtil.copyProperties(param, StatSubstationBizBaseParam.class);
+ //没有子部门说明就是最底层部门
+ if(CollUtil.isNotEmpty(deptLevelVO.getDeptList())){
+ List deptCodeS = deptLevelVO.getDeptList().stream().map(DeptLevelVO::getCode).collect(Collectors.toList());
+ baseParam.setIds(deptCodeS);
+ }else{
+ baseParam.setIds(Arrays.asList(deptLevelVO.getCode()));
+ }
+ //区分 年 季 月
+ String string = param.getType().toString();
+ List list = new ArrayList<>();
+ switch (string) {
+ //查询各单位累计超标监测点数-年数据
+ case BizParamConstant.STAT_BIZ_YEAR:
+ list = statHarmonicOrgYMapper.selectInfoList(baseParam,steadyDataIds,distributionData.getId());
+ break;
+ //查询各单位累计超标监测点数-季数据
+ case BizParamConstant.STAT_BIZ_QUARTER:
+ list = statHarmonicOrgQMapper.selectInfoList(baseParam,steadyDataIds,distributionData.getId());
+ break;
+ //查询各单位累计超标监测点数-月数据
+ case BizParamConstant.STAT_BIZ_MONTH:
+ list = statHarmonicOrgMMapper.selectInfoList(baseParam,steadyDataIds,distributionData.getId());
+ break;
+ default:
+ break;
+ }
+
+
+ Map orgMap = list.stream()
+ .collect(Collectors.toMap(RStatHarmonicVO::getHarmonicType, Function.identity()));
+
+ List notMeasurementList = steadyData.stream().filter(r -> !orgMap.containsKey(r.getId()))
+ .collect(Collectors.toList());
+ for (RStatHarmonicVO org : list) {
+ org.setOrgNo(deptLevelVO.getCode());
+ }
+ RStatHarmonicVO org;
+ for (DictData notData : notMeasurementList) {
+ org=new RStatHarmonicVO();
+ org.setOrgNo(deptLevelVO.getCode());
+ org.setHarmonicType(notData.getId());
+ org.setOverLimitMeasurementAverage(0);
+ org.setOverLimitMeasurementAccrued(0);
+ org.setAverageOverDay(0.0F);
+ org.setOverLimitMeasurementRatioAverage(0.0F);
+ org.setOverLimitMeasurementRatioAccrued(0.0F);
+ list.add(org);
+ }
+ newList.addAll(list);
+ }
+
+ Map> harmonicMap =
+ newList.stream().collect(Collectors.groupingBy(RStatHarmonicVO::getHarmonicType));
+
+ //重新生成数据结构
+ harmonicMap.forEach((key, value) -> {
+ if(lineTypeMap.containsKey(key)){
+ RArrayVO arrayVO=new RArrayVO();
+ DictData data = lineTypeMap.get(key);
+ arrayVO.setRowName(data.getName());
+ arrayVO.setSort(data.getSort());
+ List b=new ArrayList<>();
+ for (RStatHarmonicVO orgY : value) {
+ RStatHarmonicMVO r = BeanUtil.copyProperties(orgY, RStatHarmonicMVO.class);
+ DeptLevelVO data1 = deptMap.get(orgY.getOrgNo());
+ if (ObjectUtil.isNotNull(data1)){
+ r.setHarmonicName(data1.getName());
+ r.setSort(data1.getSort());
+ r.setOverDay(0);
+ b.add(r);
+ }
+ }
+ b.sort(Comparator.comparing(rStatHarmonicMVO -> rStatHarmonicMVO.getSort()));
+ arrayVO.setColumns(b);
+ arrayVOList.add(arrayVO);
+ }
+ });
+
+ arrayVOList.sort(Comparator.comparing(rArrayVO -> rArrayVO.getSort()));
+ return arrayVOList;
+ }
+
+ @Override
+ public List getPwRStatHarmonicYOldAll(StatisticsBizBaseParam param,Integer type) {
//对象主节点 获取所有的稳态类型
List steadyData = dicDataFeignClient.getDicDataByTypeCode(
DicDataTypeEnum.STEADY_STATIS.getCode()).getData();
@@ -219,25 +358,34 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptDTOList= DeptUtil.getDeptSubsetVOList(deptList,param.getId());
+
//获取部门id集合
List deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
Map deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
- //获取配网信息
- DictData distributionData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
+ DictData dictData ;
+ if(type==1){
+ //获取主网信息
+ dictData = dicDataFeignClient.getDicDataByCode(DicDataEnum.MAINNET_POINT.getCode()).getData();
+ }else{
+ //获取配网信息
+ dictData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
+ }
+
//初始化指标类型(横向)
List arrayVOList = new ArrayList<>();
//数据库查询
List list = statHarmonicOrgYMapper.selectList(new LambdaQueryWrapper()
- .eq(RStatHarmonicOrgY::getDataType, distributionData.getId())
- .in(RStatHarmonicOrgY::getOrgNo,deptIds)
+ .eq(RStatHarmonicOrgY::getDataType, dictData.getId())
+ .in(RStatHarmonicOrgY::getOrgNo, deptIds)
.ge(param.getStartTime() != null, RStatHarmonicOrgY::getDataDate, param.getStartTime())
.le(param.getEndTime() != null, RStatHarmonicOrgY::getDataDate, param.getEndTime()));
//根据稳态指标分组
Map> measurementMap = list.stream().collect(Collectors.groupingBy(RStatHarmonicOrgY::getHarmonicType));
//判断对象是否为空
- if(CollUtil.isNotEmpty(list)){
+ if (CollUtil.isNotEmpty(list)) {
//重新生成数据结构
measurementMap.forEach((key, value) -> {
List eventVO = new ArrayList<>();
@@ -254,6 +402,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl> listMap = value.stream().collect(Collectors.groupingBy(RStatHarmonicOrgY::getOrgNo));
@@ -283,12 +432,15 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl getPwRStatHarmonicOrgYIcon(RStatHarmonicMParam param) {
- //各单位类型
+ //子节点 获取所有得各单位类型
List deptDTOList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
- Map deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
- //获取部门id集合
- List deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
- //指标对象类型属性
+
+ //获取子部门(按照code改变数据结构)
+ List deptLevelVOList = DeptUtil.getDeptLevelVOList(deptDTOList, param.getId());
+
+ //获取主网id信息
+ DictData mainnetData = dicDataFeignClient.getDicDataByCode(DicDataEnum.MAINNET_POINT.getCode()).getData();
+
DictData harmonicData;
//判断是是否传入检测点信息值(电压)
if(StrUtil.isBlank(param.getStasisID())&&StrUtil.isBlank(param.getMonitorID())){
@@ -302,19 +454,104 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl arrayVOList=new ArrayList<>();
+ for (DeptLevelVO deptLevelVO : deptLevelVOList) {
+ //数据库查询
+ baseParam = BeanUtil.copyProperties(param, StatSubstationBizBaseParam.class);
+ //没有子部门说明就是最底层部门
+ if (CollUtil.isNotEmpty(deptLevelVO.getDeptList())) {
+ List deptCodeS = deptLevelVO.getDeptList().stream().map(DeptLevelVO::getCode).collect(Collectors.toList());
+ baseParam.setIds(deptCodeS);
+ } else {
+ baseParam.setIds(Arrays.asList(deptLevelVO.getCode()));
+ }
+ //区分 年 季 月
+ String string = param.getType().toString();
+ List list = new ArrayList<>();
+ switch (string) {
+ //查询各单位累计超标监测点数-年数据
+ case BizParamConstant.STAT_BIZ_YEAR:
+ list = statHarmonicOrgYMapper.selectInfoList(baseParam, Arrays.asList(harmonicData.getId()), mainnetData.getId());
+ break;
+ //查询各单位累计超标监测点数-季数据
+ case BizParamConstant.STAT_BIZ_QUARTER:
+ list = statHarmonicOrgQMapper.selectInfoList(baseParam, Arrays.asList(harmonicData.getId()), mainnetData.getId());
+ break;
+ //查询各单位累计超标监测点数-月数据
+ case BizParamConstant.STAT_BIZ_MONTH:
+ list = statHarmonicOrgMMapper.selectInfoList(baseParam, Arrays.asList(harmonicData.getId()), mainnetData.getId());
+ break;
+ default:
+ break;
+ }
+
+ RIconVO rIconVO = new RIconVO();
+ rIconVO.setRowName(deptLevelVO.getName());
+ rIconVO.setSort(deptLevelVO.getSort());
+ if(CollUtil.isNotEmpty(list)){
+ rIconVO.setOverLimitMeasurementAccrued(list.get(0).getOverLimitMeasurementAccrued());
+ rIconVO.setOverLimitMeasurementAverage(list.get(0).getOverLimitMeasurementAverage());
+ rIconVO.setOverLimitMeasurementRatioAccrued(list.get(0).getOverLimitMeasurementRatioAccrued());
+ rIconVO.setOverLimitMeasurementRatioAverage(list.get(0).getOverLimitMeasurementRatioAverage());
+ rIconVO.setAverageOverDay(list.get(0).getAverageOverDay());
+ }else{
+ rIconVO.setOverLimitMeasurementAverage(0);
+ rIconVO.setOverLimitMeasurementAccrued(0);
+ rIconVO.setOverLimitMeasurementRatioAverage(0.0F);
+ rIconVO.setOverLimitMeasurementRatioAccrued(0.0F);
+ rIconVO.setAverageOverDay(0.0F);
+ }
+ arrayVOList.add(rIconVO);
+ }
+
+ arrayVOList.sort(Comparator.comparing(rIconVO -> rIconVO.getSort()));
+ return arrayVOList;
+ }
+
+ @Override
+ public List getPwRStatHarmonicOrgYOldIcon(RStatHarmonicMParam param,Integer type) {
+ //各单位类型
+ List deptList = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptDTOList= DeptUtil.getDeptSubsetVOList(deptList,param.getId());
+
+ Map deptMap = deptDTOList.stream().collect(Collectors.toMap(DeptDTO::getCode, Function.identity()));
+ //获取部门id集合
+ List deptIds = deptDTOList.stream().map(DeptDTO::getCode).collect(Collectors.toList());
+ //指标对象类型属性
+ DictData harmonicData;
+ //判断是是否传入检测点信息值(电压)
+ if (StrUtil.isBlank(param.getStasisID()) && StrUtil.isBlank(param.getMonitorID())) {
+ //指标对象类型
+ List indicatorTypeDate = dicDataFeignClient.getDicDataByTypeCode(
+ DicDataTypeEnum.STEADY_STATIS.getCode()).getData();
+ indicatorTypeDate.sort(Comparator.comparing(data -> data.getSort()));
+ harmonicData = indicatorTypeDate.get(0);
+ } else {
+ //获取指标对象(频率偏差)
+ harmonicData = dicDataFeignClient.getDicDataById(
+ param.getStasisID()).getData();
+ }
//反防止参数查询数据报错
Assert.isTrue(
- CollUtil.isNotEmpty(deptDTOList)||ObjectUtil.isNotNull(harmonicData)
+ CollUtil.isNotEmpty(deptDTOList) || ObjectUtil.isNotNull(harmonicData)
, "各单位或者指标类型为空,请检查入参是否准确");
-
- //获取配网信息
- DictData distributionData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
+ DictData dictData ;
+ if(type==1){
+ //获取主网信息
+ dictData = dicDataFeignClient.getDicDataByCode(DicDataEnum.MAINNET_POINT.getCode()).getData();
+ }else{
+ //获取配网信息
+ dictData = dicDataFeignClient.getDicDataByCode(DicDataEnum.DISTRIBUTION_POINT.getCode()).getData();
+ }
//初始化对象
- List arrayVOList=new ArrayList<>();
+ List arrayVOList = new ArrayList<>();
List rStatHarmonicVoltageMS = statHarmonicOrgYMapper.selectList(new LambdaQueryWrapper()
- .eq(RStatHarmonicOrgY::getDataType,distributionData.getId())
- .in(RStatHarmonicOrgY::getOrgNo,deptIds)
+ .eq(RStatHarmonicOrgY::getDataType, dictData.getId())
+ .in(RStatHarmonicOrgY::getOrgNo, deptIds)
.eq(RStatHarmonicOrgY::getHarmonicType, harmonicData.getId())
.ge(StrUtil.isNotBlank(param.getStartTime()), RStatHarmonicOrgY::getDataDate, param.getStartTime())
.le(StrUtil.isNotBlank(param.getEndTime()), RStatHarmonicOrgY::getDataDate, param.getEndTime())
@@ -323,19 +560,19 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl> voltageMMap = rStatHarmonicVoltageMS.stream()
.collect(Collectors.groupingBy(RStatHarmonicOrgY::getOrgNo));
//对象
- if (CollUtil.isNotEmpty(rStatHarmonicVoltageMS)){
+ if (CollUtil.isNotEmpty(rStatHarmonicVoltageMS)) {
voltageMMap.forEach((key, value) -> {
- if(deptMap.containsKey(key)){
+ if (deptMap.containsKey(key)) {
DeptDTO data = deptMap.get(key);
- for (RStatHarmonicOrgY orgY : value) {
+ for (RStatHarmonicOrgY orgQ : value) {
RIconVO rIconVO = new RIconVO();
rIconVO.setRowName(data.getName());
rIconVO.setSort(data.getSort());
- rIconVO.setOverLimitMeasurementAccrued(orgY.getOverLimitMeasurementAccrued());
- rIconVO.setOverLimitMeasurementAverage(orgY.getOverLimitMeasurementAverage());
- rIconVO.setOverLimitMeasurementRatioAccrued(orgY.getOverLimitMeasurementRatioAccrued());
- rIconVO.setOverLimitMeasurementRatioAverage(orgY.getOverLimitMeasurementRatioAverage());
- rIconVO.setAverageOverDay(orgY.getAverageOverDay());
+ rIconVO.setOverLimitMeasurementAccrued(orgQ.getOverLimitMeasurementAccrued());
+ rIconVO.setOverLimitMeasurementAverage(orgQ.getOverLimitMeasurementAverage());
+ rIconVO.setOverLimitMeasurementRatioAccrued(orgQ.getOverLimitMeasurementRatioAccrued());
+ rIconVO.setOverLimitMeasurementRatioAverage(orgQ.getOverLimitMeasurementRatioAverage());
+ rIconVO.setAverageOverDay(orgQ.getAverageOverDay());
arrayVOList.add(rIconVO);
}
@@ -363,7 +600,7 @@ public class RStatHarmonicOrgYServiceImpl extends ServiceImpl
@@ -13,4 +17,17 @@ import com.baomidou.mybatisplus.extension.service.IService;
*/
public interface RMpWpPowerDetailMService extends IService {
+ /**
+ * 详细数据表分页查询
+ * @param param
+ * @return
+ */
+ Page getWindFarmDetailInfo(PowerQualityParam.PowerQualityInfoParam param);
+
+ /**
+ * 电气化铁路分页查询
+ * @param param
+ * @return
+ */
+ Page getRailwayDetailInfo(PowerQualityParam param);
}
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpEmissionMServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpEmissionMServiceImpl.java
index 3bd6cba8a..c76011738 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpEmissionMServiceImpl.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpEmissionMServiceImpl.java
@@ -1,6 +1,7 @@
package com.njcn.harmonic.service.specialanalysis.impl;
import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
@@ -133,7 +134,11 @@ public class RMpEmissionMServiceImpl extends ServiceImpl rMpEmissionIMList = rMpEmissionIMService.list(emissionIWrapper);
+ RMpEmissionIM emissionI =new RMpEmissionIM();
+ if(CollectionUtil.isNotEmpty(rMpEmissionIMList)){
+ emissionI = rMpEmissionIMList.get(0);
+ }
//查询风电场发射特性/各次谐波电流超标占比
LambdaQueryWrapper emissionIExcessRateWrapper = new LambdaQueryWrapper<>();
@@ -142,7 +147,11 @@ public class RMpEmissionMServiceImpl extends ServiceImpl rateMList = rMpEmissionIExcessRateMService.list(emissionIExcessRateWrapper);
+ RMpEmissionIExcessRateM rate =new RMpEmissionIExcessRateM();
+ if(CollectionUtil.isNotEmpty(rateMList)){
+ rate = rateMList.get(0);
+ }
RMpEmissionChartVO rMpEmissionChartVO = new RMpEmissionChartVO();
RMpEmissionIMVO rMpEmissionIMVO = new RMpEmissionIMVO();
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpInfluenceMServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpInfluenceMServiceImpl.java
index 514eb3782..c484ca14c 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpInfluenceMServiceImpl.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpInfluenceMServiceImpl.java
@@ -1,6 +1,7 @@
package com.njcn.harmonic.service.specialanalysis.impl;
import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.njcn.common.pojo.enums.response.CommonResponseEnum;
@@ -8,6 +9,7 @@ import com.njcn.common.pojo.exception.BusinessException;
import com.njcn.device.pms.api.MonitorClient;
import com.njcn.harmonic.mapper.specialanalysis.RMpInfluenceMMapper;
import com.njcn.harmonic.pojo.param.RMpInfluenceParam;
+import com.njcn.harmonic.pojo.po.RMpEmissionIExcessRateM;
import com.njcn.harmonic.pojo.po.RMpInfluenceM;
import com.njcn.harmonic.pojo.po.RMpInfluenceVExcessRateM;
import com.njcn.harmonic.pojo.po.RMpInfluenceVM;
@@ -125,7 +127,11 @@ public class RMpInfluenceMServiceImpl extends ServiceImpl list = rMpInfluenceVMService.list(emissionIWrapper);
+ RMpInfluenceVM emissionI =new RMpInfluenceVM();
+ if(CollectionUtil.isNotEmpty(list)){
+ emissionI = list.get(0);
+ }
//查询风电场发射特性/各次谐波电压超标占比
LambdaQueryWrapper emissionIExcessRateWrapper = new LambdaQueryWrapper<>();
@@ -134,7 +140,12 @@ public class RMpInfluenceMServiceImpl extends ServiceImpl rateMS = rMpInfluenceVExcessRateMService.list(emissionIExcessRateWrapper);
+ RMpInfluenceVExcessRateM rate=new RMpInfluenceVExcessRateM();
+ if(CollectionUtil.isNotEmpty(list)){
+ rate=rateMS.get(0);
+ }
RMpInfluenceChartVO rMpInfluenceChartVO = new RMpInfluenceChartVO();
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpWpPowerDetailMServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpWpPowerDetailMServiceImpl.java
index 8c19f6dc5..049ffa517 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpWpPowerDetailMServiceImpl.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RMpWpPowerDetailMServiceImpl.java
@@ -1,11 +1,37 @@
package com.njcn.harmonic.service.specialanalysis.impl;
-import com.njcn.harmonic.pojo.po.RMpWpPowerDetailM;
+import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.njcn.common.pojo.constant.BizParamConstant;
+import com.njcn.device.pms.api.MonitorClient;
+import com.njcn.device.pms.api.TractionStationClient;
+import com.njcn.device.pms.pojo.dto.PmsMonitorDTO;
+import com.njcn.device.pms.pojo.dto.PmsTractionStationDTO;
+import com.njcn.device.pms.pojo.param.PmsMonitorParam;
+import com.njcn.device.pms.pojo.param.PmsTractionStationParam;
+import com.njcn.harmonic.mapper.specialanalysis.RMpRailwayTractionDetailMapper;
+import com.njcn.harmonic.mapper.specialanalysis.RMpWpPowerDetailQMapper;
+import com.njcn.harmonic.mapper.specialanalysis.RMpWpPowerDetailYMapper;
+import com.njcn.harmonic.pojo.param.PowerQualityParam;
+import com.njcn.harmonic.pojo.po.*;
import com.njcn.harmonic.mapper.specialanalysis.RMpWpPowerDetailMMapper;
+import com.njcn.harmonic.pojo.vo.RMpRailwayTractionDetailVO;
+import com.njcn.harmonic.pojo.vo.RMpWpPowerDetailVO;
import com.njcn.harmonic.service.specialanalysis.RMpWpPowerDetailMService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.njcn.user.api.DeptFeignClient;
+import com.njcn.user.pojo.po.Dept;
+import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
+import java.util.List;
+import java.util.Map;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
/**
*
* 风电站_台区电能质量明细_月表 服务实现类
@@ -15,6 +41,131 @@ import org.springframework.stereotype.Service;
* @since 2022-11-30
*/
@Service
+@RequiredArgsConstructor
public class RMpWpPowerDetailMServiceImpl extends ServiceImpl implements RMpWpPowerDetailMService {
+ private final RMpWpPowerDetailQMapper rMpWpPowerDetailQMapper;
+ private final RMpWpPowerDetailYMapper rMpWpPowerDetailYMapper;
+ private final RMpRailwayTractionDetailMapper rMpRailwayTractionDetailMapper;
+ private final MonitorClient monitorClient;
+ private final DeptFeignClient deptFeignClient;
+ private final TractionStationClient tractionStationClient;
+
+ @Override
+ public Page getWindFarmDetailInfo(PowerQualityParam.PowerQualityInfoParam param) {
+ //获取部门id集合
+ List deptDTOS = deptFeignClient.getDirectSonSelf(param.getId()).getData();
+ List deptIds = deptDTOS.stream().map(Dept::getCode).collect(Collectors.toList());
+
+ //根据条件查询单位下面的所有配网监测点
+ PmsMonitorParam pmsMonitorParam = new PmsMonitorParam();
+ //单位id
+ pmsMonitorParam.setOrgIds(deptIds);
+ pmsMonitorParam.setMonitorTag(param.getMonitorTag());
+ pmsMonitorParam.setIsSpecialMonitor(1);
+
+ //获取监测点信息
+ List monitorDTOS = monitorClient.getMonitorInfoListByCond(pmsMonitorParam).getData();
+ if (CollUtil.isEmpty(monitorDTOS)) {
+ return new Page<>();
+ }
+ //监测点数据转换
+ Map monitorMap = monitorDTOS.stream()
+ .collect(Collectors.toMap(PmsMonitorDTO::getId, Function.identity()));
+ //获取监测点id
+ List monitorIds = monitorDTOS
+ .stream().map(PmsMonitorDTO::getId).collect(Collectors.toList());
+ Page page = new Page<>();
+ //数据库分页查询
+ switch (param.getType().toString()) {
+ //查询区域超标统计-年数据
+ case BizParamConstant.STAT_BIZ_YEAR:
+ Page pageY = rMpWpPowerDetailYMapper.selectPage(new Page<>(param.getPageNum(), param.getPageSize())
+ ,new LambdaQueryWrapper()
+ .in(RMpWpPowerDetailY::getMeasurementPointId,monitorIds)
+ .eq(RMpWpPowerDetailY::getMonitorTag,param.getMonitorTag())
+ .ge(StrUtil.isNotBlank(param.getStartTime()), RMpWpPowerDetailY::getDataDate, param.getStartTime())
+ .le(StrUtil.isNotBlank(param.getEndTime()), RMpWpPowerDetailY::getDataDate, param.getEndTime())
+ );
+ List rMpWpPowerDetailVOS = BeanUtil.copyToList(pageY.getRecords(), RMpWpPowerDetailVO.class);
+ page=BeanUtil.copyProperties(pageY,Page.class);
+ page.setRecords(rMpWpPowerDetailVOS);
+ break;
+ //查询区域超标统计-季数据
+ case BizParamConstant.STAT_BIZ_QUARTER:
+ Page pageList = rMpWpPowerDetailQMapper.selectPage(new Page<>(param.getPageNum(), param.getPageSize())
+ ,new LambdaQueryWrapper()
+ .in(RMpWpPowerDetailQ::getMeasurementPointId,monitorIds)
+ .eq(RMpWpPowerDetailQ::getMonitorTag,param.getMonitorTag())
+ .ge(StrUtil.isNotBlank(param.getStartTime()), RMpWpPowerDetailQ::getDataDate, param.getStartTime())
+ .le(StrUtil.isNotBlank(param.getEndTime()), RMpWpPowerDetailQ::getDataDate, param.getEndTime())
+ );
+ List rMpWpPowerDetailVOS2 = BeanUtil.copyToList(pageList.getRecords(), RMpWpPowerDetailVO.class);
+ page=BeanUtil.copyProperties(pageList,Page.class);
+ page.setRecords(rMpWpPowerDetailVOS2);
+ break;
+ //查询各区域超标统计-月数据
+ case BizParamConstant.STAT_BIZ_MONTH:
+ Page page1= this.page(new Page<>(param.getPageNum(), param.getPageSize())
+ ,new LambdaQueryWrapper()
+ .in(RMpWpPowerDetailM::getMeasurementPointId,monitorIds)
+ .eq(RMpWpPowerDetailM::getMonitorTag,param.getMonitorTag())
+ .ge(StrUtil.isNotBlank(param.getStartTime()), RMpWpPowerDetailM::getDataDate, param.getStartTime())
+ .le(StrUtil.isNotBlank(param.getEndTime()), RMpWpPowerDetailM::getDataDate, param.getEndTime())
+ );
+ List rMpWpPowerDetailVOS3 = BeanUtil.copyToList(page1.getRecords(), RMpWpPowerDetailVO.class);
+ page=BeanUtil.copyProperties(page1,Page.class);
+ page.setRecords(rMpWpPowerDetailVOS3);
+ break;
+ default:
+ break;
+ }
+ page.getRecords().stream().forEach(vo->{
+ if(monitorMap.containsKey(vo.getMeasurementPointId())){
+ PmsMonitorDTO monitorDTO = monitorMap.get(vo.getMeasurementPointId());
+ vo.setOrgName(monitorDTO.getOrgName());
+ vo.setMeasurementPointName(monitorDTO.getName());
+ }
+ });
+ return page;
+ }
+
+ @Override
+ public Page getRailwayDetailInfo(PowerQualityParam param) {
+ //获取部门id集合
+ List deptDTOS = deptFeignClient.getDirectSonSelf(param.getId()).getData();
+ List deptIds = deptDTOS.stream().map(Dept::getCode).collect(Collectors.toList());
+
+ //根据部门信息,获取牵引站信息
+ PmsTractionStationParam stationParam=new PmsTractionStationParam();
+ stationParam.setOrgIds(deptIds);
+ List tractionStationDTOS = tractionStationClient.getPmsTractionStationInfo(stationParam).getData();
+
+ //获取牵引站id集合
+ List ids = tractionStationDTOS.stream().map(PmsTractionStationDTO::getId).collect(Collectors.toList());
+ Map dtoMap = tractionStationDTOS.stream()
+ .collect(Collectors.toMap(PmsTractionStationDTO::getId, Function.identity()));
+
+ Page oldPage = rMpRailwayTractionDetailMapper.selectPage(new Page<>(param.getPageNum(), param.getPageSize()), new LambdaQueryWrapper()
+ .in(RMpRailwayTractionDetail::getTractionStationId, ids)
+ .ge(StrUtil.isNotBlank(param.getStartTime()), RMpRailwayTractionDetail::getDataDate, param.getStartTime())
+ .le(StrUtil.isNotBlank(param.getEndTime()), RMpRailwayTractionDetail::getDataDate, param.getEndTime())
+ );
+
+ List newList = BeanUtil.copyToList(oldPage.getRecords(), RMpRailwayTractionDetailVO.class);
+ newList.stream().forEach(vo->{
+ if(dtoMap.containsKey(vo.getTractionStationId())){
+ PmsTractionStationDTO dto = dtoMap.get(vo.getTractionStationId());
+ vo.setOrgName(dto.getOrgName());
+ vo.setRailwayType(dto.getRailwayType());
+ vo.setTractionStationName(dto.getName());
+ vo.setRailwayLineName(dto.getRailwayLineName());
+ vo.setVoltageLevel(dto.getVoltageLevel());
+ vo.setRatedCapacity(dto.getRatedCapacity());
+ }
+ });
+ Page page=BeanUtil.copyProperties(oldPage,Page.class);
+ page.setRecords(newList);
+ return page;
+ }
}
diff --git a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RStatOrgPvPowerQualityServiceImpl.java b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RStatOrgPvPowerQualityServiceImpl.java
index 58ee1bdc0..d5c22a2f1 100644
--- a/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RStatOrgPvPowerQualityServiceImpl.java
+++ b/pqs-harmonic/harmonic-boot/src/main/java/com/njcn/harmonic/service/specialanalysis/impl/RStatOrgPvPowerQualityServiceImpl.java
@@ -23,6 +23,7 @@ import com.njcn.system.enums.DicDataTypeEnum;
import com.njcn.system.pojo.po.DictData;
import com.njcn.user.api.DeptFeignClient;
import com.njcn.user.pojo.dto.DeptDTO;
+import com.njcn.user.pojo.po.Dept;
import com.njcn.web.utils.WebUtil;
import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service;
@@ -55,13 +56,13 @@ public class RStatOrgPvPowerQualityServiceImpl extends ServiceImpl deptDTOS = deptFeignClient.getDeptDescendantIndexes(param.getId(), WebUtil.filterDeptType()).getData();
+ List deptDTOS = deptFeignClient.getDirectSonSelf(param.getId()).getData();
if(CollectionUtil.isEmpty(deptDTOS)){
throw new BusinessException(CommonResponseEnum.NO_DATA, "获取部门信息为空");
}
- Map deptDTOMap = deptDTOS.stream().collect
- (Collectors.toMap(DeptDTO::getCode, Function.identity(), (key, key2) -> key2));
- List OrgNOS = deptDTOS.stream().map(DeptDTO::getCode).collect(Collectors.toList());
+ Map deptDTOMap = deptDTOS.stream().collect
+ (Collectors.toMap(Dept::getCode, Function.identity(), (key, key2) -> key2));
+ List OrgNOS = deptDTOS.stream().map(Dept::getCode).collect(Collectors.toList());
//根据字典Code,取出字典id,拼入sql中
dictDataList.stream().forEach(dictData ->{
if(DicDataEnum.EVENT_TYPE_L.getCode().equals(dictData.getCode())){
@@ -81,7 +82,7 @@ public class RStatOrgPvPowerQualityServiceImpl extends ServiceImpl page = rStatOrgPvPowerQualityYPOMapper.selectListPage(new Page<>(param.getPageNum(), param.getPageSize()), bearParam);
page.getRecords().stream().forEach(vo->{
if(deptDTOMap.containsKey(vo.getOrgNo())){
- DeptDTO deptDTO = deptDTOMap.get(vo.getOrgNo());
+ Dept deptDTO = deptDTOMap.get(vo.getOrgNo());
vo.setOrgNo(deptDTO.getName());
}
});
@@ -98,7 +99,7 @@ public class RStatOrgPvPowerQualityServiceImpl extends ServiceImpl pwMonitorList = pwMonitorClient.getPwMonitorList(pwPmsMonitorParam).getData();
+ List pwMonitorList = pwMonitorClient.getPwPhotovoltaicMonitorList(pwPmsMonitorParam).getData();
if (CollUtil.isEmpty(pwMonitorList)) {
return new Page<>();
}
diff --git a/pqs-prepare/harmonic-prepare/pom.xml b/pqs-prepare/harmonic-prepare/pom.xml
index 9b6700bcd..df35fad3a 100644
--- a/pqs-prepare/harmonic-prepare/pom.xml
+++ b/pqs-prepare/harmonic-prepare/pom.xml
@@ -111,6 +111,22 @@
prepare-api
${project.version}
+
+
+
+ com.baomidou
+ dynamic-datasource-spring-boot-starter
+
+
+
+ com.oracle.database.jdbc
+ ojdbc8
+
+
+
+ com.oracle.database.nls
+ orai18n
+