调整case枚举信息,调整数据处理原则
This commit is contained in:
@@ -15,6 +15,7 @@ import com.njcn.gather.err.pojo.param.PqErrSysParam;
|
|||||||
import com.njcn.gather.err.pojo.po.PqErrSysDtls;
|
import com.njcn.gather.err.pojo.po.PqErrSysDtls;
|
||||||
import com.njcn.gather.err.pojo.vo.ErrDtlsCheckDataVO;
|
import com.njcn.gather.err.pojo.vo.ErrDtlsCheckDataVO;
|
||||||
import com.njcn.gather.err.service.IPqErrSysDtlsService;
|
import com.njcn.gather.err.service.IPqErrSysDtlsService;
|
||||||
|
import com.njcn.gather.result.pojo.enums.ResultUnitEnum;
|
||||||
import com.njcn.gather.script.pojo.po.PqScriptCheckData;
|
import com.njcn.gather.script.pojo.po.PqScriptCheckData;
|
||||||
import com.njcn.gather.script.pojo.po.SourceIssue;
|
import com.njcn.gather.script.pojo.po.SourceIssue;
|
||||||
import com.njcn.gather.script.service.IPqScriptCheckDataService;
|
import com.njcn.gather.script.service.IPqScriptCheckDataService;
|
||||||
@@ -87,90 +88,145 @@ public class DetectionServiceImpl {
|
|||||||
param.setScriptId(sourceIssue.getScriptId());
|
param.setScriptId(sourceIssue.getScriptId());
|
||||||
param.setErrorSysId(errorSysId);
|
param.setErrorSysId(errorSysId);
|
||||||
List<ErrDtlsCheckDataVO> errDtlsCheckData = pqErrSysDtlsService.listByPqErrSysIdAndTypes(param);
|
List<ErrDtlsCheckDataVO> errDtlsCheckData = pqErrSysDtlsService.listByPqErrSysIdAndTypes(param);
|
||||||
switch (sourceIssue.getType()) {
|
ResultUnitEnum resultUnitEnumByCode = ResultUnitEnum.getResultUnitEnumByCode(sourceIssue.getType());
|
||||||
|
switch (resultUnitEnumByCode) {
|
||||||
/**
|
/**
|
||||||
* 频率
|
* 频率
|
||||||
*/
|
*/
|
||||||
case "FREQ":
|
case FREQ:
|
||||||
return isQualified(dev, devIdMapComm, errDtlsCheckData, F, sourceIssue, dataRule, code);
|
return isQualified(dev, devIdMapComm, errDtlsCheckData, F, sourceIssue, dataRule, code);
|
||||||
/**
|
/**
|
||||||
* 电压
|
* 电压
|
||||||
*/
|
*/
|
||||||
case "V":
|
case V_RELATIVE:
|
||||||
|
case V_ABSOLUTELY:
|
||||||
return isQualified(dev, devIdMapComm, errDtlsCheckData, U, sourceIssue, dataRule, code);
|
return isQualified(dev, devIdMapComm, errDtlsCheckData, U, sourceIssue, dataRule, code);
|
||||||
/**
|
/**
|
||||||
* 电流
|
* 电流
|
||||||
*/
|
*/
|
||||||
case "I":
|
case I_RELATIVE:
|
||||||
|
case I_ABSOLUTELY:
|
||||||
return isQualified(dev, devIdMapComm, errDtlsCheckData, I, sourceIssue, dataRule, code);
|
return isQualified(dev, devIdMapComm, errDtlsCheckData, I, sourceIssue, dataRule, code);
|
||||||
/**
|
/**
|
||||||
* 谐波电压
|
* 谐波电压
|
||||||
*/
|
*/
|
||||||
case "HV":
|
case HV:
|
||||||
AdHarmonicResult harmV = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, U, sourceIssue, dataRule, 2);
|
AdHarmonicResult harmV = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, U, sourceIssue, dataRule, 2);
|
||||||
detectionDataDealService.acceptAdResult(Arrays.asList(harmV), code);
|
detectionDataDealService.acceptAdResult(Arrays.asList(harmV), code);
|
||||||
return harmV.getResultFlag();
|
return harmV.getResultFlag();
|
||||||
/**
|
/**
|
||||||
* 谐波电流
|
* 谐波电流
|
||||||
*/
|
*/
|
||||||
case "HI":
|
case HI:
|
||||||
AdHarmonicResult harmI = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, I, sourceIssue, dataRule, 2);
|
AdHarmonicResult harmI = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, I, sourceIssue, dataRule, 2);
|
||||||
detectionDataDealService.acceptAdResult(Arrays.asList(harmI), code);
|
detectionDataDealService.acceptAdResult(Arrays.asList(harmI), code);
|
||||||
return harmI.getResultFlag();
|
return harmI.getResultFlag();
|
||||||
/**
|
/**
|
||||||
* 间谐波电压
|
* 间谐波电压
|
||||||
*/
|
*/
|
||||||
case "HSV":
|
case HSV:
|
||||||
AdHarmonicResult harmInV = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, U, sourceIssue, dataRule, 1);
|
AdHarmonicResult harmInV = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, U, sourceIssue, dataRule, 1);
|
||||||
detectionDataDealService.acceptAdResult(Arrays.asList(harmInV), code);
|
detectionDataDealService.acceptAdResult(Arrays.asList(harmInV), code);
|
||||||
return harmInV.getResultFlag();
|
return harmInV.getResultFlag();
|
||||||
/**
|
/**
|
||||||
* 间谐波电流
|
* 间谐波电流
|
||||||
*/
|
*/
|
||||||
case "HSI":
|
case HSI:
|
||||||
AdHarmonicResult harmInI = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, I, sourceIssue, dataRule, 1);
|
AdHarmonicResult harmInI = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, I, sourceIssue, dataRule, 1);
|
||||||
detectionDataDealService.acceptAdResult(Arrays.asList(harmInI), code);
|
detectionDataDealService.acceptAdResult(Arrays.asList(harmInI), code);
|
||||||
return harmInI.getResultFlag();
|
return harmInI.getResultFlag();
|
||||||
/**
|
/**
|
||||||
* 三相电压不平衡度
|
* 三相电压不平衡度
|
||||||
*/
|
*/
|
||||||
case "IMBV":
|
case IMBV:
|
||||||
AdNonHarmonicResult vUnban = isUnBalanceOrFlickerQualified(dev, devIdMapComm, errDtlsCheckData, U, sourceIssue, dataRule, "V_UNBAN");
|
AdNonHarmonicResult vUnban = isUnBalanceOrFlickerQualified(dev, devIdMapComm, errDtlsCheckData, U, sourceIssue, dataRule, "V_UNBAN");
|
||||||
detectionDataDealService.acceptAdNonResult(Arrays.asList(vUnban), code);
|
detectionDataDealService.acceptAdNonResult(Arrays.asList(vUnban), code);
|
||||||
return vUnban.getResultFlag();
|
return vUnban.getResultFlag();
|
||||||
/**
|
/**
|
||||||
* 三相电流不平衡度
|
* 三相电流不平衡度
|
||||||
*/
|
*/
|
||||||
case "IMBA":
|
case IMBA:
|
||||||
AdNonHarmonicResult iUnban = isUnBalanceOrFlickerQualified(dev, devIdMapComm, errDtlsCheckData, I, sourceIssue, dataRule, "I_UNBAN");
|
AdNonHarmonicResult iUnban = isUnBalanceOrFlickerQualified(dev, devIdMapComm, errDtlsCheckData, I, sourceIssue, dataRule, "I_UNBAN");
|
||||||
detectionDataDealService.acceptAdNonResult(Arrays.asList(iUnban), code);
|
detectionDataDealService.acceptAdNonResult(Arrays.asList(iUnban), code);
|
||||||
return iUnban.getResultFlag();
|
return iUnban.getResultFlag();
|
||||||
/**
|
/**
|
||||||
* 谐波有功功率
|
* 谐波有功功率
|
||||||
*/
|
*/
|
||||||
case "HP":
|
case HP:
|
||||||
AdHarmonicResult harmP = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, P, sourceIssue, dataRule, 2);
|
AdHarmonicResult harmP = isHarmQualified(dev, devIdMapComm, errDtlsCheckData, P, sourceIssue, dataRule, 2);
|
||||||
detectionDataDealService.acceptAdResult(Arrays.asList(harmP), code);
|
detectionDataDealService.acceptAdResult(Arrays.asList(harmP), code);
|
||||||
return harmP.getResultFlag();
|
return harmP.getResultFlag();
|
||||||
/**
|
|
||||||
* 功率
|
|
||||||
*/
|
|
||||||
case "P":
|
|
||||||
return 4;
|
|
||||||
/**
|
/**
|
||||||
* 闪变
|
* 闪变
|
||||||
*/
|
*/
|
||||||
case "F":
|
case F:
|
||||||
AdNonHarmonicResult pst = isUnBalanceOrFlickerQualified(dev, devIdMapComm, errDtlsCheckData, null, sourceIssue, dataRule, "PST");
|
AdNonHarmonicResult pst = isUnBalanceOrFlickerQualified(dev, devIdMapComm, errDtlsCheckData, null, sourceIssue, dataRule, "PST");
|
||||||
detectionDataDealService.acceptAdNonResult(Arrays.asList(pst), code);
|
detectionDataDealService.acceptAdNonResult(Arrays.asList(pst), code);
|
||||||
return pst.getResultFlag();
|
return pst.getResultFlag();
|
||||||
/**
|
/**
|
||||||
* 暂态
|
* 暂态
|
||||||
*/
|
*/
|
||||||
case "VOLTAGE":
|
case VOLTAGE_MAG:
|
||||||
|
case VOLTAGE_DUR:
|
||||||
return isVoltageQualified(dev, devIdMapComm, errDtlsCheckData, sourceIssue, dataRule, code);
|
return isVoltageQualified(dev, devIdMapComm, errDtlsCheckData, sourceIssue, dataRule, code);
|
||||||
|
default:
|
||||||
|
// return isUnknownQualified(dev, devIdMapComm, errDtlsCheckData, sourceIssue, dataRule, code);
|
||||||
|
return 4;
|
||||||
}
|
}
|
||||||
return null;
|
}
|
||||||
|
|
||||||
|
public Integer isUnknownQualified(List<DevData> dev,
|
||||||
|
Map<String, String> devIdMapComm,
|
||||||
|
List<ErrDtlsCheckDataVO> errDtlsCheckData,
|
||||||
|
SourceIssue sourceIssue,
|
||||||
|
DictDataEnum dataRule,
|
||||||
|
String code) {
|
||||||
|
List<AdNonHarmonicResult> info = new ArrayList<>();
|
||||||
|
List<String> devValueTypeList = sourceIssue.getDevValueTypeList();
|
||||||
|
for (String s : devValueTypeList) {
|
||||||
|
//基本数据
|
||||||
|
Map<String, List<Double>> map = devListMap(dev, dataRule, s.split("\\$")[1]);
|
||||||
|
AdNonHarmonicResult result = new AdNonHarmonicResult();
|
||||||
|
String[] split = dev.get(0).getId().split("_");
|
||||||
|
String devID = devIdMapComm.get(split[0]);
|
||||||
|
result.setMonitorId(devID + "_" + split[1]);
|
||||||
|
result.setScriptId(sourceIssue.getScriptId());
|
||||||
|
result.setSort(sourceIssue.getIndex());
|
||||||
|
result.setDataType("avg");
|
||||||
|
List<ErrDtlsCheckDataVO> dtlsCheckData = errDtlsCheckData.stream().filter(x -> x.getValueTypeCode().equals(s.split("\\$")[1])).collect(Collectors.toList());
|
||||||
|
List<DetectionData> resultFlag = new ArrayList<>();
|
||||||
|
map.forEach((key, value) -> {
|
||||||
|
List<ErrDtlsCheckDataVO> checkData = dtlsCheckData.stream().filter(x -> key.equals(x.getPhase())).collect(Collectors.toList());
|
||||||
|
DetectionData detectionData = rangeComparisonList(value, new ArrayList<>(), null, checkData.get(0).getValue(), dataRule);
|
||||||
|
if (key.equals(TYPE_T)) {
|
||||||
|
result.setTValue(JSON.toJSONString(detectionData));
|
||||||
|
}
|
||||||
|
if (key.equals(TYPE_A)) {
|
||||||
|
result.setAValue(JSON.toJSONString(detectionData));
|
||||||
|
}
|
||||||
|
if (key.equals(TYPE_B)) {
|
||||||
|
result.setBValue(JSON.toJSONString(detectionData));
|
||||||
|
}
|
||||||
|
if (key.equals(TYPE_C)) {
|
||||||
|
result.setCValue(JSON.toJSONString(detectionData));
|
||||||
|
}
|
||||||
|
resultFlag.add(detectionData);
|
||||||
|
});
|
||||||
|
result.setResultFlag(setResultFlag(resultFlag));
|
||||||
|
info.add(result);
|
||||||
|
//谐波
|
||||||
|
Map<String, Map<Double, List<Double>>> devHarmMap = devHarmListMap(dev, sourceIssue, dataRule, 2);
|
||||||
|
List<DetectionData> detectionData = harmRangeComparison(new ArrayList<>(), null, TYPE_T, sourceIssue, dataRule, devHarmMap.get(TYPE_T), sourceIssue.getFUn(), 2);
|
||||||
|
//间谐波
|
||||||
|
Map<String, Map<Double, List<Double>>> devInHarmMap = devHarmListMap(dev, sourceIssue, dataRule, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
if (CollUtil.isNotEmpty(info)) {
|
||||||
|
detectionDataDealService.acceptAdNonResult(info, code);
|
||||||
|
List<Integer> resultFlag = info.stream().filter(x -> 4 != x.getResultFlag()).map(AdNonHarmonicResult::getResultFlag).distinct().collect(Collectors.toList());
|
||||||
|
return getInteger(resultFlag);
|
||||||
|
}
|
||||||
|
return 4;
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -554,16 +610,16 @@ public class DetectionServiceImpl {
|
|||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
switch (dataRule) {
|
switch (dataRule) {
|
||||||
case SECTION_VALUE:
|
case SECTION_VALUE:
|
||||||
a = getDoubles(a, 1, 19);
|
a = getDoubles(a);
|
||||||
b = getDoubles(b, 1, 19);
|
b = getDoubles(b);
|
||||||
c = getDoubles(c, 1, 19);
|
c = getDoubles(c);
|
||||||
t = getDoubles(t, 1, 19);
|
t = getDoubles(t);
|
||||||
break;
|
break;
|
||||||
case CP95_VALUE:
|
case CP95_VALUE:
|
||||||
a = getDoubles(a, 1, 2);
|
a = getCP95Doubles(a);
|
||||||
b = getDoubles(b, 1, 2);
|
b = getCP95Doubles(b);
|
||||||
c = getDoubles(c, 1, 2);
|
c = getCP95Doubles(c);
|
||||||
t = getDoubles(t, 1, 2);
|
t = getCP95Doubles(t);
|
||||||
break;
|
break;
|
||||||
case AVG_VALUE:
|
case AVG_VALUE:
|
||||||
a = getAvgDoubles(a);
|
a = getAvgDoubles(a);
|
||||||
@@ -730,7 +786,13 @@ public class DetectionServiceImpl {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @param dev 原始数据
|
||||||
|
* @param sourceIssue
|
||||||
|
* @param dataRule
|
||||||
|
* @param num
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public Map<String, Map<Double, List<Double>>> devHarmListMap(List<DevData> dev, SourceIssue sourceIssue, DictDataEnum dataRule, Integer num) {
|
public Map<String, Map<Double, List<Double>>> devHarmListMap(List<DevData> dev, SourceIssue sourceIssue, DictDataEnum dataRule, Integer num) {
|
||||||
Map<String, Map<Double, List<Double>>> map = new HashMap<>(3);
|
Map<String, Map<Double, List<Double>>> map = new HashMap<>(3);
|
||||||
List<Double> harmNum = new ArrayList<>();
|
List<Double> harmNum = new ArrayList<>();
|
||||||
@@ -768,12 +830,25 @@ public class DetectionServiceImpl {
|
|||||||
map.forEach((typeKey, typeValue) -> {
|
map.forEach((typeKey, typeValue) -> {
|
||||||
typeValue.forEach((key, value) -> {
|
typeValue.forEach((key, value) -> {
|
||||||
value.sort(Comparator.comparing(Double::doubleValue).reversed());
|
value.sort(Comparator.comparing(Double::doubleValue).reversed());
|
||||||
|
if (CollUtil.isNotEmpty(value)) {
|
||||||
switch (dataRule) {
|
switch (dataRule) {
|
||||||
case SECTION_VALUE:
|
case SECTION_VALUE:
|
||||||
value.subList(19, value.size()).clear(); // 保留前19个元素
|
if (value.size() > 2) {
|
||||||
value.remove(0); // 移除第一个元素
|
Double max = Collections.max(value);
|
||||||
|
Double min = Collections.min(value);
|
||||||
|
value.remove(max);
|
||||||
|
value.remove(min);
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case CP95_VALUE:
|
case CP95_VALUE:
|
||||||
|
if (value.size() < 21) {
|
||||||
|
if (value.size() > 1) {
|
||||||
|
value.subList(1, 2);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
int v = (int) (value.size() * 0.5);
|
||||||
|
value.subList(v, v + 1);
|
||||||
|
}
|
||||||
value.subList(1, value.size()).clear(); // 保留第一个元素
|
value.subList(1, value.size()).clear(); // 保留第一个元素
|
||||||
break;
|
break;
|
||||||
case AVG_VALUE:
|
case AVG_VALUE:
|
||||||
@@ -782,6 +857,7 @@ public class DetectionServiceImpl {
|
|||||||
value.add(average); // 添加平均值
|
value.add(average); // 添加平均值
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
});
|
});
|
||||||
});
|
});
|
||||||
return map;
|
return map;
|
||||||
@@ -1047,9 +1123,32 @@ public class DetectionServiceImpl {
|
|||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<Double> getDoubles(List<Double> t, Integer start, Integer end) {
|
public List<Double> getDoubles(List<Double> t) {
|
||||||
if (CollUtil.isNotEmpty(t)) {
|
if (CollUtil.isNotEmpty(t)) {
|
||||||
t = t.subList(start, end);
|
if (t == null || t.size() < 2) {
|
||||||
|
return t;
|
||||||
|
}
|
||||||
|
Double max = Collections.max(t);
|
||||||
|
Double min = Collections.min(t);
|
||||||
|
t.remove(max);
|
||||||
|
t.remove(min);
|
||||||
|
}
|
||||||
|
return t;
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<Double> getCP95Doubles(List<Double> t) {
|
||||||
|
if (CollUtil.isNotEmpty(t)) {
|
||||||
|
if (t.size() < 21) {
|
||||||
|
if (t.size() == 1) {
|
||||||
|
return t;
|
||||||
|
}
|
||||||
|
if (t.size() > 1) {
|
||||||
|
return t.subList(1, 2);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
int v = (int) (t.size() * 0.5);
|
||||||
|
return t.subList(v, v + 1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return t;
|
return t;
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,5 +1,6 @@
|
|||||||
package com.njcn.gather.result.pojo.enums;
|
package com.njcn.gather.result.pojo.enums;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -9,28 +10,41 @@ import lombok.Getter;
|
|||||||
@Getter
|
@Getter
|
||||||
public enum ResultUnitEnum {
|
public enum ResultUnitEnum {
|
||||||
|
|
||||||
FREQ_UNIT("Hz", "频率"),
|
FREQ("Hz", "频率","FREQ"),
|
||||||
V_RELATIVE_UNIT("%Un", "电压"),
|
V_RELATIVE("%Un", "电压","V"),
|
||||||
V_ABSOLUTELY_UNIT("V", "电压"),
|
V_ABSOLUTELY("V", "电压","V"),
|
||||||
I_RELATIVE_UNIT("%In", "电流"),
|
I_RELATIVE("%In", "电流","I"),
|
||||||
I_ABSOLUTELY_UNIT("A", "电流"),
|
I_ABSOLUTELY("A", "电流","I"),
|
||||||
HV_UNIT("%", "谐波电压"),
|
HV("%", "谐波电压","HV"),
|
||||||
HI_UNIT("%", "谐波电流"),
|
HI("%", "谐波电流","HI"),
|
||||||
HP_UNIT("W", "谐波有功功率"),
|
HP("W", "谐波有功功率","HP"),
|
||||||
HSV_UNIT("%", "间谐波电压"),
|
HSV("%", "间谐波电压","HSV"),
|
||||||
HSI_UNIT("%", "间谐波电流"),
|
HSI("%", "间谐波电流","HSI"),
|
||||||
VOLTAGE_MAG_UNIT("周波", "暂态持续时间"),
|
VOLTAGE_MAG("周波", "暂态持续时间","VOLTAGE"),
|
||||||
VOLTAGE_DUR_UNIT("%", "暂态深度"),
|
VOLTAGE_DUR("%", "暂态深度","VOLTAGE"),
|
||||||
IMBV_UNIT("%", "电压不平衡度"),
|
IMBV("%", "电压不平衡度","IMBV"),
|
||||||
IMBA_UNIT("%", "电流不平衡度"),
|
IMBA("%", "电流不平衡度","IMBA"),
|
||||||
|
F("","闪变","F"),
|
||||||
|
|
||||||
|
UNKNOWN("","未知","UNKNOWN"),
|
||||||
;
|
;
|
||||||
|
|
||||||
private String unit;
|
private String unit;
|
||||||
private String name;
|
private String name;
|
||||||
|
private String code;
|
||||||
|
|
||||||
ResultUnitEnum(String unit, String name) {
|
ResultUnitEnum(String unit, String name, String code) {
|
||||||
this.unit = unit;
|
this.unit = unit;
|
||||||
this.name = name;
|
this.name = name;
|
||||||
|
this.code = code;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static ResultUnitEnum getResultUnitEnumByCode(String code) {
|
||||||
|
for (ResultUnitEnum resultUnitEnum : ResultUnitEnum.values()) {
|
||||||
|
if (ObjectUtil.equals(code, resultUnitEnum.getCode())) {
|
||||||
|
return resultUnitEnum;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return UNKNOWN;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -289,23 +289,25 @@ public class ResultServiceImpl implements IResultService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void ratedScriptTypeName(List<PqScriptDtls> scriptDtlIndexList, Boolean isValueType, TreeDataVO dtlType, DictTree dictTree) {
|
private void ratedScriptTypeName(List<PqScriptDtls> scriptDtlIndexList, Boolean isValueType, TreeDataVO dtlType, DictTree dictTree) {
|
||||||
switch (dictTree.getCode()) {
|
ResultUnitEnum resultUnitEnumByCode = ResultUnitEnum.getResultUnitEnumByCode(dictTree.getCode());
|
||||||
|
switch (resultUnitEnumByCode) {
|
||||||
/**
|
/**
|
||||||
* 频率
|
* 频率
|
||||||
*/
|
*/
|
||||||
case "FREQ":
|
case FREQ:
|
||||||
List<PqScriptDtls> f = scriptDtlIndexList.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> f = scriptDtlIndexList.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName(dictTree.getName() + "=" + f.get(0).getValue() + ResultUnitEnum.FREQ_UNIT.getUnit());
|
dtlType.setScriptTypeName(dictTree.getName() + "=" + f.get(0).getValue() + ResultUnitEnum.FREQ.getUnit());
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 电压
|
* 电压
|
||||||
*/
|
*/
|
||||||
case "V":
|
case V_RELATIVE:
|
||||||
|
case V_ABSOLUTELY:
|
||||||
String unit;
|
String unit;
|
||||||
if (isValueType) {
|
if (isValueType) {
|
||||||
unit = ResultUnitEnum.V_RELATIVE_UNIT.getUnit();
|
unit = ResultUnitEnum.V_RELATIVE.getUnit();
|
||||||
} else {
|
} else {
|
||||||
unit = ResultUnitEnum.V_ABSOLUTELY_UNIT.getUnit();
|
unit = ResultUnitEnum.V_ABSOLUTELY.getUnit();
|
||||||
}
|
}
|
||||||
List<PqScriptDtls> v = scriptDtlIndexList.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> v = scriptDtlIndexList.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName(dictTree.getName() + "=" + v.get(0).getValue().intValue() + unit);
|
dtlType.setScriptTypeName(dictTree.getName() + "=" + v.get(0).getValue().intValue() + unit);
|
||||||
@@ -313,24 +315,23 @@ public class ResultServiceImpl implements IResultService {
|
|||||||
/**
|
/**
|
||||||
* 电流
|
* 电流
|
||||||
*/
|
*/
|
||||||
case "I":
|
case I_RELATIVE:
|
||||||
|
case I_ABSOLUTELY:
|
||||||
String unitI;
|
String unitI;
|
||||||
if (isValueType) {
|
if (isValueType) {
|
||||||
unitI = ResultUnitEnum.I_RELATIVE_UNIT.getUnit();
|
unitI = ResultUnitEnum.I_RELATIVE.getUnit();
|
||||||
} else {
|
} else {
|
||||||
unitI = ResultUnitEnum.I_ABSOLUTELY_UNIT.getUnit();
|
unitI = ResultUnitEnum.I_ABSOLUTELY.getUnit();
|
||||||
}
|
}
|
||||||
List<PqScriptDtls> I = scriptDtlIndexList.stream().filter(x -> "CUR".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> I = scriptDtlIndexList.stream().filter(x -> "CUR".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName(dictTree.getName() + "=" + I.get(0).getValue().intValue() + unitI);
|
dtlType.setScriptTypeName(dictTree.getName() + "=" + I.get(0).getValue().intValue() + unitI);
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 谐波电压
|
* 谐波电压
|
||||||
*/
|
|
||||||
case "HV":
|
|
||||||
/**
|
|
||||||
* 谐波电流
|
* 谐波电流
|
||||||
*/
|
*/
|
||||||
case "HI":
|
case HV:
|
||||||
|
case HI:
|
||||||
String valueType;
|
String valueType;
|
||||||
if ("HV".equals(dictTree.getCode())) {
|
if ("HV".equals(dictTree.getCode())) {
|
||||||
valueType = "Harm_V";
|
valueType = "Harm_V";
|
||||||
@@ -348,17 +349,15 @@ public class ResultServiceImpl implements IResultService {
|
|||||||
+ "次" + dictTree.getName() + "(含有率为GB/T)");
|
+ "次" + dictTree.getName() + "(含有率为GB/T)");
|
||||||
} else {
|
} else {
|
||||||
//叠加5%的2次谐波电压
|
//叠加5%的2次谐波电压
|
||||||
dtlType.setScriptTypeName("叠加" + hv.get(0).getValue().intValue() + ResultUnitEnum.HV_UNIT.getUnit() + "的" + hv.get(0).getHarmNum().intValue() + "次" + dictTree.getName());
|
dtlType.setScriptTypeName("叠加" + hv.get(0).getValue().intValue() + ResultUnitEnum.HV.getUnit() + "的" + hv.get(0).getHarmNum().intValue() + "次" + dictTree.getName());
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 间谐波电压
|
* 间谐波电压
|
||||||
*/
|
|
||||||
case "HSV":
|
|
||||||
/**
|
|
||||||
* 间谐波电流
|
* 间谐波电流
|
||||||
*/
|
*/
|
||||||
case "HSI":
|
case HSV:
|
||||||
|
case HSI:
|
||||||
//叠加1.5/5.5/7.5/49.5次间谐波,含有率为。。。
|
//叠加1.5/5.5/7.5/49.5次间谐波,含有率为。。。
|
||||||
String in;
|
String in;
|
||||||
if ("HSV".equals(dictTree.getCode())) {
|
if ("HSV".equals(dictTree.getCode())) {
|
||||||
@@ -384,36 +383,36 @@ public class ResultServiceImpl implements IResultService {
|
|||||||
dtlType.setScriptTypeName(a.toString());
|
dtlType.setScriptTypeName(a.toString());
|
||||||
} else {
|
} else {
|
||||||
//叠加5%的2次谐波电压
|
//叠加5%的2次谐波电压
|
||||||
dtlType.setScriptTypeName("叠加" + harmInNumList.get(0).getValue().intValue() + ResultUnitEnum.HV_UNIT.getUnit() + "的" + harmInNumList.get(0).getHarmNum() + "次" + dictTree.getName());
|
dtlType.setScriptTypeName("叠加" + harmInNumList.get(0).getValue().intValue() + ResultUnitEnum.HV.getUnit() + "的" + harmInNumList.get(0).getHarmNum() + "次" + dictTree.getName());
|
||||||
}
|
}
|
||||||
|
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 三相电压不平衡度
|
* 三相电压不平衡度
|
||||||
*/
|
*/
|
||||||
case "IMBV":
|
case IMBV:
|
||||||
List<PqScriptCheckData> list = pqScriptCheckDataService.list(new MPJLambdaWrapper<PqScriptCheckData>()
|
List<PqScriptCheckData> list = pqScriptCheckDataService.list(new MPJLambdaWrapper<PqScriptCheckData>()
|
||||||
.eq(PqScriptCheckData::getScriptId, scriptDtlIndexList.get(0).getScriptId())
|
.eq(PqScriptCheckData::getScriptId, scriptDtlIndexList.get(0).getScriptId())
|
||||||
.eq(PqScriptCheckData::getIndex, scriptDtlIndexList.get(0).getIndex())
|
.eq(PqScriptCheckData::getIndex, scriptDtlIndexList.get(0).getIndex())
|
||||||
);
|
);
|
||||||
//三相负序电压不平衡度=0%
|
//三相负序电压不平衡度=0%
|
||||||
dtlType.setScriptTypeName(dictTree.getName() + "=" + list.get(0).getValue() + ResultUnitEnum.IMBV_UNIT.getUnit());
|
dtlType.setScriptTypeName(dictTree.getName() + "=" + list.get(0).getValue() + ResultUnitEnum.IMBV.getUnit());
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 三相电流不平衡度
|
* 三相电流不平衡度
|
||||||
*/
|
*/
|
||||||
case "IMBA":
|
case IMBA:
|
||||||
List<PqScriptCheckData> imba = pqScriptCheckDataService.list(new MPJLambdaWrapper<PqScriptCheckData>()
|
List<PqScriptCheckData> imba = pqScriptCheckDataService.list(new MPJLambdaWrapper<PqScriptCheckData>()
|
||||||
.eq(PqScriptCheckData::getScriptId, scriptDtlIndexList.get(0).getScriptId())
|
.eq(PqScriptCheckData::getScriptId, scriptDtlIndexList.get(0).getScriptId())
|
||||||
.eq(PqScriptCheckData::getIndex, scriptDtlIndexList.get(0).getIndex())
|
.eq(PqScriptCheckData::getIndex, scriptDtlIndexList.get(0).getIndex())
|
||||||
);
|
);
|
||||||
//三相负序电流不平衡度=0%
|
//三相负序电流不平衡度=0%
|
||||||
dtlType.setScriptTypeName(dictTree.getName() + "=" + imba.get(0).getValue() + ResultUnitEnum.IMBV_UNIT.getUnit());
|
dtlType.setScriptTypeName(dictTree.getName() + "=" + imba.get(0).getValue() + ResultUnitEnum.IMBV.getUnit());
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 谐波有功功率
|
* 谐波有功功率
|
||||||
*/
|
*/
|
||||||
case "HP":
|
case HP:
|
||||||
//10%的2次谐波电压,40%的2次谐波电流
|
//10%的2次谐波电压,40%的2次谐波电流
|
||||||
List<PqScriptDtls> hpv = scriptDtlIndexList.stream().filter(x -> "Harm_V".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hpv = scriptDtlIndexList.stream().filter(x -> "Harm_V".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
List<PqScriptDtls> hpI = scriptDtlIndexList.stream().filter(x -> "Harm_I".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hpI = scriptDtlIndexList.stream().filter(x -> "Harm_I".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
@@ -429,7 +428,7 @@ public class ResultServiceImpl implements IResultService {
|
|||||||
ArrayList<List<PqScriptDtls>> lists = new ArrayList<>(harmNumVMap.values());
|
ArrayList<List<PqScriptDtls>> lists = new ArrayList<>(harmNumVMap.values());
|
||||||
Map<Double, List<PqScriptDtls>> hpvMap = lists.stream().flatMap(x -> x.stream().filter(j -> "A".equals(j.getPhase()))).collect(Collectors.groupingBy(PqScriptDtls::getValue));
|
Map<Double, List<PqScriptDtls>> hpvMap = lists.stream().flatMap(x -> x.stream().filter(j -> "A".equals(j.getPhase()))).collect(Collectors.groupingBy(PqScriptDtls::getValue));
|
||||||
hpvMap.forEach((key, value) -> {
|
hpvMap.forEach((key, value) -> {
|
||||||
a.append(key.intValue() + ResultUnitEnum.HV_UNIT.getUnit() + "的");
|
a.append(key.intValue() + ResultUnitEnum.HV.getUnit() + "的");
|
||||||
for (int i = 0; i < value.size(); i++) {
|
for (int i = 0; i < value.size(); i++) {
|
||||||
if (i == value.size() - 1) {
|
if (i == value.size() - 1) {
|
||||||
a.append(value.get(i).getHarmNum().intValue());
|
a.append(value.get(i).getHarmNum().intValue());
|
||||||
@@ -437,18 +436,18 @@ public class ResultServiceImpl implements IResultService {
|
|||||||
a.append(value.get(i).getHarmNum().intValue() + "、");
|
a.append(value.get(i).getHarmNum().intValue() + "、");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
a.append("次" + ResultUnitEnum.HV_UNIT.getName());
|
a.append("次" + ResultUnitEnum.HV.getName());
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
PqScriptDtls dtls = harmNumVMap.entrySet().iterator().next().getValue().get(0);
|
PqScriptDtls dtls = harmNumVMap.entrySet().iterator().next().getValue().get(0);
|
||||||
a.append(dtls.getValue().intValue() + ResultUnitEnum.HV_UNIT.getUnit() + "的" + dtls.getHarmNum().intValue() + ResultUnitEnum.HV_UNIT.getName());
|
a.append(dtls.getValue().intValue() + ResultUnitEnum.HV.getUnit() + "的" + dtls.getHarmNum().intValue() + ResultUnitEnum.HV.getName());
|
||||||
}
|
}
|
||||||
a.append(",");
|
a.append(",");
|
||||||
if (harmNumIMap.size() > 1) {
|
if (harmNumIMap.size() > 1) {
|
||||||
ArrayList<List<PqScriptDtls>> lists = new ArrayList<>(harmNumIMap.values());
|
ArrayList<List<PqScriptDtls>> lists = new ArrayList<>(harmNumIMap.values());
|
||||||
Map<Double, List<PqScriptDtls>> hpvMap = lists.stream().flatMap(x -> x.stream().filter(j -> "A".equals(j.getPhase()))).collect(Collectors.groupingBy(PqScriptDtls::getValue));
|
Map<Double, List<PqScriptDtls>> hpvMap = lists.stream().flatMap(x -> x.stream().filter(j -> "A".equals(j.getPhase()))).collect(Collectors.groupingBy(PqScriptDtls::getValue));
|
||||||
hpvMap.forEach((key, value) -> {
|
hpvMap.forEach((key, value) -> {
|
||||||
a.append(key.intValue() + ResultUnitEnum.HI_UNIT.getUnit() + "的");
|
a.append(key.intValue() + ResultUnitEnum.HI.getUnit() + "的");
|
||||||
for (int i = 0; i < value.size(); i++) {
|
for (int i = 0; i < value.size(); i++) {
|
||||||
if (i == value.size() - 1) {
|
if (i == value.size() - 1) {
|
||||||
a.append(value.get(i).getHarmNum().intValue());
|
a.append(value.get(i).getHarmNum().intValue());
|
||||||
@@ -456,23 +455,18 @@ public class ResultServiceImpl implements IResultService {
|
|||||||
a.append(value.get(i).getHarmNum().intValue() + "、");
|
a.append(value.get(i).getHarmNum().intValue() + "、");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
a.append("次" + ResultUnitEnum.HI_UNIT.getName());
|
a.append("次" + ResultUnitEnum.HI.getName());
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
PqScriptDtls dtls = harmNumIMap.entrySet().iterator().next().getValue().get(0);
|
PqScriptDtls dtls = harmNumIMap.entrySet().iterator().next().getValue().get(0);
|
||||||
a.append(dtls.getValue().intValue() + ResultUnitEnum.HI_UNIT.getUnit() + "的" + dtls.getHarmNum().intValue() + "次" + ResultUnitEnum.HI_UNIT.getName());
|
a.append(dtls.getValue().intValue() + ResultUnitEnum.HI.getUnit() + "的" + dtls.getHarmNum().intValue() + "次" + ResultUnitEnum.HI.getName());
|
||||||
}
|
}
|
||||||
dtlType.setScriptTypeName(a.toString());
|
dtlType.setScriptTypeName(a.toString());
|
||||||
break;
|
break;
|
||||||
/**
|
|
||||||
* 功率
|
|
||||||
*/
|
|
||||||
case "P":
|
|
||||||
break;
|
|
||||||
/**
|
/**
|
||||||
* 闪变
|
* 闪变
|
||||||
*/
|
*/
|
||||||
case "F":
|
case F:
|
||||||
//Pst=1(变动率=1.459%*1)
|
//Pst=1(变动率=1.459%*1)
|
||||||
List<PqScriptDtls> flicker = scriptDtlIndexList.stream().filter(x -> "Flicker".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> flicker = scriptDtlIndexList.stream().filter(x -> "Flicker".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName("Pst=" + flicker.get(0).getChagFre() + "(变动率=" + flicker.get(0).getChagValue() + "%*" + flicker.get(0).getChagFre() + ")");
|
dtlType.setScriptTypeName("Pst=" + flicker.get(0).getChagFre() + "(变动率=" + flicker.get(0).getChagValue() + "%*" + flicker.get(0).getChagFre() + ")");
|
||||||
@@ -480,29 +474,32 @@ public class ResultServiceImpl implements IResultService {
|
|||||||
/**
|
/**
|
||||||
* 暂态
|
* 暂态
|
||||||
*/
|
*/
|
||||||
case "VOLTAGE":
|
case VOLTAGE_MAG:
|
||||||
|
case VOLTAGE_DUR:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void harmScriptTypeName(List<PqScriptDtls> dtls, DictTree dictTree, Boolean isValueType, TreeDataVO dtlType) {
|
private void harmScriptTypeName(List<PqScriptDtls> dtls, DictTree dictTree, Boolean isValueType, TreeDataVO dtlType) {
|
||||||
switch (dictTree.getCode()) {
|
ResultUnitEnum resultUnitEnumByCode = ResultUnitEnum.getResultUnitEnumByCode(dictTree.getCode());
|
||||||
|
switch (resultUnitEnumByCode) {
|
||||||
/**
|
/**
|
||||||
* 频率
|
* 频率
|
||||||
*/
|
*/
|
||||||
case "FREQ":
|
case FREQ:
|
||||||
List<PqScriptDtls> f = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> f = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName("叠加多次谐波对" + dictTree.getName() + "=" + f.get(0).getValue() + ResultUnitEnum.FREQ_UNIT.getUnit() + "的影响");
|
dtlType.setScriptTypeName("叠加多次谐波对" + dictTree.getName() + "=" + f.get(0).getValue() + ResultUnitEnum.FREQ.getUnit() + "的影响");
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 电压
|
* 电压
|
||||||
*/
|
*/
|
||||||
case "V":
|
case V_RELATIVE:
|
||||||
|
case V_ABSOLUTELY:
|
||||||
String unit;
|
String unit;
|
||||||
if (isValueType) {
|
if (isValueType) {
|
||||||
unit = ResultUnitEnum.V_RELATIVE_UNIT.getUnit();
|
unit = ResultUnitEnum.V_RELATIVE.getUnit();
|
||||||
} else {
|
} else {
|
||||||
unit = ResultUnitEnum.V_ABSOLUTELY_UNIT.getUnit();
|
unit = ResultUnitEnum.V_ABSOLUTELY.getUnit();
|
||||||
}
|
}
|
||||||
List<PqScriptDtls> v = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> v = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName("叠加多次谐波对" + dictTree.getName() + "=" + v.get(0).getValue() + unit + "的影响");
|
dtlType.setScriptTypeName("叠加多次谐波对" + dictTree.getName() + "=" + v.get(0).getValue() + unit + "的影响");
|
||||||
@@ -510,246 +507,240 @@ public class ResultServiceImpl implements IResultService {
|
|||||||
/**
|
/**
|
||||||
* 电流
|
* 电流
|
||||||
*/
|
*/
|
||||||
case "I":
|
case I_RELATIVE:
|
||||||
|
case I_ABSOLUTELY:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 谐波电压
|
* 谐波电压
|
||||||
*/
|
*/
|
||||||
case "HV":
|
case HV:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 谐波电流
|
* 谐波电流
|
||||||
*/
|
*/
|
||||||
case "HI":
|
case HI:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 间谐波电压
|
* 间谐波电压
|
||||||
*/
|
*/
|
||||||
case "HSV":
|
case HSV:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 间谐波电流
|
* 间谐波电流
|
||||||
*/
|
*/
|
||||||
case "HSI":
|
case HSI:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 三相电压不平衡度
|
* 三相电压不平衡度
|
||||||
*/
|
*/
|
||||||
case "IMBV":
|
case IMBV:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 三相电流不平衡度
|
* 三相电流不平衡度
|
||||||
*/
|
*/
|
||||||
case "IMBA":
|
case IMBA:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 谐波有功功率
|
* 谐波有功功率
|
||||||
*/
|
*/
|
||||||
case "HP":
|
case HP:
|
||||||
break;
|
|
||||||
/**
|
|
||||||
* 功率
|
|
||||||
*/
|
|
||||||
case "P":
|
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 闪变
|
* 闪变
|
||||||
*/
|
*/
|
||||||
case "F":
|
case F:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 暂态
|
* 暂态
|
||||||
*/
|
*/
|
||||||
case "VOLTAGE":
|
case VOLTAGE_MAG:
|
||||||
|
case VOLTAGE_DUR:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void volScriptTypeName(List<PqScriptDtls> dtls, DictTree dictTree, Boolean isValueType, TreeDataVO dtlType) {
|
private void volScriptTypeName(List<PqScriptDtls> dtls, DictTree dictTree, Boolean isValueType, TreeDataVO dtlType) {
|
||||||
switch (dictTree.getCode()) {
|
ResultUnitEnum resultUnitEnumByCode = ResultUnitEnum.getResultUnitEnumByCode(dictTree.getCode());
|
||||||
|
switch (resultUnitEnumByCode) {
|
||||||
/**
|
/**
|
||||||
* 频率
|
* 频率
|
||||||
*/
|
*/
|
||||||
case "FREQ":
|
case FREQ:
|
||||||
String unit;
|
String unit;
|
||||||
if (isValueType) {
|
if (isValueType) {
|
||||||
unit = ResultUnitEnum.V_RELATIVE_UNIT.getUnit();
|
unit = ResultUnitEnum.V_RELATIVE.getUnit();
|
||||||
} else {
|
} else {
|
||||||
unit = ResultUnitEnum.V_ABSOLUTELY_UNIT.getUnit();
|
unit = ResultUnitEnum.V_ABSOLUTELY.getUnit();
|
||||||
}
|
}
|
||||||
List<PqScriptDtls> f = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> f = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
List<PqScriptDtls> v = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> v = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName(v.get(0).getValue().intValue() + unit + "对" + dictTree.getName() + "=" + f.get(0).getValue() + ResultUnitEnum.FREQ_UNIT.getUnit() + "的影响");
|
dtlType.setScriptTypeName(v.get(0).getValue().intValue() + unit + "对" + dictTree.getName() + "=" + f.get(0).getValue() + ResultUnitEnum.FREQ.getUnit() + "的影响");
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 电压
|
* 电压
|
||||||
*/
|
*/
|
||||||
case "V":
|
case V_RELATIVE:
|
||||||
|
case V_ABSOLUTELY:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 电流
|
* 电流
|
||||||
*/
|
*/
|
||||||
case "I":
|
case I_RELATIVE:
|
||||||
|
case I_ABSOLUTELY:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 谐波电压
|
* 谐波电压
|
||||||
*/
|
*/
|
||||||
case "HV":
|
case HV:
|
||||||
//电压有效值10%,3次谐波电压,含有率
|
//电压有效值10%,3次谐波电压,含有率
|
||||||
List<PqScriptDtls> hvv = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hvv = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
List<PqScriptDtls> hv = dtls.stream().filter(x -> "Harm_V".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hv = dtls.stream().filter(x -> "Harm_V".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName("电压有效值" + hvv.get(0).getValue().intValue() + ResultUnitEnum.HV_UNIT.getUnit() + "," + hv.get(0).getHarmNum().intValue() + "次" + dictTree.getName());
|
dtlType.setScriptTypeName("电压有效值" + hvv.get(0).getValue().intValue() + ResultUnitEnum.HV.getUnit() + "," + hv.get(0).getHarmNum().intValue() + "次" + dictTree.getName());
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 谐波电流
|
* 谐波电流
|
||||||
*/
|
*/
|
||||||
case "HI":
|
case HI:
|
||||||
List<PqScriptDtls> hiv = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hiv = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
List<PqScriptDtls> hi = dtls.stream().filter(x -> "Harm_I".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hi = dtls.stream().filter(x -> "Harm_I".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName("电压有效值" + hiv.get(0).getValue().intValue() + ResultUnitEnum.HI_UNIT.getUnit() + "," + hi.get(0).getHarmNum().intValue() + "次" + dictTree.getName());
|
dtlType.setScriptTypeName("电压有效值" + hiv.get(0).getValue().intValue() + ResultUnitEnum.HI.getUnit() + "," + hi.get(0).getHarmNum().intValue() + "次" + dictTree.getName());
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 间谐波电压
|
* 间谐波电压
|
||||||
*/
|
*/
|
||||||
case "HSV":
|
case HSV:
|
||||||
List<PqScriptDtls> hsvv = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hsvv = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
List<PqScriptDtls> hsv = dtls.stream().filter(x -> "InHarm_V".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hsv = dtls.stream().filter(x -> "InHarm_V".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName("电压有效值" + hsvv.get(0).getValue().intValue() + ResultUnitEnum.HSV_UNIT.getUnit() + "," + hsv.get(0).getHarmNum() + "次" + dictTree.getName());
|
dtlType.setScriptTypeName("电压有效值" + hsvv.get(0).getValue().intValue() + ResultUnitEnum.HSV.getUnit() + "," + hsv.get(0).getHarmNum() + "次" + dictTree.getName());
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 间谐波电流
|
* 间谐波电流
|
||||||
*/
|
*/
|
||||||
case "HSI":
|
case HSI:
|
||||||
List<PqScriptDtls> hsiv = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hsiv = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
List<PqScriptDtls> hsi = dtls.stream().filter(x -> "InHarm_I".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hsi = dtls.stream().filter(x -> "InHarm_I".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName("电压有效值" + hsiv.get(0).getValue().intValue() + ResultUnitEnum.HSI_UNIT.getUnit() + "," + hsi.get(0).getHarmNum() + "次" + dictTree.getName());
|
dtlType.setScriptTypeName("电压有效值" + hsiv.get(0).getValue().intValue() + ResultUnitEnum.HSI.getUnit() + "," + hsi.get(0).getHarmNum() + "次" + dictTree.getName());
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 三相电压不平衡度
|
* 三相电压不平衡度
|
||||||
*/
|
*/
|
||||||
case "IMBV":
|
case IMBV:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 三相电流不平衡度
|
* 三相电流不平衡度
|
||||||
*/
|
*/
|
||||||
case "IMBA":
|
case IMBA:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 谐波有功功率
|
* 谐波有功功率
|
||||||
*/
|
*/
|
||||||
case "HP":
|
case HP:
|
||||||
break;
|
|
||||||
/**
|
|
||||||
* 功率
|
|
||||||
*/
|
|
||||||
case "P":
|
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 闪变
|
* 闪变
|
||||||
*/
|
*/
|
||||||
case "F":
|
case F:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 暂态
|
* 暂态
|
||||||
*/
|
*/
|
||||||
case "VOLTAGE":
|
case VOLTAGE_MAG:
|
||||||
|
case VOLTAGE_DUR:
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void freqScriptTypeName(List<PqScriptDtls> dtls, DictTree dictTree, Boolean isValueType, TreeDataVO dtlType) {
|
private void freqScriptTypeName(List<PqScriptDtls> dtls, DictTree dictTree, Boolean isValueType, TreeDataVO dtlType) {
|
||||||
switch (dictTree.getCode()) {
|
ResultUnitEnum resultUnitEnumByCode = ResultUnitEnum.getResultUnitEnumByCode(dictTree.getCode());
|
||||||
|
switch (resultUnitEnumByCode) {
|
||||||
/**
|
/**
|
||||||
* 频率
|
* 频率
|
||||||
*/
|
*/
|
||||||
case "FREQ":
|
case FREQ:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 电压
|
* 电压
|
||||||
*/
|
*/
|
||||||
case "V":
|
case V_RELATIVE:
|
||||||
|
case V_ABSOLUTELY:
|
||||||
String unit;
|
String unit;
|
||||||
if (isValueType) {
|
if (isValueType) {
|
||||||
unit = ResultUnitEnum.V_RELATIVE_UNIT.getUnit();
|
unit = ResultUnitEnum.V_RELATIVE.getUnit();
|
||||||
} else {
|
} else {
|
||||||
unit = ResultUnitEnum.V_ABSOLUTELY_UNIT.getUnit();
|
unit = ResultUnitEnum.V_ABSOLUTELY.getUnit();
|
||||||
}
|
}
|
||||||
List<PqScriptDtls> f = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> f = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
List<PqScriptDtls> v = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> v = dtls.stream().filter(x -> "VOL".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName("频率=" + f.get(0).getValue() + ResultUnitEnum.FREQ_UNIT.getUnit() + "," + dictTree.getName() + "=" + v.get(0).getValue() + unit);
|
dtlType.setScriptTypeName("频率=" + f.get(0).getValue() + ResultUnitEnum.FREQ.getUnit() + "," + dictTree.getName() + "=" + v.get(0).getValue() + unit);
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 电流
|
* 电流
|
||||||
*/
|
*/
|
||||||
case "I":
|
case I_RELATIVE:
|
||||||
|
case I_ABSOLUTELY:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 谐波电压
|
* 谐波电压
|
||||||
*/
|
*/
|
||||||
case "HV":
|
case HV:
|
||||||
//基波频率为42.5Hz,2次谐波电压
|
//基波频率为42.5Hz,2次谐波电压
|
||||||
List<PqScriptDtls> hvf = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hvf = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
List<PqScriptDtls> hv = dtls.stream().filter(x -> "Harm_V".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hv = dtls.stream().filter(x -> "Harm_V".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName("基波频率为" + hvf.get(0).getValue() + ResultUnitEnum.FREQ_UNIT.getUnit() + "," + hv.get(0).getHarmNum().intValue() + "次" + dictTree.getName());
|
dtlType.setScriptTypeName("基波频率为" + hvf.get(0).getValue() + ResultUnitEnum.FREQ.getUnit() + "," + hv.get(0).getHarmNum().intValue() + "次" + dictTree.getName());
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 谐波电流
|
* 谐波电流
|
||||||
*/
|
*/
|
||||||
case "HI":
|
case HI:
|
||||||
List<PqScriptDtls> hif = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hif = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
List<PqScriptDtls> hi = dtls.stream().filter(x -> "Harm_I".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hi = dtls.stream().filter(x -> "Harm_I".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName("基波频率为" + hif.get(0).getValue() + ResultUnitEnum.FREQ_UNIT.getUnit() + "," + hi.get(0).getHarmNum().intValue() + "次" + dictTree.getName());
|
dtlType.setScriptTypeName("基波频率为" + hif.get(0).getValue() + ResultUnitEnum.FREQ.getUnit() + "," + hi.get(0).getHarmNum().intValue() + "次" + dictTree.getName());
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 间谐波电压
|
* 间谐波电压
|
||||||
*/
|
*/
|
||||||
case "HSV":
|
case HSV:
|
||||||
List<PqScriptDtls> hsvf = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hsvf = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
List<PqScriptDtls> hsv = dtls.stream().filter(x -> "InHarm_V".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hsv = dtls.stream().filter(x -> "InHarm_V".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName("基波频率为" + hsvf.get(0).getValue() + ResultUnitEnum.FREQ_UNIT.getUnit() + "," + hsv.get(0).getHarmNum() + "次" + dictTree.getName());
|
dtlType.setScriptTypeName("基波频率为" + hsvf.get(0).getValue() + ResultUnitEnum.FREQ.getUnit() + "," + hsv.get(0).getHarmNum() + "次" + dictTree.getName());
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 间谐波电流
|
* 间谐波电流
|
||||||
*/
|
*/
|
||||||
case "HSI":
|
case HSI:
|
||||||
List<PqScriptDtls> hsif = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hsif = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
List<PqScriptDtls> hsi = dtls.stream().filter(x -> "InHarm_I".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> hsi = dtls.stream().filter(x -> "InHarm_I".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName("基波频率为" + hsif.get(0).getValue() + ResultUnitEnum.FREQ_UNIT.getUnit() + "," + hsi.get(0).getHarmNum() + "次" + dictTree.getName());
|
dtlType.setScriptTypeName("基波频率为" + hsif.get(0).getValue() + ResultUnitEnum.FREQ.getUnit() + "," + hsi.get(0).getHarmNum() + "次" + dictTree.getName());
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 三相电压不平衡度
|
* 三相电压不平衡度
|
||||||
*/
|
*/
|
||||||
case "IMBV":
|
case IMBV:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 三相电流不平衡度
|
* 三相电流不平衡度
|
||||||
*/
|
*/
|
||||||
case "IMBA":
|
case IMBA:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 谐波有功功率
|
* 谐波有功功率
|
||||||
*/
|
*/
|
||||||
case "HP":
|
case HP:
|
||||||
break;
|
|
||||||
/**
|
|
||||||
* 功率
|
|
||||||
*/
|
|
||||||
case "P":
|
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 闪变
|
* 闪变
|
||||||
*/
|
*/
|
||||||
case "F":
|
case F:
|
||||||
break;
|
break;
|
||||||
/**
|
/**
|
||||||
* 暂态
|
* 暂态
|
||||||
*/
|
*/
|
||||||
case "VOLTAGE":
|
case VOLTAGE_MAG:
|
||||||
|
case VOLTAGE_DUR:
|
||||||
//频率=42.5H在,特征幅值=60%Un,持续时间=1周波
|
//频率=42.5H在,特征幅值=60%Un,持续时间=1周波
|
||||||
List<PqScriptDtls> dipf = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> dipf = dtls.stream().filter(x -> "Freq".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
List<PqScriptDtls> dip = dtls.stream().filter(x -> "Dip".equals(x.getValueType())).collect(Collectors.toList());
|
List<PqScriptDtls> dip = dtls.stream().filter(x -> "Dip".equals(x.getValueType())).collect(Collectors.toList());
|
||||||
dtlType.setScriptTypeName("频率=" + dipf.get(0).getValue() + ResultUnitEnum.FREQ_UNIT.getUnit() + ",特征幅值=" + dip.get(0).getTransValue().intValue() + "%Un,持续时间=" + dip.get(0).getRetainTime().intValue() + "周波");
|
dtlType.setScriptTypeName("频率=" + dipf.get(0).getValue() + ResultUnitEnum.FREQ.getUnit() + ",特征幅值=" + dip.get(0).getTransValue().intValue() + "%Un,持续时间=" + dip.get(0).getRetainTime().intValue() + "周波");
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user