From 0718701788c68949dfbd8b7f617291f6b42c1af7 Mon Sep 17 00:00:00 2001 From: nieziyan Date: Thu, 15 Aug 2024 14:18:24 +0800 Subject: [PATCH] =?UTF-8?q?fix=EF=BC=9A=E5=88=86=E6=9E=90=E5=B7=A5?= =?UTF-8?q?=E5=85=B7=E6=A0=B8=E7=B4=A0=E5=BC=B9=E7=AA=97?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SelfStationServiceImpl.java | 88 ++++++++----------- 1 file changed, 38 insertions(+), 50 deletions(-) diff --git a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SelfStationServiceImpl.java b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SelfStationServiceImpl.java index 6433e94e..6ecd9305 100644 --- a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SelfStationServiceImpl.java +++ b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SelfStationServiceImpl.java @@ -351,29 +351,22 @@ public class SelfStationServiceImpl extends AbstractLogOrReport implements ISelf if (!StrUtil.equals(dbName, "RNAUTO")) initConfigure(analysisID, selfStationData); // 初始化自建台站用户核素库信息 - if (ObjectUtil.isNotNull(selfStationData.getSampleStruct())){ - String systemType = selfStationData.getSampleStruct().getSystem_type(); - if (!redisUtil.hasKey(userName+StringPool.DASH+systemType + "-self") - || !redisUtil.hasKey(userName+StringPool.DASH+systemType+"-list-self")) { - //读取缓存的全部核素信息 - Map allNuclideMap = (Map) redisUtil.get("AllNuclideMap"); - // 查询当前用户关联的核素信息 - List userLib = new LinkedList<>(); - // 从postgreSql中获取当前用户关注的核素信息 如果当前用户没有 则返回管理员的 - userLib = defaultNuclideSpectrumService.findNuclidesByUserName(userName, systemType, 5); - if (CollectionUtils.isEmpty(userLib)) { - userLib = defaultNuclideSpectrumService.findNuclidesByUserName("admin", systemType, 5); + String systemType = selfStationData.getSampleStruct().getSystem_type(); + if (!redisUtil.hasKey(userName+StringPool.DASH+systemType + "-self") + || !redisUtil.hasKey(userName+StringPool.DASH+systemType+"-list-self")) { + //读取缓存的全部核素信息 + Map allNuclideMap = (Map) redisUtil.get("AllNuclideMap"); + // 查询当前用户关联的核素信息 + // 从postgreSql中获取当前用户关注的核素信息 如果当前用户没有 则返回管理员的 + List userLib = defaultNuclideSpectrumService.findNuclidesByUserName(userName, systemType, 5); + Map nuclideMap = new HashMap<>(); + for (Map.Entry entry:allNuclideMap.entrySet()) { + if (userLib.contains(entry.getKey())) { + nuclideMap.put(entry.getKey(), entry.getValue()); } - userLib = userLib.stream().sorted().collect(Collectors.toList()); - Map nuclideMap = new HashMap<>(); - for (Map.Entry entry:allNuclideMap.entrySet()) { - if (userLib.contains(entry.getKey())) { - nuclideMap.put(entry.getKey(), entry.getValue()); - } - } - redisUtil.set(userName+StringPool.DASH+systemType+"-list-self", userLib); - redisUtil.set(userName+StringPool.DASH+systemType+"-self", nuclideMap); } + redisUtil.set(userName+StringPool.DASH+systemType+"-list-self", userLib); + redisUtil.set(userName+StringPool.DASH+systemType+"-self", nuclideMap); } //将自建台站的数据封装到缓存对象中 @@ -526,29 +519,24 @@ public class SelfStationServiceImpl extends AbstractLogOrReport implements ISelf bGSpectrum(struct, map); } } - if (ObjectUtil.isNotNull(selfStationData.getSampleStruct())){ - String systemType = selfStationData.getSampleStruct().getSystem_type(); - if (!redisUtil.hasKey(userName+StringPool.DASH+systemType + "-self") - || !redisUtil.hasKey(userName+StringPool.DASH+systemType+"-list-self")) { - //读取缓存的全部核素信息 - Map allNuclideMap = (Map) redisUtil.get("AllNuclideMap"); - // 查询当前用户关联的核素信息 - List userLib = new LinkedList<>(); - // 从postgreSql中获取当前用户关注的核素信息 如果当前用户没有 则返回管理员的 - userLib = defaultNuclideSpectrumService.findNuclidesByUserName(userName, systemType, 5); - if (CollectionUtils.isEmpty(userLib)) { - userLib = defaultNuclideSpectrumService.findNuclidesByUserName("admin", systemType, 5); + + // 初始化自建台站用户核素库信息 + String systemType = selfStationData.getSampleStruct().getSystem_type(); + if (!redisUtil.hasKey(userName+StringPool.DASH+systemType + "-self") + || !redisUtil.hasKey(userName+StringPool.DASH+systemType+"-list-self")) { + //读取缓存的全部核素信息 + Map allNuclideMap = (Map) redisUtil.get("AllNuclideMap"); + // 查询当前用户关联的核素信息 + // 从postgreSql中获取当前用户关注的核素信息 如果当前用户没有 则返回管理员的 + List userLib = defaultNuclideSpectrumService.findNuclidesByUserName(userName, systemType, 5); + Map nuclideMap = new HashMap<>(); + for (Map.Entry entry:allNuclideMap.entrySet()) { + if (userLib.contains(entry.getKey())) { + nuclideMap.put(entry.getKey(), entry.getValue()); } - userLib = userLib.stream().sorted().collect(Collectors.toList()); - Map nuclideMap = new HashMap<>(); - for (Map.Entry entry:allNuclideMap.entrySet()) { - if (userLib.contains(entry.getKey())) { - nuclideMap.put(entry.getKey(), entry.getValue()); - } - } - redisUtil.set(userName+StringPool.DASH+systemType+"-list-self", userLib); - redisUtil.set(userName+StringPool.DASH+systemType+"-self", nuclideMap); } + redisUtil.set(userName+StringPool.DASH+systemType+"-list-self", userLib); + redisUtil.set(userName+StringPool.DASH+systemType+"-self", nuclideMap); } } else { if (StringUtils.isNotBlank(sampleFileName)) { @@ -3120,7 +3108,7 @@ public class SelfStationServiceImpl extends AbstractLogOrReport implements ISelf int index = gammaFileUtil.FindNearPeak(phd.getVPeak(), channel, false); //获取缓存的核素信息 - Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()); + Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()+"-self"); Map nuclCoincidenceSumMap = (Map) redisUtil.get("nuclCoincidenceSumMap"); //计算核素范围的最小能量值 double min = energy - phd.getSetting().getEnergyTolerance(); @@ -3192,7 +3180,7 @@ public class SelfStationServiceImpl extends AbstractLogOrReport implements ISelf int index = gammaFileUtil.FindNearPeak(phd.getVPeak(), channel, false); //获取缓存的核素信息 - Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()); + Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()+"-self"); //计算核素范围的最小能量值 double min = phd.getVPeak().get(index).energy - phd.getSetting().getEnergyTolerance(); //计算核素范围的最大能量值 @@ -3257,7 +3245,7 @@ public class SelfStationServiceImpl extends AbstractLogOrReport implements ISelf peakNuclides.add(nuclideName); } // 查询当前用户所关心的核素名称 - Map mapNucLines = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()); + Map mapNucLines = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()+"-self"); //用户当前缓存的核素信息 Map phdNuclideMap = phd.getPhdNuclideMap(); // 查询出核素信息 @@ -3465,7 +3453,7 @@ public class SelfStationServiceImpl extends AbstractLogOrReport implements ISelf double min = bigDecimal.doubleValue() - 0.5; double max = bigDecimal.doubleValue() + 0.5; //获取缓存的核素信息 - Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()); + Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()+"-self"); Map nuclCoincidenceSumMap = (Map) redisUtil.get("nuclCoincidenceSumMap"); //判断缓存的核素信息是否为空 if (CollectionUtils.isNotEmpty(nuclideMap)) { @@ -3549,7 +3537,7 @@ public class SelfStationServiceImpl extends AbstractLogOrReport implements ISelf double min = bigDecimal.doubleValue() - 0.5; double max = bigDecimal.doubleValue() + 0.5; //获取缓存的核素信息 - Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()); + Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()+"-self"); //判断缓存的核素信息是否为空 if (CollectionUtils.isNotEmpty(nuclideMap)) { //遍历核素信息 @@ -3668,7 +3656,7 @@ public class SelfStationServiceImpl extends AbstractLogOrReport implements ISelf Map colorMap = sysUserColorService.initColor(userName); //获取缓存的核素信息 Map nuclideLinesMap = new HashMap<>(); - Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()); + Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()+"-self"); Map nuclCoincidenceSumMap = (Map) redisUtil.get("nuclCoincidenceSumMap"); if (phd.getHeader().getSystem_type().equals("P")) { NuclideLines newNuclideLines = new NuclideLines(); @@ -3739,7 +3727,7 @@ public class SelfStationServiceImpl extends AbstractLogOrReport implements ISelf } Map colorMap = sysUserColorService.initColor(userName); //获取缓存的核素信息 - Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()); + Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()+"-self"); if (CollectionUtils.isNotEmpty(nuclideMap)) { for (Map.Entry entry:nuclideMap.entrySet()) { NuclideLines nuclideLines = entry.getValue(); @@ -3785,7 +3773,7 @@ public class SelfStationServiceImpl extends AbstractLogOrReport implements ISelf double min = bigDecimal.doubleValue() - tolerance; double max = bigDecimal.doubleValue() + tolerance; //获取缓存的核素信息 - Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()); + Map nuclideMap = (Map) redisUtil.get(userName+StringPool.DASH+phd.getHeader().getSystem_type()+"-self"); //判断缓存的核素信息是否为空 if (CollectionUtils.isNotEmpty(nuclideMap)) { //遍历核素信息