From 6e54bce33604227a0c7af018251a26d60bdc7f45 Mon Sep 17 00:00:00 2001 From: nieziyan Date: Tue, 5 Mar 2024 13:50:54 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9Anull=20bug?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/CalculateConcServiceImpl.java | 4 +-- .../impl/GardsXeResultsAutoServiceImpl.java | 30 +++++++++++------- .../impl/GardsXeResultsManServiceImpl.java | 31 +++++++++++-------- 3 files changed, 38 insertions(+), 27 deletions(-) diff --git a/jeecg-module-abnormal-alarm/src/main/java/org/jeecg/modules/service/impl/CalculateConcServiceImpl.java b/jeecg-module-abnormal-alarm/src/main/java/org/jeecg/modules/service/impl/CalculateConcServiceImpl.java index 8f13884b..29ca5bd5 100644 --- a/jeecg-module-abnormal-alarm/src/main/java/org/jeecg/modules/service/impl/CalculateConcServiceImpl.java +++ b/jeecg-module-abnormal-alarm/src/main/java/org/jeecg/modules/service/impl/CalculateConcServiceImpl.java @@ -94,9 +94,9 @@ public class CalculateConcServiceImpl implements CalculateConcService { String station = entry.getKey(); Set nuclides = entry.getValue(); // 查询指定台站的所有的核素浓度 并计算核素浓度均值 - params.put("nuclideName", nuclides); params.put("stationId", station); List xeConcAuto = xeResultsAutoService.getConc(params, nuclides); // beta-gamma + params.put("nuclideName", nuclides); List nuclConcAuto = nuclIdedAutoService.getConc(params); // gamma Map autoResult = new HashMap<>(); autoResult.putAll(calculate(concDto(xeConcAuto), index)); @@ -115,9 +115,9 @@ public class CalculateConcServiceImpl implements CalculateConcService { String station = entry.getKey(); Set nuclides = entry.getValue(); // 查询指定台站的所有的核素浓度 并计算核素浓度均值 - params.put("nuclideName", nuclides); params.put("stationId", station); List xeConcMan = xeResultsManService.getConc(params, nuclides); // beta-gamma + params.put("nuclideName", nuclides); List nuclConcMan = nuclIdedManService.getConc(params); // gamma Map manResult = new HashMap<>(); manResult.putAll(calculate(concDto(xeConcMan), index)); diff --git a/jeecg-module-abnormal-alarm/src/main/java/org/jeecg/modules/service/impl/GardsXeResultsAutoServiceImpl.java b/jeecg-module-abnormal-alarm/src/main/java/org/jeecg/modules/service/impl/GardsXeResultsAutoServiceImpl.java index 7d3d6627..ec1b8314 100644 --- a/jeecg-module-abnormal-alarm/src/main/java/org/jeecg/modules/service/impl/GardsXeResultsAutoServiceImpl.java +++ b/jeecg-module-abnormal-alarm/src/main/java/org/jeecg/modules/service/impl/GardsXeResultsAutoServiceImpl.java @@ -1,5 +1,6 @@ package org.jeecg.modules.service.impl; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.ListUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.dynamic.datasource.annotation.DS; @@ -15,6 +16,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import java.time.LocalDate; import java.time.format.DateTimeFormatter; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; @@ -25,22 +27,26 @@ import java.util.stream.Collectors; public class GardsXeResultsAutoServiceImpl extends ServiceImpl implements IGardsXeResultsAutoService { @Override - public List getConc(Map params, Set nuclides) { + public List getConc(Map params, Set nuclideList) { + Set nuclides = new HashSet<>(); List M = ListUtil.toList("Xe131M", "Xe133M"); // XeResults表: 查询条件使用m - nuclides = nuclides.stream() - .filter(M::contains) - .map(item -> StrUtil.replace(item, "M","m")).collect(Collectors.toSet()); + for (String nuclide : nuclideList) { + if (CollUtil.contains(M, nuclide)){ + nuclides.add(StrUtil.replace(nuclide, "M","m")); + continue; + } + nuclides.add(nuclide); + } params.put("nuclideName", nuclides); - // 将返回结果的m转换为M - List m = ListUtil.toList("Xe131m", "Xe133m"); List result = baseMapper.getConc(params); - result = result.stream() - .filter(item -> m.contains(item.getNuclideName())) - .peek(item -> { - String nuclideName = StrUtil.replace(item.getNuclideName(), "m","M"); - item.setNuclideName(nuclideName); - }).collect(Collectors.toList()); + // 将查询结果的m转换为M + List m = ListUtil.toList("Xe131m", "Xe133m"); + for (ConcDtoXe concDtoXe : result) { + String nuclideName = concDtoXe.getNuclideName(); + if (CollUtil.contains(m, nuclideName)) + concDtoXe.setNuclideName(StrUtil.replace(nuclideName, "m","M")); + } return result; } diff --git a/jeecg-module-abnormal-alarm/src/main/java/org/jeecg/modules/service/impl/GardsXeResultsManServiceImpl.java b/jeecg-module-abnormal-alarm/src/main/java/org/jeecg/modules/service/impl/GardsXeResultsManServiceImpl.java index 88e8d4f1..6406d07b 100644 --- a/jeecg-module-abnormal-alarm/src/main/java/org/jeecg/modules/service/impl/GardsXeResultsManServiceImpl.java +++ b/jeecg-module-abnormal-alarm/src/main/java/org/jeecg/modules/service/impl/GardsXeResultsManServiceImpl.java @@ -1,5 +1,6 @@ package org.jeecg.modules.service.impl; +import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.ListUtil; import cn.hutool.core.util.StrUtil; import com.baomidou.dynamic.datasource.annotation.DS; @@ -15,6 +16,7 @@ import org.springframework.stereotype.Service; import java.time.LocalDate; import java.time.format.DateTimeFormatter; +import java.util.HashSet; import java.util.List; import java.util.Map; import java.util.Set; @@ -24,24 +26,27 @@ import java.util.stream.Collectors; @DS("ora") public class GardsXeResultsManServiceImpl extends ServiceImpl implements IGardsXeResultsManService { - @Override - public List getConc(Map params ,Set nuclides) { + public List getConc(Map params ,Set nuclideList) { + Set nuclides = new HashSet<>(); List M = ListUtil.toList("Xe131M", "Xe133M"); // XeResults表: 查询条件使用m - nuclides = nuclides.stream() - .filter(M::contains) - .map(item -> StrUtil.replace(item, "M","m")).collect(Collectors.toSet()); + for (String nuclide : nuclideList) { + if (CollUtil.contains(M, nuclide)){ + nuclides.add(StrUtil.replace(nuclide, "M","m")); + continue; + } + nuclides.add(nuclide); + } params.put("nuclideName", nuclides); - // 将返回结果的m转换为M - List m = ListUtil.toList("Xe131m", "Xe133m"); List result = baseMapper.getConc(params); - result = result.stream() - .filter(item -> m.contains(item.getNuclideName())) - .peek(item -> { - String nuclideName = StrUtil.replace(item.getNuclideName(), "m","M"); - item.setNuclideName(nuclideName); - }).collect(Collectors.toList()); + // 将查询结果的m转换为M + List m = ListUtil.toList("Xe131m", "Xe133m"); + for (ConcDtoXe concDtoXe : result) { + String nuclideName = concDtoXe.getNuclideName(); + if (CollUtil.contains(m, nuclideName)) + concDtoXe.setNuclideName(StrUtil.replace(nuclideName, "m","M")); + } return result; }