zbj//1.变电站指标统计_月统计 算法
This commit is contained in:
@@ -0,0 +1,116 @@
|
||||
package com.njcn.prepare.harmonic.pojo.po;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.IdType;
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableId;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
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;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author zbj
|
||||
* @since 2023-06-20
|
||||
*/
|
||||
@Data
|
||||
@TableName("r_stat_substation_m")
|
||||
public class RStatSubstationMPO {
|
||||
|
||||
@MppMultiId(value = "data_date")
|
||||
private LocalDate dataDate;
|
||||
|
||||
@MppMultiId(value = "substation_id")
|
||||
private String substationId;
|
||||
|
||||
@TableField(value = "effective_measurement_average")
|
||||
private Float effectiveMeasurementAverage;
|
||||
|
||||
@TableField(value = "effective_measurement_accrued")
|
||||
private Integer effectiveMeasurementAccrued;
|
||||
|
||||
@TableField(value = "harmonic_over_day")
|
||||
private Float harmonicOverDay;
|
||||
|
||||
@TableField(value = "harmonic_count")
|
||||
private Integer harmonicCount;
|
||||
|
||||
@TableField(value = "freq_over_day")
|
||||
private Float freqOverDay;
|
||||
|
||||
@TableField(value = "freq_count")
|
||||
private Integer freqCount;
|
||||
|
||||
@TableField(value = "v_dev_over_day")
|
||||
private Float vDevOverDay;
|
||||
|
||||
@TableField(value = "v_dev_count")
|
||||
private Integer vDevCount;
|
||||
|
||||
@TableField(value = "v_over_day")
|
||||
private Float vOverDay;
|
||||
|
||||
@TableField(value = "v_count")
|
||||
private Integer vCount;
|
||||
|
||||
@TableField(value = "i_over_day")
|
||||
private Float iOverDay;
|
||||
|
||||
@TableField(value = "i_count")
|
||||
private Integer iCount;
|
||||
|
||||
@TableField(value = "unbalance_over_day")
|
||||
private Float unbalanceOverDay;
|
||||
|
||||
@TableField(value = "unbalance_count")
|
||||
private Integer unbalanceCount;
|
||||
|
||||
@TableField(value = "i_neg_over_day")
|
||||
private Float iNegOverDay;
|
||||
|
||||
@TableField(value = "i_neg_count")
|
||||
private Integer iNegCount;
|
||||
|
||||
@TableField(value = "flicker_over_day")
|
||||
private Float flickerOverDay;
|
||||
|
||||
@TableField(value = "flicker_count")
|
||||
private Integer flickerCount;
|
||||
|
||||
@TableField(value = "inuharm_over_day")
|
||||
private Float inuharmOverDay;
|
||||
|
||||
@TableField(value = "inuharm_count")
|
||||
private Integer inuharmCount;
|
||||
|
||||
@TableField(value = "event_count")
|
||||
private Integer eventCount;
|
||||
|
||||
@TableField(value = "event_freq")
|
||||
private Float eventFreq;
|
||||
|
||||
@TableField(value = "sag_count")
|
||||
private Integer sagCount;
|
||||
|
||||
@TableField(value = "sag_freq")
|
||||
private Float sagFreq;
|
||||
|
||||
@TableField(value = "swell_count")
|
||||
private Integer swellCount;
|
||||
|
||||
@TableField(value = "swell_freq")
|
||||
private Float swellFreq;
|
||||
|
||||
@TableField(value = "interrupt_count")
|
||||
private Integer interruptCount;
|
||||
|
||||
@TableField(value = "interrupt_freq")
|
||||
private Float interruptFreq;
|
||||
|
||||
|
||||
}
|
||||
@@ -5,6 +5,7 @@ import com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailM;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* RMpPartHarmonicDetailMMapper
|
||||
@@ -17,4 +18,6 @@ public interface RMpPartHarmonicDetailMMapper extends MppBaseMapper<RMpPartHarmo
|
||||
|
||||
List<RMpPartHarmonicDetailM> getHarmonicDetailMonthOne(@Param("startTime") String startTime, @Param("endTime")String endTime, @Param("lineList") List<String> lineList);
|
||||
|
||||
Map<String, Object> getPartSum(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("lineIds") List<String> lineIds);
|
||||
|
||||
}
|
||||
|
||||
@@ -6,6 +6,7 @@ import com.njcn.harmonic.pojo.po.RMpSurplusHarmonicDetailM;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* RMpSurplusHarmonicDetailMMapper
|
||||
@@ -18,4 +19,6 @@ public interface RMpSurplusHarmonicDetailMMapper extends MppBaseMapper<RMpSurplu
|
||||
|
||||
List<RMpSurplusHarmonicDetailM> getHarmonicDetailMonthTwo(@Param("startTime") String startTime,@Param("endTime") String endTime, @Param("lineList") List<String> lineList);
|
||||
|
||||
Map<String, Object> getSurplusSum(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("lineIds") List<String> lineIds);
|
||||
|
||||
}
|
||||
|
||||
@@ -4,127 +4,146 @@
|
||||
|
||||
<select id="getHarmonicDetailMonthOne" resultType="com.njcn.harmonic.pojo.po.RMpPartHarmonicDetailM">
|
||||
select
|
||||
measurement_point_id measurementPointId,
|
||||
sum(is_harmonic) measurementOverDay,
|
||||
sum(is_freq) freqOverDay,
|
||||
sum(is_v_dev_up) vDevUpOverDay,
|
||||
sum(is_v_dev_low) vDevLowOverDay,
|
||||
sum(is_v_dev) vDevOverDay,
|
||||
sum(is_v_thd) vThdOverDay,
|
||||
sum(is_v) vOverDay,
|
||||
sum(is_i) iOverDay,
|
||||
sum(is_v_2) v2OverDay,
|
||||
sum(is_v_3) v3OverDay,
|
||||
sum(is_v_4) v4OverDay,
|
||||
sum(is_v_5) v5OverDay,
|
||||
sum(is_v_6) v6OverDay,
|
||||
sum(is_v_7) v7OverDay,
|
||||
sum(is_v_8) v8OverDay,
|
||||
sum(is_v_9) v9OverDay,
|
||||
sum(is_v_10) v10OverDay,
|
||||
sum(is_v_11) v11OverDay,
|
||||
sum(is_v_12) v12OverDay,
|
||||
sum(is_v_13) v13OverDay,
|
||||
sum(is_v_14) v14OverDay,
|
||||
sum(is_v_15) v15OverDay,
|
||||
sum(is_v_16) v16OverDay,
|
||||
sum(is_v_17) v17OverDay,
|
||||
sum(is_v_18) v18OverDay,
|
||||
sum(is_v_19) v19OverDay,
|
||||
sum(is_v_20) v20OverDay,
|
||||
sum(is_v_21) v21OverDay,
|
||||
sum(is_v_22) v22OverDay,
|
||||
sum(is_v_23) v23OverDay,
|
||||
sum(is_v_24) v24OverDay,
|
||||
sum(is_v_25) v25OverDay,
|
||||
sum(is_v_26) v26OverDay,
|
||||
sum(is_v_27) v27OverDay,
|
||||
sum(is_v_28) v28OverDay,
|
||||
sum(is_v_29) v29OverDay,
|
||||
sum(is_v_30) v30OverDay,
|
||||
sum(is_v_31) v31OverDay,
|
||||
sum(is_v_32) v32OverDay,
|
||||
sum(is_v_33) v33OverDay,
|
||||
sum(is_v_34) v34OverDay,
|
||||
sum(is_v_35) v35OverDay,
|
||||
sum(is_v_36) v36OverDay,
|
||||
sum(is_v_37) v37OverDay,
|
||||
sum(is_v_38) v38OverDay,
|
||||
sum(is_v_39) v39OverDay,
|
||||
sum(is_v_40) v40OverDay,
|
||||
sum(is_v_41) v41OverDay,
|
||||
sum(is_v_42) v42OverDay,
|
||||
sum(is_v_43) v43OverDay,
|
||||
sum(is_v_44) v44OverDay,
|
||||
sum(is_v_45) v45OverDay,
|
||||
sum(is_v_46) v46OverDay,
|
||||
sum(is_v_47) v47OverDay,
|
||||
sum(is_v_48) v48OverDay,
|
||||
sum(is_v_49) v49OverDay,
|
||||
sum(is_v_50) v50OverDay,
|
||||
sum(is_i_2) i2OverDay,
|
||||
sum(is_i_3) i3OverDay,
|
||||
sum(is_i_4) i4OverDay,
|
||||
sum(is_i_5) i5OverDay,
|
||||
sum(is_i_6) i6OverDay,
|
||||
sum(is_i_7) i7OverDay,
|
||||
sum(is_i_8) i8OverDay,
|
||||
sum(is_i_9) i9OverDay,
|
||||
sum(is_i_10) i10OverDay,
|
||||
sum(is_i_11) i11OverDay,
|
||||
sum(is_i_12) i12OverDay,
|
||||
sum(is_i_13) i13OverDay,
|
||||
sum(is_i_14) i14OverDay,
|
||||
sum(is_i_15) i15OverDay,
|
||||
sum(is_i_16) i16OverDay,
|
||||
sum(is_i_17) i17OverDay,
|
||||
sum(is_i_18) i18OverDay,
|
||||
sum(is_i_19) i19OverDay,
|
||||
sum(is_i_20) i20OverDay,
|
||||
sum(is_i_21) i21OverDay,
|
||||
sum(is_i_22) i22OverDay,
|
||||
sum(is_i_23) i23OverDay,
|
||||
sum(is_i_24) i24OverDay,
|
||||
sum(is_i_25) i25OverDay,
|
||||
sum(is_i_26) i26OverDay,
|
||||
sum(is_i_27) i27OverDay,
|
||||
sum(is_i_28) i28OverDay,
|
||||
sum(is_i_29) i29OverDay,
|
||||
sum(is_i_30) i30OverDay,
|
||||
sum(is_i_31) i31OverDay,
|
||||
sum(is_i_32) i32OverDay,
|
||||
sum(is_i_33) i33OverDay,
|
||||
sum(is_i_34) i34OverDay,
|
||||
sum(is_i_35) i35OverDay,
|
||||
sum(is_i_36) i36OverDay,
|
||||
sum(is_i_37) i37OverDay,
|
||||
sum(is_i_38) i38OverDay,
|
||||
sum(is_i_39) i39OverDay,
|
||||
sum(is_i_40) i40OverDay,
|
||||
sum(is_i_41) i41OverDay,
|
||||
sum(is_i_42) i42OverDay,
|
||||
sum(is_i_43) i43OverDay,
|
||||
sum(is_i_44) i44OverDay,
|
||||
sum(is_i_45) i45OverDay,
|
||||
sum(is_i_46) i46OverDay,
|
||||
sum(is_i_47) i47OverDay,
|
||||
sum(is_i_48) i48OverDay,
|
||||
sum(is_i_49) i49OverDay,
|
||||
sum(is_i_50) i50OverDay,
|
||||
sum(is_unbalance),
|
||||
sum(is_i_neg)
|
||||
measurement_point_id measurementPointId,
|
||||
sum(is_harmonic) measurementOverDay,
|
||||
sum(is_freq) freqOverDay,
|
||||
sum(is_v_dev_up) vDevUpOverDay,
|
||||
sum(is_v_dev_low) vDevLowOverDay,
|
||||
sum(is_v_dev) vDevOverDay,
|
||||
sum(is_v_thd) vThdOverDay,
|
||||
sum(is_v) vOverDay,
|
||||
sum(is_i) iOverDay,
|
||||
sum(is_v_2) v2OverDay,
|
||||
sum(is_v_3) v3OverDay,
|
||||
sum(is_v_4) v4OverDay,
|
||||
sum(is_v_5) v5OverDay,
|
||||
sum(is_v_6) v6OverDay,
|
||||
sum(is_v_7) v7OverDay,
|
||||
sum(is_v_8) v8OverDay,
|
||||
sum(is_v_9) v9OverDay,
|
||||
sum(is_v_10) v10OverDay,
|
||||
sum(is_v_11) v11OverDay,
|
||||
sum(is_v_12) v12OverDay,
|
||||
sum(is_v_13) v13OverDay,
|
||||
sum(is_v_14) v14OverDay,
|
||||
sum(is_v_15) v15OverDay,
|
||||
sum(is_v_16) v16OverDay,
|
||||
sum(is_v_17) v17OverDay,
|
||||
sum(is_v_18) v18OverDay,
|
||||
sum(is_v_19) v19OverDay,
|
||||
sum(is_v_20) v20OverDay,
|
||||
sum(is_v_21) v21OverDay,
|
||||
sum(is_v_22) v22OverDay,
|
||||
sum(is_v_23) v23OverDay,
|
||||
sum(is_v_24) v24OverDay,
|
||||
sum(is_v_25) v25OverDay,
|
||||
sum(is_v_26) v26OverDay,
|
||||
sum(is_v_27) v27OverDay,
|
||||
sum(is_v_28) v28OverDay,
|
||||
sum(is_v_29) v29OverDay,
|
||||
sum(is_v_30) v30OverDay,
|
||||
sum(is_v_31) v31OverDay,
|
||||
sum(is_v_32) v32OverDay,
|
||||
sum(is_v_33) v33OverDay,
|
||||
sum(is_v_34) v34OverDay,
|
||||
sum(is_v_35) v35OverDay,
|
||||
sum(is_v_36) v36OverDay,
|
||||
sum(is_v_37) v37OverDay,
|
||||
sum(is_v_38) v38OverDay,
|
||||
sum(is_v_39) v39OverDay,
|
||||
sum(is_v_40) v40OverDay,
|
||||
sum(is_v_41) v41OverDay,
|
||||
sum(is_v_42) v42OverDay,
|
||||
sum(is_v_43) v43OverDay,
|
||||
sum(is_v_44) v44OverDay,
|
||||
sum(is_v_45) v45OverDay,
|
||||
sum(is_v_46) v46OverDay,
|
||||
sum(is_v_47) v47OverDay,
|
||||
sum(is_v_48) v48OverDay,
|
||||
sum(is_v_49) v49OverDay,
|
||||
sum(is_v_50) v50OverDay,
|
||||
sum(is_i_2) i2OverDay,
|
||||
sum(is_i_3) i3OverDay,
|
||||
sum(is_i_4) i4OverDay,
|
||||
sum(is_i_5) i5OverDay,
|
||||
sum(is_i_6) i6OverDay,
|
||||
sum(is_i_7) i7OverDay,
|
||||
sum(is_i_8) i8OverDay,
|
||||
sum(is_i_9) i9OverDay,
|
||||
sum(is_i_10) i10OverDay,
|
||||
sum(is_i_11) i11OverDay,
|
||||
sum(is_i_12) i12OverDay,
|
||||
sum(is_i_13) i13OverDay,
|
||||
sum(is_i_14) i14OverDay,
|
||||
sum(is_i_15) i15OverDay,
|
||||
sum(is_i_16) i16OverDay,
|
||||
sum(is_i_17) i17OverDay,
|
||||
sum(is_i_18) i18OverDay,
|
||||
sum(is_i_19) i19OverDay,
|
||||
sum(is_i_20) i20OverDay,
|
||||
sum(is_i_21) i21OverDay,
|
||||
sum(is_i_22) i22OverDay,
|
||||
sum(is_i_23) i23OverDay,
|
||||
sum(is_i_24) i24OverDay,
|
||||
sum(is_i_25) i25OverDay,
|
||||
sum(is_i_26) i26OverDay,
|
||||
sum(is_i_27) i27OverDay,
|
||||
sum(is_i_28) i28OverDay,
|
||||
sum(is_i_29) i29OverDay,
|
||||
sum(is_i_30) i30OverDay,
|
||||
sum(is_i_31) i31OverDay,
|
||||
sum(is_i_32) i32OverDay,
|
||||
sum(is_i_33) i33OverDay,
|
||||
sum(is_i_34) i34OverDay,
|
||||
sum(is_i_35) i35OverDay,
|
||||
sum(is_i_36) i36OverDay,
|
||||
sum(is_i_37) i37OverDay,
|
||||
sum(is_i_38) i38OverDay,
|
||||
sum(is_i_39) i39OverDay,
|
||||
sum(is_i_40) i40OverDay,
|
||||
sum(is_i_41) i41OverDay,
|
||||
sum(is_i_42) i42OverDay,
|
||||
sum(is_i_43) i43OverDay,
|
||||
sum(is_i_44) i44OverDay,
|
||||
sum(is_i_45) i45OverDay,
|
||||
sum(is_i_46) i46OverDay,
|
||||
sum(is_i_47) i47OverDay,
|
||||
sum(is_i_48) i48OverDay,
|
||||
sum(is_i_49) i49OverDay,
|
||||
sum(is_i_50) i50OverDay,
|
||||
sum(is_unbalance),
|
||||
sum(is_i_neg)
|
||||
from
|
||||
r_mp_part_harmonic_detail_d
|
||||
r_mp_part_harmonic_detail_d
|
||||
where
|
||||
data_date between #{startTime} and #{endTime}
|
||||
<if test="lineList != null and lineList.size() > 0">
|
||||
and measurement_point_id in
|
||||
<foreach collection="lineList" item="item" open="(" close=")" separator=",">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
data_date between #{startTime} and #{endTime}
|
||||
<if test="lineList != null and lineList.size() > 0">
|
||||
and measurement_point_id in
|
||||
<foreach collection="lineList" item="item" open="(" close=")" separator=",">
|
||||
#{item}
|
||||
</foreach>
|
||||
</if>
|
||||
group by
|
||||
measurement_point_id
|
||||
measurement_point_id
|
||||
</select>
|
||||
|
||||
<select id="getPartSum" resultType="java.util.Map">
|
||||
SELECT
|
||||
count( CASE WHEN measurement_over_day > 0 THEN 1 END ) "measurementOverDayCount",
|
||||
count( CASE WHEN freq_over_day > 0 THEN 1 END ) "freqOverDayCount",
|
||||
count( CASE WHEN v_dev_over_day > 0 THEN 1 END ) "vDevOverDayCount",
|
||||
count( CASE WHEN v_over_day > 0 THEN 1 END ) "vOverDayCount",
|
||||
count( CASE WHEN i_over_day > 0 THEN 1 END ) "iOverDayCount",
|
||||
count( CASE WHEN unbalance_over_day > 0 THEN 1 END ) "unbalanceOverDayCount",
|
||||
count( CASE WHEN i_neg_over_day > 0 THEN 1 END ) "iNegOverDayCount"
|
||||
FROM
|
||||
r_mp_part_harmonic_detail_m
|
||||
WHERE
|
||||
measurement_point_id in
|
||||
<foreach collection="lineIds" item="item" open="(" close=")" separator=",">
|
||||
#{item}
|
||||
</foreach>
|
||||
AND data_date between #{startTime} and #{endTime}
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
||||
@@ -71,4 +71,18 @@
|
||||
measurement_point_id
|
||||
</select>
|
||||
|
||||
<select id="getSurplusSum" resultType="java.util.Map">
|
||||
SELECT
|
||||
count( CASE WHEN flicker_over_day > 0 THEN 1 END ) "flickerOverDayCount",
|
||||
count( CASE WHEN inuharm_over_day > 0 THEN 1 END ) "inuharmOverDayCount"
|
||||
FROM
|
||||
r_mp_surplus_harmonic_detail_m
|
||||
WHERE
|
||||
measurement_point_id in
|
||||
<foreach collection="lineIds" item="item" open="(" close=")" separator=",">
|
||||
#{item}
|
||||
</foreach>
|
||||
AND data_date between #{startTime} and #{endTime}
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
|
||||
@@ -1,13 +1,12 @@
|
||||
package com.njcn.prepare.harmonic.mapper.mysql.newalgorithm;
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventDPO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventDVO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatSubstationDPO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* Description:
|
||||
@@ -19,4 +18,7 @@ import java.util.List;
|
||||
*/
|
||||
@Mapper
|
||||
public interface RStatSubstationDPOMapper extends MppBaseMapper<RStatSubstationDPO> {
|
||||
|
||||
Map<String, Object> getSumAndCount(@Param("startTime") String startTime, @Param("endTime") String endTime, @Param("substationId") String substationId);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.njcn.prepare.harmonic.mapper.mysql.newalgorithm;
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatSubstationMPO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
|
||||
/**
|
||||
* Description:
|
||||
* 接口文档访问地址:http://serverIP:port/swagger-ui.html
|
||||
* Date: 2022/12/13 15:39【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
@Mapper
|
||||
public interface RStatSubstationMPOMapper extends MppBaseMapper<RStatSubstationMPO> {
|
||||
}
|
||||
@@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
|
||||
<mapper namespace="com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatSubstationDPOMapper">
|
||||
|
||||
<select id="getSumAndCount" resultType="java.util.Map">
|
||||
SELECT t.effectiveMeasurementCountAvg,
|
||||
t.harmonicCountCount,
|
||||
t.freqCountCount,
|
||||
t.vDevCountCount,
|
||||
t.vCountCount,
|
||||
t.iCountCount,
|
||||
t.unbalanceCountCount,
|
||||
t.iNegCountCount,
|
||||
t.flickerCountCount,
|
||||
t.inuharmCountCount,
|
||||
t.eventCountSum,
|
||||
CASE
|
||||
|
||||
WHEN t.eventMeasurementCountSum = 0 THEN
|
||||
0.00
|
||||
ELSE round(t.eventCountSum / t.eventMeasurementCountSum, 2)
|
||||
END "eventCountFrequency",
|
||||
t.sagCountSum,
|
||||
CASE
|
||||
|
||||
WHEN t.sagMeasurementCountSum = 0 THEN
|
||||
0.00
|
||||
ELSE round(t.sagCountSum / t.sagMeasurementCountSum, 2)
|
||||
END "sagCountFrequency",
|
||||
t.swellCountSum,
|
||||
CASE
|
||||
|
||||
WHEN t.swellMeasurementCountSum = 0 THEN
|
||||
0.00
|
||||
ELSE round(t.swellCountSum / t.swellMeasurementCountSum, 2)
|
||||
END "swellCountFrequency",
|
||||
t.interruptCountSum,
|
||||
CASE
|
||||
|
||||
WHEN t.interruptMeasurementCountSum = 0 THEN
|
||||
0.00
|
||||
ELSE round(t.interruptCountSum / t.interruptMeasurementCountSum, 2)
|
||||
END "interruptCountFrequency"
|
||||
FROM (
|
||||
SELECT round(avg(effective_measurement_count), 2) "effectiveMeasurementCountAvg",
|
||||
count(CASE WHEN harmonic_count > 0 THEN 1 END) "harmonicCountCount",
|
||||
count(CASE WHEN freq_count > 0 THEN 1 END) "freqCountCount",
|
||||
count(CASE WHEN v_dev_count > 0 THEN 1 END) "vDevCountCount",
|
||||
count(CASE WHEN v_count > 0 THEN 1 END) "vCountCount",
|
||||
count(CASE WHEN i_count > 0 THEN 1 END) "iCountCount",
|
||||
count(CASE WHEN unbalance_count > 0 THEN 1 END) "unbalanceCountCount",
|
||||
count(CASE WHEN i_neg_count > 0 THEN 1 END) "iNegCountCount",
|
||||
count(CASE WHEN flicker_count > 0 THEN 1 END) "flickerCountCount",
|
||||
count(CASE WHEN inuharm_count > 0 THEN 1 END) "inuharmCountCount",
|
||||
sum(event_count) "eventCountSum",
|
||||
sum(event_measurement_count) "eventMeasurementCountSum",
|
||||
sum(sag_count) "sagCountSum",
|
||||
sum(sag_measurement_count) "sagMeasurementCountSum",
|
||||
sum(swell_count) "swellCountSum",
|
||||
sum(swell_measurement_count) "swellMeasurementCountSum",
|
||||
sum(interrupt_count) "interruptCountSum",
|
||||
sum(interrupt_measurement_count) "interruptMeasurementCountSum"
|
||||
FROM r_stat_substation_d
|
||||
WHERE substation_id = #{substationId}
|
||||
AND data_date between #{startTime} and #{endTime}
|
||||
) t
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,15 @@
|
||||
package com.njcn.prepare.harmonic.service.mysql.newalgorithm;
|
||||
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.service.IMppService;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatSubstationDPO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatSubstationMPO;
|
||||
|
||||
|
||||
/**
|
||||
* @author zbj
|
||||
* @since 2023-06-19
|
||||
*/
|
||||
|
||||
public interface RStatSubstationMPOService extends IMppService<RStatSubstationMPO> {
|
||||
}
|
||||
@@ -0,0 +1,21 @@
|
||||
package com.njcn.prepare.harmonic.service.mysql.newalgorithm.impl;
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatSubstationDPOMapper;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatSubstationMPOMapper;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatSubstationDPO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatSubstationMPO;
|
||||
import com.njcn.prepare.harmonic.service.mysql.newalgorithm.RStatSubstationDPOService;
|
||||
import com.njcn.prepare.harmonic.service.mysql.newalgorithm.RStatSubstationMPOService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author zbj
|
||||
* @since 2023-06-19
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class RStatSubstationMPOServiceImpl extends MppServiceImpl<RStatSubstationMPOMapper, RStatSubstationMPO> implements RStatSubstationMPOService {
|
||||
}
|
||||
@@ -12,12 +12,10 @@ import com.njcn.harmonic.pojo.po.RMpEventDetailMPO;
|
||||
import com.njcn.harmonic.pojo.po.RStatOrgDPO;
|
||||
import com.njcn.harmonic.pojo.po.RStatOrgMPO;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.area.*;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.line.RMpEventDetailDMapper;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.line.RMpEventDetailMMapper;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.line.RMpPartHarmonicDetailDMapper;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.line.RMpSurplusHarmonicDetailDMapper;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.line.*;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatEventDPOMapper;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatEventMPOMapper;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatSubstationDPOMapper;
|
||||
import com.njcn.prepare.harmonic.pojo.po.*;
|
||||
import com.njcn.prepare.harmonic.service.mysql.newalgorithm.*;
|
||||
import com.njcn.system.api.DicDataFeignClient;
|
||||
@@ -29,6 +27,7 @@ import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
|
||||
import java.text.DecimalFormat;
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.time.LocalDate;
|
||||
import java.time.ZoneId;
|
||||
import java.time.format.DateTimeFormatter;
|
||||
@@ -54,12 +53,20 @@ public class RStatSubstationServiceImpl implements RStatSubstationService {
|
||||
|
||||
private final RMpPartHarmonicDetailDMapper rMpPartHarmonicDetailDMapper;
|
||||
|
||||
private final RMpPartHarmonicDetailMMapper rMpPartHarmonicDetailMMapper;
|
||||
|
||||
private final RMpSurplusHarmonicDetailDMapper mpSurplusHarmonicDetailDMapper;
|
||||
|
||||
private final RMpSurplusHarmonicDetailMMapper mpSurplusHarmonicDetailMMapper;
|
||||
|
||||
private final RMpEventDetailDMapper rMpEventDetailDMapper;
|
||||
|
||||
private final RStatSubstationDPOService rStatSubstationDPOService;
|
||||
|
||||
private final RStatSubstationMPOService rStatSubstationMPOService;
|
||||
|
||||
private final RStatSubstationDPOMapper rStatSubstationDPOMapper;
|
||||
|
||||
@Override
|
||||
public void handler(List<DeptGetSubStationDTO> data, String dataDate, Integer type) {
|
||||
switch (type) {
|
||||
@@ -68,10 +75,10 @@ public class RStatSubstationServiceImpl implements RStatSubstationService {
|
||||
break;
|
||||
case 2:
|
||||
this.rStartEventQHandler(data, dataDate, type);
|
||||
break;
|
||||
case 3:
|
||||
this.rStartEventMHandler(data, dataDate, type);
|
||||
break;*/
|
||||
case 3:
|
||||
this.rStatSubstationMHandler(data, dataDate, type);
|
||||
break;
|
||||
case 5:
|
||||
this.rStatSubstationDHandler(data, dataDate, type);
|
||||
break;
|
||||
@@ -323,4 +330,351 @@ public class RStatSubstationServiceImpl implements RStatSubstationService {
|
||||
}
|
||||
}
|
||||
|
||||
//月表
|
||||
public void rStatSubstationMHandler(List<DeptGetSubStationDTO> data, String dataDate, Integer type) {
|
||||
List<RStatSubstationMPO> rStatSubstationMPOS = new ArrayList<>();
|
||||
Date date = DateUtil.parse(dataDate);
|
||||
LocalDate localDate = date.toInstant().atZone(ZoneId.systemDefault()).toLocalDate();
|
||||
|
||||
//传入字符串日期获取月的起始日期与结束日期
|
||||
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
|
||||
Calendar calendar = Calendar.getInstance();
|
||||
calendar.setTime(date);
|
||||
|
||||
calendar.set(Calendar.DAY_OF_MONTH, 1); // 将日期设置为当月的第一天
|
||||
String startTime = sdf.format(calendar.getTime()); // 获取当月的起始日期
|
||||
|
||||
calendar.set(Calendar.DAY_OF_MONTH, calendar.getActualMaximum(Calendar.DAY_OF_MONTH)); // 将日期设置为当月的最后一天
|
||||
String endTime = sdf.format(calendar.getTime());// 获取当月的结束日期
|
||||
|
||||
List<String> zwList = new ArrayList<>();
|
||||
List<String> pwList = new ArrayList<>();
|
||||
|
||||
for (DeptGetSubStationDTO datum : data) {
|
||||
if (!CollectionUtils.isEmpty(datum.getStationIds())) {
|
||||
zwList.addAll(datum.getStationIds());
|
||||
}
|
||||
if (!CollectionUtils.isEmpty(datum.getPwStationIds())) {
|
||||
pwList.addAll(datum.getPwStationIds());
|
||||
}
|
||||
}
|
||||
|
||||
List<String> zw = zwList.stream().distinct().collect(Collectors.toList());
|
||||
List<String> pw = pwList.stream().distinct().collect(Collectors.toList());
|
||||
|
||||
//主网
|
||||
if (!CollectionUtils.isEmpty(zw)) {
|
||||
|
||||
zw.forEach(z -> {
|
||||
//获取监测点对象集合
|
||||
LineDevGetBandDTO lineDevGetDTOs = commTerminalGeneralClient.substationGetLine(z).getData();
|
||||
//获取监测点id集合
|
||||
List<String> lineIds = lineDevGetDTOs.getZwList().stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList());
|
||||
//判空
|
||||
if (!CollectionUtils.isEmpty(lineIds)) {
|
||||
//r_mp_target_warn_d 表中字段求和
|
||||
Map<String, Object> warnSum = rMpTargetWarnDMapper.getSumDate(startTime, endTime, lineIds);
|
||||
//r_mp_part_harmonic_detail_m 表中字段求和
|
||||
Map<String, Object> partSum = rMpPartHarmonicDetailMMapper.getPartSum(startTime, endTime, lineIds);
|
||||
//r_mp_surplus_harmonic_detail_m 表中字段求和
|
||||
Map<String, Object> surplusSum = mpSurplusHarmonicDetailMMapper.getSurplusSum(dataDate, dataDate, lineIds);
|
||||
//r_stat_substation_d 表中字段求和及计数
|
||||
Map<String, Object> eventDetailSumAndCount = rStatSubstationDPOMapper.getSumAndCount(dataDate, dataDate, z);
|
||||
|
||||
RStatSubstationMPO rStatSubstationMPO = new RStatSubstationMPO();
|
||||
rStatSubstationMPO.setDataDate(localDate);
|
||||
rStatSubstationMPO.setSubstationId(z);
|
||||
|
||||
if (!CollectionUtils.isEmpty(warnSum)) {
|
||||
rStatSubstationMPO.setEffectiveMeasurementAccrued(warnSum.containsKey("iECount") ?
|
||||
Integer.parseInt(warnSum.get("iECount").toString()) : 0);
|
||||
|
||||
} else {
|
||||
rStatSubstationMPO.setEffectiveMeasurementAccrued(0);
|
||||
}
|
||||
|
||||
if (!CollectionUtils.isEmpty(partSum)) {
|
||||
rStatSubstationMPO.setHarmonicCount(partSum.containsKey("measurementOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("measurementOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setFreqCount(partSum.containsKey("freqOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("freqOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setVDevCount(partSum.containsKey("vDevOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("vDevOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setVCount(partSum.containsKey("vOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("vOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setICount(partSum.containsKey("iOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("iOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setUnbalanceCount(partSum.containsKey("unbalanceOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("unbalanceOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setINegCount(partSum.containsKey("iNegOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("iNegOverDayCount").toString()) : 0);
|
||||
|
||||
} else {
|
||||
rStatSubstationMPO.setHarmonicCount(0);
|
||||
rStatSubstationMPO.setFreqCount(0);
|
||||
rStatSubstationMPO.setVDevCount(0);
|
||||
rStatSubstationMPO.setVCount(0);
|
||||
rStatSubstationMPO.setICount(0);
|
||||
rStatSubstationMPO.setUnbalanceCount(0);
|
||||
rStatSubstationMPO.setINegCount(0);
|
||||
}
|
||||
|
||||
if (!CollectionUtils.isEmpty(surplusSum)) {
|
||||
rStatSubstationMPO.setFlickerCount(surplusSum.containsKey("flickerOverDayCount") ?
|
||||
Integer.parseInt(surplusSum.get("flickerOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setInuharmCount(surplusSum.containsKey("inuharmOverDayCount") ?
|
||||
Integer.parseInt(surplusSum.get("inuharmOverDayCount").toString()) : 0);
|
||||
} else {
|
||||
rStatSubstationMPO.setFlickerCount(0);
|
||||
rStatSubstationMPO.setInuharmCount(0);
|
||||
}
|
||||
|
||||
if (!CollectionUtils.isEmpty(eventDetailSumAndCount)) {
|
||||
rStatSubstationMPO.setEffectiveMeasurementAverage(eventDetailSumAndCount.containsKey("effectiveMeasurementCountAvg") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("effectiveMeasurementCountAvg").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setHarmonicOverDay(eventDetailSumAndCount.containsKey("harmonicCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("harmonicCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setFreqOverDay(eventDetailSumAndCount.containsKey("freqCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("freqCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setVDevOverDay(eventDetailSumAndCount.containsKey("vDevCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("vDevCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setVOverDay(eventDetailSumAndCount.containsKey("vCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("vCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setIOverDay(eventDetailSumAndCount.containsKey("iCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("iCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setUnbalanceOverDay(eventDetailSumAndCount.containsKey("unbalanceCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("unbalanceCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setINegOverDay(eventDetailSumAndCount.containsKey("iNegCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("iNegCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setFlickerOverDay(eventDetailSumAndCount.containsKey("flickerCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("flickerCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setInuharmOverDay(eventDetailSumAndCount.containsKey("inuharmCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("inuharmCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setEventCount(eventDetailSumAndCount.containsKey("eventCountSum") ?
|
||||
Integer.parseInt(eventDetailSumAndCount.get("eventCountSum").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setEventFreq(eventDetailSumAndCount.containsKey("eventCountFrequency") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("eventCountFrequency").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setSagCount(eventDetailSumAndCount.containsKey("sagCountSum") ?
|
||||
Integer.parseInt(eventDetailSumAndCount.get("sagCountSum").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setSagFreq(eventDetailSumAndCount.containsKey("sagCountFrequency") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("sagCountFrequency").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setSwellCount(eventDetailSumAndCount.containsKey("swellCountSum") ?
|
||||
Integer.parseInt(eventDetailSumAndCount.get("swellCountSum").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setSwellFreq(eventDetailSumAndCount.containsKey("swellCountFrequency") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("swellCountFrequency").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setInterruptCount(eventDetailSumAndCount.containsKey("interruptCountSum") ?
|
||||
Integer.parseInt(eventDetailSumAndCount.get("interruptCountSum").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setInterruptFreq(eventDetailSumAndCount.containsKey("interruptCountFrequency") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("interruptCountFrequency").toString()) : 0.0f);
|
||||
|
||||
} else {
|
||||
rStatSubstationMPO.setEffectiveMeasurementAverage(0.0f);
|
||||
rStatSubstationMPO.setHarmonicOverDay(0.0f);
|
||||
rStatSubstationMPO.setFreqOverDay(0.0f);
|
||||
rStatSubstationMPO.setVDevOverDay(0.0f);
|
||||
rStatSubstationMPO.setVOverDay(0.0f);
|
||||
rStatSubstationMPO.setIOverDay(0.0f);
|
||||
rStatSubstationMPO.setUnbalanceOverDay(0.0f);
|
||||
rStatSubstationMPO.setINegOverDay(0.0f);
|
||||
rStatSubstationMPO.setFlickerOverDay(0.0f);
|
||||
rStatSubstationMPO.setInuharmOverDay(0.0f);
|
||||
rStatSubstationMPO.setEventCount(0);
|
||||
rStatSubstationMPO.setEventFreq(0.0f);
|
||||
rStatSubstationMPO.setSagCount(0);
|
||||
rStatSubstationMPO.setSagFreq(0.0f);
|
||||
rStatSubstationMPO.setSwellCount(0);
|
||||
rStatSubstationMPO.setSwellFreq(0.0f);
|
||||
rStatSubstationMPO.setInterruptCount(0);
|
||||
rStatSubstationMPO.setInterruptFreq(0.0f);
|
||||
}
|
||||
rStatSubstationMPOS.add(rStatSubstationMPO);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
//配网
|
||||
if (!CollectionUtils.isEmpty(pw)) {
|
||||
|
||||
pw.forEach(p -> {
|
||||
//获取监测点对象集合
|
||||
LineDevGetBandDTO lineDevGetDTOs = commTerminalGeneralClient.substationGetLine(p).getData();
|
||||
//获取监测点id集合
|
||||
List<String> lineIds = lineDevGetDTOs.getZwList().stream().map(LineDevGetDTO::getPointId).collect(Collectors.toList());
|
||||
//判空
|
||||
if (!CollectionUtils.isEmpty(lineIds)) {
|
||||
//r_mp_target_warn_d 表中字段求和
|
||||
Map<String, Object> warnSum = rMpTargetWarnDMapper.getSumDate(startTime, endTime, lineIds);
|
||||
//r_mp_part_harmonic_detail_m 表中字段求和
|
||||
Map<String, Object> partSum = rMpPartHarmonicDetailMMapper.getPartSum(startTime, endTime, lineIds);
|
||||
//r_mp_surplus_harmonic_detail_m 表中字段求和
|
||||
Map<String, Object> surplusSum = mpSurplusHarmonicDetailMMapper.getSurplusSum(dataDate, dataDate, lineIds);
|
||||
//r_stat_substation_d 表中字段求和及计数
|
||||
Map<String, Object> eventDetailSumAndCount = rStatSubstationDPOMapper.getSumAndCount(dataDate, dataDate, p);
|
||||
|
||||
RStatSubstationMPO rStatSubstationMPO = new RStatSubstationMPO();
|
||||
rStatSubstationMPO.setDataDate(localDate);
|
||||
rStatSubstationMPO.setSubstationId(p);
|
||||
|
||||
if (!CollectionUtils.isEmpty(warnSum)) {
|
||||
rStatSubstationMPO.setEffectiveMeasurementAccrued(warnSum.containsKey("iECount") ?
|
||||
Integer.parseInt(warnSum.get("iECount").toString()) : 0);
|
||||
|
||||
} else {
|
||||
rStatSubstationMPO.setEffectiveMeasurementAccrued(0);
|
||||
}
|
||||
|
||||
if (!CollectionUtils.isEmpty(partSum)) {
|
||||
rStatSubstationMPO.setHarmonicCount(partSum.containsKey("measurementOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("measurementOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setFreqCount(partSum.containsKey("freqOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("freqOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setVDevCount(partSum.containsKey("vDevOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("vDevOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setVCount(partSum.containsKey("vOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("vOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setICount(partSum.containsKey("iOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("iOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setUnbalanceCount(partSum.containsKey("unbalanceOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("unbalanceOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setINegCount(partSum.containsKey("iNegOverDayCount") ?
|
||||
Integer.parseInt(partSum.get("iNegOverDayCount").toString()) : 0);
|
||||
|
||||
} else {
|
||||
rStatSubstationMPO.setHarmonicCount(0);
|
||||
rStatSubstationMPO.setFreqCount(0);
|
||||
rStatSubstationMPO.setVDevCount(0);
|
||||
rStatSubstationMPO.setVCount(0);
|
||||
rStatSubstationMPO.setICount(0);
|
||||
rStatSubstationMPO.setUnbalanceCount(0);
|
||||
rStatSubstationMPO.setINegCount(0);
|
||||
}
|
||||
|
||||
if (!CollectionUtils.isEmpty(surplusSum)) {
|
||||
rStatSubstationMPO.setFlickerCount(surplusSum.containsKey("flickerOverDayCount") ?
|
||||
Integer.parseInt(surplusSum.get("flickerOverDayCount").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setInuharmCount(surplusSum.containsKey("inuharmOverDayCount") ?
|
||||
Integer.parseInt(surplusSum.get("inuharmOverDayCount").toString()) : 0);
|
||||
} else {
|
||||
rStatSubstationMPO.setFlickerCount(0);
|
||||
rStatSubstationMPO.setInuharmCount(0);
|
||||
}
|
||||
|
||||
if (!CollectionUtils.isEmpty(eventDetailSumAndCount)) {
|
||||
rStatSubstationMPO.setEffectiveMeasurementAverage(eventDetailSumAndCount.containsKey("effectiveMeasurementCountAvg") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("effectiveMeasurementCountAvg").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setHarmonicOverDay(eventDetailSumAndCount.containsKey("harmonicCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("harmonicCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setFreqOverDay(eventDetailSumAndCount.containsKey("freqCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("freqCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setVDevOverDay(eventDetailSumAndCount.containsKey("vDevCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("vDevCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setVOverDay(eventDetailSumAndCount.containsKey("vCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("vCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setIOverDay(eventDetailSumAndCount.containsKey("iCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("iCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setUnbalanceOverDay(eventDetailSumAndCount.containsKey("unbalanceCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("unbalanceCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setINegOverDay(eventDetailSumAndCount.containsKey("iNegCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("iNegCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setFlickerOverDay(eventDetailSumAndCount.containsKey("flickerCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("flickerCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setInuharmOverDay(eventDetailSumAndCount.containsKey("inuharmCountCount") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("inuharmCountCount").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setEventCount(eventDetailSumAndCount.containsKey("eventCountSum") ?
|
||||
Integer.parseInt(eventDetailSumAndCount.get("eventCountSum").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setEventFreq(eventDetailSumAndCount.containsKey("eventCountFrequency") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("eventCountFrequency").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setSagCount(eventDetailSumAndCount.containsKey("sagCountSum") ?
|
||||
Integer.parseInt(eventDetailSumAndCount.get("sagCountSum").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setSagFreq(eventDetailSumAndCount.containsKey("sagCountFrequency") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("sagCountFrequency").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setSwellCount(eventDetailSumAndCount.containsKey("swellCountSum") ?
|
||||
Integer.parseInt(eventDetailSumAndCount.get("swellCountSum").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setSwellFreq(eventDetailSumAndCount.containsKey("swellCountFrequency") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("swellCountFrequency").toString()) : 0.0f);
|
||||
|
||||
rStatSubstationMPO.setInterruptCount(eventDetailSumAndCount.containsKey("interruptCountSum") ?
|
||||
Integer.parseInt(eventDetailSumAndCount.get("interruptCountSum").toString()) : 0);
|
||||
|
||||
rStatSubstationMPO.setInterruptFreq(eventDetailSumAndCount.containsKey("interruptCountFrequency") ?
|
||||
Float.parseFloat(eventDetailSumAndCount.get("interruptCountFrequency").toString()) : 0.0f);
|
||||
|
||||
} else {
|
||||
rStatSubstationMPO.setEffectiveMeasurementAverage(0.0f);
|
||||
rStatSubstationMPO.setHarmonicOverDay(0.0f);
|
||||
rStatSubstationMPO.setFreqOverDay(0.0f);
|
||||
rStatSubstationMPO.setVDevOverDay(0.0f);
|
||||
rStatSubstationMPO.setVOverDay(0.0f);
|
||||
rStatSubstationMPO.setIOverDay(0.0f);
|
||||
rStatSubstationMPO.setUnbalanceOverDay(0.0f);
|
||||
rStatSubstationMPO.setINegOverDay(0.0f);
|
||||
rStatSubstationMPO.setFlickerOverDay(0.0f);
|
||||
rStatSubstationMPO.setInuharmOverDay(0.0f);
|
||||
rStatSubstationMPO.setEventCount(0);
|
||||
rStatSubstationMPO.setEventFreq(0.0f);
|
||||
rStatSubstationMPO.setSagCount(0);
|
||||
rStatSubstationMPO.setSagFreq(0.0f);
|
||||
rStatSubstationMPO.setSwellCount(0);
|
||||
rStatSubstationMPO.setSwellFreq(0.0f);
|
||||
rStatSubstationMPO.setInterruptCount(0);
|
||||
rStatSubstationMPO.setInterruptFreq(0.0f);
|
||||
}
|
||||
rStatSubstationMPOS.add(rStatSubstationMPO);
|
||||
}
|
||||
});
|
||||
|
||||
}
|
||||
|
||||
if (!CollectionUtils.isEmpty(rStatSubstationMPOS)) {
|
||||
rStatSubstationMPOService.saveOrUpdateBatchByMultiId(rStatSubstationMPOS, 500);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user