提交
This commit is contained in:
@@ -729,11 +729,11 @@ public class RStatOrgServiceImpl implements RStatOrgService {
|
||||
eq("DATE_FORMAT( data_date ,'%Y-%m')",dataDate.substring(0, 7));
|
||||
RMpPassRateMPO rMpPassRateMPO = rMpPassRateMMapper.selectOne(rMpPassRateMPOQueryWrapper);
|
||||
//todo 这边有点问题,每日监测点信息从公共接口获取,当日监测点应该都一样,不存在表数据不一致的情况
|
||||
if (!Objects.isNull(rMpPassRateMPO)){
|
||||
// if (!Objects.isNull(rMpPassRateMPO)){
|
||||
rStatOrgMPO.setFreqPassRate(rMpPassRateMPO.getFreqPassRate());
|
||||
rStatOrgMPO.setFlickerPassRate(rMpPassRateMPO.getFlickerPassRate());
|
||||
rStatOrgMPO.setVDevPassRate(rMpPassRateMPO.getvDevPassRate());
|
||||
}
|
||||
// }
|
||||
|
||||
/*11、日均监测到暂态指标的监测点数*/
|
||||
rMpEventDetailDPOQueryWrapper.clear();
|
||||
|
||||
@@ -74,23 +74,26 @@ public class RMpMonitorEvaluateDServiceImpl extends MppServiceImpl<RMpMonitorEva
|
||||
Double voltage =Double.parseDouble (data.getScale ().substring (0, data.getScale ().length ()-2));
|
||||
|
||||
List<DataVFiveItemDTO> fiveItems = dataVInfluxdbService.getFiveItems (temp, dataDate, statisticalInterval);
|
||||
if(CollectionUtils.isEmpty (fiveItems)){
|
||||
return;
|
||||
}
|
||||
RMpMonitorEvaluateDPO rMpMonitorEvaluateDPO = calculateRMpMonitorEvaluateDPO (fiveItems, pmsAbnormalRules, voltage);
|
||||
RMpMonitorEvaluateDPO rMpMonitorEvaluateDPO = new RMpMonitorEvaluateDPO();
|
||||
|
||||
|
||||
rMpMonitorEvaluateDPO = calculateRMpMonitorEvaluateDPO (rMpMonitorEvaluateDPO,fiveItems, pmsAbnormalRules, voltage,data.getPtType());
|
||||
Date date = DateUtil.parse(dataDate);
|
||||
|
||||
DataFlicker twoFlickerData = dataIntegrityRateInfluxService.getTwoFlickerData (temp, date, 5);
|
||||
|
||||
if(Objects.isNull (twoFlickerData)){
|
||||
return;
|
||||
rMpMonitorEvaluateDPO.setPltCount (0);
|
||||
rMpMonitorEvaluateDPO.setPstCount (0);
|
||||
}else {
|
||||
rMpMonitorEvaluateDPO.setPltCount (twoFlickerData.getPltCount ());
|
||||
rMpMonitorEvaluateDPO.setPstCount (twoFlickerData.getPstCount ());
|
||||
}
|
||||
rMpMonitorEvaluateDPO.setAllMinuteCount (fiveItems.size ());
|
||||
rMpMonitorEvaluateDPO.setDeviceId(devid);
|
||||
rMpMonitorEvaluateDPO.setDataDate (date);
|
||||
rMpMonitorEvaluateDPO.setMeasurementPointId (temp);
|
||||
rMpMonitorEvaluateDPO.setPltCount (twoFlickerData.getPltCount ());
|
||||
rMpMonitorEvaluateDPO.setPstCount (twoFlickerData.getPstCount ());
|
||||
|
||||
rMpMonitorEvaluateDPOS.add (rMpMonitorEvaluateDPO);
|
||||
|
||||
});
|
||||
@@ -109,8 +112,7 @@ public class RMpMonitorEvaluateDServiceImpl extends MppServiceImpl<RMpMonitorEva
|
||||
* @Author: clam
|
||||
* @Date: 2023/2/23
|
||||
*/
|
||||
private RMpMonitorEvaluateDPO calculateRMpMonitorEvaluateDPO(List<DataVFiveItemDTO> fiveItems, List<PmsAbnormalRules> pmsAbnormalRules, Double voltage) {
|
||||
RMpMonitorEvaluateDPO rMpMonitorEvaluateDPO = new RMpMonitorEvaluateDPO();
|
||||
private RMpMonitorEvaluateDPO calculateRMpMonitorEvaluateDPO(RMpMonitorEvaluateDPO rMpMonitorEvaluateDPO,List<DataVFiveItemDTO> fiveItems, List<PmsAbnormalRules> pmsAbnormalRules, Double voltage,String ptType) {
|
||||
|
||||
Integer freqCount = 0;
|
||||
Integer unbalanceCount = 0;
|
||||
@@ -124,48 +126,59 @@ public class RMpMonitorEvaluateDServiceImpl extends MppServiceImpl<RMpMonitorEva
|
||||
PmsAbnormalRules rms_lvrLimit = pmsAbnormalRules.stream ( ).filter (temp -> Objects.equals (temp.getTarget ( ), Param.TARGET_RMS_LVR)).collect (Collectors.toList ( )).get (0);
|
||||
PmsAbnormalRules v_thdLimit = pmsAbnormalRules.stream ( ).filter (temp -> Objects.equals (temp.getTarget ( ), Param.TARGET_V_THD)).collect (Collectors.toList ( )).get (0);
|
||||
PmsAbnormalRules v_unbalanceLimit = pmsAbnormalRules.stream ( ).filter (temp -> Objects.equals (temp.getTarget ( ), Param.TARGET_V_UNBALANCE)).collect (Collectors.toList ( )).get (0);
|
||||
for (DataVFiveItemDTO fiveItem : fiveItems) {
|
||||
Double freqMax = fiveItem.getFreqMax ();
|
||||
Double freqMin = fiveItem.getFreqMin ();
|
||||
if(!CollectionUtils.isEmpty (fiveItems)){
|
||||
for (DataVFiveItemDTO fiveItem : fiveItems) {
|
||||
Double freqMax = fiveItem.getFreqMax ();
|
||||
Double freqMin = fiveItem.getFreqMin ();
|
||||
|
||||
Double rmsMax = fiveItem.getRmsMax ();
|
||||
Double rmsMin = fiveItem.getRmsMin ();
|
||||
Double vThdMax = fiveItem.getVThdMax ();
|
||||
Double vThdMin = fiveItem.getVThdMin ();
|
||||
Double rmsMax = fiveItem.getRmsMax ();
|
||||
Double rmsMin = fiveItem.getRmsMin ();
|
||||
Double vThdMax = fiveItem.getVThdMax ();
|
||||
Double vThdMin = fiveItem.getVThdMin ();
|
||||
|
||||
Double vUnbalanceMax = fiveItem.getVUnbalanceMax ();
|
||||
Double vUnbalanceMin = fiveItem.getVUnbalanceMin ();
|
||||
Double rmsLvrMax = fiveItem.getRmsLvrMax ();
|
||||
Double rmsLvrMin = fiveItem.getRmsLvrMin ();
|
||||
Double vUnbalanceMax = fiveItem.getVUnbalanceMax ();
|
||||
Double vUnbalanceMin = fiveItem.getVUnbalanceMin ();
|
||||
Double rmsLvrMax = fiveItem.getRmsLvrMax ();
|
||||
Double rmsLvrMin = fiveItem.getRmsLvrMin ();
|
||||
|
||||
Boolean rmsflag=false;
|
||||
|
||||
if(freqLimit.getLowerLimit ( ) <= freqMin&&freqMax <= freqLimit.getUpperLimit ( )){
|
||||
freqCount++;
|
||||
}
|
||||
/*,监测点的接线方式,如果是星形接线这个指标要判断,角形界面则不判断,默认它是正常的*/
|
||||
if(Objects.equals("0",ptType)){
|
||||
if(rmsLimit.getLowerLimit ( ) * (voltage / 1.732) <= rmsMin&&rmsMax <= rmsLimit.getUpperLimit ( ) * (voltage / 1.732) ){
|
||||
phaseVoltageCount++;
|
||||
rmsflag =true;
|
||||
}
|
||||
}else {
|
||||
rmsflag =true;
|
||||
phaseVoltageCount++;
|
||||
}
|
||||
|
||||
if(freqLimit.getLowerLimit ( ) <= freqMin&&freqMax <= freqLimit.getUpperLimit ( )){
|
||||
freqCount++;
|
||||
}
|
||||
if(rmsLimit.getLowerLimit ( ) * (voltage / 1.732) <= rmsMin&&rmsMax <= rmsLimit.getUpperLimit ( ) * (voltage / 1.732) ){
|
||||
phaseVoltageCount++;
|
||||
}
|
||||
if(rms_lvrLimit.getLowerLimit ( )*voltage <= rmsLvrMin&&rmsLvrMax <= rms_lvrLimit.getUpperLimit ( )*voltage){
|
||||
lineVoltageCount++;
|
||||
}
|
||||
if(v_thdLimit.getLowerLimit ( ) <= vThdMin&&vThdMax <= v_thdLimit.getUpperLimit ( )){
|
||||
vThdCount++;
|
||||
}
|
||||
if( v_unbalanceLimit.getLowerLimit ( ) <= vUnbalanceMin&&vUnbalanceMax <= v_unbalanceLimit.getUpperLimit ( )){
|
||||
unbalanceCount++;
|
||||
}
|
||||
if(rms_lvrLimit.getLowerLimit ( )*voltage <= rmsLvrMin&&rmsLvrMax <= rms_lvrLimit.getUpperLimit ( )*voltage){
|
||||
lineVoltageCount++;
|
||||
}
|
||||
if(v_thdLimit.getLowerLimit ( ) <= vThdMin&&vThdMax <= v_thdLimit.getUpperLimit ( )){
|
||||
vThdCount++;
|
||||
}
|
||||
if( v_unbalanceLimit.getLowerLimit ( ) <= vUnbalanceMin&&vUnbalanceMax <= v_unbalanceLimit.getUpperLimit ( )){
|
||||
unbalanceCount++;
|
||||
}
|
||||
|
||||
if (freqLimit.getLowerLimit ( ) <= freqMin&&freqMax <= freqLimit.getUpperLimit ( ) &&
|
||||
rmsLimit.getLowerLimit ( ) * (voltage / 1.732) <= rmsMin&&rmsMax <= rmsLimit.getUpperLimit ( ) * (voltage / 1.732) &&
|
||||
rms_lvrLimit.getLowerLimit ( )*voltage <= rmsLvrMin&&rmsLvrMax <= rms_lvrLimit.getUpperLimit ( )*voltage &&
|
||||
v_thdLimit.getLowerLimit ( ) <= vThdMin&&vThdMax <= v_thdLimit.getUpperLimit ( ) &&
|
||||
v_unbalanceLimit.getLowerLimit ( ) <= vUnbalanceMin&&vUnbalanceMax <= v_unbalanceLimit.getUpperLimit ( )
|
||||
if (freqLimit.getLowerLimit ( ) <= freqMin&&freqMax <= freqLimit.getUpperLimit ( ) &&
|
||||
rmsflag &&
|
||||
rms_lvrLimit.getLowerLimit ( )*voltage <= rmsLvrMin&&rmsLvrMax <= rms_lvrLimit.getUpperLimit ( )*voltage &&
|
||||
v_thdLimit.getLowerLimit ( ) <= vThdMin&&vThdMax <= v_thdLimit.getUpperLimit ( ) &&
|
||||
v_unbalanceLimit.getLowerLimit ( ) <= vUnbalanceMin&&vUnbalanceMax <= v_unbalanceLimit.getUpperLimit ( )
|
||||
|
||||
) {
|
||||
effectiveMinuteCount++;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
) {
|
||||
effectiveMinuteCount++;
|
||||
}
|
||||
}
|
||||
rMpMonitorEvaluateDPO.setEffectiveMinuteCount (effectiveMinuteCount);
|
||||
rMpMonitorEvaluateDPO.setFreqCount (freqCount);
|
||||
rMpMonitorEvaluateDPO.setPhaseVoltageCount (phaseVoltageCount);
|
||||
|
||||
@@ -64,6 +64,7 @@ public class ROperatingMonitorDServiceImpl extends MppServiceImpl<ROperatingMoni
|
||||
Date date = DateUtil.parse(dataDate);
|
||||
List<ROperatingMonitorDPO> rOperatingMonitorDPOList = new ArrayList<> ();
|
||||
indexLists.forEach (temp -> {
|
||||
ROperatingMonitorDPO rOperatingMonitorDPO = new ROperatingMonitorDPO();
|
||||
|
||||
LineDetailDataVO data = lineFeignClient.getLineDetailData (temp).getData ( );
|
||||
/*todo 统计间隔,电压等级取值方式,devid后期提供融合版本接口获取不然pms,pqs系统取值方式不一样*/
|
||||
@@ -85,7 +86,6 @@ public class ROperatingMonitorDServiceImpl extends MppServiceImpl<ROperatingMoni
|
||||
if (Objects.isNull(rStatAbnormalDPO)) {
|
||||
return;
|
||||
}
|
||||
ROperatingMonitorDPO rOperatingMonitorDPO = new ROperatingMonitorDPO();
|
||||
rOperatingMonitorDPO.setMeasurementPointId (temp);
|
||||
rOperatingMonitorDPO.setDataDate (date);
|
||||
rOperatingMonitorDPO.setIsUnusual (rStatAbnormalDPO.getValueAlarm ());
|
||||
|
||||
@@ -43,14 +43,17 @@ public class RStatAbnormalDServiceImpl extends MppServiceImpl<RStatAbnormalDMapp
|
||||
rMpMonitorEvaluateDPO.setMeasurementPointId (temp);
|
||||
rMpMonitorEvaluateDPO.setDataDate (date);
|
||||
rMpMonitorEvaluateDPO = rMpMonitorEvaluateDService.selectByMultiId (rMpMonitorEvaluateDPO);
|
||||
if(Objects.isNull (rMpMonitorEvaluateDPO)){
|
||||
return;
|
||||
}
|
||||
RStatAbnormalDPO rStatAbnormalDPO = new RStatAbnormalDPO();
|
||||
|
||||
if(Objects.isNull (rMpMonitorEvaluateDPO)){
|
||||
rStatAbnormalDPO.setValueAlarm(0);
|
||||
}else {
|
||||
rStatAbnormalDPO.setValueAlarm (rMpMonitorEvaluateDPO.getEffectiveMinuteCount ()
|
||||
<rMpMonitorEvaluateDPO.getAllMinuteCount ()?0:1);
|
||||
}
|
||||
rStatAbnormalDPO.setDataDate (date);
|
||||
rStatAbnormalDPO.setMeasurementPointId (temp);
|
||||
rStatAbnormalDPO.setValueAlarm (rMpMonitorEvaluateDPO.getEffectiveMinuteCount ()
|
||||
<rMpMonitorEvaluateDPO.getAllMinuteCount ()?0:1);
|
||||
|
||||
rStatAbnormalDPOS.add (rStatAbnormalDPO);
|
||||
});
|
||||
this.saveOrUpdateBatchByMultiId (rStatAbnormalDPOS,500);
|
||||
|
||||
Reference in New Issue
Block a user