zbj//1.单位暂态指标数据统计_月统计 算法
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
package com.njcn.prepare.harmonic.pojo.po;
|
||||
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
*
|
||||
* </p>
|
||||
*
|
||||
* @author zbj
|
||||
* @since 2023-06-15
|
||||
*/
|
||||
@Data
|
||||
public class RStatEventOrgDVO {
|
||||
|
||||
private String orgNo;
|
||||
|
||||
private String eventType;
|
||||
|
||||
private Float emAvg;
|
||||
|
||||
private Integer ecSum;
|
||||
|
||||
private Integer emSum;
|
||||
|
||||
private Float emrAvg;
|
||||
|
||||
}
|
||||
@@ -0,0 +1,52 @@
|
||||
package com.njcn.prepare.harmonic.pojo.po;
|
||||
|
||||
import com.baomidou.mybatisplus.annotation.TableField;
|
||||
import com.baomidou.mybatisplus.annotation.TableName;
|
||||
import com.github.jeffreyning.mybatisplus.anno.MppMultiId;
|
||||
import lombok.Data;
|
||||
|
||||
import java.time.LocalDate;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
*
|
||||
* </p>
|
||||
*
|
||||
* @author zbj
|
||||
* @since 2023-06-15
|
||||
*/
|
||||
@Data
|
||||
@TableName("r_stat_event_org_m")
|
||||
public class RStatEventOrgMPO {
|
||||
|
||||
@MppMultiId(value = "org_no")
|
||||
private String orgNo;
|
||||
|
||||
@MppMultiId(value = "data_date")
|
||||
private LocalDate dataDate;
|
||||
|
||||
@MppMultiId(value = "event_type")
|
||||
private String eventType;
|
||||
|
||||
@TableField(value = "event_measurement_average")
|
||||
private Float eventMeasurementAverage;
|
||||
|
||||
@TableField(value = "event_measurement_accrued")
|
||||
private Integer eventMeasurementAccrued;
|
||||
|
||||
@TableField(value = "event_freq")
|
||||
private Float eventFreq;
|
||||
|
||||
@TableField(value = "event_count")
|
||||
private Integer eventCount;
|
||||
|
||||
@TableField(value = "event_measurement_ratio_average")
|
||||
private Float eventMeasurementRatioAverage;
|
||||
|
||||
@TableField(value = "event_measurement_ratio_accrued")
|
||||
private Float eventMeasurementRatioAccrued;
|
||||
|
||||
@MppMultiId(value = "data_type")
|
||||
private String dataType;
|
||||
|
||||
}
|
||||
@@ -2,7 +2,12 @@ package com.njcn.prepare.harmonic.mapper.mysql.area;
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||
import com.njcn.harmonic.pojo.po.RStatOrgMPO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventOrgDVO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
*
|
||||
@@ -15,4 +20,10 @@ import org.apache.ibatis.annotations.Mapper;
|
||||
*/
|
||||
@Mapper
|
||||
public interface RStatOrgMMapper extends MppBaseMapper<RStatOrgMPO> {
|
||||
|
||||
Map<String, Object> selectMlist(@Param("startTime") String startTime,
|
||||
@Param("endTime") String endTime,
|
||||
@Param("orgId") String orgId,
|
||||
@Param("dataTypeId") String dataTypeId);
|
||||
|
||||
}
|
||||
@@ -12,7 +12,8 @@
|
||||
<result column="effective_measurement_accrued" jdbcType="INTEGER" property="effectiveMeasurementAccrued"/>
|
||||
<result column="harmonic_measurement_average" jdbcType="INTEGER" property="harmonicMeasurementAverage"/>
|
||||
<result column="harmonic_measurement_accrued" jdbcType="INTEGER" property="harmonicMeasurementAccrued"/>
|
||||
<result column="harmonic_measurement_ratio_average" jdbcType="FLOAT" property="harmonicMeasurementRatioAverage" />
|
||||
<result column="harmonic_measurement_ratio_average" jdbcType="FLOAT"
|
||||
property="harmonicMeasurementRatioAverage"/>
|
||||
<result column="over_day_accrued" jdbcType="INTEGER" property="overDayAccrued"/>
|
||||
<result column="freq_pass_rate" jdbcType="FLOAT" property="freqPassRate"/>
|
||||
<result column="v_dev_pass_rate" jdbcType="FLOAT" property="vDevPassRate"/>
|
||||
@@ -34,4 +35,15 @@
|
||||
flicker_pass_rate, event_measurement_average, event_measurement_accrued, event_measurement_ratio_average,
|
||||
event_freq, event_count, should_count, warn_count, data_type
|
||||
</sql>
|
||||
|
||||
<select id="selectMlist" resultType="java.util.Map">
|
||||
SELECT sum(effective_measurement_accrued) "efSum"
|
||||
FROM r_stat_org_m
|
||||
WHERE date_format(data_date, '%y%m%d') >= date_format(#{startTime}, '%y%m%d')
|
||||
AND date_format(data_date, '%y%m%d') <= date_format(#{endTime}, '%y%m%d')
|
||||
AND org_no = #{orgId}
|
||||
AND data_type = #{dataTypeId}
|
||||
GROUP BY org_no
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
@@ -4,6 +4,10 @@ import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventDPO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventMPO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* Description:
|
||||
@@ -15,4 +19,10 @@ import org.apache.ibatis.annotations.Mapper;
|
||||
*/
|
||||
@Mapper
|
||||
public interface RStatEventMPOMapper extends MppBaseMapper<RStatEventMPO> {
|
||||
|
||||
List<Map<String, Object>> selectMlist(@Param("startTime") String startTime,
|
||||
@Param("endTime") String endTime,
|
||||
@Param("orgId") String orgId,
|
||||
@Param("dataTypeId") String dataTypeId);
|
||||
|
||||
}
|
||||
@@ -3,7 +3,11 @@ package com.njcn.prepare.harmonic.mapper.mysql.newalgorithm;
|
||||
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventMPO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventOrgDPO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventOrgDVO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Description:
|
||||
@@ -15,4 +19,10 @@ import org.apache.ibatis.annotations.Mapper;
|
||||
*/
|
||||
@Mapper
|
||||
public interface RStatEventOrgDPOMapper extends MppBaseMapper<RStatEventOrgDPO> {
|
||||
|
||||
List<RStatEventOrgDVO> selectMlist(@Param("startTime") String startTime,
|
||||
@Param("endTime") String endTime,
|
||||
@Param("orgId") String orgId,
|
||||
@Param("dataTypeId") String dataTypeId);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
package com.njcn.prepare.harmonic.mapper.mysql.newalgorithm;
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.base.MppBaseMapper;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventOrgDPO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventOrgDVO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventOrgMPO;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Description:
|
||||
* 接口文档访问地址:http://serverIP:port/swagger-ui.html
|
||||
* Date: 2022/12/13 15:39【需求编号】
|
||||
*
|
||||
* @author clam
|
||||
* @version V1.0.0
|
||||
*/
|
||||
@Mapper
|
||||
public interface RStatEventOrgMPOMapper extends MppBaseMapper<RStatEventOrgMPO> {
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
<?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.RStatEventMPOMapper">
|
||||
|
||||
<select id="selectMlist" resultType="java.util.Map">
|
||||
SELECT event_type "eventType",
|
||||
sum(event_measurement_accrued) "emaSum"
|
||||
FROM r_stat_event_m
|
||||
WHERE date_format(data_date, '%y%m%d') >= date_format(#{startTime}, '%y%m%d')
|
||||
AND date_format(data_date, '%y%m%d') <= date_format(#{endTime}, '%y%m%d')
|
||||
AND org_no = #{orgId}
|
||||
AND data_type = #{dataTypeId}
|
||||
GROUP BY org_no,
|
||||
event_type
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,21 @@
|
||||
<?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.RStatEventOrgDPOMapper">
|
||||
|
||||
<select id="selectMlist" resultType="com.njcn.prepare.harmonic.pojo.po.RStatEventOrgDVO">
|
||||
SELECT org_no "orgNo",
|
||||
event_type "eventType",
|
||||
round(avg(event_measurement), 2) "emAvg",
|
||||
sum(event_measurement) "emSum",
|
||||
sum(event_count) "ecSum",
|
||||
round(avg(event_measurement_ratio), 2) "emrAvg"
|
||||
FROM r_stat_event_org_d
|
||||
WHERE date_format(data_date, '%y%m%d') >= date_format(#{startTime}, '%y%m%d')
|
||||
AND date_format(data_date, '%y%m%d') <= date_format(#{endTime}, '%y%m%d')
|
||||
AND org_no = #{orgId}
|
||||
AND data_type = #{dataTypeId}
|
||||
GROUP BY org_no,
|
||||
event_type
|
||||
</select>
|
||||
|
||||
</mapper>
|
||||
@@ -0,0 +1,14 @@
|
||||
package com.njcn.prepare.harmonic.service.mysql.newalgorithm;
|
||||
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.service.IMppService;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventOrgMPO;
|
||||
|
||||
|
||||
/**
|
||||
* @author zbj
|
||||
* @since 2023-06-15
|
||||
*/
|
||||
|
||||
public interface RStatEventOrgMPOService extends IMppService<RStatEventOrgMPO> {
|
||||
}
|
||||
@@ -0,0 +1,24 @@
|
||||
package com.njcn.prepare.harmonic.service.mysql.newalgorithm.impl;
|
||||
|
||||
import com.github.jeffreyning.mybatisplus.service.MppServiceImpl;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatEventOrgDPOMapper;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatEventOrgMPOMapper;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventOrgDPO;
|
||||
import com.njcn.prepare.harmonic.pojo.po.RStatEventOrgMPO;
|
||||
import com.njcn.prepare.harmonic.service.mysql.newalgorithm.RStatEventOrgDPOService;
|
||||
import com.njcn.prepare.harmonic.service.mysql.newalgorithm.RStatEventOrgMPOService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* <p>
|
||||
* 终端检测监督
|
||||
* </p>
|
||||
*
|
||||
* @author zbj
|
||||
* @since 2023-06-14
|
||||
*/
|
||||
@Service
|
||||
@RequiredArgsConstructor
|
||||
public class RStatEventOrgMPOServiceImpl extends MppServiceImpl<RStatEventOrgMPOMapper, RStatEventOrgMPO> implements RStatEventOrgMPOService {
|
||||
}
|
||||
@@ -16,6 +16,7 @@ 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.newalgorithm.RStatEventDPOMapper;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatEventMPOMapper;
|
||||
import com.njcn.prepare.harmonic.mapper.mysql.newalgorithm.RStatEventOrgDPOMapper;
|
||||
import com.njcn.prepare.harmonic.pojo.po.*;
|
||||
import com.njcn.prepare.harmonic.service.mysql.newalgorithm.*;
|
||||
import com.njcn.system.api.DicDataFeignClient;
|
||||
@@ -27,6 +28,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;
|
||||
@@ -48,12 +50,20 @@ public class RStatEventOrgServiceImpl implements RStatEventOrgService {
|
||||
|
||||
private final DicDataFeignClient dicDataFeignClient;
|
||||
|
||||
private final RStatEventOrgDPOService rStatEventOrgDPOService;
|
||||
|
||||
private final RStatEventDPOMapper rStatEventDPOMapper;
|
||||
|
||||
private final RStatOrgDMapper rStatOrgDMapper;
|
||||
|
||||
private final RStatOrgMMapper rStatOrgMMapper;
|
||||
|
||||
private final RStatEventOrgDPOMapper rStatEventOrgDPOMapper;
|
||||
|
||||
private final RStatEventMPOMapper rStatEventMPOMapper;
|
||||
|
||||
private final RStatEventOrgDPOService rStatEventOrgDPOService;
|
||||
|
||||
private final RStatEventOrgMPOService rStatEventOrgMPOService;
|
||||
|
||||
@Override
|
||||
public void handler(List<DeptGetChildrenMoreDTO> data, String dataDate, Integer type) {
|
||||
switch (type) {
|
||||
@@ -62,12 +72,12 @@ public class RStatEventOrgServiceImpl implements RStatEventOrgService {
|
||||
break;
|
||||
case 2:
|
||||
this.rStartEventQHandler(data, dataDate, type);
|
||||
break;
|
||||
case 3:
|
||||
this.rStartEventMHandler(data, dataDate, type);
|
||||
break;*/
|
||||
case 3:
|
||||
this.rStartEventOrgMHandler(data, dataDate, type);
|
||||
break;
|
||||
case 5:
|
||||
this.rStartEventDHandler(data, dataDate, type);
|
||||
this.rStartEventOrgDHandler(data, dataDate, type);
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
@@ -75,7 +85,7 @@ public class RStatEventOrgServiceImpl implements RStatEventOrgService {
|
||||
}
|
||||
|
||||
//天表
|
||||
public void rStartEventDHandler(List<DeptGetChildrenMoreDTO> data, String dataDate, Integer type) {
|
||||
public void rStartEventOrgDHandler(List<DeptGetChildrenMoreDTO> data, String dataDate, Integer type) {
|
||||
List<RStatEventOrgDPO> rStatEventOrgDPOS = new ArrayList<>();
|
||||
DecimalFormat df = new DecimalFormat("0.00");
|
||||
Date date = DateUtil.parse(dataDate);
|
||||
@@ -127,14 +137,14 @@ public class RStatEventOrgServiceImpl implements RStatEventOrgService {
|
||||
if (emMap.get(o.getDataType()) == 0) {
|
||||
rStatEventOrgDPO.setEventMeasurementRatio(1.00f);
|
||||
} else {
|
||||
String value = df.format(o.getEmSum() / emMap.get(o.getDataType()));
|
||||
String value = df.format(o.getEmSum().floatValue() / emMap.get(o.getDataType()));
|
||||
rStatEventOrgDPO.setEventMeasurementRatio(Float.parseFloat(value));
|
||||
}
|
||||
} else {
|
||||
if (emMap.get(o.getDataType()) == 0) {
|
||||
rStatEventOrgDPO.setEventMeasurementRatio(1.00f);
|
||||
} else {
|
||||
String value = df.format(o.getEmSum() / emMap.get(o.getDataType()));
|
||||
String value = df.format(o.getEmSum().floatValue() / emMap.get(o.getDataType()));
|
||||
rStatEventOrgDPO.setEventMeasurementRatio(Float.parseFloat(value));
|
||||
}
|
||||
}
|
||||
@@ -146,4 +156,164 @@ public class RStatEventOrgServiceImpl implements RStatEventOrgService {
|
||||
rStatEventOrgDPOService.saveOrUpdateBatchByMultiId(rStatEventOrgDPOS, 500);
|
||||
}
|
||||
}
|
||||
|
||||
//月表
|
||||
public void rStartEventOrgMHandler(List<DeptGetChildrenMoreDTO> data, String dataDate, Integer type) {
|
||||
List<RStatEventOrgMPO> rStatEventOrgMPOS = new ArrayList<>();
|
||||
DecimalFormat df = new DecimalFormat("0.00");
|
||||
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<DictData> eventStatis = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.EVENT_STATIS.getCode()).getData();
|
||||
Map<String, DictData> eventStatisMap = eventStatis.stream().collect(Collectors.toMap(DictData::getCode, dictData -> dictData));
|
||||
|
||||
/*获取数据类型*/
|
||||
List<DictData> dataTypeList = dicDataFeignClient.getDicDataByTypeCode(DicDataTypeEnum.DATA_TYPE.getCode()).getData();
|
||||
Map<String, DictData> dataTypeMap = dataTypeList.stream().collect(Collectors.toMap(DictData::getCode, dictData -> dictData));
|
||||
|
||||
data.forEach(deptGetChildrenMoreDTO -> {
|
||||
|
||||
//主网天表
|
||||
List<RStatEventOrgDVO> zwList = rStatEventOrgDPOMapper.selectMlist(startTime, endTime,
|
||||
deptGetChildrenMoreDTO.getUnitId(), dataTypeMap.get(DicDataEnum.MAINNET_POINT.getCode()).getId());
|
||||
|
||||
//配网天表
|
||||
List<RStatEventOrgDVO> pwList = rStatEventOrgDPOMapper.selectMlist(startTime, endTime,
|
||||
deptGetChildrenMoreDTO.getUnitId(), dataTypeMap.get(DicDataEnum.DISTRIBUTION_POINT.getCode()).getId());
|
||||
|
||||
//主网r_stat_event_m
|
||||
List<Map<String, Object>> zwEmaSum = rStatEventMPOMapper.selectMlist(startTime, endTime,
|
||||
deptGetChildrenMoreDTO.getUnitId(), dataTypeMap.get(DicDataEnum.MAINNET_POINT.getCode()).getId());
|
||||
|
||||
//配网r_stat_event_m
|
||||
List<Map<String, Object>> pwEmaSum = rStatEventMPOMapper.selectMlist(startTime, endTime,
|
||||
deptGetChildrenMoreDTO.getUnitId(), dataTypeMap.get(DicDataEnum.DISTRIBUTION_POINT.getCode()).getId());
|
||||
|
||||
//主网r_stat_org_m
|
||||
Map<String, Object> zwEfSum = rStatOrgMMapper.selectMlist(startTime, endTime,
|
||||
deptGetChildrenMoreDTO.getUnitId(), dataTypeMap.get(DicDataEnum.MAINNET_POINT.getCode()).getId());
|
||||
|
||||
//配网r_stat_org_m
|
||||
Map<String, Object> pwEfSum = rStatOrgMMapper.selectMlist(startTime, endTime,
|
||||
deptGetChildrenMoreDTO.getUnitId(), dataTypeMap.get(DicDataEnum.DISTRIBUTION_POINT.getCode()).getId());
|
||||
|
||||
|
||||
//主网
|
||||
if (!CollectionUtils.isEmpty(zwList)) {
|
||||
//转map
|
||||
Map<String, Integer> emaMap = new HashMap<>();
|
||||
if (!CollectionUtils.isEmpty(zwEmaSum)) {
|
||||
for (Map<String, Object> map : zwEmaSum) {
|
||||
emaMap.put(map.get("eventType").toString(), Integer.valueOf(map.get("emaSum").toString()));
|
||||
}
|
||||
} else {
|
||||
emaMap.put(eventStatisMap.get(DicDataEnum.VOLTAGE_DIP.getCode()).getId(), 0);
|
||||
emaMap.put(eventStatisMap.get(DicDataEnum.VOLTAGE_RISE.getCode()).getId(), 0);
|
||||
emaMap.put(eventStatisMap.get(DicDataEnum.SHORT_INTERRUPTIONS.getCode()).getId(), 0);
|
||||
}
|
||||
|
||||
//循环
|
||||
zwList.forEach(obj -> {
|
||||
RStatEventOrgMPO rStatEventOrgMPO = new RStatEventOrgMPO();
|
||||
rStatEventOrgMPO.setOrgNo(obj.getOrgNo());
|
||||
rStatEventOrgMPO.setDataDate(localDate);
|
||||
rStatEventOrgMPO.setEventType(obj.getEventType());
|
||||
rStatEventOrgMPO.setEventMeasurementAverage(obj.getEmrAvg());
|
||||
rStatEventOrgMPO.setEventCount(obj.getEcSum());
|
||||
rStatEventOrgMPO.setEventMeasurementRatioAverage(obj.getEmrAvg());
|
||||
rStatEventOrgMPO.setDataType(dataTypeMap.get(DicDataEnum.MAINNET_POINT.getCode()).getId());
|
||||
|
||||
if (emaMap.get(obj.getEventType()) == 0) {
|
||||
rStatEventOrgMPO.setEventMeasurementAccrued(0);
|
||||
} else {
|
||||
rStatEventOrgMPO.setEventMeasurementAccrued(emaMap.get(obj.getEventType()));
|
||||
}
|
||||
if (obj.getEmSum() == 0) {
|
||||
rStatEventOrgMPO.setEventFreq(0.00f);
|
||||
} else {
|
||||
String value = df.format(obj.getEcSum().floatValue() / obj.getEmSum());
|
||||
rStatEventOrgMPO.setEventFreq(Float.parseFloat(value));
|
||||
}
|
||||
if (!CollectionUtils.isEmpty(zwEfSum)) {
|
||||
if (Integer.parseInt(zwEfSum.get("efSum").toString()) == 0) {
|
||||
rStatEventOrgMPO.setEventMeasurementRatioAccrued(0.00f);
|
||||
} else {
|
||||
String value = df.format(rStatEventOrgMPO.getEventMeasurementAccrued() / Float.parseFloat(zwEfSum.get("efSum").toString()));
|
||||
rStatEventOrgMPO.setEventMeasurementRatioAccrued(Float.parseFloat(value));
|
||||
}
|
||||
} else {
|
||||
rStatEventOrgMPO.setEventMeasurementRatioAccrued(0.00f);
|
||||
}
|
||||
rStatEventOrgMPOS.add(rStatEventOrgMPO);
|
||||
});
|
||||
}
|
||||
|
||||
//配网
|
||||
if (!CollectionUtils.isEmpty(pwList)) {
|
||||
//转map
|
||||
Map<String, Integer> emaMap = new HashMap<>();
|
||||
if (!CollectionUtils.isEmpty(pwEmaSum)) {
|
||||
for (Map<String, Object> map : pwEmaSum) {
|
||||
emaMap.put(map.get("eventType").toString(), Integer.valueOf(map.get("emaSum").toString()));
|
||||
}
|
||||
} else {
|
||||
emaMap.put(eventStatisMap.get(DicDataEnum.VOLTAGE_DIP.getCode()).getId(), 0);
|
||||
emaMap.put(eventStatisMap.get(DicDataEnum.VOLTAGE_RISE.getCode()).getId(), 0);
|
||||
emaMap.put(eventStatisMap.get(DicDataEnum.SHORT_INTERRUPTIONS.getCode()).getId(), 0);
|
||||
}
|
||||
|
||||
//循环
|
||||
pwList.forEach(obj -> {
|
||||
RStatEventOrgMPO rStatEventOrgMPO = new RStatEventOrgMPO();
|
||||
rStatEventOrgMPO.setOrgNo(obj.getOrgNo());
|
||||
rStatEventOrgMPO.setDataDate(localDate);
|
||||
rStatEventOrgMPO.setEventType(obj.getEventType());
|
||||
rStatEventOrgMPO.setEventMeasurementAverage(obj.getEmrAvg());
|
||||
rStatEventOrgMPO.setEventCount(obj.getEcSum());
|
||||
rStatEventOrgMPO.setEventMeasurementRatioAverage(obj.getEmrAvg());
|
||||
rStatEventOrgMPO.setDataType(dataTypeMap.get(DicDataEnum.DISTRIBUTION_POINT.getCode()).getId());
|
||||
|
||||
if (emaMap.get(obj.getEventType()) == 0) {
|
||||
rStatEventOrgMPO.setEventMeasurementAccrued(0);
|
||||
} else {
|
||||
rStatEventOrgMPO.setEventMeasurementAccrued(emaMap.get(obj.getEventType()));
|
||||
}
|
||||
if (obj.getEmSum() == 0) {
|
||||
rStatEventOrgMPO.setEventFreq(0.00f);
|
||||
} else {
|
||||
String value = df.format(obj.getEcSum() / obj.getEmSum().floatValue());
|
||||
rStatEventOrgMPO.setEventFreq(Float.parseFloat(value));
|
||||
}
|
||||
if (!CollectionUtils.isEmpty(pwEfSum)) {
|
||||
if (Integer.parseInt(pwEfSum.get("efSum").toString()) == 0) {
|
||||
rStatEventOrgMPO.setEventMeasurementRatioAccrued(0.00f);
|
||||
} else {
|
||||
String value = df.format(rStatEventOrgMPO.getEventMeasurementAccrued() / Float.parseFloat(pwEfSum.get("efSum").toString()));
|
||||
rStatEventOrgMPO.setEventMeasurementRatioAccrued(Float.parseFloat(value));
|
||||
}
|
||||
} else {
|
||||
rStatEventOrgMPO.setEventMeasurementRatioAccrued(0.00f);
|
||||
}
|
||||
rStatEventOrgMPOS.add(rStatEventOrgMPO);
|
||||
});
|
||||
}
|
||||
|
||||
});
|
||||
if (!CollectionUtils.isEmpty(rStatEventOrgMPOS)) {
|
||||
rStatEventOrgMPOService.saveOrUpdateBatchByMultiId(rStatEventOrgMPOS, 500);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -23,7 +23,6 @@ import com.njcn.system.api.DicDataFeignClient;
|
||||
import com.njcn.system.enums.DicDataEnum;
|
||||
import com.njcn.system.enums.DicDataTypeEnum;
|
||||
import com.njcn.system.pojo.po.DictData;
|
||||
import com.njcn.user.api.DeptFeignClient;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.stereotype.Service;
|
||||
import org.springframework.util.CollectionUtils;
|
||||
@@ -160,7 +159,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (rStatOrgDPO.getEffectiveMeasurement() == 0) {
|
||||
rStatEventDPO.setEventMeasurementRatio(1.00f);
|
||||
} else {
|
||||
String value = df.format(rStatEventDPO.getEventMeasurement() / rStatOrgDPO.getEffectiveMeasurement());
|
||||
String value = df.format(rStatEventDPO.getEventMeasurement() / rStatOrgDPO.getEffectiveMeasurement().floatValue());
|
||||
rStatEventDPO.setEventMeasurementRatio(Float.parseFloat(value));
|
||||
}
|
||||
}
|
||||
@@ -214,7 +213,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (rStatOrgDPO.getEffectiveMeasurement() == 0) {
|
||||
rStatEventDPO.setEventMeasurementRatio(1.00f);
|
||||
} else {
|
||||
String value = df.format(rStatEventDPO.getEventMeasurement() / rStatOrgDPO.getEffectiveMeasurement());
|
||||
String value = df.format(rStatEventDPO.getEventMeasurement() / rStatOrgDPO.getEffectiveMeasurement().floatValue());
|
||||
rStatEventDPO.setEventMeasurementRatio(Float.parseFloat(value));
|
||||
}
|
||||
}
|
||||
@@ -329,7 +328,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (sumEM.get(dictData.getId()) == 0) {
|
||||
rStatEventMPO.setEventFreq(1.00f);
|
||||
} else {
|
||||
String value = df.format(sumEC.get(dictData.getId()) / sumEM.get(dictData.getId()));
|
||||
String value = df.format(sumEC.get(dictData.getId()) / sumEM.get(dictData.getId()).floatValue());
|
||||
rStatEventMPO.setEventFreq(Float.parseFloat(value));
|
||||
}
|
||||
if (Objects.isNull(rStatOrgMPO)) {
|
||||
@@ -338,7 +337,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (rStatOrgMPO.getEffectiveMeasurementAccrued() == 0) {
|
||||
rStatEventMPO.setEventMeasurementRatioAccrued(1.00f);
|
||||
} else {
|
||||
String value = df.format(statisData / rStatOrgMPO.getEffectiveMeasurementAccrued());
|
||||
String value = df.format(statisData / rStatOrgMPO.getEffectiveMeasurementAccrued().floatValue());
|
||||
rStatEventMPO.setEventMeasurementRatioAccrued(Float.parseFloat(value));
|
||||
}
|
||||
}
|
||||
@@ -419,7 +418,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (sumEM.get(dictData.getId()) == 0) {
|
||||
rStatEventMPO.setEventFreq(1.00f);
|
||||
} else {
|
||||
String value = df.format(sumEC.get(dictData.getId()) / sumEM.get(dictData.getId()));
|
||||
String value = df.format(sumEC.get(dictData.getId()) / sumEM.get(dictData.getId()).floatValue());
|
||||
rStatEventMPO.setEventFreq(Float.parseFloat(value));
|
||||
}
|
||||
if (Objects.isNull(rStatOrgMPO)) {
|
||||
@@ -428,7 +427,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (rStatOrgMPO.getEffectiveMeasurementAccrued() == 0) {
|
||||
rStatEventMPO.setEventMeasurementRatioAccrued(1.00f);
|
||||
} else {
|
||||
String value = df.format(statisData / rStatOrgMPO.getEffectiveMeasurementAccrued());
|
||||
String value = df.format(statisData / rStatOrgMPO.getEffectiveMeasurementAccrued().floatValue());
|
||||
rStatEventMPO.setEventMeasurementRatioAccrued(Float.parseFloat(value));
|
||||
}
|
||||
}
|
||||
@@ -569,7 +568,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (sumEM.get(dictData.getId()) == 0) {
|
||||
rStatEventQPO.setEventFreq(1.00f);
|
||||
} else {
|
||||
String value = df.format(sumEC.get(dictData.getId()) / sumEM.get(dictData.getId()));
|
||||
String value = df.format(sumEC.get(dictData.getId()) / sumEM.get(dictData.getId()).floatValue());
|
||||
rStatEventQPO.setEventFreq(Float.parseFloat(value));
|
||||
}
|
||||
if (Objects.isNull(rStatOrgQPO)) {
|
||||
@@ -578,7 +577,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (rStatOrgQPO.getEffectiveMeasurementAccrued() == 0) {
|
||||
rStatEventQPO.setEventMeasurementRatioAccrued(1.00f);
|
||||
} else {
|
||||
String value = df.format(statisData / rStatOrgQPO.getEffectiveMeasurementAccrued());
|
||||
String value = df.format(statisData / rStatOrgQPO.getEffectiveMeasurementAccrued().floatValue());
|
||||
rStatEventQPO.setEventMeasurementRatioAccrued(Float.parseFloat(value));
|
||||
}
|
||||
}
|
||||
@@ -673,7 +672,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (sumEM.get(dictData.getId()) == 0) {
|
||||
rStatEventQPO.setEventFreq(1.00f);
|
||||
} else {
|
||||
String value = df.format(sumEC.get(dictData.getId()) / sumEM.get(dictData.getId()));
|
||||
String value = df.format(sumEC.get(dictData.getId()) / sumEM.get(dictData.getId()).floatValue());
|
||||
rStatEventQPO.setEventFreq(Float.parseFloat(value));
|
||||
}
|
||||
if (Objects.isNull(rStatOrgQPO)) {
|
||||
@@ -682,7 +681,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (rStatOrgQPO.getEffectiveMeasurementAccrued() == 0) {
|
||||
rStatEventQPO.setEventMeasurementRatioAccrued(1.00f);
|
||||
} else {
|
||||
String value = df.format(statisData / rStatOrgQPO.getEffectiveMeasurementAccrued());
|
||||
String value = df.format(statisData / rStatOrgQPO.getEffectiveMeasurementAccrued().floatValue());
|
||||
rStatEventQPO.setEventMeasurementRatioAccrued(Float.parseFloat(value));
|
||||
}
|
||||
}
|
||||
@@ -816,7 +815,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (sumEM.get(dictData.getId()) == 0) {
|
||||
rStatEventYPO.setEventFreq(1.00f);
|
||||
} else {
|
||||
String value = df.format(sumEC.get(dictData.getId()) / sumEM.get(dictData.getId()));
|
||||
String value = df.format(sumEC.get(dictData.getId()) / sumEM.get(dictData.getId()).floatValue());
|
||||
rStatEventYPO.setEventFreq(Float.parseFloat(value));
|
||||
}
|
||||
if (Objects.isNull(rStatOrgYPO)) {
|
||||
@@ -825,7 +824,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (rStatOrgYPO.getEffectiveMeasurementAccrued() == 0) {
|
||||
rStatEventYPO.setEventMeasurementRatioAccrued(1.00f);
|
||||
} else {
|
||||
String value = df.format(statisData / rStatOrgYPO.getEffectiveMeasurementAccrued());
|
||||
String value = df.format(statisData / rStatOrgYPO.getEffectiveMeasurementAccrued().floatValue());
|
||||
rStatEventYPO.setEventMeasurementRatioAccrued(Float.parseFloat(value));
|
||||
}
|
||||
}
|
||||
@@ -921,7 +920,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (sumEM.get(dictData.getId()) == 0) {
|
||||
rStatEventYPO.setEventFreq(1.00f);
|
||||
} else {
|
||||
String value = df.format(sumEC.get(dictData.getId()) / sumEM.get(dictData.getId()));
|
||||
String value = df.format(sumEC.get(dictData.getId()) / sumEM.get(dictData.getId()).floatValue());
|
||||
rStatEventYPO.setEventFreq(Float.parseFloat(value));
|
||||
}
|
||||
if (Objects.isNull(rStatOrgYPO)) {
|
||||
@@ -930,7 +929,7 @@ public class RStatEventServiceImpl implements RStatEventService {
|
||||
if (rStatOrgYPO.getEffectiveMeasurementAccrued() == 0) {
|
||||
rStatEventYPO.setEventMeasurementRatioAccrued(1.00f);
|
||||
} else {
|
||||
String value = df.format(statisData / rStatOrgYPO.getEffectiveMeasurementAccrued());
|
||||
String value = df.format(statisData / rStatOrgYPO.getEffectiveMeasurementAccrued().floatValue());
|
||||
rStatEventYPO.setEventMeasurementRatioAccrued(Float.parseFloat(value));
|
||||
}
|
||||
}
|
||||
|
||||
@@ -165,7 +165,7 @@ public class RStatEventVoltageServiceImpl implements RStatEventVoltageService {
|
||||
if (rStatOrgDPO.getEffectiveMeasurement() == 0) {
|
||||
rStatEventVoltageDPO.setEventMeasurementRatio(1.00f);
|
||||
} else {
|
||||
String value = df.format(rStatEventVoltageDPO.getEventMeasurement() / rStatOrgDPO.getEffectiveMeasurement());
|
||||
String value = df.format(rStatEventVoltageDPO.getEventMeasurement() / rStatOrgDPO.getEffectiveMeasurement().floatValue());
|
||||
rStatEventVoltageDPO.setEventMeasurementRatio(Float.parseFloat(value));
|
||||
}
|
||||
}
|
||||
@@ -239,7 +239,7 @@ public class RStatEventVoltageServiceImpl implements RStatEventVoltageService {
|
||||
if (rStatOrgDPO.getEffectiveMeasurement() == 0) {
|
||||
rStatEventVoltageDPO.setEventMeasurementRatio(1.00f);
|
||||
} else {
|
||||
String value = df.format(rStatEventVoltageDPO.getEventMeasurement() / rStatOrgDPO.getEffectiveMeasurement());
|
||||
String value = df.format(rStatEventVoltageDPO.getEventMeasurement() / rStatOrgDPO.getEffectiveMeasurement().floatValue());
|
||||
rStatEventVoltageDPO.setEventMeasurementRatio(Float.parseFloat(value));
|
||||
}
|
||||
}
|
||||
@@ -384,7 +384,7 @@ public class RStatEventVoltageServiceImpl implements RStatEventVoltageService {
|
||||
if (sumEM.get(dictData.getId()).get(v1.getId()) == 0) {
|
||||
rStatEventVoltageMPO.setEventFreq(1.00f);
|
||||
} else {
|
||||
String value = df.format(sumEC.get(dictData.getId()).get(v1.getId()) / sumEM.get(dictData.getId()).get(v1.getId()));
|
||||
String value = df.format(sumEC.get(dictData.getId()).get(v1.getId()) / sumEM.get(dictData.getId()).get(v1.getId()).floatValue());
|
||||
rStatEventVoltageMPO.setEventFreq(Float.parseFloat(value));
|
||||
}
|
||||
if (Objects.isNull(rStatOrgMPO)) {
|
||||
@@ -393,7 +393,7 @@ public class RStatEventVoltageServiceImpl implements RStatEventVoltageService {
|
||||
if (rStatOrgMPO.getEffectiveMeasurementAccrued() == 0) {
|
||||
rStatEventVoltageMPO.setEventMeasurementRatioAccrued(1.00f);
|
||||
} else {
|
||||
String value = df.format(statisData / rStatOrgMPO.getEffectiveMeasurementAccrued());
|
||||
String value = df.format(statisData / rStatOrgMPO.getEffectiveMeasurementAccrued().floatValue());
|
||||
rStatEventVoltageMPO.setEventMeasurementRatioAccrued(Float.parseFloat(value));
|
||||
}
|
||||
}
|
||||
@@ -499,7 +499,7 @@ public class RStatEventVoltageServiceImpl implements RStatEventVoltageService {
|
||||
if (sumEM.get(dictData.getId()).get(v1.getId()) == 0) {
|
||||
rStatEventVoltageMPO.setEventFreq(1.00f);
|
||||
} else {
|
||||
String value = df.format(sumEC.get(dictData.getId()).get(v1.getId()) / sumEM.get(dictData.getId()).get(v1.getId()));
|
||||
String value = df.format(sumEC.get(dictData.getId()).get(v1.getId()) / sumEM.get(dictData.getId()).get(v1.getId()).floatValue());
|
||||
rStatEventVoltageMPO.setEventFreq(Float.parseFloat(value));
|
||||
}
|
||||
if (Objects.isNull(rStatOrgMPO)) {
|
||||
@@ -508,7 +508,7 @@ public class RStatEventVoltageServiceImpl implements RStatEventVoltageService {
|
||||
if (rStatOrgMPO.getEffectiveMeasurementAccrued() == 0) {
|
||||
rStatEventVoltageMPO.setEventMeasurementRatioAccrued(1.00f);
|
||||
} else {
|
||||
String value = df.format(statisData / rStatOrgMPO.getEffectiveMeasurementAccrued());
|
||||
String value = df.format(statisData / rStatOrgMPO.getEffectiveMeasurementAccrued().floatValue());
|
||||
rStatEventVoltageMPO.setEventMeasurementRatioAccrued(Float.parseFloat(value));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user