From 33f164a96f7edd31d6e1ceccf6ed1a9b22d5f959 Mon Sep 17 00:00:00 2001 From: qiaoqinzheng Date: Mon, 15 Jan 2024 19:16:12 +0800 Subject: [PATCH 1/6] =?UTF-8?q?=E4=BA=BA=E5=B7=A5=E4=BA=A4=E4=BA=92beta?= =?UTF-8?q?=EF=BC=8Cgamma=E7=94=9F=E6=88=90=E5=B9=B6=E5=AD=98=E5=82=A8?= =?UTF-8?q?=E4=BA=BA=E5=B7=A5=E4=BA=A4=E4=BA=92=E7=9A=84=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E4=BB=A5=E5=8F=8A=E6=8A=A5=E5=91=8A=E6=96=87=E4=BB=B6=E5=88=B0?= =?UTF-8?q?ftp?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../org/jeecg/common/util/NameStandUtil.java | 6 + .../org/jeecg/common/util/PHDFileUtil.java | 484 ++++++++++++++++-- .../mapper/xml/GardsAnalysesManMapper.xml | 4 +- .../mapper/xml/SpectrumAnalysisMapper.xml | 12 +- .../service/impl/GammaServiceImpl.java | 161 +++--- .../GardsAnalysesSpectrumServiceImpl.java | 4 + .../impl/SpectrumAnalysisServiceImpl.java | 156 +++--- 7 files changed, 629 insertions(+), 198 deletions(-) diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/NameStandUtil.java b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/NameStandUtil.java index 07b92660..778d06e3 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/NameStandUtil.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/common/util/NameStandUtil.java @@ -79,6 +79,12 @@ public class NameStandUtil { return path.toString(); } + public Map NameStandard(String dataType, String spectrumQuantity, Double acqusitionLiveTime, String sampleFileName, String measurementId) { + String suffix = GetSuffix(dataType, spectrumQuantity,String.valueOf(acqusitionLiveTime)); + Map fileNames = NameStandardByName(sampleFileName, measurementId,suffix); + return fileNames; + } + public Map NameStandard(PHDFile fileAnlyse) { String suffix = GetSuffix(fileAnlyse.getMsgInfo().getData_type(), fileAnlyse.getHeader().getSpectrum_quantity(),String.valueOf(fileAnlyse.getAcq().getAcquisition_live_time())); Map fileNames = NameStandardByName(fileAnlyse.getFilename(), fileAnlyse.getHeader().getMeasurement_id(),suffix); diff --git a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/common/util/PHDFileUtil.java b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/common/util/PHDFileUtil.java index 84f78490..82dddbcd 100644 --- a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/common/util/PHDFileUtil.java +++ b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/common/util/PHDFileUtil.java @@ -27,6 +27,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.io.*; +import java.text.DecimalFormat; import java.text.ParseException; import java.util.*; import java.util.stream.Collectors; @@ -628,44 +629,6 @@ public class PHDFileUtil extends AbstractLogOrReport { return rData; } -// public File analyzeFile(String path, String fileName) { -// //连接ftp -// FTPClient ftpClient = ftpUtil.LoginFTP(); -// InputStream inputStream = null; -// File file = null; -// try { -// //被动模式 -// ftpClient.enterLocalPassiveMode(); -// //设置文件类型--二进制文件 -// ftpClient.setFileType(FTP.BINARY_FILE_TYPE); -// // -// ftpClient.setControlEncoding("UTF-8"); -// ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE); -// //切换文件路径 -// ftpClient.changeWorkingDirectory(path); -// inputStream = ftpClient.retrieveFileStream(fileName); -// if (Objects.nonNull(inputStream)){ -// file = File.createTempFile("betaGamma", null); -// //将ftp文件的输入流复制给临时文件 -// FileUtils.copyInputStreamToFile(inputStream, file); -// } -// } catch (IOException e) { -// throw new RuntimeException(e); -// } finally { -// try { -// if (Objects.nonNull(ftpClient)){ -// ftpClient.disconnect(); -// } -// if (Objects.nonNull(inputStream)){ -// inputStream.close(); -// } -// } catch (IOException e) { -// throw new RuntimeException(e); -// } -// } -// return file; -// } - public boolean analyzeSpectrum(File sampleTmp, File gasTmp, File detTmp, BgCalibratePara BgCalPara, Map map, BetaDataFile betaDataFile) { boolean bRet = true; //调用动态库解析文件 @@ -1987,6 +1950,449 @@ public class PHDFileUtil extends AbstractLogOrReport { } } + public String OutPutRnRpt(BetaDataFile betaDataFile) { + GardsCalibrationSpectrum gammaCalibrationParamS = new GardsCalibrationSpectrum(); + GardsCalibrationSpectrum gammaCalibrationParamG = new GardsCalibrationSpectrum(); + GardsCalibrationSpectrum gammaCalibrationParamD = new GardsCalibrationSpectrum(); + GardsCalibrationSpectrum gammaCalibrationParamES = new GardsCalibrationSpectrum(); + GardsCalibrationSpectrum gammaCalibrationParamEG = new GardsCalibrationSpectrum(); + GardsCalibrationSpectrum gammaCalibrationParamED = new GardsCalibrationSpectrum(); + + GardsCalibrationSpectrum betaCalibrationParamS = new GardsCalibrationSpectrum(); + GardsCalibrationSpectrum betaCalibrationParamG = new GardsCalibrationSpectrum(); + GardsCalibrationSpectrum betaCalibrationParamD = new GardsCalibrationSpectrum(); + GardsCalibrationSpectrum betaCalibrationParamES = new GardsCalibrationSpectrum(); + GardsCalibrationSpectrum betaCalibrationParamEG = new GardsCalibrationSpectrum(); + GardsCalibrationSpectrum betaCalibrationParamED = new GardsCalibrationSpectrum(); + + StringBuffer strBuffer = new StringBuffer(); + //对分析后的内容进行数据获取 + List channelsSpectrums = betaDataFile.getRoiChannelsSpectrumList(); + List roiChannelsSpectrumsSample = channelsSpectrums.stream().filter(item -> item.getDataType().equalsIgnoreCase("S")).collect(Collectors.toList()); + List roiChannelsSpectrumsGas = channelsSpectrums.stream().filter(item -> item.getDataType().equalsIgnoreCase("G")).collect(Collectors.toList()); + List roiChannelsSpectrumsDet = channelsSpectrums.stream().filter(item -> item.getDataType().equalsIgnoreCase("D")).collect(Collectors.toList()); + List resultsSpectrums = betaDataFile.getRoiResultsSpectrumList(); + List xeResultsSpectrums = betaDataFile.getXeResultsSpectrumList(); + //#SAMPLE: LIMITS PER ROI GAMMA + List gammaCalibrationParamList = betaDataFile.getGammaCalibrationSpectrumList(); + List gammaCalibrationSpectrumEList = betaDataFile.getGammaCalibrationSpectrumEList(); + for (int i=0; i betaCalibrationParamList = betaDataFile.getBetaCalibrationSpectrumList(); + List betaCalibrationSpectrumEList = betaDataFile.getBetaCalibrationSpectrumEList(); + for (int i=0; i viewXeData(List xeResultsSpectrumList) { List xeResultsViewList = new LinkedList<>(); if (CollectionUtils.isNotEmpty(xeResultsSpectrumList)) { @@ -2004,4 +2410,6 @@ public class PHDFileUtil extends AbstractLogOrReport { return xeResultsViewList; } + + } diff --git a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/mapper/xml/GardsAnalysesManMapper.xml b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/mapper/xml/GardsAnalysesManMapper.xml index d913861a..5578527d 100644 --- a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/mapper/xml/GardsAnalysesManMapper.xml +++ b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/mapper/xml/GardsAnalysesManMapper.xml @@ -17,7 +17,9 @@ TOTALCOUNTS = #{analyses.totalCounts}, BASELINE_PATH = #{analyses.baselinePath}, LC_PATH = #{analyses.lcPath}, - SCAC_PATH = #{analyses.scacPath} + SCAC_PATH = #{analyses.scacPath}, + LOG_PATH = #{analyses.logPath}, + REPORT_PAHT = #{analyses.reportPath} WHERE IDANALYSIS = #{analyses.idAnalysis} diff --git a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/mapper/xml/SpectrumAnalysisMapper.xml b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/mapper/xml/SpectrumAnalysisMapper.xml index 081eae55..d9203460 100644 --- a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/mapper/xml/SpectrumAnalysisMapper.xml +++ b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/mapper/xml/SpectrumAnalysisMapper.xml @@ -900,7 +900,9 @@ USEDGASPHD=#{gardsAnalyses.usedgasphd}, USEDDETPHD=#{gardsAnalyses.useddetphd}, USEDGASPHD_ID=#{gardsAnalyses.usedgasphdId}, - USEDDETPHD_ID=#{gardsAnalyses.useddetphdId} + USEDDETPHD_ID=#{gardsAnalyses.useddetphdId}, + LOG_PATH = #{gardsAnalyses.logPath}, + REPORT_PAHT = #{gardsAnalyses.reportPath} WHERE SAMPLE_ID=#{gardsAnalyses.sampleId} AND ANALYST=#{gardsAnalyses.analyst} @@ -921,7 +923,9 @@ USEDGASPHD, USEDDETPHD, USEDGASPHD_ID, - USEDDETPHD_ID) + USEDDETPHD_ID, + LOG_PATH, + REPORT_PAHT) VALUES(#{gardsAnalyses.sampleId}, to_date(#{gardsAnalyses.analysisBeginStr},'YYYY-MM-DD hh24:mi:ss'), to_date(#{gardsAnalyses.analysisEndStr},'YYYY-MM-DD hh24:mi:ss'), @@ -934,7 +938,9 @@ #{gardsAnalyses.usedgasphd}, #{gardsAnalyses.useddetphd}, #{gardsAnalyses.usedgasphdId}, - #{gardsAnalyses.useddetphdId}) + #{gardsAnalyses.useddetphdId}, + #{gardsAnalyses.logPath}, + #{gardsAnalyses.reportPath}) diff --git a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GammaServiceImpl.java b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GammaServiceImpl.java index 55a945d6..8bc2f59d 100644 --- a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GammaServiceImpl.java +++ b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GammaServiceImpl.java @@ -3,6 +3,7 @@ package org.jeecg.modules.service.impl; import cn.hutool.core.collection.CollUtil; import cn.hutool.core.collection.ListUtil; import cn.hutool.core.date.DateUtil; +import cn.hutool.core.io.FileUtil; import cn.hutool.core.map.MapUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.ReUtil; @@ -27,6 +28,7 @@ import org.jeecg.common.constant.DateConstant; import org.jeecg.common.constant.RedisConstant; import org.jeecg.common.properties.ParameterProperties; import org.jeecg.common.properties.SpectrumPathProperties; +import org.jeecg.common.properties.TaskProperties; import org.jeecg.common.system.util.JwtUtil; import org.jeecg.common.system.vo.LoginUser; import org.jeecg.common.util.*; @@ -187,6 +189,8 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi // 从数据库中读取phd其他相关信息 boolean bRet = getResultFromDB(dbName, analyst, sampleId, phd, result); if (!redisUtil.hasKey(userName+StringPool.DASH+phd.getHeader().getSystem_type()) || !redisUtil.hasKey(userName+StringPool.DASH+phd.getHeader().getSystem_type()+"-list")) { + //读取缓存的全部核素信息 + Map allNuclideMap = (Map) redisUtil.get("AllNuclideMap"); // 查询当前用户关联的核素信息 List userLib = new LinkedList<>(); // 从postgreSql中获取当前用户关注的核素信息 如果当前用户没有 则返回管理员的 @@ -195,7 +199,12 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi userLib = defaultNuclideSpectrumService.findNuclidesByUserName("admin", phd.getHeader().getSystem_type().toUpperCase()); } userLib = userLib.stream().sorted().collect(Collectors.toList()); - Map nuclideMap = GetNuclideLines(userLib); + 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+phd.getHeader().getSystem_type()+"-list", userLib); redisUtil.set(userName+StringPool.DASH+phd.getHeader().getSystem_type(), nuclideMap); } @@ -219,6 +228,8 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi return result; } if (!redisUtil.hasKey(userName+StringPool.DASH+phd.getHeader().getSystem_type()) || !redisUtil.hasKey(userName+StringPool.DASH+phd.getHeader().getSystem_type()+"-list")) { + //读取缓存的全部核素信息 + Map allNuclideMap = (Map) redisUtil.get("AllNuclideMap"); // 查询当前用户关联的核素信息 List userLib = new LinkedList<>(); // 从postgreSql中获取当前用户关注的核素信息 如果当前用户没有 则返回管理员的 @@ -227,7 +238,12 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi userLib = defaultNuclideSpectrumService.findNuclidesByUserName("admin", phd.getHeader().getSystem_type().toUpperCase()); } userLib = userLib.stream().sorted().collect(Collectors.toList()); - Map nuclideMap = GetNuclideLinesLocal(userLib); + 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+phd.getHeader().getSystem_type()+"-list", userLib); redisUtil.set(userName+StringPool.DASH+phd.getHeader().getSystem_type(), nuclideMap); } @@ -497,6 +513,8 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi // 从数据库中读取phd其他相关信息 boolean bRet = getResultFromDB(dbName, analyst, sampleId, phd, result); if (!redisUtil.hasKey(userName+StringPool.DASH+phd.getHeader().getSystem_type()) || !redisUtil.hasKey(userName+StringPool.DASH+phd.getHeader().getSystem_type()+"-list")) { + //读取缓存的全部核素信息 + Map allNuclideMap = (Map) redisUtil.get("AllNuclideMap"); // 查询当前用户关联的核素信息 List userLib = new LinkedList<>(); // 从postgreSql中获取当前用户关注的核素信息 如果当前用户没有 则返回管理员的 @@ -505,7 +523,12 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi userLib = defaultNuclideSpectrumService.findNuclidesByUserName("admin", phd.getHeader().getSystem_type().toUpperCase()); } userLib = userLib.stream().sorted().collect(Collectors.toList()); - Map nuclideMap = GetNuclideLines(userLib); + 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+phd.getHeader().getSystem_type()+"-list", userLib); redisUtil.set(userName+StringPool.DASH+phd.getHeader().getSystem_type(), nuclideMap); } @@ -879,6 +902,8 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi return result; } if (!redisUtil.hasKey(userName+StringPool.DASH+phd.getHeader().getSystem_type()) || !redisUtil.hasKey(userName+StringPool.DASH+phd.getHeader().getSystem_type()+"-list")) { + //读取缓存的全部核素信息 + Map allNuclideMap = (Map) redisUtil.get("AllNuclideMap"); // 查询当前用户关联的核素信息 List userLib = new LinkedList<>(); // 从postgreSql中获取当前用户关注的核素信息 如果当前用户没有 则返回管理员的 @@ -887,7 +912,12 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi userLib = defaultNuclideSpectrumService.findNuclidesByUserName("admin", phd.getHeader().getSystem_type().toUpperCase()); } userLib = userLib.stream().sorted().collect(Collectors.toList()); - Map nuclideMap = GetNuclideLinesLocal(userLib); + 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+phd.getHeader().getSystem_type()+"-list", userLib); redisUtil.set(userName+StringPool.DASH+phd.getHeader().getSystem_type(), nuclideMap); } @@ -1317,85 +1347,6 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi return result; } - public Map GetNuclideLines(List nuclideList) { - Map mapLines = new HashMap<>(); - if (nuclideList.size() < 1) { - return mapLines; - } - for (String name : nuclideList) { - NuclideLines nlines = new NuclideLines(); - List nuclideLineList = spectrumAnalysisMapper.getNuclideLines(name); - for (int j = 0; j < nuclideLineList.size(); j++) { - nlines.getFullNames().add(nuclideLineList.get(j).getFullName()); - nlines.getVenergy().add(nuclideLineList.get(j).getEnergy()); - nlines.getVuncertE().add(nuclideLineList.get(j).getEnergyUncert()); - nlines.getVyield().add(nuclideLineList.get(j).getYield() / 100); - nlines.getVuncertY().add(nuclideLineList.get(j).getYieldUncert()); - if (Objects.nonNull(nuclideLineList.get(j).getKeyFlag()) && nuclideLineList.get(j).getKeyFlag().intValue() > 0) { - nlines.key_flag = j; - nlines.maxYeildIdx = j; - } - } - mapLines.put(name, nlines); - } - List halfs = spectrumAnalysisMapper.getHalf(nuclideList); - for (int m = 0; m < halfs.size(); m++) { - NuclideLines nuclideLines = mapLines.get(halfs.get(m).getName()); - nuclideLines.setHalflife(halfs.get(m).getHalf() == null ? 0 : halfs.get(m).getHalf() * 86400);// 将天转换成秒 - mapLines.put(halfs.get(m).getName(), nuclideLines); - } - return mapLines; - } - - public Map GetNuclideLinesLocal(List nuclideList) { - Map mapLines = new HashMap<>(); - if (nuclideList.size() < 1) { - return mapLines; - } - //需要查询的两个表的名称 - String table_lines = "lines"; - String table_lib = "libdata"; - // 建立数据库连接 - Connection conn = dbUtil.openDB(); - Statement statement = null; - try { - statement = conn.createStatement(); - for (String name : nuclideList) { - NuclideLines nlines = new NuclideLines(); - //根据核素名称查询相关核素信息 - String sql1 = "select fullname, energy, energy_uncert, yield, yield_uncert, key_flag from "+table_lines+" where name = '"+name+"' Order by energy"; - ResultSet resultSet = statement.executeQuery(sql1); - int j=0; - while (resultSet.next()) { - nlines.getFullNames().add(resultSet.getString("fullname")); - nlines.getVenergy().add(resultSet.getDouble("energy")); - nlines.getVuncertE().add(resultSet.getDouble("energy_uncert")); - nlines.getVyield().add(resultSet.getDouble("yield") / 100); - nlines.getVuncertY().add(resultSet.getDouble("yield_uncert")); - if (Objects.nonNull(resultSet.getInt("key_flag")) && resultSet.getInt("key_flag") > 0) { - nlines.key_flag = j; - nlines.maxYeildIdx = j; - } - ++j; - } - mapLines.put(name, nlines); - } - String names = "'" + String.join("','", nuclideList) + "'"; - String sql2 = "select name, halflife from "+table_lib+" where name in ("+names+")"; - ResultSet executeQuery = statement.executeQuery(sql2); - while (executeQuery.next()) { - NuclideLines nuclideLines = mapLines.get(executeQuery.getString("name")); - nuclideLines.setHalflife(Double.valueOf(executeQuery.getDouble("halflife")) == null ? 0 : executeQuery.getDouble("halflife") * 86400);// 将天转换成秒 - mapLines.put(executeQuery.getString("name"), nuclideLines); - } - } catch (SQLException e) { - throw new RuntimeException(e); - } finally { - dbUtil.close(statement, conn); - } - return mapLines; - } - @Override public Result InteractiveTool(Integer sampleId, String fileName, HttpServletRequest request) { Result result = new Result(); @@ -4149,6 +4100,8 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi boolean save = defaultNuclideSpectrumService.saveNuclidesByUserName(userLibraryName, userName, phd.getHeader().getSystem_type().toUpperCase()); if (save) { result.success("Modified successfully!"); + // 重新计算峰值 + Map allNuclideMap = (Map) redisUtil.get("AllNuclideMap"); // 查询当前用户关联的核素信息 List userLib = new LinkedList<>(); // 从postgreSql中获取当前用户关注的核素信息 如果当前用户没有 则返回管理员的 @@ -4156,7 +4109,12 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi if (CollectionUtils.isEmpty(userLib)) { userLib = defaultNuclideSpectrumService.findNuclidesByUserName("admin", phd.getHeader().getSystem_type().toUpperCase()); } - Map nuclideMap = GetNuclideLines(userLib); + 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+phd.getHeader().getSystem_type()+"-list", userLib); redisUtil.set(userName+StringPool.DASH+phd.getHeader().getSystem_type(), nuclideMap); } else { @@ -4977,7 +4935,7 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public Result saveToDB(String fileName, HttpServletRequest request) { Result result = new Result(); String userName = JwtUtil.getUserNameByToken(request); @@ -5088,6 +5046,39 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi mdcSpectrumService.saveMDCGamma(phd, idAnalysis); if (bRet) { phd.setStatus("R"); + //分析成功后存储日志文件和报告文件 + { + String logPathName = middleData.analyses_absolute_LogPath.substring(0, middleData.analyses_absolute_LogPath.lastIndexOf(StringPool.SLASH)); + String logFileName = middleData.analyses_absolute_LogPath.substring(middleData.analyses_absolute_LogPath.lastIndexOf(StringPool.SLASH)+1); + File logFile = new File(logFileName); + try { + FileUtil.writeString(gammaFileUtil.GetLogContent(middleData), logFile, "UTF-8"); + FileInputStream in = new FileInputStream(logFile); + ftpUtil.saveFile(logPathName, logFileName, in); + } catch (FileNotFoundException e) { + throw new RuntimeException(e); + } finally { + if (Objects.nonNull(logFile)) { + logFile.delete(); + } + } + } + { + String rptPathName = middleData.analyses_absolute_ReportPath.substring(0, middleData.analyses_absolute_ReportPath.lastIndexOf(StringPool.SLASH)); + String rptFileName = middleData.analyses_absolute_ReportPath.substring(middleData.analyses_absolute_ReportPath.lastIndexOf(StringPool.SLASH)+1); + File rptFile = new File(rptFileName); + try { + FileUtil.writeString(gammaFileUtil.GetReportContent(middleData), rptFile, "UTF-8"); + FileInputStream in = new FileInputStream(rptFile); + ftpUtil.saveFile(rptPathName, rptFileName, in); + } catch (FileNotFoundException e) { + throw new RuntimeException(e); + } finally { + if (Objects.nonNull(rptFile)) { + rptFile.delete(); + } + } + } List paths = new LinkedList<>(); paths.add(middleData.analyses_lc_filePath); paths.add(middleData.analyses_scac_filePath); diff --git a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GardsAnalysesSpectrumServiceImpl.java b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GardsAnalysesSpectrumServiceImpl.java index 1d71bf85..d1543cef 100644 --- a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GardsAnalysesSpectrumServiceImpl.java +++ b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GardsAnalysesSpectrumServiceImpl.java @@ -40,6 +40,8 @@ public class GardsAnalysesSpectrumServiceImpl extends ServiceImpl fileNames = phdFileUtil.FileNameByStandardForm(filePath, sampleFileName); + //匹配detFile + boolean detStatus = false; + String detaFileName = fileData.get("detaFileName"); + String detphd = phdFileUtil.GetMatchFile(detaFileName, fileNames, DataTypeAbbr.DETBKPHD.getType()); + if (StringUtils.isNotBlank(detphd)) { + detaFileName = detphd; + detStatus = true; + } + map.put("sampleFileName", sampleFileName); + map.put("gasFileName", ""); + map.put("detFileName", detaFileName); + map.put("detFileStatus", detStatus); + map.put("qcFileName", ""); + map.put("sampleSystemType", sampleSystemType); } } if (CollectionUtils.isNotEmpty(map)) { @@ -3771,7 +3791,7 @@ public class SpectrumAnalysisServiceImpl extends AbstractLogOrReport implements } @Override - @Transactional + @Transactional(rollbackFor = Exception.class) public Result saveToDB(BgDataAnlyseResultIn anlyseResultIn, HttpServletRequest request) { Result result = new Result(); Map map = new HashMap<>(); @@ -3885,6 +3905,22 @@ public class SpectrumAnalysisServiceImpl extends AbstractLogOrReport implements result.error500("sampleFile save failed"); return result; } + //获取日志,报告文件存放路径 + EnergySpectrumStruct sampleStruct = betaDataFile.getSampleStruct(); + String dataType = sampleStruct.data_type; + String subDirSavePath = ""; + subDirSavePath+=nameStandUtil.GetSysTemSubdir(sampleStruct.system_type); + subDirSavePath+=nameStandUtil.GetDateTypeSubdir(dataType); + String path = nameStandUtil.SetFileDir(subDirSavePath, betaDataFile.getSampleFileName()); + Map fileNameMap = nameStandUtil.NameStandard(dataType, sampleStruct.spectrum_quantity, sampleStruct.acquisition_live_time, betaDataFile.getSampleFileName(), sampleStruct.measurement_id); + String logName = fileNameMap.get("log"); + String qsLogPath= path+StringPool.SLASH+userName+"_"+logName; + qsLogPath = qsLogPath.replace(StringPool.BACK_SLASH, StringPool.SLASH); + String rptName = fileNameMap.get("rpt"); + String qsReportPath="Arr"+StringPool.SLASH+path+StringPool.SLASH+userName+"_"+rptName; + qsReportPath = qsReportPath.replace(StringPool.BACK_SLASH, StringPool.SLASH); + String analyses_absolute_LogPath=spectrumPathProperties.getLogPath()+StringPool.SLASH+qsLogPath; + String analyses_absolute_ReportPath=spectrumPathProperties.getSaveFilePath()+StringPool.SLASH+qsReportPath; //根据文件名称查询对应的sampleId--- sampleFile gasFile detFile sampleId = spectrumAnalysisMapper.getSampleId(sampleFilePathName); gasId = spectrumAnalysisMapper.getSampleId(gasFilePathName); @@ -3904,6 +3940,8 @@ public class SpectrumAnalysisServiceImpl extends AbstractLogOrReport implements gardsAnalyses.setUsedgasphdId(gasId); gardsAnalyses.setUseddetphdId(detId); gardsAnalyses.setAnalyst(anlyseResultIn.getUserName()); + gardsAnalyses.setLogPath(qsLogPath); + gardsAnalyses.setReportPath(qsReportPath); if (Objects.nonNull(isExist)){ spectrumAnalysisMapper.updateGardsAnalyses(gardsAnalyses); }else {//如果没有分析过就新增--GARDS_ANALYSES @@ -4012,6 +4050,40 @@ public class SpectrumAnalysisServiceImpl extends AbstractLogOrReport implements File qcTmp = new File(betaDataFile.getQcTmpPath()); ftpUtil.saveFile(StringPool.SLASH + ftpUtil.getFtpRootPath() + spectrumPathProperties.getSaveFilePath() + StringPool.SLASH + qcFilePathName.substring(0, qcFilePathName.lastIndexOf(StringPool.SLASH)), anlyseResultIn.getQcFileName(), new FileInputStream(qcTmp)); } + //分析成功后存储日志文件和报告文件 + { + String logPathName = analyses_absolute_LogPath.substring(0, analyses_absolute_LogPath.lastIndexOf(StringPool.SLASH)); + String logFileName = analyses_absolute_LogPath.substring(analyses_absolute_LogPath.lastIndexOf(StringPool.SLASH)+1); + String logFilePath = parameterProperties.getLogFilePath() + File.separator + DateUtils.formatDate(new Date(), "yyyy-MM-dd") + File.separator + betaDataFile.getSampleFileName().replace("PHD", "log"); + File logFile = new File(logFilePath); + try { + FileInputStream in = new FileInputStream(logFile); + ftpUtil.saveFile(logPathName, logFileName, in); + } catch (FileNotFoundException e) { + throw new RuntimeException(e); + } finally { + if (Objects.nonNull(logFile)) { + logFile.delete(); + } + } + } + { + String rptContent = phdFileUtil.OutPutRnRpt(betaDataFile); + String rptPathName = analyses_absolute_ReportPath.substring(0, analyses_absolute_ReportPath.lastIndexOf(StringPool.SLASH)); + String rptFileName = analyses_absolute_ReportPath.substring(analyses_absolute_ReportPath.lastIndexOf(StringPool.SLASH)+1); + File rptFile = new File(rptFileName); + try { + FileUtil.writeString(rptContent, rptFile, "UTF-8"); + FileInputStream in = new FileInputStream(rptFile); + ftpUtil.saveFile(rptPathName, rptFileName, in); + } catch (FileNotFoundException e) { + throw new RuntimeException(e); + } finally { + if (Objects.nonNull(rptFile)) { + rptFile.delete(); + } + } + } } catch (FileNotFoundException e) { throw new RuntimeException(e); } @@ -5471,6 +5543,17 @@ public class SpectrumAnalysisServiceImpl extends AbstractLogOrReport implements roiResultsSpectrumList.add(roiResults); } anlyseResultIn.setRoiResultsSpectrumList(roiResultsSpectrumList); + betaDataFile.getXeResultsSpectrumList().forEach(item -> { + if (item.getNuclideName().equals(XeNuclideName.XE_131m.getType())) { + item.setNidFlag(anlyseResultIn.getXe131mFlag()); + } else if (item.getNuclideName().equals(XeNuclideName.XE_133.getType())) { + item.setNidFlag(anlyseResultIn.getXe133Flag()); + } else if (item.getNuclideName().equals(XeNuclideName.XE_133m.getType())) { + item.setNidFlag(anlyseResultIn.getXe133mFlag()); + } else if (item.getNuclideName().equals(XeNuclideName.XE_135.getType())) { + item.setNidFlag(anlyseResultIn.getXe135Flag()); + } + }); } } } catch (Exception e) { @@ -5559,75 +5642,6 @@ public class SpectrumAnalysisServiceImpl extends AbstractLogOrReport implements return calibrationPairsList; } -// public void getROILimit(BgDataAnlyseResultIn anlyseResultIn) { -// File sampleTmp = null; -// try { -// //获取ftp文件路径下临时文件 -// sampleTmp = phdFileUtil.analyzeFile(anlyseResultIn.getSampleFilePath(), anlyseResultIn.getSampleFileName()); -// if (Objects.nonNull(sampleTmp)){ -// EnergySpectrumStruct sourceData = EnergySpectrumHandler.getSourceData(sampleTmp.getAbsolutePath()); -// List poiBX1 = sourceData.POI_B_x1; -// List poiBX2 = sourceData.POI_B_x2; -// List poiGY1 = sourceData.POI_G_y1; -// List poiGY2 = sourceData.POI_G_y2; -// //ROI Limit -// List report_limit_roi = new LinkedList<>(); -// for(int pos=1;pos<=poiBX1.size();pos++) { -// report_limit_roi.add(String.valueOf(pos)); -// } -// List beginB = new LinkedList<>(); -// for(int pos=1;pos<=poiBX1.size();pos++) { -// beginB.add(String.valueOf(poiBX1.get(pos))); -// } -// List endB = new LinkedList<>(); -// for(int pos=0;pos beginG = new LinkedList<>(); -// for(int pos=1;pos<=poiGY1.size();pos++) { -// beginG.add(String.valueOf(poiGY1.get(pos))); -// } -// List endG = new LinkedList<>(); -// for(int pos=0;pos ratio_id = sourceData.ratio_id; -// List ROI_num_highter_G_energy_ROI = sourceData.ROI_num_highter_G_energy_ROI; -// List ROI_num_lower_G_energy_ROI = sourceData.ROI_num_lower_G_energy_ROI; -// List count_ratio = sourceData.count_ratio; -// List count_ratio_uncertainty = sourceData.count_ratio_uncertainty; -// List countRatioList = new LinkedList<>(); -// for(int pos=0;pos countRatioUncertaintyList = new LinkedList<>(); -// for(int pos=0;pos bg_efficiency = sourceData.bg_efficiency; -// List nuclide_name = sourceData.nuclide_name; -// List ROI_number = sourceData.ROI_number; -// List uncertainty = sourceData.uncertainty; -// List efficiencyList = new LinkedList<>(); -// for(int pos=0;pos uncertaintyList = new LinkedList<>(); -// for(int pos=0;pos getCalibration(BgDataAnlyseResultIn anlyseResultIn, Integer sampleId, Integer gasId, Integer detId, Integer idAnalysis) { List calibrationSpectrumList = new LinkedList<>(); if (Objects.nonNull(sampleId)) { From 46c79e8ade58bc5b94c8479ce8915889af08e063 Mon Sep 17 00:00:00 2001 From: qiaoqinzheng Date: Mon, 15 Jan 2024 19:20:46 +0800 Subject: [PATCH 2/6] =?UTF-8?q?=E8=87=AA=E5=BB=BA=E5=8F=B0=E7=AB=99?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E4=B8=8D=E5=AD=98=E5=9C=A8=E5=AF=BC=E8=87=B4?= =?UTF-8?q?=E9=94=99=E8=AF=AF=E9=97=AE=E9=A2=98=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../impl/SpectrumAnalysisServiceImpl.java | 19 +------------------ 1 file changed, 1 insertion(+), 18 deletions(-) diff --git a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SpectrumAnalysisServiceImpl.java b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SpectrumAnalysisServiceImpl.java index f116b60c..9edf7d59 100644 --- a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SpectrumAnalysisServiceImpl.java +++ b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SpectrumAnalysisServiceImpl.java @@ -348,29 +348,12 @@ public class SpectrumAnalysisServiceImpl extends AbstractLogOrReport implements map.put("qcFileName", qcphd); map.put("qcFileStatus", qcStatus); map.put("sampleSystemType", sampleSystemType); - } else if (sampleSystemType.equals(SystemType.GAMMA.getType()) || sampleSystemType.equals(SystemType.PARTICULATE.getType())) { + } else { map.put("sampleFileName", sampleFileName); map.put("gasFileName", ""); map.put("detFileName", ""); map.put("qcFileName", ""); map.put("sampleSystemType", sampleSystemType); - } else if (sampleSystemType.equals(SystemType.SELFSTATION.getType())) { - //加载并获取当前路径下所有的文件名称并进行名称格式化 仅需要格式化和sample文件同一个台站 名称格式化为最终名称 - List fileNames = phdFileUtil.FileNameByStandardForm(filePath, sampleFileName); - //匹配detFile - boolean detStatus = false; - String detaFileName = fileData.get("detaFileName"); - String detphd = phdFileUtil.GetMatchFile(detaFileName, fileNames, DataTypeAbbr.DETBKPHD.getType()); - if (StringUtils.isNotBlank(detphd)) { - detaFileName = detphd; - detStatus = true; - } - map.put("sampleFileName", sampleFileName); - map.put("gasFileName", ""); - map.put("detFileName", detaFileName); - map.put("detFileStatus", detStatus); - map.put("qcFileName", ""); - map.put("sampleSystemType", sampleSystemType); } } if (CollectionUtils.isNotEmpty(map)) { From bf7aa121db045cd87f30462858c7b5fa6ce82b81 Mon Sep 17 00:00:00 2001 From: qiaoqinzheng Date: Mon, 15 Jan 2024 19:47:42 +0800 Subject: [PATCH 3/6] =?UTF-8?q?=E4=BA=BA=E5=B7=A5=E4=BA=A4=E4=BA=92?= =?UTF-8?q?=E5=88=86=E6=9E=90=E4=BF=9D=E5=AD=98=E5=85=A5=E5=BA=93=E5=90=8E?= =?UTF-8?q?=E5=88=A0=E9=99=A4=E6=97=A5=E5=BF=97=E6=96=87=E4=BB=B6=E5=AF=BC?= =?UTF-8?q?=E8=87=B4=E6=97=A0=E6=B3=95=E5=86=8D=E6=9F=A5=E7=9C=8B=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../modules/service/impl/SpectrumAnalysisServiceImpl.java | 4 ---- 1 file changed, 4 deletions(-) diff --git a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SpectrumAnalysisServiceImpl.java b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SpectrumAnalysisServiceImpl.java index 9edf7d59..59cf8f53 100644 --- a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SpectrumAnalysisServiceImpl.java +++ b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/SpectrumAnalysisServiceImpl.java @@ -4044,10 +4044,6 @@ public class SpectrumAnalysisServiceImpl extends AbstractLogOrReport implements ftpUtil.saveFile(logPathName, logFileName, in); } catch (FileNotFoundException e) { throw new RuntimeException(e); - } finally { - if (Objects.nonNull(logFile)) { - logFile.delete(); - } } } { From 78840a6470c0051495e2ed68bf74e12cbeb8d690 Mon Sep 17 00:00:00 2001 From: xiaoguangbin Date: Tue, 16 Jan 2024 16:01:02 +0800 Subject: [PATCH 4/6] =?UTF-8?q?fix:=20=E6=9B=B4=E6=96=B0Docker=E7=9A=84?= =?UTF-8?q?=E9=85=8D=E7=BD=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../armd-abnormal-alarm-start/Dockerfile | 15 ++ .../armd-auto-process-start/Dockerfile | 24 +++ .../armd-cloud-gateway/Dockerfile | 12 +- .../armd-cloud-nacos/Dockerfile | 24 ++- .../armd-log-manage-start/Dockerfile | 15 ++ .../armd-spectrum-analysis-start/Dockerfile | 26 +++ .../armd-station-operation-start/Dockerfile | 21 ++ .../armd-system-cloud-start/Dockerfile | 12 +- jeecg-server-cloud/docker-compose-base.yml | 76 ++++--- jeecg-server-cloud/docker-compose.yml | 186 +++++++++++++----- 10 files changed, 314 insertions(+), 97 deletions(-) create mode 100644 jeecg-server-cloud/armd-abnormal-alarm-start/Dockerfile create mode 100644 jeecg-server-cloud/armd-auto-process-start/Dockerfile create mode 100644 jeecg-server-cloud/armd-log-manage-start/Dockerfile create mode 100644 jeecg-server-cloud/armd-spectrum-analysis-start/Dockerfile create mode 100644 jeecg-server-cloud/armd-station-operation-start/Dockerfile diff --git a/jeecg-server-cloud/armd-abnormal-alarm-start/Dockerfile b/jeecg-server-cloud/armd-abnormal-alarm-start/Dockerfile new file mode 100644 index 00000000..b1e66ddb --- /dev/null +++ b/jeecg-server-cloud/armd-abnormal-alarm-start/Dockerfile @@ -0,0 +1,15 @@ +FROM armd-jdk64:latest + +MAINTAINER armd@163.com + +RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime + +RUN mkdir -p /armd-abnormal-alarm-cloud + +WORKDIR /armd-abnormal-alarm-cloud + +EXPOSE 7006 + +ADD armd-abnormal-alarm-start-3.5.1.jar ./ + +CMD sleep 1;java -Xms512m -Xmx1g -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar armd-abnormal-alarm-start-3.5.1.jar diff --git a/jeecg-server-cloud/armd-auto-process-start/Dockerfile b/jeecg-server-cloud/armd-auto-process-start/Dockerfile new file mode 100644 index 00000000..30e2b5a4 --- /dev/null +++ b/jeecg-server-cloud/armd-auto-process-start/Dockerfile @@ -0,0 +1,24 @@ +FROM armd-jdk64:latest + +MAINTAINER armd@163.com + +RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime + +COPY --from=armd-jdk64 /usr/local/jdk/lib/ /usr/local/jdk/lib/ + +RUN mkdir -p /armd-auto-process + +WORKDIR /armd-auto-process + +EXPOSE 7004 + +ADD armd-auto-process-start-3.5.1.jar ./ + +COPY setup.tar ./ +RUN ls ./ +RUN tar -C ./ -xvf ./setup.tar && \ + rm ./setup.tar + +ENV LD_LIBRARY_PATH /usr/local/jdk/lib + +CMD sleep 1;java -Xms512m -Xmx1g -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar armd-auto-process-start-3.5.1.jar diff --git a/jeecg-server-cloud/armd-cloud-gateway/Dockerfile b/jeecg-server-cloud/armd-cloud-gateway/Dockerfile index 84c9b490..4ff4437a 100644 --- a/jeecg-server-cloud/armd-cloud-gateway/Dockerfile +++ b/jeecg-server-cloud/armd-cloud-gateway/Dockerfile @@ -1,15 +1,15 @@ -FROM anapsix/alpine-java:8_server-jre_unlimited +FROM armd-jdk64:latest -MAINTAINER jeecgos@163.com +MAINTAINER armd@163.com RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime -RUN mkdir -p /jeecg-cloud-gateway +RUN mkdir -p /armd-cloud-gateway -WORKDIR /jeecg-cloud-gateway +WORKDIR /armd-cloud-gateway EXPOSE 9999 -ADD ./target/jeecg-cloud-gateway-3.5.1.jar ./ +ADD armd-cloud-gateway-3.5.1.jar ./ -CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar jeecg-cloud-gateway-3.5.1.jar \ No newline at end of file +CMD sleep 1;java-Xms512m -Xmx1g -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar armd-cloud-gateway-3.5.1.jar \ No newline at end of file diff --git a/jeecg-server-cloud/armd-cloud-nacos/Dockerfile b/jeecg-server-cloud/armd-cloud-nacos/Dockerfile index 881dd9ed..eaa54267 100644 --- a/jeecg-server-cloud/armd-cloud-nacos/Dockerfile +++ b/jeecg-server-cloud/armd-cloud-nacos/Dockerfile @@ -1,25 +1,23 @@ -#FROM anapsix/alpine-java:8_server-jre_unlimited -FROM openjdk:8 +FROM jdk64:latest -MAINTAINER jeecgos@163.com +MAINTAINER armd@163.com RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime -RUN mkdir -p /jeecg-cloud-nacos +RUN mkdir -p /armd-cloud-nacos -WORKDIR /jeecg-cloud-nacos +WORKDIR /armd-cloud-nacos EXPOSE 8848 - -ENV DB_URL="" -ENV DB_USER="" -ENV DB_PASSWORD="" -ENV DB_PLATFORM="" -ENV SERVER_PORT="" +ENV DB_URL="jdbc:postgresql://192.168.8.103:5432/nacos" +ENV DB_USER="postgres" +ENV DB_PASSWORD="123456" +ENV DB_PLATFORM="postgresql" +ENV SERVER_PORT="8848" EXPOSE $SERVER_PORT -ADD ./target/jeecg-cloud-nacos-3.5.1.jar ./ +ADD armd-cloud-nacos-3.5.1.jar ./ -CMD sleep 5;java -DSERVER_PORT=$SERVER_PORT -DDB_URL=$DB_URL -DDB_USER=$DB_USER -DDB_PASSWORD=$DB_PASSWORD -DDB_PLATFORM=$DB_PLATFORM -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar jeecg-cloud-nacos-3.5.1.jar \ No newline at end of file +CMD sleep 5;java -DSERVER_PORT=$SERVER_PORT -DDB_URL=$DB_URL -DDB_USER=$DB_USER -DDB_PASSWORD=$DB_PASSWORD -DDB_PLATFORM=$DB_PLATFORM -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar armd-cloud-nacos-3.5.1.jar \ No newline at end of file diff --git a/jeecg-server-cloud/armd-log-manage-start/Dockerfile b/jeecg-server-cloud/armd-log-manage-start/Dockerfile new file mode 100644 index 00000000..15c8ab5e --- /dev/null +++ b/jeecg-server-cloud/armd-log-manage-start/Dockerfile @@ -0,0 +1,15 @@ +FROM armd-jdk64:latest + +MAINTAINER armd@163.com + +RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime + +RUN mkdir -p /armd-log-manage + +WORKDIR /armd-log-manage + +EXPOSE 7005 + +ADD armd-log-manage-start-3.5.1.jar ./ + +CMD sleep 1;java -Xms512m -Xmx1g -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar armd-log-manage-start-3.5.1.jar diff --git a/jeecg-server-cloud/armd-spectrum-analysis-start/Dockerfile b/jeecg-server-cloud/armd-spectrum-analysis-start/Dockerfile new file mode 100644 index 00000000..f8038290 --- /dev/null +++ b/jeecg-server-cloud/armd-spectrum-analysis-start/Dockerfile @@ -0,0 +1,26 @@ +FROM armd-jdk:latest + +MAINTAINER armd@163.com + +RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime + +# 将共享库复制到容器中 +COPY --from=armd-jdk /usr/local/jdk/lib/ /usr/local/jdk/lib/ + +RUN mkdir -p /armd-spectrum-analysis + +WORKDIR /armd-spectrum-analysis + +EXPOSE 7007 + +ADD armd-spectrum-analysis-start-3.5.1.jar ./ +# 将所有配置文件复制到armd-spectrum-analysis同级目录并解压 +COPY setup.tar ./ +RUN ls ./ +RUN tar -C ./ -xvf ./setup.tar && \ + rm ./setup.tar + +# 设置LD_LIBRARY_PATH环境变量 +ENV LD_LIBRARY_PATH /usr/local/jdk/lib + +CMD sleep 1;java -Xms512m -Xmx1g -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar armd-spectrum-analysis-start-3.5.1.jar diff --git a/jeecg-server-cloud/armd-station-operation-start/Dockerfile b/jeecg-server-cloud/armd-station-operation-start/Dockerfile new file mode 100644 index 00000000..6e2acfed --- /dev/null +++ b/jeecg-server-cloud/armd-station-operation-start/Dockerfile @@ -0,0 +1,21 @@ +FROM armd-jdk64:latest + +MAINTAINER armd@163.com + +RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime + +RUN mkdir -p /armd-station-operation + +WORKDIR /armd-station-operation + +EXPOSE 7002 + +ADD armd-station-operation-start-3.5.1.jar ./ + +# 将所有配置文件复制到armd-spectrum-analysis同级目录并解压 +COPY setup.tar ./ +RUN ls ./ +RUN tar -C ./ -xvf ./setup.tar && \ + rm ./setup.tar + +CMD sleep 1;java -Xms512m -Xmx1g -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar armd-station-operation-start-3.5.1.jar diff --git a/jeecg-server-cloud/armd-system-cloud-start/Dockerfile b/jeecg-server-cloud/armd-system-cloud-start/Dockerfile index 21f83d9f..553b57ed 100644 --- a/jeecg-server-cloud/armd-system-cloud-start/Dockerfile +++ b/jeecg-server-cloud/armd-system-cloud-start/Dockerfile @@ -1,15 +1,15 @@ -FROM anapsix/alpine-java:8_server-jre_unlimited +FROM armd-jdk64:latest -MAINTAINER jeecgos@163.com +MAINTAINER armd@163.com RUN ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime -RUN mkdir -p /jeecg-system-cloud +RUN mkdir -p /armd-system-cloud -WORKDIR /jeecg-system-cloud +WORKDIR /armd-system-cloud EXPOSE 7001 -ADD ./target/jeecg-system-cloud-start-3.5.1.jar ./ +ADD armd-system-cloud-start-3.5.1.jar ./ -CMD sleep 1;java -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar jeecg-system-cloud-start-3.5.1.jar \ No newline at end of file +CMD sleep 1;java -Xms512m -Xmx1g -Dfile.encoding=utf-8 -Djava.security.egd=file:/dev/./urandom -jar armd-system-cloud-start-3.5.1.jar diff --git a/jeecg-server-cloud/docker-compose-base.yml b/jeecg-server-cloud/docker-compose-base.yml index 2c9efd11..8d7c8a80 100644 --- a/jeecg-server-cloud/docker-compose-base.yml +++ b/jeecg-server-cloud/docker-compose-base.yml @@ -1,31 +1,63 @@ version: '2' services: - jeecg-boot-mysql: + jdk64: build: - context: ../db - environment: - MYSQL_ROOT_PASSWORD: root - MYSQL_ROOT_HOST: '%' - TZ: Asia/Shanghai - restart: always - container_name: jeecg-boot-mysql - command: - --character-set-server=utf8mb4 - --collation-server=utf8mb4_general_ci - --explicit_defaults_for_timestamp=true - --lower_case_table_names=1 - --max_allowed_packet=128M - --default-authentication-plugin=caching_sha2_password - ports: - - 3306:3306 + context: ./jdk64 + container_name: jdk64 + profiles: + - jdk64 - jeecg-boot-redis: - image: redis:5.0 + armd-redis: + build: + context: ./redis ports: - 6379:6379 - restart: always - container_name: jeecg-boot-redis - hostname: jeecg-boot-redis + container_name: armd-redis + hostname: armd-redis + restart: on-failure + environment: + - TZ=Asia/Shanghai + extra_hosts: + - "armd-redis:172.18.0.2" + profiles: + - redis + + armd-vue: + build: + context: ./nginx + ports: + - 443:443 + restart: on-failure + environment: + - TZ=Asia/Shanghai + container_name: armd-vue + profiles: + - nginx + volumes: + - "/home/rmsops/nginx/vue-config:/usr/share/nginx/html/static" + - "/home/rmsops/nginx/map:/usr/share/nginx/map" + - "/home/rmsops/nginx/logs:/etc/nginx/logs/" + - "/home/rmsops/nginx/config:/etc/nginx/conf.d/" + +# jeecg-boot-mysql: +# build: +# context: ../db +# environment: +# MYSQL_ROOT_PASSWORD: root +# MYSQL_ROOT_HOST: '%' +# TZ: Asia/Shanghai +# restart: always +# container_name: jeecg-boot-mysql +# command: +# --character-set-server=utf8mb4 +# --collation-server=utf8mb4_general_ci +# --explicit_defaults_for_timestamp=true +# --lower_case_table_names=1 +# --max_allowed_packet=128M +# --default-authentication-plugin=caching_sha2_password +# ports: +# - 3306:3306 + # jeecg-boot-rabbitmq: # image: rabbitmq:3.7.7-management diff --git a/jeecg-server-cloud/docker-compose.yml b/jeecg-server-cloud/docker-compose.yml index 3e595947..11039753 100644 --- a/jeecg-server-cloud/docker-compose.yml +++ b/jeecg-server-cloud/docker-compose.yml @@ -1,72 +1,158 @@ version: '2' services: - jeecg-boot-nacos: + nacos: + container_name: armd-nacos + hostname: armd-nacos restart: always build: - context: ./jeecg-cloud-nacos + context: ./nacos ports: - 8848:8848 + profiles: + - nacos environment: - SERVER_PORT=8848 - DB_URL=jdbc:postgresql://182.92.183.230:5432/nacos - DB_USER=temp - DB_PASSWORD=123456 - DB_PLATFORM=postgresql - container_name: jeecg-boot-nacos - hostname: jeecg-boot-nacos - - jeecg-boot-system: - depends_on: - - jeecg-boot-nacos + extra_hosts: + - "armd-nacos:192.168.31.23" + + armd-gateway: + container_name: armd-gateway-start + hostname: armd-gateway + # depends_on: + # - armd-nacos + profiles: + - gateway build: - context: ./jeecg-system-cloud-start - container_name: jeecg-system-start - hostname: jeecg-boot-system + context: ./gateway + ports: + - 9999:9999 restart: on-failure environment: - TZ=Asia/Shanghai + extra_hosts: + - "armd-gateway:192.168.31.23" + volumes: + - "/home/rmsops/armd-logs:/armd-gateway/logs" -# jeecg-boot-demo: -# depends_on: -# - jeecg-boot-nacos -# build: -# context: ./jeecg-demo-cloud-start -# container_name: jeecg-demo-start -# hostname: jeecg-boot-demo -# restart: on-failure -# environment: -# - TZ=Asia/Shanghai + armd-system: + container_name: armd-system + hostname: armd-system + profiles: + - service + build: + context: ./system + ports: + - 7001:7001 + restart: on-failure + environment: + - TZ=Asia/Shanghai + extra_hosts: + - "armd-system:192.168.31.23" + volumes: + - "/home/rmsops/armd-logs:/armd-system-cloud/logs" - jeecg-boot-gateway: + armd-station-operation: + container_name: armd-station-operation + hostname: armd-station-operation + depends_on: + # - armd-nacos + - armd-system + profiles: + - service restart: on-failure build: - context: ./jeecg-cloud-gateway + context: ./station-operation ports: - - 9999:9999 - depends_on: - - jeecg-boot-nacos - - jeecg-boot-system - container_name: jeecg-boot-gateway - hostname: jeecg-boot-gateway + - 7002:7002 + extra_hosts: + - "armd-station-operation:192.168.31.23" + volumes: + - "/home/rmsops/armd-logs:/armd-station-operation/logs" + + armd-web-statistics: + container_name: armd-web-statistics + hostname: armd-web-statistics + depends_on: + - armd-system + profiles: + - service + restart: on-failure + build: + context: ./web-statistics + ports: + - 7003:7003 + extra_hosts: + - "armd-web-statistics:192.168.31.23" + volumes: + - "/home/rmsops/armd-logs:/armd-web-statistics/logs" + + armd-abnormal-alarm: + container_name: armd-abnormal-alarm + hostname: armd-abnormal-alarm + depends_on: + - armd-system + profiles: + - service + restart: on-failure + build: + context: ./abnormal-alarm + ports: + - 7005:7005 + extra_hosts: + - "armd-abnormal-alarm:192.168.31.23" + volumes: + - "/home/rmsops/armd-logs:/armd-abnormal-alarm/logs" + + armd-log-manage: + container_name: armd-log-manage + hostname: armd-log-manage + depends_on: + - armd-system + profiles: + - service + restart: on-failure + build: + context: ./log-manage + ports: + - 7006:7006 + extra_hosts: + - "armd-log-manage:192.168.31.23" + volumes: + - "/home/rmsops/armd-logs:/armd-log-manage/logs" + + armd-spectrum-analysis: + restart: on-failure + build: + context: ./spectrum-analysis + ports: + - 7007:7007 + profiles: + - service + depends_on: + - armd-system + container_name: armd-spectrum-analysis + hostname: armd-spectrum-analysis + extra_hosts: + - "armd-spectrum-analysis:127.0.0.1" + + auto-process: + restart: on-failure + build: + context: ./auto-process + ports: + - 7004:7004 + profiles: + - auto-process + container_name: auto-process + hostname: armd-auto-process + extra_hosts: + - "armd-auto-process:127.0.0.1" + volumes: + - "/home/rmsops/ftp:/armd-auto-process/ftp" + - "/home/rmsops/armd-logs:/armd-auto-process/logs" + -# jeecg-boot-sentinel: -# restart: on-failure -# build: -# context: ./jeecg-visual/jeecg-cloud-sentinel -# ports: -# - 9000:9000 -# depends_on: -# - jeecg-boot-nacos -# - jeecg-boot-demo -# - jeecg-boot-system -# - jeecg-boot-gateway -# container_name: jeecg-boot-sentinel -# hostname: jeecg-boot-sentinel -# -# jeecg-boot-xxljob: -# build: -# context: ./jeecg-visual/jeecg-cloud-xxljob -# ports: -# - 9080:9080 -# container_name: jeecg-boot-xxljob -# hostname: jeecg-boot-xxljob From 57c4c1ed9f4206ece6dc68f7c6eaa9cf9ca83aae Mon Sep 17 00:00:00 2001 From: qiaoqinzheng Date: Tue, 16 Jan 2024 19:08:04 +0800 Subject: [PATCH 5/6] =?UTF-8?q?MDC=E5=88=86=E6=9E=90=E7=BB=93=E6=9E=9C?= =?UTF-8?q?=E5=AD=98=E5=82=A8=E6=94=B9=E4=B8=BA=E5=AD=97=E7=AC=A6=E4=B8=B2?= =?UTF-8?q?=E6=A0=BC=E5=BC=8F=E4=B8=8E=E6=95=B0=E6=8D=AE=E5=BA=93=E6=A0=BC?= =?UTF-8?q?=E5=BC=8F=E5=8C=B9=E9=85=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/org/jeecg/modules/base/entity/rnauto/GardsMDC.java | 4 ++-- .../java/org/jeecg/modules/base/entity/rnman/GardsMDC.java | 4 ++-- .../java/org/jeecg/modules/spectrum/Sample_G_Analysis.java | 2 +- .../modules/service/impl/GardsMDCSpectrumServiceImpl.java | 2 +- 4 files changed, 6 insertions(+), 6 deletions(-) diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/modules/base/entity/rnauto/GardsMDC.java b/jeecg-boot-base-core/src/main/java/org/jeecg/modules/base/entity/rnauto/GardsMDC.java index 2dac8a62..640ee416 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/modules/base/entity/rnauto/GardsMDC.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/modules/base/entity/rnauto/GardsMDC.java @@ -32,10 +32,10 @@ public class GardsMDC implements Serializable { private Double efficiency; @TableField(value = "MDC") - private Double mdc; + private String mdc; @TableField(value = "MDC_ERR") - private Double mdcErr; + private String mdcErr; @TableField(value = "MODDATE") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") diff --git a/jeecg-boot-base-core/src/main/java/org/jeecg/modules/base/entity/rnman/GardsMDC.java b/jeecg-boot-base-core/src/main/java/org/jeecg/modules/base/entity/rnman/GardsMDC.java index 72052994..59f77159 100644 --- a/jeecg-boot-base-core/src/main/java/org/jeecg/modules/base/entity/rnman/GardsMDC.java +++ b/jeecg-boot-base-core/src/main/java/org/jeecg/modules/base/entity/rnman/GardsMDC.java @@ -32,10 +32,10 @@ public class GardsMDC implements Serializable { private Double efficiency; @TableField(value = "MDC") - private Double mdc; + private String mdc; @TableField(value = "MDC_ERR") - private Double mdcErr; + private String mdcErr; @TableField(value = "MODDATE") @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8") diff --git a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/Sample_G_Analysis.java b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/Sample_G_Analysis.java index f5fc6e9e..bd548e41 100644 --- a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/Sample_G_Analysis.java +++ b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/Sample_G_Analysis.java @@ -895,7 +895,7 @@ public class Sample_G_Analysis { mdc.setYield(mdcInfo.getYield()); mdc.setEfficiency(mdcInfo.getEfficiency()); if (Objects.nonNull(mdcInfo.getMdc()) && Double.isFinite(mdcInfo.getMdc())) { - mdc.setMdc(mdcInfo.getMdc()); + mdc.setMdc(String.valueOf(mdcInfo.getMdc())); } else { mdc.setMdc(null); } diff --git a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GardsMDCSpectrumServiceImpl.java b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GardsMDCSpectrumServiceImpl.java index 298ea55f..11f69a0e 100644 --- a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GardsMDCSpectrumServiceImpl.java +++ b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GardsMDCSpectrumServiceImpl.java @@ -32,7 +32,7 @@ public class GardsMDCSpectrumServiceImpl extends ServiceImpl Date: Tue, 16 Jan 2024 19:28:36 +0800 Subject: [PATCH 6/6] =?UTF-8?q?=E6=9F=A5=E8=AF=A2MDC=E7=BB=93=E6=9E=9C?= =?UTF-8?q?=E6=97=B6=EF=BC=8C=E6=95=B0=E6=8D=AE=E5=BA=93=E5=8A=A0=E8=BD=BD?= =?UTF-8?q?=E7=9A=84mdc=E6=95=B0=E6=8D=AE=E7=BC=BA=E5=A4=B1halflife?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E4=BF=AE=E6=94=B9=EF=BC=8C=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=BA=93=E5=8A=A0=E8=BD=BD=E5=8E=86=E5=8F=B2=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E6=B2=A1=E6=9C=89=E5=AF=B9=E5=BA=94mdc=E5=80=BC=E9=97=AE?= =?UTF-8?q?=E9=A2=98=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/GammaServiceImpl.java | 38 +++++++++++++++++-- 1 file changed, 34 insertions(+), 4 deletions(-) diff --git a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GammaServiceImpl.java b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GammaServiceImpl.java index 8bc2f59d..e2b6c028 100644 --- a/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GammaServiceImpl.java +++ b/jeecg-module-spectrum-analysis/src/main/java/org/jeecg/modules/service/impl/GammaServiceImpl.java @@ -214,8 +214,23 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi } //读取redis缓存的计算mdc信息 Map mdcInfoMap = (Map) redisUtil.get("mdcInfoMap-"+phd.getHeader().getSystem_type()); - if (CollectionUtils.isNotEmpty(mdcInfoMap)) { - phd.setMdcInfoMap(mdcInfoMap); + //如果是数据库加载 判断如果mdc计算结果是空的 就加入新的 否则使用数据库加载的mdc数据 + if (CollectionUtils.isEmpty(phd.getMdcInfoMap())) { + if (CollectionUtils.isNotEmpty(mdcInfoMap)) { + phd.setMdcInfoMap(mdcInfoMap); + } + } else { + if (CollectionUtils.isNotEmpty(mdcInfoMap)) { + Map infoMap = phd.getMdcInfoMap(); + for (Map.Entry entry:infoMap.entrySet()) { + String nuclName = entry.getKey(); + CalMDCInfo info = mdcInfoMap.get(nuclName); + if (Objects.nonNull(info)) { + CalMDCInfo mdcInfo = entry.getValue(); + mdcInfo.setHalflife(info.getHalflife()); + } + } + } } gammaFileUtil.Qcstate(phd); key = fileName + StringPool.DASH + userName; @@ -538,8 +553,23 @@ public class GammaServiceImpl extends AbstractLogOrReport implements IGammaServi } //读取redis缓存的计算mdc信息 Map mdcInfoMap = (Map) redisUtil.get("mdcInfoMap-"+phd.getHeader().getSystem_type()); - if (CollectionUtils.isNotEmpty(mdcInfoMap)) { - phd.setMdcInfoMap(mdcInfoMap); + //如果是数据库加载 判断如果mdc计算结果是空的 就加入新的 否则使用数据库加载的mdc数据 + if (CollectionUtils.isEmpty(phd.getMdcInfoMap())) { + if (CollectionUtils.isNotEmpty(mdcInfoMap)) { + phd.setMdcInfoMap(mdcInfoMap); + } + } else { + if (CollectionUtils.isNotEmpty(mdcInfoMap)) { + Map infoMap = phd.getMdcInfoMap(); + for (Map.Entry entry:infoMap.entrySet()) { + String nuclName = entry.getKey(); + CalMDCInfo info = mdcInfoMap.get(nuclName); + if (Objects.nonNull(info)) { + CalMDCInfo mdcInfo = entry.getValue(); + mdcInfo.setHalflife(info.getHalflife()); + } + } + } } } // 获取当前角色配置的颜色信息