diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/dim/RDimVoltageM.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/dim/RDimVoltageM.java
index 3b6f4ba2c..fae84a1c9 100644
--- a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/dim/RDimVoltageM.java
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/dim/RDimVoltageM.java
@@ -1,14 +1,11 @@
package com.njcn.harmonic.pojo.po.dim;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
-import com.njcn.db.bo.BaseEntity;
-import java.io.Serializable;
-import java.math.Double;
-import java.time.LocalDate;
-
+import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
import lombok.Data;
-import lombok.Getter;
-import lombok.Setter;
+
+import java.time.LocalDate;
/**
*
@@ -20,28 +17,32 @@ import lombok.Setter;
*/
@Data
@TableName("r_dim_voltage_m")
-public class RDimVoltageM extends BaseEntity {
+public class RDimVoltageM {
private static final long serialVersionUID = 1L;
/**
* 统计时间yyyy-mm-dd
*/
+ @MppMultiId
private LocalDate statisDate;
/**
* 单位id
*/
+ @MppMultiId
private String orgId;
/**
* 电压等级
*/
+ @MppMultiId
private String voltageType;
/**
* 数据类型(avg:平均值 sd:标准差)
*/
+ @MppMultiId
private String dataType;
/**
@@ -64,255 +65,212 @@ public class RDimVoltageM extends BaseEntity {
*/
private Double vThd;
- /**
- * 基波电压(日95%概率大值)
- */
+ @TableField(value = "v_1")
private Double v1;
- /**
- * 2次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_2")
private Double v2;
- /**
- * 3次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_3")
private Double v3;
- /**
- * 4次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_4")
private Double v4;
- /**
- * 5次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_5")
private Double v5;
- /**
- * 6次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_6")
private Double v6;
- /**
- * 7次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_7")
private Double v7;
- /**
- * 8次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_8")
private Double v8;
- /**
- * 9次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_9")
private Double v9;
- /**
- * 10次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_10")
private Double v10;
- /**
- * 11次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_11")
private Double v11;
- /**
- * 12次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_12")
private Double v12;
- /**
- * 13次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_13")
private Double v13;
- /**
- * 14次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_14")
private Double v14;
- /**
- * 15次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_15")
private Double v15;
- /**
- * 16次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_16")
private Double v16;
- /**
- * 17次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_17")
private Double v17;
- /**
- * 18次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_18")
private Double v18;
- /**
- * 19次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_19")
private Double v19;
- /**
- * 20次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_20")
private Double v20;
- /**
- * 21次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_21")
private Double v21;
- /**
- * 22次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_22")
private Double v22;
- /**
- * 23次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_23")
private Double v23;
- /**
- * 24次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_24")
private Double v24;
- /**
- * 25次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_25")
private Double v25;
- /**
- * 26次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_26")
private Double v26;
- /**
- * 27次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_27")
private Double v27;
- /**
- * 28次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_28")
private Double v28;
- /**
- * 29次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_29")
private Double v29;
- /**
- * 30次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_30")
private Double v30;
- /**
- * 31次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_31")
private Double v31;
- /**
- * 32次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_32")
private Double v32;
- /**
- * 33次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_33")
private Double v33;
- /**
- * 34次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_34")
private Double v34;
- /**
- * 35次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_35")
private Double v35;
- /**
- * 36次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_36")
private Double v36;
- /**
- * 37次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_37")
private Double v37;
- /**
- * 38次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_38")
private Double v38;
- /**
- * 39次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_39")
private Double v39;
- /**
- * 40次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_40")
private Double v40;
- /**
- * 41次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_41")
private Double v41;
- /**
- * 42次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_42")
private Double v42;
- /**
- * 43次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_43")
private Double v43;
- /**
- * 44次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_44")
private Double v44;
- /**
- * 45次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_45")
private Double v45;
- /**
- * 46次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_46")
private Double v46;
- /**
- * 47次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_47")
private Double v47;
- /**
- * 48次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_48")
private Double v48;
- /**
- * 49次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_49")
private Double v49;
- /**
- * 50次谐波电压(日95%概率大值)
- */
+ @TableField(value = "v_50")
private Double v50;
+ public RDimVoltageM() {
+ this.v = 3.1415926;
+ this.vUnbalance = 3.1415926;
+ this.pst = 3.1415926;
+ this.vThd = 3.1415926;
+ this.v1 = 3.1415926;
+ this.v2 = 3.1415926;
+ this.v3 = 3.1415926;
+ this.v4 = 3.1415926;
+ this.v5 = 3.1415926;
+ this.v6 = 3.1415926;
+ this.v7 = 3.1415926;
+ this.v8 = 3.1415926;
+ this.v9 = 3.1415926;
+ this.v10 = 3.1415926;
+ this.v11 = 3.1415926;
+ this.v12 = 3.1415926;
+ this.v13 = 3.1415926;
+ this.v14 = 3.1415926;
+ this.v15 = 3.1415926;
+ this.v16 = 3.1415926;
+ this.v17 = 3.1415926;
+ this.v18 = 3.1415926;
+ this.v19 = 3.1415926;
+ this.v20 = 3.1415926;
+ this.v21 = 3.1415926;
+ this.v22 = 3.1415926;
+ this.v23 = 3.1415926;
+ this.v24 = 3.1415926;
+ this.v25 = 3.1415926;
+ this.v26 = 3.1415926;
+ this.v27 = 3.1415926;
+ this.v28 = 3.1415926;
+ this.v29 = 3.1415926;
+ this.v30 = 3.1415926;
+ this.v31 = 3.1415926;
+ this.v32 = 3.1415926;
+ this.v33 = 3.1415926;
+ this.v34 = 3.1415926;
+ this.v35 = 3.1415926;
+ this.v36 = 3.1415926;
+ this.v37 = 3.1415926;
+ this.v38 = 3.1415926;
+ this.v39 = 3.1415926;
+ this.v40 = 3.1415926;
+ this.v41 = 3.1415926;
+ this.v42 = 3.1415926;
+ this.v43 = 3.1415926;
+ this.v44 = 3.1415926;
+ this.v45 = 3.1415926;
+ this.v46 = 3.1415926;
+ this.v47 = 3.1415926;
+ this.v48 = 3.1415926;
+ this.v49 = 3.1415926;
+ this.v50 = 3.1415926;
+ }
+
}
diff --git a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/dim/RDimVoltageY.java b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/dim/RDimVoltageY.java
index deeab5245..30e517903 100644
--- a/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/dim/RDimVoltageY.java
+++ b/pqs-harmonic/harmonic-api/src/main/java/com/njcn/harmonic/pojo/po/dim/RDimVoltageY.java
@@ -1,14 +1,11 @@
package com.njcn.harmonic.pojo.po.dim;
+import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
-import com.njcn.db.bo.BaseEntity;
-import java.io.Serializable;
-import java.math.BigDecimal;
-import java.time.LocalDate;
-
+import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
import lombok.Data;
-import lombok.Getter;
-import lombok.Setter;
+
+import java.time.LocalDate;
/**
*
@@ -20,299 +17,260 @@ import lombok.Setter;
*/
@Data
@TableName("r_dim_voltage_y")
-public class RDimVoltageY extends BaseEntity {
+public class RDimVoltageY {
private static final long serialVersionUID = 1L;
/**
* 统计时间yyyy-mm-dd
*/
+ @MppMultiId
private LocalDate statisDate;
/**
* 单位id
*/
+ @MppMultiId
private String orgId;
/**
* 电压等级
*/
+ @MppMultiId
private String voltageType;
/**
* 数据类型(avg:平均值 sd:标准差)
*/
+ @MppMultiId
private String dataType;
/**
* 电压(日平均值)
*/
- private BigDecimal v;
+ private Double v;
/**
* 三相电压不平衡(日95%概率大值)
*/
- private BigDecimal vUnbalance;
+ private Double vUnbalance;
/**
* 长时间闪变(日最大值)
*/
- private BigDecimal pst;
+ private Double pst;
/**
* 电压总谐波畸变率(日95%概率大值)
*/
- private BigDecimal vThd;
+ private Double vThd;
- /**
- * 基波电压(日95%概率大值)
- */
- private BigDecimal v1;
+ @TableField(value = "v_1")
+ private Double v1;
- /**
- * 2次谐波电压(日95%概率大值)
- */
- private BigDecimal v2;
+ @TableField(value = "v_2")
+ private Double v2;
- /**
- * 3次谐波电压(日95%概率大值)
- */
- private BigDecimal v3;
+ @TableField(value = "v_3")
+ private Double v3;
- /**
- * 4次谐波电压(日95%概率大值)
- */
- private BigDecimal v4;
+ @TableField(value = "v_4")
+ private Double v4;
- /**
- * 5次谐波电压(日95%概率大值)
- */
- private BigDecimal v5;
+ @TableField(value = "v_5")
+ private Double v5;
- /**
- * 6次谐波电压(日95%概率大值)
- */
- private BigDecimal v6;
+ @TableField(value = "v_6")
+ private Double v6;
- /**
- * 7次谐波电压(日95%概率大值)
- */
- private BigDecimal v7;
+ @TableField(value = "v_7")
+ private Double v7;
- /**
- * 8次谐波电压(日95%概率大值)
- */
- private BigDecimal v8;
+ @TableField(value = "v_8")
+ private Double v8;
- /**
- * 9次谐波电压(日95%概率大值)
- */
- private BigDecimal v9;
+ @TableField(value = "v_9")
+ private Double v9;
- /**
- * 10次谐波电压(日95%概率大值)
- */
- private BigDecimal v10;
+ @TableField(value = "v_10")
+ private Double v10;
- /**
- * 11次谐波电压(日95%概率大值)
- */
- private BigDecimal v11;
+ @TableField(value = "v_11")
+ private Double v11;
- /**
- * 12次谐波电压(日95%概率大值)
- */
- private BigDecimal v12;
+ @TableField(value = "v_12")
+ private Double v12;
- /**
- * 13次谐波电压(日95%概率大值)
- */
- private BigDecimal v13;
+ @TableField(value = "v_13")
+ private Double v13;
- /**
- * 14次谐波电压(日95%概率大值)
- */
- private BigDecimal v14;
+ @TableField(value = "v_14")
+ private Double v14;
- /**
- * 15次谐波电压(日95%概率大值)
- */
- private BigDecimal v15;
+ @TableField(value = "v_15")
+ private Double v15;
- /**
- * 16次谐波电压(日95%概率大值)
- */
- private BigDecimal v16;
+ @TableField(value = "v_16")
+ private Double v16;
- /**
- * 17次谐波电压(日95%概率大值)
- */
- private BigDecimal v17;
+ @TableField(value = "v_17")
+ private Double v17;
- /**
- * 18次谐波电压(日95%概率大值)
- */
- private BigDecimal v18;
+ @TableField(value = "v_18")
+ private Double v18;
- /**
- * 19次谐波电压(日95%概率大值)
- */
- private BigDecimal v19;
+ @TableField(value = "v_19")
+ private Double v19;
- /**
- * 20次谐波电压(日95%概率大值)
- */
- private BigDecimal v20;
+ @TableField(value = "v_20")
+ private Double v20;
- /**
- * 21次谐波电压(日95%概率大值)
- */
- private BigDecimal v21;
+ @TableField(value = "v_21")
+ private Double v21;
- /**
- * 22次谐波电压(日95%概率大值)
- */
- private BigDecimal v22;
+ @TableField(value = "v_22")
+ private Double v22;
- /**
- * 23次谐波电压(日95%概率大值)
- */
- private BigDecimal v23;
+ @TableField(value = "v_23")
+ private Double v23;
- /**
- * 24次谐波电压(日95%概率大值)
- */
- private BigDecimal v24;
+ @TableField(value = "v_24")
+ private Double v24;
- /**
- * 25次谐波电压(日95%概率大值)
- */
- private BigDecimal v25;
+ @TableField(value = "v_25")
+ private Double v25;
- /**
- * 26次谐波电压(日95%概率大值)
- */
- private BigDecimal v26;
+ @TableField(value = "v_26")
+ private Double v26;
- /**
- * 27次谐波电压(日95%概率大值)
- */
- private BigDecimal v27;
+ @TableField(value = "v_27")
+ private Double v27;
- /**
- * 28次谐波电压(日95%概率大值)
- */
- private BigDecimal v28;
+ @TableField(value = "v_28")
+ private Double v28;
- /**
- * 29次谐波电压(日95%概率大值)
- */
- private BigDecimal v29;
+ @TableField(value = "v_29")
+ private Double v29;
- /**
- * 30次谐波电压(日95%概率大值)
- */
- private BigDecimal v30;
+ @TableField(value = "v_30")
+ private Double v30;
- /**
- * 31次谐波电压(日95%概率大值)
- */
- private BigDecimal v31;
+ @TableField(value = "v_31")
+ private Double v31;
- /**
- * 32次谐波电压(日95%概率大值)
- */
- private BigDecimal v32;
+ @TableField(value = "v_32")
+ private Double v32;
- /**
- * 33次谐波电压(日95%概率大值)
- */
- private BigDecimal v33;
+ @TableField(value = "v_33")
+ private Double v33;
- /**
- * 34次谐波电压(日95%概率大值)
- */
- private BigDecimal v34;
+ @TableField(value = "v_34")
+ private Double v34;
- /**
- * 35次谐波电压(日95%概率大值)
- */
- private BigDecimal v35;
+ @TableField(value = "v_35")
+ private Double v35;
- /**
- * 36次谐波电压(日95%概率大值)
- */
- private BigDecimal v36;
+ @TableField(value = "v_36")
+ private Double v36;
- /**
- * 37次谐波电压(日95%概率大值)
- */
- private BigDecimal v37;
+ @TableField(value = "v_37")
+ private Double v37;
- /**
- * 38次谐波电压(日95%概率大值)
- */
- private BigDecimal v38;
+ @TableField(value = "v_38")
+ private Double v38;
- /**
- * 39次谐波电压(日95%概率大值)
- */
- private BigDecimal v39;
+ @TableField(value = "v_39")
+ private Double v39;
- /**
- * 40次谐波电压(日95%概率大值)
- */
- private BigDecimal v40;
+ @TableField(value = "v_40")
+ private Double v40;
- /**
- * 41次谐波电压(日95%概率大值)
- */
- private BigDecimal v41;
+ @TableField(value = "v_41")
+ private Double v41;
- /**
- * 42次谐波电压(日95%概率大值)
- */
- private BigDecimal v42;
+ @TableField(value = "v_42")
+ private Double v42;
- /**
- * 43次谐波电压(日95%概率大值)
- */
- private BigDecimal v43;
+ @TableField(value = "v_43")
+ private Double v43;
- /**
- * 44次谐波电压(日95%概率大值)
- */
- private BigDecimal v44;
+ @TableField(value = "v_44")
+ private Double v44;
- /**
- * 45次谐波电压(日95%概率大值)
- */
- private BigDecimal v45;
+ @TableField(value = "v_45")
+ private Double v45;
- /**
- * 46次谐波电压(日95%概率大值)
- */
- private BigDecimal v46;
+ @TableField(value = "v_46")
+ private Double v46;
- /**
- * 47次谐波电压(日95%概率大值)
- */
- private BigDecimal v47;
+ @TableField(value = "v_47")
+ private Double v47;
- /**
- * 48次谐波电压(日95%概率大值)
- */
- private BigDecimal v48;
+ @TableField(value = "v_48")
+ private Double v48;
- /**
- * 49次谐波电压(日95%概率大值)
- */
- private BigDecimal v49;
+ @TableField(value = "v_49")
+ private Double v49;
- /**
- * 50次谐波电压(日95%概率大值)
- */
- private BigDecimal v50;
+ @TableField(value = "v_50")
+ private Double v50;
+
+ public RDimVoltageY() {
+ this.v = 3.1415926;
+ this.vUnbalance = 3.1415926;
+ this.pst = 3.1415926;
+ this.vThd = 3.1415926;
+ this.v1 = 3.1415926;
+ this.v2 = 3.1415926;
+ this.v3 = 3.1415926;
+ this.v4 = 3.1415926;
+ this.v5 = 3.1415926;
+ this.v6 = 3.1415926;
+ this.v7 = 3.1415926;
+ this.v8 = 3.1415926;
+ this.v9 = 3.1415926;
+ this.v10 = 3.1415926;
+ this.v11 = 3.1415926;
+ this.v12 = 3.1415926;
+ this.v13 = 3.1415926;
+ this.v14 = 3.1415926;
+ this.v15 = 3.1415926;
+ this.v16 = 3.1415926;
+ this.v17 = 3.1415926;
+ this.v18 = 3.1415926;
+ this.v19 = 3.1415926;
+ this.v20 = 3.1415926;
+ this.v21 = 3.1415926;
+ this.v22 = 3.1415926;
+ this.v23 = 3.1415926;
+ this.v24 = 3.1415926;
+ this.v25 = 3.1415926;
+ this.v26 = 3.1415926;
+ this.v27 = 3.1415926;
+ this.v28 = 3.1415926;
+ this.v29 = 3.1415926;
+ this.v30 = 3.1415926;
+ this.v31 = 3.1415926;
+ this.v32 = 3.1415926;
+ this.v33 = 3.1415926;
+ this.v34 = 3.1415926;
+ this.v35 = 3.1415926;
+ this.v36 = 3.1415926;
+ this.v37 = 3.1415926;
+ this.v38 = 3.1415926;
+ this.v39 = 3.1415926;
+ this.v40 = 3.1415926;
+ this.v41 = 3.1415926;
+ this.v42 = 3.1415926;
+ this.v43 = 3.1415926;
+ this.v44 = 3.1415926;
+ this.v45 = 3.1415926;
+ this.v46 = 3.1415926;
+ this.v47 = 3.1415926;
+ this.v48 = 3.1415926;
+ this.v49 = 3.1415926;
+ this.v50 = 3.1415926;
+ }
}
diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/dim/impl/RDimVoltageMServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/dim/impl/RDimVoltageMServiceImpl.java
index a9eb0dd70..5f4aa4d6e 100644
--- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/dim/impl/RDimVoltageMServiceImpl.java
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/dim/impl/RDimVoltageMServiceImpl.java
@@ -1,11 +1,11 @@
package com.njcn.prepare.harmonic.service.mysql.dim.impl;
+import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.date.DatePattern;
import cn.hutool.core.date.DateTime;
import cn.hutool.core.date.DateUtil;
import cn.hutool.core.date.LocalDateTimeUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
import com.njcn.device.biz.pojo.dto.DeptGetBusBarDTO;
import com.njcn.harmonic.pojo.po.dim.RDimVoltageD;
@@ -13,11 +13,9 @@ import com.njcn.harmonic.pojo.po.dim.RDimVoltageM;
import com.njcn.prepare.harmonic.mapper.mysql.dim.RDimVoltageDMapper;
import com.njcn.prepare.harmonic.mapper.mysql.dim.RDimVoltageMMapper;
import com.njcn.prepare.harmonic.pojo.bo.CalculatedParam;
-import com.njcn.prepare.harmonic.pojo.dto.LineDataDto;
import com.njcn.prepare.harmonic.service.mysql.dim.IRDimVoltageMService;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
-import org.ehcache.core.util.CollectionUtil;
import org.springframework.stereotype.Service;
import java.time.LocalDate;
@@ -47,24 +45,24 @@ public class RDimVoltageMServiceImpl extends MppServiceImpl list = calculatedParam.getIdList();
DateTime startTime = DateUtil.beginOfMonth(DateUtil.parse(calculatedParam.getDataDate()));
DateTime endTime = DateUtil.endOfMonth(DateUtil.parse(calculatedParam.getDataDate()));
+ LocalDate time = LocalDateTimeUtil.parseDate(startTime.toString(DatePattern.NORM_DATE_PATTERN),DatePattern.NORM_DATE_FORMATTER);
List deptList = list.stream().map(DeptGetBusBarDTO::getUnitId).collect(Collectors.toList());
//获取日表数据
Map> map = getDayData(startTime,endTime,deptList);
map.forEach((k,v)->{
- RDimVoltageM rDimVoltageM = new RDimVoltageM();
- rDimVoltageM.setOrgId(k);
- rDimVoltageM.setStatisDate(LocalDateTimeUtil.parseDate(startTime.toString(DatePattern.NORM_DATE_PATTERN),DatePattern.NORM_DATE_FORMATTER));
Map> map1 = v.stream().collect(Collectors.groupingBy(RDimVoltageD::getVoltageType));
map1.forEach((k1,v1)->{
- rDimVoltageM.setVoltageType(k1);
//获取平均值
- getAvg(v1,rDimVoltageM);
- result.add(rDimVoltageM);
+ RDimVoltageM rDimVoltageM1 = getAvg(v1,k,time,k1);
+ result.add(rDimVoltageM1);
//获取标准差
- getSd(v1,rDimVoltageM);
- result.add(rDimVoltageM);
+ RDimVoltageM rDimVoltageM2 = getSd(v1,k,time,k1,rDimVoltageM1);
+ result.add(rDimVoltageM2);
});
});
+ if (CollectionUtil.isNotEmpty(result)){
+ this.saveOrUpdateBatchByMultiId(result);
+ }
}
/**
@@ -84,9 +82,12 @@ public class RDimVoltageMServiceImpl extends MppServiceImpl list, RDimVoltageM rDimVoltageM) {
+ public RDimVoltageM getAvg(List list, String orgId, LocalDate time, String voltageLevel) {
+ RDimVoltageM rDimVoltageM = new RDimVoltageM();
+ rDimVoltageM.setOrgId(orgId);
+ rDimVoltageM.setStatisDate(time);
+ rDimVoltageM.setVoltageType(voltageLevel);
rDimVoltageM.setDataType("avg");
rDimVoltageM.setV(list.stream().mapToDouble(RDimVoltageD::getV).average().orElse(0d));
rDimVoltageM.setVUnbalance(list.stream().mapToDouble(RDimVoltageD::getVUnbalance).average().orElse(0d));
@@ -142,17 +143,87 @@ public class RDimVoltageMServiceImpl extends MppServiceImpl list, RDimVoltageM rDimVoltageM) {
- rDimVoltageM.setDataType("sd");
+ public RDimVoltageM getSd(List list, String orgId, LocalDate time, String voltageLevel,RDimVoltageM rDimVoltageM) {
+ double limit = 3.1415926000000005;
+ RDimVoltageM rDimVoltageM1 = new RDimVoltageM();
+ rDimVoltageM1.setOrgId(orgId);
+ rDimVoltageM1.setStatisDate(time);
+ rDimVoltageM1.setVoltageType(voltageLevel);
+ rDimVoltageM1.setDataType("sd");
+ rDimVoltageM1.setV(rDimVoltageM.getV() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV).collect(Collectors.toList()),rDimVoltageM.getV()));
+ rDimVoltageM1.setVUnbalance(rDimVoltageM.getVUnbalance() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getVUnbalance).collect(Collectors.toList()),rDimVoltageM.getVUnbalance()));
+ rDimVoltageM1.setVThd(rDimVoltageM.getVThd() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getVThd).collect(Collectors.toList()),rDimVoltageM.getVThd()));
+ rDimVoltageM1.setPst(rDimVoltageM.getPst() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getPst).collect(Collectors.toList()),rDimVoltageM.getPst()));
+ rDimVoltageM1.setV1(rDimVoltageM.getV1() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV1).collect(Collectors.toList()),rDimVoltageM.getV1()));
+ rDimVoltageM1.setV2(rDimVoltageM.getV2() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV2).collect(Collectors.toList()),rDimVoltageM.getV2()));
+ rDimVoltageM1.setV3(rDimVoltageM.getV3() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV3).collect(Collectors.toList()),rDimVoltageM.getV3()));
+ rDimVoltageM1.setV4(rDimVoltageM.getV4() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV4).collect(Collectors.toList()),rDimVoltageM.getV4()));
+ rDimVoltageM1.setV5(rDimVoltageM.getV5() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV5).collect(Collectors.toList()),rDimVoltageM.getV5()));
+ rDimVoltageM1.setV6(rDimVoltageM.getV6() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV6).collect(Collectors.toList()),rDimVoltageM.getV6()));
+ rDimVoltageM1.setV7(rDimVoltageM.getV7() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV7).collect(Collectors.toList()),rDimVoltageM.getV7()));
+ rDimVoltageM1.setV8(rDimVoltageM.getV8() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV8).collect(Collectors.toList()),rDimVoltageM.getV8()));
+ rDimVoltageM1.setV9(rDimVoltageM.getV9() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV9).collect(Collectors.toList()),rDimVoltageM.getV9()));
+ rDimVoltageM1.setV10(rDimVoltageM.getV10() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV10).collect(Collectors.toList()),rDimVoltageM.getV10()));
+ rDimVoltageM1.setV11(rDimVoltageM.getV11() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV11).collect(Collectors.toList()),rDimVoltageM.getV11()));
+ rDimVoltageM1.setV12(rDimVoltageM.getV12() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV12).collect(Collectors.toList()),rDimVoltageM.getV12()));
+ rDimVoltageM1.setV13(rDimVoltageM.getV13() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV13).collect(Collectors.toList()),rDimVoltageM.getV13()));
+ rDimVoltageM1.setV14(rDimVoltageM.getV14() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV14).collect(Collectors.toList()),rDimVoltageM.getV14()));
+ rDimVoltageM1.setV15(rDimVoltageM.getV15() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV15).collect(Collectors.toList()),rDimVoltageM.getV15()));
+ rDimVoltageM1.setV16(rDimVoltageM.getV16() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV16).collect(Collectors.toList()),rDimVoltageM.getV16()));
+ rDimVoltageM1.setV17(rDimVoltageM.getV17() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV17).collect(Collectors.toList()),rDimVoltageM.getV17()));
+ rDimVoltageM1.setV18(rDimVoltageM.getV18() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV18).collect(Collectors.toList()),rDimVoltageM.getV18()));
+ rDimVoltageM1.setV19(rDimVoltageM.getV19() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV19).collect(Collectors.toList()),rDimVoltageM.getV19()));
+ rDimVoltageM1.setV20(rDimVoltageM.getV20() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV20).collect(Collectors.toList()),rDimVoltageM.getV20()));
+ rDimVoltageM1.setV21(rDimVoltageM.getV21() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV21).collect(Collectors.toList()),rDimVoltageM.getV21()));
+ rDimVoltageM1.setV22(rDimVoltageM.getV22() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV22).collect(Collectors.toList()),rDimVoltageM.getV22()));
+ rDimVoltageM1.setV23(rDimVoltageM.getV23() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV23).collect(Collectors.toList()),rDimVoltageM.getV23()));
+ rDimVoltageM1.setV24(rDimVoltageM.getV24() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV24).collect(Collectors.toList()),rDimVoltageM.getV24()));
+ rDimVoltageM1.setV25(rDimVoltageM.getV25() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV25).collect(Collectors.toList()),rDimVoltageM.getV25()));
+ rDimVoltageM1.setV26(rDimVoltageM.getV26() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV26).collect(Collectors.toList()),rDimVoltageM.getV26()));
+ rDimVoltageM1.setV27(rDimVoltageM.getV27() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV27).collect(Collectors.toList()),rDimVoltageM.getV27()));
+ rDimVoltageM1.setV28(rDimVoltageM.getV28() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV28).collect(Collectors.toList()),rDimVoltageM.getV28()));
+ rDimVoltageM1.setV29(rDimVoltageM.getV29() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV29).collect(Collectors.toList()),rDimVoltageM.getV29()));
+ rDimVoltageM1.setV30(rDimVoltageM.getV30() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV30).collect(Collectors.toList()),rDimVoltageM.getV30()));
+ rDimVoltageM1.setV31(rDimVoltageM.getV31() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV31).collect(Collectors.toList()),rDimVoltageM.getV31()));
+ rDimVoltageM1.setV32(rDimVoltageM.getV32() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV32).collect(Collectors.toList()),rDimVoltageM.getV32()));
+ rDimVoltageM1.setV33(rDimVoltageM.getV33() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV33).collect(Collectors.toList()),rDimVoltageM.getV33()));
+ rDimVoltageM1.setV34(rDimVoltageM.getV34() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV34).collect(Collectors.toList()),rDimVoltageM.getV34()));
+ rDimVoltageM1.setV35(rDimVoltageM.getV35() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV35).collect(Collectors.toList()),rDimVoltageM.getV35()));
+ rDimVoltageM1.setV36(rDimVoltageM.getV36() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV36).collect(Collectors.toList()),rDimVoltageM.getV36()));
+ rDimVoltageM1.setV37(rDimVoltageM.getV37() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV37).collect(Collectors.toList()),rDimVoltageM.getV37()));
+ rDimVoltageM1.setV38(rDimVoltageM.getV38() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV38).collect(Collectors.toList()),rDimVoltageM.getV38()));
+ rDimVoltageM1.setV39(rDimVoltageM.getV39() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV39).collect(Collectors.toList()),rDimVoltageM.getV39()));
+ rDimVoltageM1.setV40(rDimVoltageM.getV40() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV40).collect(Collectors.toList()),rDimVoltageM.getV40()));
+ rDimVoltageM1.setV41(rDimVoltageM.getV41() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV41).collect(Collectors.toList()),rDimVoltageM.getV41()));
+ rDimVoltageM1.setV42(rDimVoltageM.getV42() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV42).collect(Collectors.toList()),rDimVoltageM.getV42()));
+ rDimVoltageM1.setV43(rDimVoltageM.getV43() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV43).collect(Collectors.toList()),rDimVoltageM.getV43()));
+ rDimVoltageM1.setV44(rDimVoltageM.getV44() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV44).collect(Collectors.toList()),rDimVoltageM.getV44()));
+ rDimVoltageM1.setV45(rDimVoltageM.getV45() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV45).collect(Collectors.toList()),rDimVoltageM.getV45()));
+ rDimVoltageM1.setV46(rDimVoltageM.getV46() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV46).collect(Collectors.toList()),rDimVoltageM.getV46()));
+ rDimVoltageM1.setV47(rDimVoltageM.getV47() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV47).collect(Collectors.toList()),rDimVoltageM.getV47()));
+ rDimVoltageM1.setV48(rDimVoltageM.getV48() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV48).collect(Collectors.toList()),rDimVoltageM.getV48()));
+ rDimVoltageM1.setV49(rDimVoltageM.getV49() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV49).collect(Collectors.toList()),rDimVoltageM.getV49()));
+ rDimVoltageM1.setV50(rDimVoltageM.getV50() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV50).collect(Collectors.toList()),rDimVoltageM.getV50()));
+ return rDimVoltageM1;
+ }
+ private static double calculateStandardDeviation(List data, double mean) {
+ return Math.sqrt(calculateVariance(data, mean));
+ }
+
+ private static double calculateVariance(List data, double mean) {
+ return data.stream()
+ .mapToDouble(Double::doubleValue)
+ .map(value -> Math.pow(value - mean, 2))
+ .average()
+ .orElse(0.0);
}
}
diff --git a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/dim/impl/RDimVoltageYServiceImpl.java b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/dim/impl/RDimVoltageYServiceImpl.java
index 2d2f460c6..b63214903 100644
--- a/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/dim/impl/RDimVoltageYServiceImpl.java
+++ b/pqs-prepare/prepare-boot/src/main/java/com/njcn/prepare/harmonic/service/mysql/dim/impl/RDimVoltageYServiceImpl.java
@@ -1,13 +1,29 @@
package com.njcn.prepare.harmonic.service.mysql.dim.impl;
-import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.date.DatePattern;
+import cn.hutool.core.date.DateTime;
+import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.date.LocalDateTimeUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
import com.njcn.device.biz.pojo.dto.DeptGetBusBarDTO;
+import com.njcn.harmonic.pojo.po.dim.RDimVoltageD;
import com.njcn.harmonic.pojo.po.dim.RDimVoltageY;
+import com.njcn.prepare.harmonic.mapper.mysql.dim.RDimVoltageDMapper;
import com.njcn.prepare.harmonic.mapper.mysql.dim.RDimVoltageYMapper;
import com.njcn.prepare.harmonic.pojo.bo.CalculatedParam;
import com.njcn.prepare.harmonic.service.mysql.dim.IRDimVoltageYService;
+import lombok.RequiredArgsConstructor;
+import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
+import java.time.LocalDate;
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+import java.util.stream.Collectors;
+
/**
*
* 区域母线**电压等级**指标标准差、平均值-年表 服务实现类
@@ -17,10 +33,197 @@ import org.springframework.stereotype.Service;
* @since 2023-11-29
*/
@Service
-public class RDimVoltageYServiceImpl extends ServiceImpl implements IRDimVoltageYService {
+@RequiredArgsConstructor
+@Slf4j
+public class RDimVoltageYServiceImpl extends MppServiceImpl implements IRDimVoltageYService {
+ private final RDimVoltageDMapper rDimVoltageDMapper;
@Override
public void busbarVoltageY(CalculatedParam calculatedParam) {
-
+ List result = new ArrayList<>();
+ List list = calculatedParam.getIdList();
+ DateTime startTime = DateUtil.beginOfYear(DateUtil.parse(calculatedParam.getDataDate()));
+ DateTime endTime = DateUtil.endOfYear(DateUtil.parse(calculatedParam.getDataDate()));
+ LocalDate time = LocalDateTimeUtil.parseDate(startTime.toString(DatePattern.NORM_DATE_PATTERN),DatePattern.NORM_DATE_FORMATTER);
+ List deptList = list.stream().map(DeptGetBusBarDTO::getUnitId).collect(Collectors.toList());
+ //获取日表数据
+ Map> map = getDayData(startTime,endTime,deptList);
+ map.forEach((k,v)->{
+ Map> map1 = v.stream().collect(Collectors.groupingBy(RDimVoltageD::getVoltageType));
+ map1.forEach((k1,v1)->{
+ //获取平均值
+ RDimVoltageY rDimVoltageY1 = getAvg(v1,k,time,k1);
+ result.add(rDimVoltageY1);
+ //获取标准差
+ RDimVoltageY rDimVoltageY2 = getSd(v1,k,time,k1,rDimVoltageY1);
+ result.add(rDimVoltageY2);
+ });
+ });
+ if (CollectionUtil.isNotEmpty(result)){
+ this.saveOrUpdateBatchByMultiId(result);
+ }
}
+
+ /**
+ * 获取日表数据,按照单位分组
+ * @param startTime 起始时间
+ * @param endTime 结束时间
+ * @param deptList 单位集合
+ * @return
+ */
+ public Map> getDayData(DateTime startTime, DateTime endTime, List deptList) {
+ LambdaQueryWrapper lambdaQueryWrapper = new LambdaQueryWrapper<>();
+ lambdaQueryWrapper.in(RDimVoltageD::getOrgId,deptList).between(RDimVoltageD::getStatisDate,startTime,endTime);
+ List list = rDimVoltageDMapper.selectList(lambdaQueryWrapper);
+ return list.stream().collect(Collectors.groupingBy(RDimVoltageD::getOrgId));
+ }
+
+ /**
+ * 获取平均值
+ * @param list 数据集合
+ */
+ public RDimVoltageY getAvg(List list, String orgId, LocalDate time, String voltageLevel) {
+ RDimVoltageY rDimVoltageY = new RDimVoltageY();
+ rDimVoltageY.setOrgId(orgId);
+ rDimVoltageY.setStatisDate(time);
+ rDimVoltageY.setVoltageType(voltageLevel);
+ rDimVoltageY.setDataType("avg");
+ rDimVoltageY.setV(list.stream().mapToDouble(RDimVoltageD::getV).average().orElse(0d));
+ rDimVoltageY.setVUnbalance(list.stream().mapToDouble(RDimVoltageD::getVUnbalance).average().orElse(0d));
+ rDimVoltageY.setPst(list.stream().mapToDouble(RDimVoltageD::getPst).average().orElse(0d));
+ rDimVoltageY.setVThd(list.stream().mapToDouble(RDimVoltageD::getVThd).average().orElse(0d));
+ rDimVoltageY.setV1(list.stream().mapToDouble(RDimVoltageD::getV1).average().orElse(0d));
+ rDimVoltageY.setV2(list.stream().mapToDouble(RDimVoltageD::getV2).average().orElse(0d));
+ rDimVoltageY.setV3(list.stream().mapToDouble(RDimVoltageD::getV3).average().orElse(0d));
+ rDimVoltageY.setV4(list.stream().mapToDouble(RDimVoltageD::getV4).average().orElse(0d));
+ rDimVoltageY.setV5(list.stream().mapToDouble(RDimVoltageD::getV5).average().orElse(0d));
+ rDimVoltageY.setV6(list.stream().mapToDouble(RDimVoltageD::getV6).average().orElse(0d));
+ rDimVoltageY.setV7(list.stream().mapToDouble(RDimVoltageD::getV7).average().orElse(0d));
+ rDimVoltageY.setV8(list.stream().mapToDouble(RDimVoltageD::getV8).average().orElse(0d));
+ rDimVoltageY.setV9(list.stream().mapToDouble(RDimVoltageD::getV9).average().orElse(0d));
+ rDimVoltageY.setV10(list.stream().mapToDouble(RDimVoltageD::getV10).average().orElse(0d));
+ rDimVoltageY.setV11(list.stream().mapToDouble(RDimVoltageD::getV11).average().orElse(0d));
+ rDimVoltageY.setV12(list.stream().mapToDouble(RDimVoltageD::getV12).average().orElse(0d));
+ rDimVoltageY.setV13(list.stream().mapToDouble(RDimVoltageD::getV13).average().orElse(0d));
+ rDimVoltageY.setV14(list.stream().mapToDouble(RDimVoltageD::getV14).average().orElse(0d));
+ rDimVoltageY.setV15(list.stream().mapToDouble(RDimVoltageD::getV15).average().orElse(0d));
+ rDimVoltageY.setV16(list.stream().mapToDouble(RDimVoltageD::getV16).average().orElse(0d));
+ rDimVoltageY.setV17(list.stream().mapToDouble(RDimVoltageD::getV17).average().orElse(0d));
+ rDimVoltageY.setV18(list.stream().mapToDouble(RDimVoltageD::getV18).average().orElse(0d));
+ rDimVoltageY.setV19(list.stream().mapToDouble(RDimVoltageD::getV19).average().orElse(0d));
+ rDimVoltageY.setV20(list.stream().mapToDouble(RDimVoltageD::getV20).average().orElse(0d));
+ rDimVoltageY.setV21(list.stream().mapToDouble(RDimVoltageD::getV21).average().orElse(0d));
+ rDimVoltageY.setV22(list.stream().mapToDouble(RDimVoltageD::getV22).average().orElse(0d));
+ rDimVoltageY.setV23(list.stream().mapToDouble(RDimVoltageD::getV23).average().orElse(0d));
+ rDimVoltageY.setV24(list.stream().mapToDouble(RDimVoltageD::getV24).average().orElse(0d));
+ rDimVoltageY.setV25(list.stream().mapToDouble(RDimVoltageD::getV25).average().orElse(0d));
+ rDimVoltageY.setV26(list.stream().mapToDouble(RDimVoltageD::getV26).average().orElse(0d));
+ rDimVoltageY.setV27(list.stream().mapToDouble(RDimVoltageD::getV27).average().orElse(0d));
+ rDimVoltageY.setV28(list.stream().mapToDouble(RDimVoltageD::getV28).average().orElse(0d));
+ rDimVoltageY.setV29(list.stream().mapToDouble(RDimVoltageD::getV29).average().orElse(0d));
+ rDimVoltageY.setV30(list.stream().mapToDouble(RDimVoltageD::getV30).average().orElse(0d));
+ rDimVoltageY.setV31(list.stream().mapToDouble(RDimVoltageD::getV31).average().orElse(0d));
+ rDimVoltageY.setV32(list.stream().mapToDouble(RDimVoltageD::getV32).average().orElse(0d));
+ rDimVoltageY.setV33(list.stream().mapToDouble(RDimVoltageD::getV33).average().orElse(0d));
+ rDimVoltageY.setV34(list.stream().mapToDouble(RDimVoltageD::getV34).average().orElse(0d));
+ rDimVoltageY.setV35(list.stream().mapToDouble(RDimVoltageD::getV35).average().orElse(0d));
+ rDimVoltageY.setV36(list.stream().mapToDouble(RDimVoltageD::getV36).average().orElse(0d));
+ rDimVoltageY.setV37(list.stream().mapToDouble(RDimVoltageD::getV37).average().orElse(0d));
+ rDimVoltageY.setV38(list.stream().mapToDouble(RDimVoltageD::getV38).average().orElse(0d));
+ rDimVoltageY.setV39(list.stream().mapToDouble(RDimVoltageD::getV39).average().orElse(0d));
+ rDimVoltageY.setV40(list.stream().mapToDouble(RDimVoltageD::getV40).average().orElse(0d));
+ rDimVoltageY.setV41(list.stream().mapToDouble(RDimVoltageD::getV41).average().orElse(0d));
+ rDimVoltageY.setV42(list.stream().mapToDouble(RDimVoltageD::getV42).average().orElse(0d));
+ rDimVoltageY.setV43(list.stream().mapToDouble(RDimVoltageD::getV43).average().orElse(0d));
+ rDimVoltageY.setV44(list.stream().mapToDouble(RDimVoltageD::getV44).average().orElse(0d));
+ rDimVoltageY.setV45(list.stream().mapToDouble(RDimVoltageD::getV45).average().orElse(0d));
+ rDimVoltageY.setV46(list.stream().mapToDouble(RDimVoltageD::getV46).average().orElse(0d));
+ rDimVoltageY.setV47(list.stream().mapToDouble(RDimVoltageD::getV47).average().orElse(0d));
+ rDimVoltageY.setV48(list.stream().mapToDouble(RDimVoltageD::getV48).average().orElse(0d));
+ rDimVoltageY.setV49(list.stream().mapToDouble(RDimVoltageD::getV49).average().orElse(0d));
+ rDimVoltageY.setV50(list.stream().mapToDouble(RDimVoltageD::getV50).average().orElse(0d));
+ return rDimVoltageY;
+ }
+
+ /**
+ * 获取标准差
+ * @param list 数据集合
+ */
+ public RDimVoltageY getSd(List list, String orgId, LocalDate time, String voltageLevel,RDimVoltageY rDimVoltageY) {
+ double limit = 3.1415926000000005;
+ RDimVoltageY rDimVoltageY1 = new RDimVoltageY();
+ rDimVoltageY1.setOrgId(orgId);
+ rDimVoltageY1.setStatisDate(time);
+ rDimVoltageY1.setVoltageType(voltageLevel);
+ rDimVoltageY1.setDataType("sd");
+ rDimVoltageY1.setV(rDimVoltageY.getV() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV).collect(Collectors.toList()),rDimVoltageY.getV()));
+ rDimVoltageY1.setVUnbalance(rDimVoltageY.getVUnbalance() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getVUnbalance).collect(Collectors.toList()),rDimVoltageY.getVUnbalance()));
+ rDimVoltageY1.setVThd(rDimVoltageY.getVThd() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getVThd).collect(Collectors.toList()),rDimVoltageY.getVThd()));
+ rDimVoltageY1.setPst(rDimVoltageY.getPst() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getPst).collect(Collectors.toList()),rDimVoltageY.getPst()));
+ rDimVoltageY1.setV1(rDimVoltageY.getV1() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV1).collect(Collectors.toList()),rDimVoltageY.getV1()));
+ rDimVoltageY1.setV2(rDimVoltageY.getV2() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV2).collect(Collectors.toList()),rDimVoltageY.getV2()));
+ rDimVoltageY1.setV3(rDimVoltageY.getV3() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV3).collect(Collectors.toList()),rDimVoltageY.getV3()));
+ rDimVoltageY1.setV4(rDimVoltageY.getV4() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV4).collect(Collectors.toList()),rDimVoltageY.getV4()));
+ rDimVoltageY1.setV5(rDimVoltageY.getV5() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV5).collect(Collectors.toList()),rDimVoltageY.getV5()));
+ rDimVoltageY1.setV6(rDimVoltageY.getV6() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV6).collect(Collectors.toList()),rDimVoltageY.getV6()));
+ rDimVoltageY1.setV7(rDimVoltageY.getV7() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV7).collect(Collectors.toList()),rDimVoltageY.getV7()));
+ rDimVoltageY1.setV8(rDimVoltageY.getV8() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV8).collect(Collectors.toList()),rDimVoltageY.getV8()));
+ rDimVoltageY1.setV9(rDimVoltageY.getV9() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV9).collect(Collectors.toList()),rDimVoltageY.getV9()));
+ rDimVoltageY1.setV10(rDimVoltageY.getV10() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV10).collect(Collectors.toList()),rDimVoltageY.getV10()));
+ rDimVoltageY1.setV11(rDimVoltageY.getV11() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV11).collect(Collectors.toList()),rDimVoltageY.getV11()));
+ rDimVoltageY1.setV12(rDimVoltageY.getV12() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV12).collect(Collectors.toList()),rDimVoltageY.getV12()));
+ rDimVoltageY1.setV13(rDimVoltageY.getV13() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV13).collect(Collectors.toList()),rDimVoltageY.getV13()));
+ rDimVoltageY1.setV14(rDimVoltageY.getV14() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV14).collect(Collectors.toList()),rDimVoltageY.getV14()));
+ rDimVoltageY1.setV15(rDimVoltageY.getV15() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV15).collect(Collectors.toList()),rDimVoltageY.getV15()));
+ rDimVoltageY1.setV16(rDimVoltageY.getV16() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV16).collect(Collectors.toList()),rDimVoltageY.getV16()));
+ rDimVoltageY1.setV17(rDimVoltageY.getV17() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV17).collect(Collectors.toList()),rDimVoltageY.getV17()));
+ rDimVoltageY1.setV18(rDimVoltageY.getV18() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV18).collect(Collectors.toList()),rDimVoltageY.getV18()));
+ rDimVoltageY1.setV19(rDimVoltageY.getV19() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV19).collect(Collectors.toList()),rDimVoltageY.getV19()));
+ rDimVoltageY1.setV20(rDimVoltageY.getV20() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV20).collect(Collectors.toList()),rDimVoltageY.getV20()));
+ rDimVoltageY1.setV21(rDimVoltageY.getV21() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV21).collect(Collectors.toList()),rDimVoltageY.getV21()));
+ rDimVoltageY1.setV22(rDimVoltageY.getV22() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV22).collect(Collectors.toList()),rDimVoltageY.getV22()));
+ rDimVoltageY1.setV23(rDimVoltageY.getV23() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV23).collect(Collectors.toList()),rDimVoltageY.getV23()));
+ rDimVoltageY1.setV24(rDimVoltageY.getV24() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV24).collect(Collectors.toList()),rDimVoltageY.getV24()));
+ rDimVoltageY1.setV25(rDimVoltageY.getV25() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV25).collect(Collectors.toList()),rDimVoltageY.getV25()));
+ rDimVoltageY1.setV26(rDimVoltageY.getV26() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV26).collect(Collectors.toList()),rDimVoltageY.getV26()));
+ rDimVoltageY1.setV27(rDimVoltageY.getV27() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV27).collect(Collectors.toList()),rDimVoltageY.getV27()));
+ rDimVoltageY1.setV28(rDimVoltageY.getV28() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV28).collect(Collectors.toList()),rDimVoltageY.getV28()));
+ rDimVoltageY1.setV29(rDimVoltageY.getV29() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV29).collect(Collectors.toList()),rDimVoltageY.getV29()));
+ rDimVoltageY1.setV30(rDimVoltageY.getV30() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV30).collect(Collectors.toList()),rDimVoltageY.getV30()));
+ rDimVoltageY1.setV31(rDimVoltageY.getV31() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV31).collect(Collectors.toList()),rDimVoltageY.getV31()));
+ rDimVoltageY1.setV32(rDimVoltageY.getV32() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV32).collect(Collectors.toList()),rDimVoltageY.getV32()));
+ rDimVoltageY1.setV33(rDimVoltageY.getV33() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV33).collect(Collectors.toList()),rDimVoltageY.getV33()));
+ rDimVoltageY1.setV34(rDimVoltageY.getV34() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV34).collect(Collectors.toList()),rDimVoltageY.getV34()));
+ rDimVoltageY1.setV35(rDimVoltageY.getV35() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV35).collect(Collectors.toList()),rDimVoltageY.getV35()));
+ rDimVoltageY1.setV36(rDimVoltageY.getV36() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV36).collect(Collectors.toList()),rDimVoltageY.getV36()));
+ rDimVoltageY1.setV37(rDimVoltageY.getV37() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV37).collect(Collectors.toList()),rDimVoltageY.getV37()));
+ rDimVoltageY1.setV38(rDimVoltageY.getV38() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV38).collect(Collectors.toList()),rDimVoltageY.getV38()));
+ rDimVoltageY1.setV39(rDimVoltageY.getV39() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV39).collect(Collectors.toList()),rDimVoltageY.getV39()));
+ rDimVoltageY1.setV40(rDimVoltageY.getV40() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV40).collect(Collectors.toList()),rDimVoltageY.getV40()));
+ rDimVoltageY1.setV41(rDimVoltageY.getV41() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV41).collect(Collectors.toList()),rDimVoltageY.getV41()));
+ rDimVoltageY1.setV42(rDimVoltageY.getV42() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV42).collect(Collectors.toList()),rDimVoltageY.getV42()));
+ rDimVoltageY1.setV43(rDimVoltageY.getV43() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV43).collect(Collectors.toList()),rDimVoltageY.getV43()));
+ rDimVoltageY1.setV44(rDimVoltageY.getV44() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV44).collect(Collectors.toList()),rDimVoltageY.getV44()));
+ rDimVoltageY1.setV45(rDimVoltageY.getV45() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV45).collect(Collectors.toList()),rDimVoltageY.getV45()));
+ rDimVoltageY1.setV46(rDimVoltageY.getV46() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV46).collect(Collectors.toList()),rDimVoltageY.getV46()));
+ rDimVoltageY1.setV47(rDimVoltageY.getV47() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV47).collect(Collectors.toList()),rDimVoltageY.getV47()));
+ rDimVoltageY1.setV48(rDimVoltageY.getV48() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV48).collect(Collectors.toList()),rDimVoltageY.getV48()));
+ rDimVoltageY1.setV49(rDimVoltageY.getV49() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV49).collect(Collectors.toList()),rDimVoltageY.getV49()));
+ rDimVoltageY1.setV50(rDimVoltageY.getV50() == limit ? limit : calculateStandardDeviation(list.stream().map(RDimVoltageD::getV50).collect(Collectors.toList()),rDimVoltageY.getV50()));
+ return rDimVoltageY1;
+ }
+
+ private static double calculateStandardDeviation(List data, double mean) {
+ return Math.sqrt(calculateVariance(data, mean));
+ }
+
+ private static double calculateVariance(List data, double mean) {
+ return data.stream()
+ .mapToDouble(Double::doubleValue)
+ .map(value -> Math.pow(value - mean, 2))
+ .average()
+ .orElse(0.0);
+ }
+
+
}