This commit is contained in:
caozehui
2025-03-24 08:58:37 +08:00
parent ac0a9dd777
commit 610a3c1d13
19 changed files with 662 additions and 42 deletions

View File

@@ -39,6 +39,14 @@ public interface IResultService {
*/
ResultVO resultData(ResultParam param);
/**
* 展示结果数据(用于生成报告)
*
* @param param
* @return
*/
ResultVO resultDataForReport(ResultParam param);
/**
* 导出原始数据

View File

@@ -807,6 +807,37 @@ public class ResultServiceImpl implements IResultService {
return resultVO;
}
@Override
public ResultVO resultDataForReport(ResultParam param) {
StorageParam storage = new StorageParam();
storage.setIndex(param.getIndex());
storage.setScriptId(param.getScriptId());
storage.setDevId(param.getDevId());
storage.setDevNum(param.getDevNum());
storage.setCode(param.getCode());
DictTree dictTree = dictTreeService.getById(param.getScriptType());
List<Double> harmNum = new ArrayList<>();
if (HARMONIC_TYPE_CODE.contains(dictTree.getCode())) {
List<PqScriptCheckData> list = pqScriptCheckDataService.list(new MPJLambdaWrapper<PqScriptCheckData>()
.distinct()
.select(PqScriptCheckData::getHarmNum)
.eq(PqScriptCheckData::getScriptId, param.getScriptId())
.isNotNull(PqScriptCheckData::getHarmNum)
.eq(PqScriptCheckData::getScriptIndex, param.getIndex())
);
harmNum = list.stream().sorted(Comparator.comparing(PqScriptCheckData::getHarmNum))
.map(PqScriptCheckData::getHarmNum).distinct().collect(Collectors.toList());
}
ResultVO resultVO = new ResultVO();
if (CollUtil.isEmpty(harmNum)) {
resultVO.setResultData(adNonHarmonicService.listNonHarmResultData(storage));
} else {
storage.setHarmNum(harmNum);
resultVO.setResultData(adHarmonicService.listHarmResultData(storage));
}
return resultVO;
}
@Override
public void exportRawData(ResultParam param) {
StorageParam storage = new StorageParam();
@@ -977,10 +1008,10 @@ public class ResultServiceImpl implements IResultService {
dataRule = DictDataEnum.AT_WILL_VALUE;
}
List<AdNonHarmonicResult> allNonHarmonicRawData = adNonHarmonicService.listAll(oldCode, devId);
List<AdNonHarmonicResult> allNonHarmonicRawData = adNonHarmonicService.listAll(scriptId, oldCode, devId);
LinkedHashMap<Integer, List<AdNonHarmonicResult>> nonHarmonicMap = allNonHarmonicRawData.stream().sorted(Comparator.comparing(AdNonHarmonicResult::getSort))
.collect(Collectors.groupingBy(AdNonHarmonicResult::getSort, LinkedHashMap::new, Collectors.toList()));
List<AdHarmonicResult> allHarmonicRawData = adHarmonicService.lisAll(oldCode, devId);
List<AdHarmonicResult> allHarmonicRawData = adHarmonicService.listAll(scriptId, oldCode, devId);
LinkedHashMap<Integer, List<AdHarmonicResult>> harmonicMap = allHarmonicRawData.stream().sorted(Comparator.comparing(AdHarmonicResult::getSort))
.collect(Collectors.groupingBy(AdHarmonicResult::getSort, LinkedHashMap::new, Collectors.toList()));