Jay
2025-02-24 c3c7a6918f0e2dfe597c339117e4185b641be95f
iailab-module-model/iailab-module-model-biz/src/main/java/com/iailab/module/model/mdk/sample/PredictSampleDataConstructor.java
@@ -31,6 +31,7 @@
import org.springframework.stereotype.Component;
import org.springframework.util.CollectionUtils;
import java.math.BigDecimal;
import java.util.*;
import java.util.stream.Collectors;
@@ -88,6 +89,8 @@
            }
        }
        int deviationIndex = 0;
        //对每个爪分别进行计算
        for (ColumnItemPort entry : sampleInfo.getColumnInfo()) {
            double[][] matrix = new double[0][0];
@@ -129,10 +132,30 @@
                    }
                }
                //找出对应的调整值
                double[] deviationItem = null;
                if (sampleInfo.getDeviation() != null && sampleInfo.getDeviation().length > 0) {
                    deviationItem = sampleInfo.getDeviation()[deviationIndex];
                }
                deviationIndex ++;
                //对每一项依次进行数据查询,然后将查询出的值赋给matrix对应的位置
                for (int i = 0; i < entry.getColumnItemList().size(); i++) {
                    try {
                        List<DataValueVO> dataEntityList = getData(entry.getColumnItemList().get(i), pointMap, planMap,indMap);
                        //设置调整值
                        if (deviationItem != null && deviationItem.length > 0) {
                            logger.info("设置调整值, i = " + i);
                            if (deviationItem[i] <= 0) {
                                continue;
                            }
                            for(int dataKey = 1; dataKey < dataEntityList.size(); dataKey ++) {
                                DataValueVO item = dataEntityList.get(dataKey);
                                item.setDataValue(item.getDataValue() + deviationItem[i]);
                            }
                        }
                        //补全数据
                        ColumnItem columnItem = entry.getColumnItemList().get(i);
                        dataEntityList = super.completionData(matrix.length, dataEntityList, columnItem.startTime, columnItem.endTime, columnItem.getParamType(),columnItem.getGranularity());
@@ -153,8 +176,6 @@
                    }
                }
            }
            SampleData sampleData = new SampleData();
            sampleData.setMatrix(matrix);
            sampleDataList.add(sampleData);