生成报告监测点结果下拉框展示
This commit is contained in:
@@ -49,6 +49,7 @@ import com.njcn.gather.system.dictionary.service.IDictTreeService;
|
||||
import com.njcn.gather.tools.comtrade.comparewave.core.model.CompareWaveDTO;
|
||||
import com.njcn.gather.tools.comtrade.comparewave.core.model.PqsDataStruct;
|
||||
import com.njcn.gather.tools.comtrade.comparewave.service.ICompareWaveService;
|
||||
import com.njcn.gather.util.StorageUtil;
|
||||
import com.njcn.web.utils.ExcelUtil;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.beans.factory.annotation.Value;
|
||||
@@ -1141,7 +1142,7 @@ public class SocketContrastResponseService {
|
||||
devLineTestResult.setScriptName(DataSourceEnum.WAVE_DATA.getValue());
|
||||
Integer[] chnResult = new Integer[chnMap.size()];
|
||||
chnMap.forEach((chn, resultSet) -> {
|
||||
Integer result = detectionService.getInteger(resultSet.stream().collect(Collectors.toList()));
|
||||
Integer result = StorageUtil.getInteger(resultSet.stream().collect(Collectors.toList()));
|
||||
chnResult[chn - 1] = result;
|
||||
});
|
||||
|
||||
@@ -1149,7 +1150,7 @@ public class SocketContrastResponseService {
|
||||
if (ObjectUtil.isNotNull(devLineTestResult1)) {
|
||||
Integer[] chnResult1 = devLineTestResult1.getChnResult();
|
||||
for (int i = 0; i < chnResult1.length; i++) {
|
||||
Integer result = detectionService.getInteger(Arrays.asList(chnResult1[i], chnResult[i]));
|
||||
Integer result = StorageUtil.getInteger(Arrays.asList(chnResult1[i], chnResult[i]));
|
||||
chnResult1[i] = result;
|
||||
}
|
||||
} else {
|
||||
|
||||
@@ -35,6 +35,7 @@ import com.njcn.gather.storage.service.DetectionDataDealService;
|
||||
import com.njcn.gather.system.cfg.pojo.po.SysTestConfig;
|
||||
import com.njcn.gather.system.cfg.service.ISysTestConfigService;
|
||||
import com.njcn.gather.system.dictionary.pojo.enums.DictDataEnum;
|
||||
import com.njcn.gather.util.StorageUtil;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.apache.commons.collections4.CollectionUtils;
|
||||
import org.springframework.stereotype.Service;
|
||||
@@ -216,7 +217,7 @@ public class DetectionServiceImpl {
|
||||
}
|
||||
if (CollUtil.isNotEmpty(info)) {
|
||||
detectionDataDealService.acceptHarmonicResult(info, code);
|
||||
return getInteger(info.stream().map(x -> x.getResultFlag()).distinct().collect(Collectors.toList()));
|
||||
return StorageUtil.getInteger(info.stream().map(x -> x.getResultFlag()).distinct().collect(Collectors.toList()));
|
||||
}
|
||||
return 4;
|
||||
}
|
||||
@@ -461,7 +462,7 @@ public class DetectionServiceImpl {
|
||||
if (CollUtil.isNotEmpty(info)) {
|
||||
detectionDataDealService.acceptNonHarmonicResult(info, code);
|
||||
List<Integer> resultFlag = info.stream().map(SimAndDigNonHarmonicResult::getResultFlag).distinct().collect(Collectors.toList());
|
||||
return getInteger(resultFlag);
|
||||
return StorageUtil.getInteger(resultFlag);
|
||||
}
|
||||
return 4;
|
||||
}
|
||||
@@ -671,7 +672,7 @@ public class DetectionServiceImpl {
|
||||
}
|
||||
detectionDataDealService.acceptNonHarmonicResult(Arrays.asList(magResult, durResult), code);
|
||||
List<Integer> numbers = Arrays.asList(magResult.getResultFlag(), durResult.getResultFlag()).stream().distinct().collect(Collectors.toList());
|
||||
return getInteger(numbers);
|
||||
return StorageUtil.getInteger(numbers);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -835,30 +836,9 @@ public class DetectionServiceImpl {
|
||||
|
||||
private Integer setResultFlag(List<DetectionData> numbers) {
|
||||
List<Integer> isData = numbers.stream().filter(x -> ObjectUtil.isNotNull(x.getData())).map(DetectionData::getIsData).distinct().collect(Collectors.toList());
|
||||
return getInteger(isData);
|
||||
return StorageUtil.getInteger(isData);
|
||||
}
|
||||
|
||||
public Integer getInteger(List<Integer> isData) {
|
||||
if (CollUtil.isNotEmpty(isData)) {
|
||||
List<Integer> isQualified = isData.stream().filter(x -> ResultEnum.QUALIFIED.getValue() == x || ResultEnum.NOT_QUALIFIED.getValue() == x).collect(Collectors.toList());
|
||||
if (CollUtil.isNotEmpty(isQualified)) {
|
||||
if (isQualified.size() > 1) {
|
||||
if (isQualified.contains(ResultEnum.NOT_QUALIFIED.getValue())) {
|
||||
return ResultEnum.NOT_QUALIFIED.getValue();
|
||||
}
|
||||
}
|
||||
return isQualified.get(0);
|
||||
} else {
|
||||
if (isData.contains(ResultEnum.NO_ERROR_SYS.getValue())) {
|
||||
return ResultEnum.NO_ERROR_SYS.getValue();
|
||||
}
|
||||
if (isData.contains(ResultEnum.NO_COMPARE_ERROR_SYS.getValue())) {
|
||||
return ResultEnum.NO_COMPARE_ERROR_SYS.getValue();
|
||||
}
|
||||
}
|
||||
}
|
||||
return ResultEnum.NO_ERROR_SYS.getValue();
|
||||
}
|
||||
|
||||
/**
|
||||
* 处理非谐波类型取值
|
||||
@@ -1775,7 +1755,7 @@ public class DetectionServiceImpl {
|
||||
|
||||
detectionDataDealService.acceptNonHarmonicResult(info, code);
|
||||
List<Integer> resultFlag = info.stream().map(ContrastNonHarmonicResult::getResultFlag).distinct().collect(Collectors.toList());
|
||||
return getInteger(resultFlag);
|
||||
return StorageUtil.getInteger(resultFlag);
|
||||
}
|
||||
|
||||
|
||||
@@ -1875,7 +1855,7 @@ public class DetectionServiceImpl {
|
||||
|
||||
detectionDataDealService.acceptHarmonicResult(info, code);
|
||||
List<Integer> resultFlag = info.stream().map(ContrastHarmonicResult::getResultFlag).distinct().collect(Collectors.toList());
|
||||
return getInteger(resultFlag);
|
||||
return StorageUtil.getInteger(resultFlag);
|
||||
}
|
||||
|
||||
|
||||
|
||||
@@ -167,11 +167,11 @@ public class ResultController extends BaseController {
|
||||
@GetMapping("/getMonitorDataSourceResult")
|
||||
@ApiOperation("获取监测点的检测结果下拉框")
|
||||
@ApiImplicitParam(name = "param", value = "查询参数", required = true)
|
||||
public HttpResult<Map<Integer, DataSourceResultVO>> getMonitorDataSourceResult(@RequestParam("monitorId") String monitorId) {
|
||||
public HttpResult<Map<Integer, List<DataSourceResultVO>>> getMonitorDataSourceResult(@RequestParam("monitorId") String monitorId) {
|
||||
String methodDescribe = getMethodDescribe("getMonitorDataSourceResult");
|
||||
LogUtil.njcnDebug(log, "{},查询数据为:{}", methodDescribe, monitorId);
|
||||
|
||||
Map<Integer, DataSourceResultVO> result = resultService.getMonitorDataSourceResult(monitorId);
|
||||
Map<Integer, List<DataSourceResultVO>> result = resultService.getMonitorDataSourceResult(monitorId);
|
||||
return HttpResultUtil.assembleCommonResponseResult(CommonResponseEnum.SUCCESS, result, methodDescribe);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -116,5 +116,5 @@ public interface IResultService {
|
||||
|
||||
MonitorResultVO getMonitorResult(String devId);
|
||||
|
||||
Map<Integer, DataSourceResultVO> getMonitorDataSourceResult(String monitorId);
|
||||
Map<Integer, List<DataSourceResultVO>> getMonitorDataSourceResult(String monitorId);
|
||||
}
|
||||
|
||||
@@ -65,7 +65,6 @@ import com.njcn.gather.storage.service.ContrastHarmonicService;
|
||||
import com.njcn.gather.storage.service.ContrastNonHarmonicService;
|
||||
import com.njcn.gather.storage.service.SimAndDigHarmonicService;
|
||||
import com.njcn.gather.storage.service.SimAndDigNonHarmonicService;
|
||||
import com.njcn.gather.storage.service.impl.SimAndDigHarmonicServiceImpl;
|
||||
import com.njcn.gather.system.dictionary.pojo.enums.DictDataEnum;
|
||||
import com.njcn.gather.system.dictionary.pojo.po.DictData;
|
||||
import com.njcn.gather.system.dictionary.pojo.po.DictTree;
|
||||
@@ -1644,8 +1643,48 @@ public class ResultServiceImpl implements IResultService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<Integer, DataSourceResultVO> getMonitorDataSourceResult(String monitorId) {
|
||||
return null;
|
||||
public Map<Integer, List<DataSourceResultVO>> getMonitorDataSourceResult(String monitorId) {
|
||||
// key为第几次检测,value为所对应的下拉框内容
|
||||
Map<Integer, List<DataSourceResultVO>> result = new HashMap<>();
|
||||
|
||||
String[] split = monitorId.split(CnSocketUtil.SPLIT_TAG);
|
||||
PqDev dev = pqDevService.getById(split[0]);
|
||||
String planId = dev.getPlanId();
|
||||
AdPlan plan = adPlanService.getById(planId);
|
||||
// 实时数据结果
|
||||
List<ContrastNonHarmonicResult> nonHarmonicResults = contrastNonHarmonicService.listAllResultData(String.valueOf(plan.getCode()), null, null, false, monitorId, null);
|
||||
Map<Integer, List<ContrastNonHarmonicResult>> numMap = nonHarmonicResults.stream()
|
||||
.sorted(Comparator.comparing(ContrastNonHarmonicResult::getNum))
|
||||
.collect(Collectors.groupingBy(ContrastNonHarmonicResult::getNum, LinkedHashMap::new, Collectors.toList()));
|
||||
|
||||
numMap.forEach((num, resultList) -> {
|
||||
List<DataSourceResultVO> dataSourceResultVOList = new ArrayList<>();
|
||||
|
||||
DataSourceResultVO realDataSourceResultVO = new DataSourceResultVO();
|
||||
realDataSourceResultVO.setDataSourceCode(DataSourceEnum.REAL_DATA.getValue());
|
||||
realDataSourceResultVO.setDataSourceName(DataSourceEnum.REAL_DATA.getMsg());
|
||||
List<Integer> resultFlagList = resultList.stream().map(ContrastNonHarmonicResult::getResultFlag).distinct().collect(Collectors.toList());
|
||||
realDataSourceResultVO.setCheckResult(StorageUtil.getInteger(resultFlagList));
|
||||
dataSourceResultVOList.add(realDataSourceResultVO);
|
||||
|
||||
// 录波数据结果
|
||||
List<ContrastNonHarmonicResult> waveNonHarmonicResults = contrastNonHarmonicService.listAllResultData(String.valueOf(plan.getCode()), num, null, true, monitorId, null);
|
||||
Map<Integer, List<ContrastNonHarmonicResult>> waveNumMap = waveNonHarmonicResults.stream()
|
||||
.sorted(Comparator.comparing(ContrastNonHarmonicResult::getWaveNum))
|
||||
.collect(Collectors.groupingBy(ContrastNonHarmonicResult::getWaveNum, LinkedHashMap::new, Collectors.toList()));
|
||||
|
||||
waveNumMap.forEach((waveNum, resultList1) -> {
|
||||
DataSourceResultVO waveDataSourceResultVO = new DataSourceResultVO();
|
||||
waveDataSourceResultVO.setDataSourceCode(DataSourceEnum.WAVE_DATA.getValue() + CnSocketUtil.SPLIT_TAG + waveNum);
|
||||
waveDataSourceResultVO.setDataSourceName(DataSourceEnum.WAVE_DATA.getMsg() + StrUtil.SPACE + waveNum);
|
||||
List<Integer> tempResultFlagList = resultList1.stream().map(ContrastNonHarmonicResult::getResultFlag).distinct().collect(Collectors.toList());
|
||||
waveDataSourceResultVO.setCheckResult(StorageUtil.getInteger(tempResultFlagList));
|
||||
});
|
||||
|
||||
result.put(num, dataSourceResultVOList);
|
||||
});
|
||||
|
||||
return result;
|
||||
}
|
||||
|
||||
private Map<String, List<RawResultDataVO>> getResultMap(DictTree dictTree, List<String> adTypeList, String monitorId, String unit, Integer num, Integer waveNum, Boolean isWave, String code) {
|
||||
@@ -1670,7 +1709,7 @@ public class ResultServiceImpl implements IResultService {
|
||||
dataVO.setDataB(bList.get(i));
|
||||
dataVO.setDataC(cList.get(i));
|
||||
dataVO.setRadius(aList.get(i).getRadius());
|
||||
dataVO.setIsData(SimAndDigHarmonicServiceImpl.setResultFlag(Arrays.asList(aList.get(i), bList.get(i), cList.get(i))));
|
||||
dataVO.setIsData(StorageUtil.setResultFlag(Arrays.asList(aList.get(i), bList.get(i), cList.get(i))));
|
||||
rawResultDataVOList.add(dataVO);
|
||||
}
|
||||
} else if (CollUtil.isNotEmpty(bList)) {
|
||||
@@ -1679,7 +1718,7 @@ public class ResultServiceImpl implements IResultService {
|
||||
dataVO.setUnit(unit);
|
||||
dataVO.setDataB(bList.get(i));
|
||||
dataVO.setRadius(bList.get(i).getRadius());
|
||||
dataVO.setIsData(SimAndDigHarmonicServiceImpl.setResultFlag(Arrays.asList(bList.get(i))));
|
||||
dataVO.setIsData(StorageUtil.setResultFlag(Arrays.asList(bList.get(i))));
|
||||
rawResultDataVOList.add(dataVO);
|
||||
}
|
||||
} else if (CollUtil.isNotEmpty(tList)) {
|
||||
@@ -1688,7 +1727,7 @@ public class ResultServiceImpl implements IResultService {
|
||||
dataVO.setUnit(unit);
|
||||
dataVO.setDataT(tList.get(i));
|
||||
dataVO.setRadius(tList.get(i).getRadius());
|
||||
dataVO.setIsData(SimAndDigHarmonicServiceImpl.setResultFlag(Arrays.asList(tList.get(i))));
|
||||
dataVO.setIsData(StorageUtil.setResultFlag(Arrays.asList(tList.get(i))));
|
||||
rawResultDataVOList.add(dataVO);
|
||||
}
|
||||
}
|
||||
@@ -1729,7 +1768,7 @@ public class ResultServiceImpl implements IResultService {
|
||||
dataVO.setDataB(bList.get(j));
|
||||
dataVO.setDataC(cList.get(j));
|
||||
dataVO.setRadius(aList.get(j).getRadius());
|
||||
dataVO.setIsData(SimAndDigHarmonicServiceImpl.setResultFlag(Arrays.asList(aList.get(j), bList.get(j), cList.get(j))));
|
||||
dataVO.setIsData(StorageUtil.setResultFlag(Arrays.asList(aList.get(j), bList.get(j), cList.get(j))));
|
||||
rawResultDataVOList.add(dataVO);
|
||||
}
|
||||
resultMap.put(String.valueOf(n), rawResultDataVOList);
|
||||
|
||||
@@ -50,7 +50,8 @@ public class ContrastNonHarmonicServiceImpl extends ServiceImpl<ContrastNonHarmo
|
||||
.isNull(ObjectUtil.isNull(waveNum), ContrastNonHarmonicResult::getWaveNum)
|
||||
.in(CollUtil.isNotEmpty(adTypeList), ContrastNonHarmonicResult::getAdType, adTypeList);
|
||||
if (isWave) {
|
||||
wrapper.eq(ObjectUtil.isNotNull(waveNum), ContrastNonHarmonicResult::getWaveNum, waveNum);
|
||||
wrapper.isNotNull(ContrastNonHarmonicResult::getWaveNum)
|
||||
.eq(ObjectUtil.isNotNull(waveNum), ContrastNonHarmonicResult::getWaveNum, waveNum);
|
||||
} else {
|
||||
wrapper.isNull(ContrastNonHarmonicResult::getWaveNum);
|
||||
}
|
||||
|
||||
@@ -186,7 +186,7 @@ public class SimAndDigHarmonicServiceImpl extends ServiceImpl<SimAndDigHarmonicM
|
||||
if (ObjectUtil.isNotNull(a)) {
|
||||
dataVO.setRadius(a.getRadius());
|
||||
}
|
||||
dataVO.setIsData(setResultFlag(Arrays.asList(a, b, c)));
|
||||
dataVO.setIsData(StorageUtil.setResultFlag(Arrays.asList(a, b, c)));
|
||||
} catch (NoSuchFieldException e) {
|
||||
throw new RuntimeException(e);
|
||||
} catch (IllegalAccessException e) {
|
||||
@@ -276,36 +276,4 @@ public class SimAndDigHarmonicServiceImpl extends ServiceImpl<SimAndDigHarmonicM
|
||||
DynamicTableNameHandler.remove();
|
||||
return results;
|
||||
}
|
||||
|
||||
public static Integer setResultFlag(List<RawResultDataVO.DetectionData> numbers) {
|
||||
List<Integer> isData = numbers.stream().filter(Objects::nonNull)
|
||||
.filter(x -> ObjectUtil.isNotNull(x.getData()))
|
||||
.map(RawResultDataVO.DetectionData::getIsData)
|
||||
.distinct()
|
||||
.collect(Collectors.toList());
|
||||
return getInteger(isData);
|
||||
}
|
||||
|
||||
public static Integer getInteger(List<Integer> isData) {
|
||||
if (CollUtil.isNotEmpty(isData)) {
|
||||
List<Integer> isQualified = isData.stream().filter(x -> 1 == x || 2 == x).collect(Collectors.toList());
|
||||
if (CollUtil.isNotEmpty(isQualified)) {
|
||||
if (isQualified.size() > 1) {
|
||||
if (isQualified.contains(2)) {
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
return isQualified.get(0);
|
||||
} else {
|
||||
if (isData.contains(4)) {
|
||||
return 4;
|
||||
}
|
||||
if (isData.contains(5)) {
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
}
|
||||
return 4;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -1,5 +1,13 @@
|
||||
package com.njcn.gather.util;
|
||||
|
||||
import cn.hutool.core.collection.CollUtil;
|
||||
import cn.hutool.core.util.ObjectUtil;
|
||||
import com.njcn.gather.storage.pojo.vo.RawResultDataVO;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* @author caozehui
|
||||
* @data 2025-08-21
|
||||
@@ -113,4 +121,35 @@ public class StorageUtil {
|
||||
}
|
||||
return unit;
|
||||
}
|
||||
|
||||
public static Integer setResultFlag(List<RawResultDataVO.DetectionData> numbers) {
|
||||
List<Integer> isData = numbers.stream().filter(Objects::nonNull)
|
||||
.filter(x -> ObjectUtil.isNotNull(x.getData()))
|
||||
.map(RawResultDataVO.DetectionData::getIsData)
|
||||
.distinct()
|
||||
.collect(Collectors.toList());
|
||||
return getInteger(isData);
|
||||
}
|
||||
|
||||
public static Integer getInteger(List<Integer> isData) {
|
||||
if (CollUtil.isNotEmpty(isData)) {
|
||||
List<Integer> isQualified = isData.stream().filter(x -> 1 == x || 2 == x).collect(Collectors.toList());
|
||||
if (CollUtil.isNotEmpty(isQualified)) {
|
||||
if (isQualified.size() > 1) {
|
||||
if (isQualified.contains(2)) {
|
||||
return 2;
|
||||
}
|
||||
}
|
||||
return isQualified.get(0);
|
||||
} else {
|
||||
if (isData.contains(4)) {
|
||||
return 4;
|
||||
}
|
||||
if (isData.contains(5)) {
|
||||
return 5;
|
||||
}
|
||||
}
|
||||
}
|
||||
return 4;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user