1.解决间谐波存值问题,取消基波存值

2.解决原始值和结果值入库不一致问题
This commit is contained in:
wr
2025-03-10 20:52:36 +08:00
parent 7594657021
commit d1101cd157
4 changed files with 46 additions and 29 deletions

View File

@@ -1579,7 +1579,7 @@ public class SocketDevResponseService {
adHarmonicResult.setAdType(checkDataMap.get(sqlDataDTO.getDesc()));
adHarmonicResult.setDataType("avg");
if (!DicDataEnum.HI.getCode().equals(sourceIssue.getType()) && !DicDataEnum.HSI.getCode().equals(sourceIssue.getType()) && !DicDataEnum.HP.getCode().equals(sourceIssue.getType())) {
if (!DicDataEnum.HSV.getCode().equals(sourceIssue.getType()) && !DicDataEnum.HSI.getCode().equals(sourceIssue.getType()) && !DicDataEnum.HP.getCode().equals(sourceIssue.getType())) {
if (CollUtil.isNotEmpty(data.getSqlData())) {
DevData.SqlDataDTO.ListDTO vvv = data.getSqlData().get(0).getList();
Double aV = vvv.getA();
@@ -1604,7 +1604,25 @@ public class SocketDevResponseService {
List<String> c = tem.getC();
Class<AdHarmonicResult> example = (Class<AdHarmonicResult>) adHarmonicResult.getClass();
for (int i = 2; i <= 50; i++) {
if(DicDataEnum.HSV.getCode().equals(sourceIssue.getType()) || DicDataEnum.HSI.getCode().equals(sourceIssue.getType())){
for (int i = 1; i < a.size()+1; i++) {
try {
Field aField = example.getDeclaredField("aValue" + i);
Field bField = example.getDeclaredField("bValue" + i);
Field cField = example.getDeclaredField("cValue" + i);
aField.setAccessible(true);
aField.set(adHarmonicResult, a.get(i - 1));
bField.setAccessible(true);
bField.set(adHarmonicResult, b.get(i - 1));
cField.setAccessible(true);
cField.set(adHarmonicResult, c.get(i - 1));
} catch (NoSuchFieldException | IllegalAccessException e) {
e.printStackTrace();
}
}
}else{
for (int i = 2; i <= a.size()+1; i++) {
try {
Field aField = example.getDeclaredField("aValue" + i);
Field bField = example.getDeclaredField("bValue" + i);
@@ -1620,6 +1638,7 @@ public class SocketDevResponseService {
e.printStackTrace();
}
}
}
adHarmonicResultList.add(adHarmonicResult);
}

View File

@@ -772,7 +772,7 @@ public class DetectionServiceImpl {
dataMap.forEach((key, value) -> {
try {
// 设置 id 字段;
Field idField = AdHarmonicResult.class.getDeclaredField(phase + "Value" + (num == 1 ? (int) (key + 1.5) : key.intValue()));
Field idField = AdHarmonicResult.class.getDeclaredField(phase + "Value" + (num == 1 ? (int) (key + 0.5) : key.intValue()));
idField.setAccessible(true);
if (ObjectUtil.isNull(value.getIsData())) {
idField.set(harmonicResult, value.getData());
@@ -937,12 +937,12 @@ public class DetectionServiceImpl {
Integer num) {
Map<String, Map<Double, List<Double>>> map = new HashMap<>(3);
List<Double> harmNum = new ArrayList<>();
harmNum.add(1.0);
if (1 == num) {
harmNum.addAll(sourceIssue.getChannelList().stream()
.flatMap(x -> x.getInharmList().stream().map(f -> f.getInharm()))
.sorted().distinct().collect(Collectors.toList()));
} else {
harmNum.add(1.0);
harmNum.addAll(sourceIssue.getChannelList().stream()
.flatMap(x -> x.getHarmList().stream().map(f -> f.getHarm()))
.sorted().distinct().collect(Collectors.toList()));
@@ -965,9 +965,9 @@ public class DetectionServiceImpl {
harmPut(TYPE_B, map, harmNum, harm, String.valueOf(fund.getList().getB()), num);
harmPut(TYPE_C, map, harmNum, harm, String.valueOf(fund.getList().getC()), num);
} else {
harmPut(TYPE_A, map, harmNum, harm, "0.0", num);
harmPut(TYPE_B, map, harmNum, harm, "0.0", num);
harmPut(TYPE_C, map, harmNum, harm, "0.0", num);
harmPut(TYPE_A, map, harmNum, harm, "1.0", num);
harmPut(TYPE_B, map, harmNum, harm, "1.0", num);
harmPut(TYPE_C, map, harmNum, harm, "1.0", num);
}
}
@@ -1221,10 +1221,10 @@ public class DetectionServiceImpl {
Map<Double, List<Double>> integerListMap = map.get(type);
for (Double i : harmNum) {
if (integerListMap.containsKey(i)) {
if (i.equals(1.0)) {
if (i.equals(1.0)&&num != 1) {
integerListMap.get(1.0).add(multiply(fund, fund));
} else {
double v = (num == 1 ? num : (i - num));
double v = (num == 1 ? i : (i - num));
if (type.equals("A")) {
integerListMap.get(i).add(multiply(harm.getList().getA().get((int) v), fund));
}
@@ -1241,11 +1241,11 @@ public class DetectionServiceImpl {
Map<Double, List<Double>> integerListMap = new LinkedHashMap<>(5);
for (Double i : harmNum) {
List<Double> integerList = new ArrayList<>();
if (i.equals(1.0)) {
if (i.equals(1.0)&&num != 1) {
integerList.add(multiply(fund, fund));
integerListMap.put(1.0, integerList);
} else {
double v = (num == 1 ? num : (i - num));
double v = (num == 1 ? i : (i - num));
if (type.equals("A")) {
integerList.add(multiply(harm.getList().getA().get((int) v), fund));
}

View File

@@ -54,15 +54,13 @@ public class PqScriptCheckDataServiceImpl extends ServiceImpl<PqScriptCheckDataM
List<String> checkData = pqScriptCheckData.stream().map(x -> x.getDataType() + "$" + x.getValueType()).distinct().collect(Collectors.toList());
String U = REAL + DetectionCodeEnum.U1.getCode();
if(!checkData.contains(U)){
if(checkData.contains(REAL+DetectionCodeEnum.V2_50.getCode())||
checkData.contains(REAL+DetectionCodeEnum.SV_1_49.getCode())){
if(checkData.contains(REAL+DetectionCodeEnum.V2_50.getCode())){
checkData.add(U);
}
}
String I = REAL + DetectionCodeEnum.I1.getCode();
if(!checkData.contains(I)){
if(checkData.contains(REAL+DetectionCodeEnum.I2_50.getCode())||
checkData.contains(REAL+DetectionCodeEnum.SI_1_49.getCode())){
if(checkData.contains(REAL+DetectionCodeEnum.I2_50.getCode())){
checkData.add(I);
}
}

View File

@@ -267,7 +267,7 @@ public class AdHarmonicServiceImpl extends ServiceImpl<AdHarmonicMappper, AdHarm
if (value == value.longValue()) {
return value;
} else {
return value + 1.5;
return value + 0.5;
}
}
}