修改beta模块saveToDB接口问题

修改gamma模块saveToDB接口问题
修改beta模块saveToTXT,saveToExcel,saveToHtml问题
This commit is contained in:
qiaoqinzheng 2023-09-21 17:20:10 +08:00
parent f7e8a4ed02
commit 7feca0fdef
31 changed files with 321 additions and 362 deletions

View File

@ -117,12 +117,12 @@
<td width="453" height="40">New Gamma</td>
</tr>
<tr>
<td width="463" height="40"> CH(x) = (?1)+(?2)*x+(?3)x*x</td>
<td width="453" height="40"> CH(x) = (?1)+(?2)*x+(?3)x*x</td>
<td width="463" height="40"> CH(x) = ([[${betaCalibrationSEC.coeff1}]])+([[${betaCalibrationSEC.coeff2}]])*x+([[${betaCalibrationSEC.coeff3}]])x*x</td>
<td width="453" height="40"> CH(x) = ([[${gammaCalibrationSEC.coeff1}]])+([[${gammaCalibrationSEC.coeff2}]])*x+([[${gammaCalibrationSEC.coeff3}]])x*x</td>
</tr>
<tr>
<td width="463" height="40"> E(x) = (-3.33443)+(0.398048)*x+(-0.000124)x*x</td>
<td width="453" height="40"> E(x) = (0.879727)+(0.365551)*x+(-2.8e-05)x*x</td>
<td width="463" height="40"> E(x) = ([[${betaCalibrationSCE.coeff1}]])+([[${betaCalibrationSCE.coeff2}]])*x+([[${betaCalibrationSCE.coeff3}]])x*x</td>
<td width="453" height="40"> E(x) = ([[${gammaCalibrationSCE.coeff1}]])+([[${gammaCalibrationSCE.coeff2}]])*x+([[${gammaCalibrationSCE.coeff3}]])x*x</td>
</tr>
<tr>
<td colspan="5" height="40">&nbsp</td>
@ -169,12 +169,12 @@
<td width="453" height="40">New Gamma</td>
</tr>
<tr>
<td width="463" height="40"> CH(x) = (?1)+(?2)*x+(?3)x*x</td>
<td width="453" height="40"> CH(x) = (?1)+(?2)*x+(?3)x*x</td>
<td width="463" height="40"> CH(x) = ([[${betaCalibrationDEC.coeff1}]])+([[${betaCalibrationDEC.coeff2}]])*x+([[${betaCalibrationDEC.coeff3}]])x*x</td>
<td width="453" height="40"> CH(x) = ([[${gammaCalibrationDEC.coeff1}]])+([[${gammaCalibrationDEC.coeff2}]])*x+([[${gammaCalibrationDEC.coeff3}]])x*x</td>
</tr>
<tr>
<td width="463" height="40"> E(x) = (0.879727)+(0.365551)*x+(-2.8e-05)x*x</td>
<td width="453" height="40"> E(x) = (0.879727)+(0.365551)*x+(-2.8e-05)x*x</td>
<td width="463" height="40"> E(x) = ([[${betaCalibrationDCE.coeff1}]])+([[${betaCalibrationDCE.coeff2}]])*x+([[${betaCalibrationDCE.coeff3}]])x*x</td>
<td width="453" height="40"> E(x) = ([[${gammaCalibrationDCE.coeff1}]])+([[${gammaCalibrationDCE.coeff2}]])*x+([[${gammaCalibrationDCE.coeff3}]])x*x</td>
</tr>
<tr>
<td colspan="5" height="40">&nbsp</td>
@ -222,12 +222,12 @@
<td width="453" height="40">New Gamma</td>
</tr>
<tr>
<td width="463" height="40"> CH(x) = (?1)+(?2)*x+(?3)x*x</td>
<td width="453" height="40"> CH(x) = (?1)+(?2)*x+(?3)x*x</td>
<td width="463" height="40"> CH(x) = ([[${betaCalibrationGEC.coeff1}]])+([[${betaCalibrationGEC.coeff2}]])*x+([[${betaCalibrationGEC.coeff3}]])x*x</td>
<td width="453" height="40"> CH(x) = ([[${gammaCalibrationGEC.coeff1}]])+([[${gammaCalibrationGEC.coeff2}]])*x+([[${gammaCalibrationGEC.coeff3}]])x*x</td>
</tr>
<tr>
<td width="463" height="40"> E(x) = (-3.33443)+(0.398048)*x+(-0.000124)x*x</td>
<td width="453" height="40"> E(x) = (0.879727)+(0.365551)*x+(-2.8e-05)x*x</td>
<td width="463" height="40"> E(x) = ([[${betaCalibrationGCE.coeff1}]])+([[${betaCalibrationGCE.coeff2}]])*x+([[${betaCalibrationGCE.coeff3}]])x*x</td>
<td width="453" height="40"> E(x) = ([[${gammaCalibrationGCE.coeff1}]])+([[${gammaCalibrationGCE.coeff2}]])*x+([[${gammaCalibrationGCE.coeff3}]])x*x</td>
</tr>
<tr>
<td colspan="5" height="40">&nbsp</td>

View File

@ -33,8 +33,7 @@
#SAMPLE New CALIBRATION
New Beta New Gamma
CH(x) = (?1)+(?2)*x+(?3)x*x CH(x) = (?1)+(?2)*x+(?3)x*x
E(x) = (-3.33443)+(0.398048)*x+(-0.000124)x*x E(x) = (0.879727)+(0.365551)*x+(-2.8e-05)x*x
${sampleNewCalibration}
#SAMPLE: LIMITS PER ROI
Roi Beta Gamma
@ -47,8 +46,7 @@ ${sampleRoi}
#DET New CALIBRATION
New Beta New Gamma
CH(x) = (?1)+(?2)*x+(?3)x*x CH(x) = (?1)+(?2)*x+(?3)x*x
E(x) = (0.879727)+(0.365551)*x+(-2.8e-05)x*x E(x) = (0.879727)+(0.365551)*x+(-2.8e-05)x*x
${detNewCalibration}
#DET: LIMITS PER ROI
Roi Beta Gamma
@ -61,8 +59,7 @@ ${detRoi}
#GAS New CALIBRATION
New Beta New Gamma
CH(x) = (?1)+(?2)*x+(?3)x*x CH(x) = (?1)+(?2)*x+(?3)x*x
E(x) = (-3.33443)+(0.398048)*x+(-0.000124)x*x E(x) = (0.879727)+(0.365551)*x+(-2.8e-05)x*x
${gasNewCalibration}
#GAS: LIMITS PER ROI
Roi Beta Gamma

View File

@ -2710,10 +2710,11 @@ public class GammaFileUtil {
}
public List<String> DoubleLimit(List data){
List<String> rData = new LinkedList<>();
for(int pos=0;pos<data.size();pos++) {
data.set(pos, String.format("%.3f", Double.valueOf(String.valueOf(data.get(pos)))));
rData.add(String.format("%.3f", Double.valueOf(String.valueOf(data.get(pos)))));
}
return data;
return rData;
}
List<String> DoubleLimit_G(List<Double> _data) {

View File

@ -76,15 +76,8 @@ public class GammaFileUtil {
ftpClient.setControlEncoding("UTF-8");
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
ftpClient.changeWorkingDirectory(pathName);
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
ftpFiles = ftpFiles.stream().filter(item -> item.getName().equals(fileName)).collect(Collectors.toList());
if (ftpFiles.size() == 0) {
result.error500("ftp获取文件数据失败");
return false;
}
FTPFile ftpFile = ftpFiles.get(0);
if (Objects.nonNull(ftpFile)) {
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
inputStream = ftpClient.retrieveFileStream(fileName);
if (Objects.nonNull(inputStream)) {
//声明一个临时文件
File file = File.createTempFile("tmp", null);
//将ftp文件的输入流复制给临时文件
@ -281,6 +274,7 @@ public class GammaFileUtil {
if (Objects.isNull(ftpClient)){
String warning = "ftp连接失败";
}
InputStream inputStream = null;
try {
//切换被动模式
ftpClient.enterLocalPassiveMode();
@ -289,13 +283,9 @@ public class GammaFileUtil {
ftpClient.setControlEncoding("UTF-8");
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
ftpClient.changeWorkingDirectory(pathName);
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
String lcFileName = "RNAUTO_"+subFileName + ".lc";
List<FTPFile> lcFiles = ftpFiles.stream().filter(item -> item.getName().equals(lcFileName)).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(lcFiles)){
FTPFile lcFile = lcFiles.get(0);
if (Objects.nonNull(lcFile)){
InputStream inputStream = ftpClient.retrieveFileStream(lcFile.getName());
inputStream = ftpClient.retrieveFileStream(lcFileName);
if (Objects.nonNull(inputStream)){
//声明一个临时文件
File file = File.createTempFile("tmp", null);
//将ftp文件的输入流复制给临时文件
@ -304,12 +294,16 @@ public class GammaFileUtil {
List<Double> vData = ReadLcScacInfo(readLines);
phd.setVLc(vData);
}
}
} 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);
}
@ -321,6 +315,7 @@ public class GammaFileUtil {
if (Objects.isNull(ftpClient)){
String warning = "ftp连接失败";
}
InputStream inputStream = null;
try {
//切换被动模式
ftpClient.enterLocalPassiveMode();
@ -329,13 +324,9 @@ public class GammaFileUtil {
ftpClient.setControlEncoding("UTF-8");
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
ftpClient.changeWorkingDirectory(pathName);
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
String scacFileName = "RNAUTO_"+subFileName + ".scac";
List<FTPFile> scacFiles = ftpFiles.stream().filter(item -> item.getName().equals(scacFileName)).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(scacFiles)){
FTPFile scacFile = scacFiles.get(0);
if (Objects.nonNull(scacFile)){
InputStream inputStream = ftpClient.retrieveFileStream(scacFile.getName());
inputStream = ftpClient.retrieveFileStream(scacFileName);
if (Objects.nonNull(inputStream)){
//声明一个临时文件
File file = File.createTempFile("tmp", null);
//将ftp文件的输入流复制给临时文件
@ -344,12 +335,16 @@ public class GammaFileUtil {
List<Double> vData = ReadLcScacInfo(readLines);
phd.setVScac(vData);
}
}
} 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);
}
@ -361,6 +356,7 @@ public class GammaFileUtil {
if (Objects.isNull(ftpClient)){
String warning = "ftp连接失败";
}
InputStream inputStream = null;
try {
//切换被动模式
ftpClient.enterLocalPassiveMode();
@ -369,13 +365,9 @@ public class GammaFileUtil {
ftpClient.setControlEncoding("UTF-8");
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
ftpClient.changeWorkingDirectory(pathName);
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
String baselineFileName = "RNAUTO_"+subFileName + ".baseline";
List<FTPFile> baselineFiles = ftpFiles.stream().filter(item -> item.getName().equals(baselineFileName)).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(baselineFiles)){
FTPFile baselineFile = baselineFiles.get(0);
if (Objects.nonNull(baselineFile)){
InputStream inputStream = ftpClient.retrieveFileStream(baselineFile.getName());
inputStream = ftpClient.retrieveFileStream(baselineFileName);
if (Objects.nonNull(inputStream)){
//声明一个临时文件
File file = File.createTempFile("tmp", null);
//将ftp文件的输入流复制给临时文件
@ -384,12 +376,16 @@ public class GammaFileUtil {
ReadBaseCtrlInfo(phd,readLines);
phd.setVBase(phd.getBaseCtrls().getBaseline());
}
}
} 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);
}
@ -486,7 +482,7 @@ public class GammaFileUtil {
}
}
public boolean getResultFromDB(String dbName, Integer sampleId, PHDFile phd, Result result){
public boolean getResultFromDB(String dbName, String userName, Integer sampleId, PHDFile phd, Result result) {
//判断连接的数据库
String T_analy, T_calib, T_peaks, T_param, T_nuc_line, T_nuc_act, T_qc, T_setting;
if (dbName.equals("auto")){
@ -497,6 +493,7 @@ public class GammaFileUtil {
T_nuc_line = "RNAUTO.GARDS_NUCL_LINES_IDED";
T_nuc_act = "RNAUTO.GARDS_NUCL_IDED";
T_qc = "RNAUTO.GARDS_QC_CHECK";
userName = "RNAUTO";
}else {
T_analy = "RNMAN.GARDS_ANALYSES";
T_calib = "RNMAN.GARDS_CALIBRATION_PAIRS";
@ -519,7 +516,7 @@ public class GammaFileUtil {
}
// 获取 ananlysis_idBaseLineLcScac峰数量Category谱注释等信息
GardsAnalysesSpectrum analysis = spectrumAnalysisMapper.getAnalysis(T_analy, sampleId);
GardsAnalysesSpectrum analysis = spectrumAnalysisMapper.getAnalysis(T_analy, sampleId, userName);
int peakNum = 0;
if (Objects.nonNull(analysis)){
phd.setId_analysis(analysis.getIdAnalysis().toString());
@ -2715,10 +2712,11 @@ public class GammaFileUtil {
}
public List<String> DoubleLimit(List data) {
List<String> rData = new LinkedList<>();
for(int pos=0;pos<data.size();pos++) {
data.set(pos, String.format("%.3f", Double.valueOf(String.valueOf(data.get(pos)))));
rData.add(String.format("%.3f", Double.valueOf(String.valueOf(data.get(pos)))));
}
return data;
return rData;
}
public List<String> DoubleLimit_I(List<Double> _data) {
@ -2887,13 +2885,13 @@ public class GammaFileUtil {
for(int pos=0;pos<fileAnlyse.getUsedEnerKD().getG_energy().size();pos++) {
temp.add(String.valueOf(pos));
}
middleData.calibration_pairs_E_idCalPoint = DoubleLimit(temp);
middleData.calibration_pairs_E_idCalPoint = temp;
middleData.calibration_pairs_E_xValue = DoubleLimit(fileAnlyse.getUsedEnerKD().getCentroid_channel());
middleData.calibration_pairs_E_yValue = DoubleLimit(fileAnlyse.getUsedEnerKD().getG_energy());
middleData.calibration_pairs_E_uncYValue =DoubleLimit(fileAnlyse.getUsedEnerKD().getUncertainty());
if(Objects.nonNull(fileAnlyse.getMapEnerKD().get(CalName.CalPHD.getType()))) {
middleData.calibration_pairs_S_E_idCalPoint =DoubleLimit(temp);
middleData.calibration_pairs_S_E_idCalPoint =temp;
middleData.calibration_pairs_S_E_xValue =DoubleLimit(fileAnlyse.getMapEnerKD().get(CalName.CalPHD.getType()).getCentroid_channel());
middleData.calibration_pairs_S_E_yValue =DoubleLimit(fileAnlyse.getMapEnerKD().get(CalName.CalPHD.getType()).getG_energy());
middleData.calibration_pairs_S_E_uncYValue =DoubleLimit(fileAnlyse.getMapEnerKD().get(CalName.CalPHD.getType()).getUncertainty());
@ -2912,13 +2910,13 @@ public class GammaFileUtil {
{
temp.add(String.valueOf(pos));
}
middleData.calibration_pairs_EF_idCalPoint =DoubleLimit(temp);
middleData.calibration_pairs_EF_idCalPoint =temp;
middleData.calibration_pairs_EF_xValue =DoubleLimit(fileAnlyse.getUsedEffiKD().getG_energy());
middleData.calibration_pairs_EF_yValue =DoubleLimit(fileAnlyse.getUsedEffiKD().getEfficiency());
middleData.calibration_pairs_EF_uncYValue=DoubleLimit(fileAnlyse.getUsedEffiKD().getUncertainty());
if(Objects.nonNull(fileAnlyse.getMapEffiKD().get(CalName.CalPHD.getType()))) {
middleData.calibration_pairs_S_EF_idCalPoint =DoubleLimit(temp);
middleData.calibration_pairs_S_EF_idCalPoint =temp;
middleData.calibration_pairs_S_EF_xValue =DoubleLimit(fileAnlyse.getMapEffiKD().get(CalName.CalPHD.getType()).getG_energy());
middleData.calibration_pairs_S_EF_yValue =DoubleLimit(fileAnlyse.getMapEffiKD().get(CalName.CalPHD.getType()).getEfficiency());
middleData.calibration_pairs_S_EF_uncYValue=DoubleLimit(fileAnlyse.getMapEffiKD().get(CalName.CalPHD.getType()).getUncertainty());
@ -2936,13 +2934,13 @@ public class GammaFileUtil {
for(int pos=0;pos<fileAnlyse.getUsedResoKD().getFWHM().size();pos++) {
temp.add(String.valueOf(pos));
}
middleData.calibration_pairs_R_idCalPoint =DoubleLimit(temp);
middleData.calibration_pairs_R_idCalPoint =temp;
middleData.calibration_pairs_R_xValue =DoubleLimit(fileAnlyse.getUsedResoKD().getG_energy());
middleData.calibration_pairs_R_yValue =DoubleLimit(fileAnlyse.getUsedResoKD().getFWHM());
middleData.calibration_pairs_R_uncYValue =DoubleLimit(fileAnlyse.getUsedResoKD().getUncertainty());
if(Objects.nonNull(fileAnlyse.getMapResoKD().get(CalName.CalPHD.getType()))) {
middleData.calibration_pairs_S_R_idCalPoint =DoubleLimit(temp);
middleData.calibration_pairs_S_R_idCalPoint =temp;
middleData.calibration_pairs_S_R_xValue =DoubleLimit(fileAnlyse.getMapResoKD().get(CalName.CalPHD.getType()).getG_energy());
middleData.calibration_pairs_S_R_yValue =DoubleLimit(fileAnlyse.getMapResoKD().get(CalName.CalPHD.getType()).getFWHM());
middleData.calibration_pairs_S_R_uncYValue =DoubleLimit(fileAnlyse.getMapResoKD().get(CalName.CalPHD.getType()).getUncertainty());
@ -2960,12 +2958,12 @@ public class GammaFileUtil {
temp.add(String.valueOf(pos));
}
middleData.calibration_pairs_T_idCalPoint =DoubleLimit(temp);
middleData.calibration_pairs_T_idCalPoint =temp;
middleData.calibration_pairs_T_xValue =DoubleLimit(fileAnlyse.getUsedTotEKD().getG_energy());
middleData.calibration_pairs_T_yValue =DoubleLimit(fileAnlyse.getUsedTotEKD().getTotal_efficiency());
middleData.calibration_pairs_T_uncYValue =DoubleLimit(fileAnlyse.getUsedTotEKD().getUncertainty());
if(Objects.nonNull(fileAnlyse.getMapTotEKD().get(CalName.CalPHD.getType()))) {
middleData.calibration_pairs_S_T_idCalPoint =DoubleLimit(temp);
middleData.calibration_pairs_S_T_idCalPoint =temp;
middleData.calibration_pairs_S_T_xValue =DoubleLimit(fileAnlyse.getMapTotEKD().get(CalName.CalPHD.getType()).getG_energy());
middleData.calibration_pairs_S_T_yValue =DoubleLimit(fileAnlyse.getMapTotEKD().get(CalName.CalPHD.getType()).getTotal_efficiency());
middleData.calibration_pairs_S_T_uncYValue =DoubleLimit(fileAnlyse.getMapTotEKD().get(CalName.CalPHD.getType()).getUncertainty());
@ -3111,7 +3109,7 @@ public class GammaFileUtil {
//gards_ peaks数据表
if(fileAnlyse.getVPeak().size() != 0) {
List<Double> dvctIDPEAK = new LinkedList<>();
List<String> dvctIDPEAK = new LinkedList<>();
List<Double> dvctCENTROIDCHANNEL = new LinkedList<>();
List<Double> dvctUNCCENTROIDCHANNEL = new LinkedList<>();
List<Double> dvctENERGY = new LinkedList<>();
@ -3144,7 +3142,7 @@ public class GammaFileUtil {
List<String> dvctNuclide_name = new LinkedList<>();
List<String> dvctComments = new LinkedList<>();
for(int m=0; m<fileAnlyse.getVPeak().size(); m++) {
dvctIDPEAK.add(Double.valueOf(m+1));
dvctIDPEAK.add(String.valueOf(m+1));
dvctCENTROIDCHANNEL.add(fileAnlyse.getVPeak().get(m).peakCentroid);
dvctENERGY.add(fileAnlyse.getVPeak().get(m).energy);
dvctAREA.add(fileAnlyse.getVPeak().get(m).area);
@ -3178,7 +3176,7 @@ public class GammaFileUtil {
dvctComments.add(t_comment);
dvctNuclide_name.add(StringUtils.join(fileAnlyse.getVPeak().get(m).nuclides, ";"));
}
middleData.peaks_idPeak =DoubleLimit_I(dvctIDPEAK);
middleData.peaks_idPeak =dvctIDPEAK;
middleData.peaks_peakCentroid =DoubleLimit_G(dvctCENTROIDCHANNEL);
middleData.peaks_uncpeakCentroid =DoubleLimit_G(dvctUNCCENTROIDCHANNEL);
middleData.peaks_Energy =DoubleLimit_G(dvctENERGY);
@ -3213,7 +3211,7 @@ public class GammaFileUtil {
GStoreMiddleProcessDataNuclLinesIded nucl_lines_ided_data = new GStoreMiddleProcessDataNuclLinesIded();
for(Map.Entry<String, NuclideActMda> itor:fileAnlyse.getMapNucActMda().entrySet()) {
List<String> svctNUCLIDEFULLNAME = new LinkedList<>();
List<Double> dvctIDPEAK = new LinkedList<>();
List<String> dvctIDPEAK = new LinkedList<>();
List<Double> dvctENERGY = new LinkedList<>();
List<Double> dvctUNCENERGY = new LinkedList<>();
List<Double> dvctABUNDANCE = new LinkedList<>();
@ -3242,7 +3240,7 @@ public class GammaFileUtil {
first = first<second?first:second;
for(int m=0;m<first;m++) {
svctNUCLIDEFULLNAME.add( itor.getValue().getFullNames().get(m).replace("\'", "\'\'") );
dvctIDPEAK.add(itor.getValue().getVPeakIdx().get(m).doubleValue());
dvctIDPEAK.add(itor.getValue().getVPeakIdx().get(m).toString());
dvctENERGY.add(itor.getValue().getVEnergy().get(m));
dvctUNCENERGY.add(itor.getValue().getVUncertE().get(m));
dvctABUNDANCE.add(itor.getValue().getVYield().get(m));
@ -3265,7 +3263,7 @@ public class GammaFileUtil {
dvctCONCENTRATION.add(String.format("%e", itor.getValue().getConcentration()));
}
nucl_lines_ided_data.nuclideFullname = svctNUCLIDEFULLNAME;
nucl_lines_ided_data.idPeak =DoubleLimit_I(dvctIDPEAK);
nucl_lines_ided_data.idPeak =dvctIDPEAK;
nucl_lines_ided_data.Energy =DoubleLimit_G(dvctENERGY);
nucl_lines_ided_data.uncEnergy =DoubleLimit_G(dvctUNCENERGY);
nucl_lines_ided_data.Abundance =DoubleLimit_G(dvctABUNDANCE);
@ -4052,15 +4050,8 @@ public class GammaFileUtil {
ftpClient.setControlEncoding("UTF-8");
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
ftpClient.changeWorkingDirectory(compareFilePath);
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
ftpFiles = ftpFiles.stream().filter(item -> item.getName().equals(compareFileName)).collect(Collectors.toList());
if (ftpFiles.size() == 0) {
result.error500("ftp获取文件数据失败");
return m_vecCompare;
}
FTPFile ftpFile = ftpFiles.get(0);
if (Objects.nonNull(ftpFile)) {
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
inputStream = ftpClient.retrieveFileStream(compareFileName);
if (Objects.nonNull(inputStream)) {
//声明一个临时文件
File file = File.createTempFile("tmp", null);
//将ftp文件的输入流复制给临时文件

View File

@ -278,6 +278,8 @@ public class PHDFileUtil {
}
public List<String> readLine(String filePath){
String parameterFilePath = filePath.substring(0, filePath.lastIndexOf(StringPool.SLASH));
String fileName = filePath.substring(filePath.lastIndexOf(StringPool.SLASH) + 1);
//连接ftp
FTPClient ftpClient = ftpUtil.LoginFTP();
//判断ftp是否连接成功
@ -286,23 +288,18 @@ public class PHDFileUtil {
}
InputStream iStream= null;
try {
//被动模式
ftpClient.enterLocalPassiveMode();
String fileName = filePath.substring(filePath.lastIndexOf(StringPool.SLASH) + 1);
String parameterFilePath = filePath.substring(0, filePath.lastIndexOf(StringPool.SLASH));
//判断文件路径是否为空
if (StringUtils.isNotBlank(parameterFilePath)){
//设置文件类型--二进制文件
ftpClient.setFileType(FTP.BINARY_FILE_TYPE);
//
ftpClient.setControlEncoding("UTF-8");
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
//在当前工作路径下读取文件
ftpClient.changeWorkingDirectory(parameterFilePath);
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
// 设置编码当文件中存在中文且上传后文件乱码时可使用此配置项
ftpClient.setControlEncoding(ftpUtil.getEncoding());
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
if (CollectionUtils.isNotEmpty(ftpFiles)){
for (FTPFile ftpFile:ftpFiles) {
if (ftpFile.getName().equals(fileName)){
//读取ftp文件的输入流
iStream=ftpClient.retrieveFileStream(ftpFile.getName());
iStream=ftpClient.retrieveFileStream(fileName);
if (Objects.nonNull(iStream)) {
//声明一个临时文件
File file = File.createTempFile("tmp", null);
//将ftp文件的输入流复制给临时文件
@ -310,9 +307,6 @@ public class PHDFileUtil {
List<String> allLines = FileUtils.readLines(file, ftpUtil.getEncoding());
return allLines;
}
}
}
}
} catch (IOException e) {
throw new RuntimeException(e);
} finally {
@ -488,15 +482,9 @@ public class PHDFileUtil {
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
//切换工作路径
ftpClient.changeWorkingDirectory(filePath);
//获取路径下所有的ftp文件信息
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
if (CollectionUtils.isNotEmpty(ftpFiles)) {
//获取sampleFileName
ftpFiles = ftpFiles.stream().filter(item -> item.getName().equals(sampleFileName)).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(ftpFiles)) {
FTPFile sampleFile = ftpFiles.get(0);
//解析sampleFile
inputStream = ftpClient.retrieveFileStream(sampleFile.getName());
inputStream = ftpClient.retrieveFileStream(sampleFileName);
if (Objects.nonNull(inputStream)) {
//声明一个临时文件
File file = File.createTempFile("tmp", null);
//将ftp文件的输入流复制给临时文件
@ -520,7 +508,6 @@ public class PHDFileUtil {
map.put("detaFileName", detaFileName);
map.put("sampleSystemType", systemType);
}
}
} catch (IOException e) {
throw new RuntimeException(e);
} finally {
@ -554,19 +541,12 @@ public class PHDFileUtil {
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
//切换文件路径
ftpClient.changeWorkingDirectory(filePath);
//获取路径下所有文件信息
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
if (CollectionUtils.isNotEmpty(ftpFiles)){
//根据文件名称 分别获取 sample gas det文件
List<FTPFile> files = ftpFiles.stream().filter(item -> item.getName().equals(fileName)).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(files)){
FTPFile ftpFile = files.get(0);
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
inputStream = ftpClient.retrieveFileStream(fileName);
if (Objects.nonNull(inputStream)){
file = File.createTempFile("tmp", null);
//将ftp文件的输入流复制给临时文件
FileUtils.copyInputStreamToFile(inputStream, file);
}
}
} catch (IOException e) {
throw new RuntimeException(e);
} finally {
@ -631,19 +611,12 @@ public class PHDFileUtil {
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
//切换文件路径
ftpClient.changeWorkingDirectory(filePath);
//获取路径下所有文件信息
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
if (CollectionUtils.isNotEmpty(ftpFiles)){
//根据文件名称 分别获取 sample gas det文件
List<FTPFile> files = ftpFiles.stream().filter(item -> item.getName().equals(fileName)).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(files)){
FTPFile ftpFile = files.get(0);
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
inputStream = ftpClient.retrieveFileStream(fileName);
if (Objects.nonNull(inputStream)){
file = File.createTempFile("tmp", null);
//将ftp文件的输入流复制给临时文件
FileUtils.copyInputStreamToFile(inputStream, file);
}
}
} catch (IOException e) {
throw new RuntimeException(e);
} finally {
@ -763,19 +736,12 @@ public class PHDFileUtil {
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
//切换文件路径
ftpClient.changeWorkingDirectory(path);
//获取路径下所有文件信息
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
if (CollectionUtils.isNotEmpty(ftpFiles)){
//根据文件名称 分别获取 sample gas det文件
List<FTPFile> files = ftpFiles.stream().filter(item -> item.getName().equals(fileName)).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(files)){
FTPFile ftpFile = files.get(0);
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
inputStream = ftpClient.retrieveFileStream(fileName);
if (Objects.nonNull(inputStream)){
file = File.createTempFile("tmp", null);
//将ftp文件的输入流复制给临时文件
FileUtils.copyInputStreamToFile(inputStream, file);
}
}
} catch (IOException e) {
throw new RuntimeException(e);
} finally {
@ -837,19 +803,14 @@ public class PHDFileUtil {
ftpClient.setControlEncoding("UTF-8");
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
ftpClient.changeWorkingDirectory(filePath);
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
ftpFiles = ftpFiles.stream().filter(item -> item.getName().equals(fileName)).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(ftpFiles)){
FTPFile ftpFile = ftpFiles.get(0);
if (Objects.nonNull(ftpFile)){
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
inputStream = ftpClient.retrieveFileStream(fileName);
if (Objects.nonNull(inputStream)){
//声明一个临时文件
File file = File.createTempFile("tmp", null);
//将ftp文件的输入流复制给临时文件
FileUtils.copyInputStreamToFile(inputStream, file);
struct = EnergySpectrumHandler.getSourceData(file.getAbsolutePath());
}
}
} catch (IOException e) {
throw new RuntimeException(e);
} finally {

View File

@ -24,8 +24,8 @@ public class GammaController {
@GetMapping("initValue")
@ApiOperation(value = "初始化gamma数据", notes = "初始化gamma数据")
public Result initValue(Integer sampleId, String dbName) {
return gammaService.initValue(sampleId, dbName);
public Result initValue(Integer sampleId, String dbName, HttpServletRequest request) {
return gammaService.initValue(sampleId, dbName, request);
}
@GetMapping("gammaByDB")

View File

@ -231,8 +231,32 @@ public class BgDataAnlyseResultIn implements Serializable {
List<GardsCalibrationSpectrum> gammaCalibrationSpectrumList;
GardsCalibrationSpectrum gammaCalibrationSCE;
GardsCalibrationSpectrum gammaCalibrationSEC;
GardsCalibrationSpectrum gammaCalibrationGCE;
GardsCalibrationSpectrum gammaCalibrationGEC;
GardsCalibrationSpectrum gammaCalibrationDCE;
GardsCalibrationSpectrum gammaCalibrationDEC;
List<GardsCalibrationSpectrum> betaCalibrationSpectrumList;
GardsCalibrationSpectrum betaCalibrationSCE;
GardsCalibrationSpectrum betaCalibrationSEC;
GardsCalibrationSpectrum betaCalibrationGCE;
GardsCalibrationSpectrum betaCalibrationGEC;
GardsCalibrationSpectrum betaCalibrationDCE;
GardsCalibrationSpectrum betaCalibrationDEC;
List<GardsROIChannelsSpectrum> roiChannelsSpectrumList;
List<GardsROIResultsSpectrum> roiResultsSpectrumList;

View File

@ -1,11 +1,12 @@
package org.jeecg.modules.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.base.entity.rnman.GardsAnalyses;
import org.jeecg.modules.entity.GardsAnalysesSpectrum;
public interface GardsAnalysesManMapper extends BaseMapper<GardsAnalyses> {
void updateEntity(GardsAnalysesSpectrum analyses);
void updateEntity(@Param(value = "analyses") GardsAnalysesSpectrum analyses);
}

View File

@ -1,7 +1,13 @@
package org.jeecg.modules.mapper;
import com.baomidou.mybatisplus.annotation.InterceptorIgnore;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.base.entity.rnman.GardsCalibration;
public interface GardsCalibrationSpectrumMapper extends BaseMapper<GardsCalibration> {
@InterceptorIgnore(tenantLine = "true")
void insertCalibrationGamma(@Param(value = "calibration") GardsCalibration calibration);
}

View File

@ -5,8 +5,8 @@
<update id="updateEntity">
UPDATE
RNMAN.GARDS_ANALYSES
SET ANALYSISBEGIN = to_date(#{analyses.analysisBeginStr},'yyyy/MM/dd HH:mm:ss'),
ANALYSISEND = to_date(#{analyses.analysisEndStr},'yyyy/MM/dd HH:mm:ss'),
SET ANALYSISBEGIN = to_date(#{analyses.analysisBeginStr},'yyyy/MM/dd HH:mi:ss'),
ANALYSISEND = to_date(#{analyses.analysisEndStr},'yyyy/MM/dd HH:mi:ss'),
SOFTWARE = #{analyses.software},
SWVERSION = #{analyses.swVersion},
COMMENTS = #{analyses.comments},

View File

@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.mapper.GardsCalibrationSpectrumMapper">
<insert id="insertCalibrationGamma">
INSERT INTO
RNMAN.GARDS_CALIBRATION(
SAMPLE_ID,
IDANALYSIS,
SAMPLE_TYPE,
CALTYPE,
FUNCTION,
FUNCTIONDEF,
STARTOFRANGE,
ENDOFRANGE,
COEFF_STRING)
VALUES(#{calibration.sampleId},
#{calibration.idAnalysis},
#{calibration.sampleType},
#{calibration.calType},
#{calibration.function},
#{calibration.functionDef},
#{calibration.startOfRange},
#{calibration.endOfRange},
#{calibration.coeffString})
</insert>
</mapper>

View File

@ -11,7 +11,7 @@ import java.util.List;
public interface IGammaService{
Result initValue(Integer sampleId, String dbName);
Result initValue(Integer sampleId, String dbName, HttpServletRequest request);
Result gammaByDB(String dbName, Integer sampleId, HttpServletRequest request);

View File

@ -6,6 +6,6 @@ import org.jeecg.modules.entity.vo.PHDFile;
public interface IGardsAnalySettingSpectrumService extends IService<GardsAnalySetting> {
boolean saveAnalySettingGamma(PHDFile phd, String idAnalysis);
int saveAnalySettingGamma(PHDFile phd, String idAnalysis);
}

View File

@ -11,6 +11,6 @@ public interface IGardsCalibrationPairsSpectrumService extends IService<GardsCal
int saveGardsCalibrationPairs(List<GardsCalibrationPairs> calibrationPairsList);
boolean saveGardsCalibrationPairsGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis);
int saveGardsCalibrationPairsGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis);
}

View File

@ -10,6 +10,6 @@ public interface IGardsCalibrationSpectrumService extends IService<GardsCalibrat
int saveGardsCalibration(List<GardsCalibration> calibrationPairsList);
boolean saveCalibrationGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis);
int saveCalibrationGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis);
}

View File

@ -7,6 +7,6 @@ import org.jeecg.modules.entity.vo.GStoreMiddleProcessData;
public interface IGardsNuclIdedSpectrumService extends IService<GardsNuclIded> {
boolean saveNuclIdedGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis);
int saveNuclIdedGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis);
}

View File

@ -6,6 +6,6 @@ import org.jeecg.modules.entity.vo.GStoreMiddleProcessData;
public interface IGardsNuclLinesIdedSpectrumService extends IService<GardsNuclLinesIded> {
boolean saveNuclLinesIdedGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis);
int saveNuclLinesIdedGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis);
}

View File

@ -6,6 +6,6 @@ import org.jeecg.modules.entity.vo.GStoreMiddleProcessData;
public interface IGardsPeaksSpectrumService extends IService<GardsPeaks> {
boolean savePeaksGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis);
int savePeaksGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis);
}

View File

@ -7,6 +7,6 @@ import org.jeecg.modules.entity.vo.PHDFile;
public interface IGardsQcCheckSpectrumService extends IService<GardsQcCheck> {
boolean saveQcCheckGamma(GStoreMiddleProcessData middleData, PHDFile phd, String idAnalysis);
int saveQcCheckGamma(GStoreMiddleProcessData middleData, PHDFile phd, String idAnalysis);
}

View File

@ -18,11 +18,9 @@ public interface ISpectrumAnalysisService {
Result getDBSpectrumList(QueryRequest queryRequest, GardsSampleDataSpectrum gardsSampleData, String dbName, String[] menuTypes, boolean AllUsers, boolean CollectStopB, boolean AcqStartB, Date startDate, Date endDate, HttpServletRequest request);
Result getSpectrumFiles(HttpServletRequest request);
Result getFilesBySampleFile(String fileName, HttpServletRequest request);
Result getDBSpectrumChart(String dbName, Integer sampleId);
Result getDBSpectrumChart(String dbName, Integer sampleId, HttpServletRequest request);
Result getFileSpectrumChart(String sampleFileName, String gasFileName, String detFileName, String qcFileName, HttpServletRequest request);

View File

@ -15,7 +15,6 @@ import org.apache.commons.io.FileUtils;
import org.apache.commons.lang3.StringUtils;
import com.google.common.cache.Cache;
import org.apache.commons.net.ftp.FTPClient;
import org.apache.commons.net.ftp.FTPFile;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.cache.LocalCache;
import org.jeecg.common.constant.DateConstant;
@ -30,7 +29,6 @@ import org.jeecg.modules.entity.vo.*;
import org.jeecg.modules.entity.*;
import org.jeecg.modules.mapper.SpectrumAnalysisMapper;
import org.jeecg.modules.native_jni.CalValuesHandler;
import org.jeecg.modules.native_jni.struct.CalValuesOut;
import org.jeecg.modules.service.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@ -77,8 +75,6 @@ public class GammaServiceImpl implements IGammaService {
private SpectrumPathProperties spectrumPathProperties;
@Autowired
private FTPUtil ftpUtil;
@Autowired
private SSEUtil sseUtil;
@Value("${ZeroTime}")
private String ZeroTimeStr;
@Autowired
@ -115,8 +111,9 @@ public class GammaServiceImpl implements IGammaService {
private IGardsAnalySettingSpectrumService analySettingSpectrumService;
@Override
public Result initValue(Integer sampleId, String dbName) {
public Result initValue(Integer sampleId, String dbName, HttpServletRequest request) {
Result result = new Result();
String userName = JwtUtil.getUserNameByToken(request);
Cache<String, PHDFile> phdCache = localCache.getPHDCache();
PHDFile phd = new PHDFile();
//读取文件内容
@ -135,7 +132,7 @@ public class GammaServiceImpl implements IGammaService {
//声明基础数组信息
gammaFileUtil.SetBaseInfo(phd);
//从数据库中读取相关信息
boolean bRet = gammaFileUtil.getResultFromDB(dbName, sampleId, phd, result);
boolean bRet = gammaFileUtil.getResultFromDB(dbName, userName, sampleId, phd, result);
if (!bRet){
return result;
}
@ -169,7 +166,7 @@ public class GammaServiceImpl implements IGammaService {
//声明基础数组信息
gammaFileUtil.SetBaseInfo(phd);
//从数据库中读取相关信息
boolean bRet = gammaFileUtil.getResultFromDB(dbName, sampleId, phd, result);
boolean bRet = gammaFileUtil.getResultFromDB(dbName, userName, sampleId, phd, result);
if (!bRet){
return result;
}
@ -205,7 +202,10 @@ public class GammaServiceImpl implements IGammaService {
String path = StringPool.SLASH + spectrumPathProperties.getUploadPath() + StringPool.SLASH + userName;
PHDFile phd = new PHDFile();
//加载文件内容
gammaFileUtil.loadFile(path, fileName, phd, result);
boolean bRet = gammaFileUtil.loadFile(path, fileName, phd, result);
if (!bRet) {
return result;
}
//获取当前角色的颜色配置
Map<String, String> colorMap = sysUserColorService.initColor(userName);
// 更新 QC Flags 状态
@ -2113,7 +2113,7 @@ public class GammaServiceImpl implements IGammaService {
if(StringUtils.isBlank(reportPath.trim())) {
String waring = "The file isn't existed.";
}
String pathName = reportPath.substring(0, reportPath.lastIndexOf(StringPool.SLASH));
String pathName = StringPool.SLASH + spectrumPathProperties.getRootPath() + StringPool.SLASH + reportPath.substring(0, reportPath.lastIndexOf(StringPool.SLASH));
String fileName = reportPath.substring(reportPath.lastIndexOf(StringPool.SLASH)+1)+".txt";
//连接ftp
FTPClient ftpClient = ftpUtil.LoginFTP();
@ -2129,16 +2129,9 @@ public class GammaServiceImpl implements IGammaService {
// 设置编码当文件中存在中文且上传后文件乱码时可使用此配置项
ftpClient.setControlEncoding("UTF-8");
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
pathName=StringPool.SLASH + spectrumPathProperties.getRootPath() + StringPool.SLASH + pathName;
ftpClient.changeWorkingDirectory(pathName);
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
ftpFiles=ftpFiles.stream().filter(item -> item.getName().equals(fileName)).collect(Collectors.toList());
if (CollectionUtils.isEmpty(ftpFiles)){
throw new RuntimeException("ftp下对应的报告文件不存在");
}
FTPFile ftpFile = ftpFiles.get(0);
if (Objects.nonNull(ftpFile)){
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
inputStream = ftpClient.retrieveFileStream(fileName);
if (Objects.nonNull(inputStream)){
outputStream = response.getOutputStream();
byte[] buffer = new byte[1024];
int bytesRead;
@ -2176,7 +2169,7 @@ public class GammaServiceImpl implements IGammaService {
if(StringUtils.isBlank(reportPath.trim())) {
String waring = "The file isn't existed.";
}
String pathName = reportPath.substring(0, reportPath.lastIndexOf(StringPool.SLASH));
String pathName = StringPool.SLASH + spectrumPathProperties.getRootPath() + StringPool.SLASH + reportPath.substring(0, reportPath.lastIndexOf(StringPool.SLASH));
String fileName = reportPath.substring(reportPath.lastIndexOf(StringPool.SLASH)+1)+".txt";
//连接ftp
FTPClient ftpClient = ftpUtil.LoginFTP();
@ -2192,16 +2185,9 @@ public class GammaServiceImpl implements IGammaService {
// 设置编码当文件中存在中文且上传后文件乱码时可使用此配置项
ftpClient.setControlEncoding("UTF-8");
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
pathName=StringPool.SLASH + spectrumPathProperties.getRootPath() + StringPool.SLASH + pathName;
ftpClient.changeWorkingDirectory(pathName);
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
ftpFiles=ftpFiles.stream().filter(item -> item.getName().equals(fileName)).collect(Collectors.toList());
if (CollectionUtils.isEmpty(ftpFiles)){
throw new RuntimeException("ftp下对应的报告文件不存在");
}
FTPFile ftpFile = ftpFiles.get(0);
if (Objects.nonNull(ftpFile)){
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
inputStream = ftpClient.retrieveFileStream(fileName);
if (Objects.nonNull(inputStream)){
//设置响应类型
response.setContentType("application/octet-stream");
//解决中文不能生成文件
@ -2721,7 +2707,7 @@ public class GammaServiceImpl implements IGammaService {
if (StringUtils.isBlank(logPath)){
String waring = "The file isn't existed.";
}
String pathName = logPath.substring(0, logPath.lastIndexOf(StringPool.SLASH));
String pathName = StringPool.SLASH + spectrumPathProperties.getLogPath() + StringPool.SLASH + logPath.substring(0, logPath.lastIndexOf(StringPool.SLASH));
String fileName = logPath.substring(logPath.lastIndexOf(StringPool.SLASH) + 1);
//连接ftp
FTPClient ftpClient = ftpUtil.LoginFTP();
@ -2737,16 +2723,9 @@ public class GammaServiceImpl implements IGammaService {
// 设置编码当文件中存在中文且上传后文件乱码时可使用此配置项
ftpClient.setControlEncoding("UTF-8");
ftpClient.setFileTransferMode(FTPClient.STREAM_TRANSFER_MODE);
pathName=StringPool.SLASH + spectrumPathProperties.getLogPath() + StringPool.SLASH + pathName;
ftpClient.changeWorkingDirectory(pathName);
List<FTPFile> ftpFiles = Arrays.asList(ftpClient.listFiles());
ftpFiles=ftpFiles.stream().filter(item -> item.getName().equals(fileName)).collect(Collectors.toList());
if (CollectionUtils.isEmpty(ftpFiles)){
throw new RuntimeException("ftp下对应的报告文件不存在");
}
FTPFile ftpFile = ftpFiles.get(0);
if (Objects.nonNull(ftpFile)){
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
inputStream = ftpClient.retrieveFileStream(fileName);
if (Objects.nonNull(inputStream)){
outputStream = response.getOutputStream();
byte[] buffer = new byte[1024];
int bytesRead;
@ -2919,42 +2898,18 @@ public class GammaServiceImpl implements IGammaService {
spectrumAnalysisMapper.deleteAnalySetting(Integer.valueOf(idAnalysis));
}
// RNMAN.GARDS_CALIBRATION_PAIRS 表写入 Energy 刻度数据对
bRet = calibrationPairsSpectrumService.saveGardsCalibrationPairsGamma(middleData, Integer.valueOf(phd.getId_sample()), idAnalysis);
if (!bRet) {
result.error500("Save analysis results to DB failed.");
return result;
}
bRet = calibrationSpectrumService.saveCalibrationGamma(middleData, Integer.valueOf(phd.getId_sample()), idAnalysis);
if (!bRet) {
result.error500("Save analysis results to DB failed.");
return result;
}
calibrationPairsSpectrumService.saveGardsCalibrationPairsGamma(middleData, Integer.valueOf(phd.getId_sample()), idAnalysis);
calibrationSpectrumService.saveCalibrationGamma(middleData, Integer.valueOf(phd.getId_sample()), idAnalysis);
// RNMAN.GARDS_PEAKS 表写入峰信息
bRet = peaksSpectrumService.savePeaksGamma(middleData, Integer.valueOf(phd.getId_sample()), idAnalysis);
if (!bRet) {
result.error500("Save analysis results to DB failed.");
return result;
}
peaksSpectrumService.savePeaksGamma(middleData, Integer.valueOf(phd.getId_sample()), idAnalysis);
// RNMAN.GARDS_NUCL_LINES_IDED 表写入被识别核素的射线信息
bRet = nuclLinesIdedSpectrumService.saveNuclLinesIdedGamma(middleData, Integer.valueOf(phd.getId_sample()), idAnalysis);
if (!bRet) {
result.error500("Save analysis results to DB failed.");
return result;
}
nuclLinesIdedSpectrumService.saveNuclLinesIdedGamma(middleData, Integer.valueOf(phd.getId_sample()), idAnalysis);
// RNMAN.GARDS_NUCL_IDED 表写入被识别核素的活度浓度信息
bRet = nuclIdedSpectrumService.saveNuclIdedGamma(middleData, Integer.valueOf(phd.getId_sample()), idAnalysis);
if (!bRet) {
result.error500("Save analysis results to DB failed.");
return result;
}
nuclIdedSpectrumService.saveNuclIdedGamma(middleData, Integer.valueOf(phd.getId_sample()), idAnalysis);
// RNMAN.GARDS_QC_CHECK 表写入 QC 检查结果
bRet = qcCheckSpectrumService.saveQcCheckGamma(middleData, phd, idAnalysis);
if (!bRet) {
result.error500("Save analysis results to DB failed.");
return result;
}
qcCheckSpectrumService.saveQcCheckGamma(middleData, phd, idAnalysis);
// RNMAN.GARDS_ANALY_SETTING 表写入 SpecSetup 分析参数设置
bRet = analySettingSpectrumService.saveAnalySettingGamma(phd, idAnalysis);
analySettingSpectrumService.saveAnalySettingGamma(phd, idAnalysis);
if(bRet) {
phd.setStatus("R");
List<String> paths=new LinkedList<>();

View File

@ -15,8 +15,7 @@ public class GardsAnalySettingSpectrumServiceImpl extends ServiceImpl<GardsAnaly
@Override
@Transactional
public boolean saveAnalySettingGamma(PHDFile phd, String idAnalysis) {
boolean bRet = false;
public int saveAnalySettingGamma(PHDFile phd, String idAnalysis) {
GardsAnalySetting analySetting = new GardsAnalySetting();
analySetting.setIdanalysis(Integer.valueOf(idAnalysis));
analySetting.setSampleId(Integer.valueOf(phd.getId_sample()));
@ -36,10 +35,7 @@ public class GardsAnalySettingSpectrumServiceImpl extends ServiceImpl<GardsAnaly
analySetting.setReftimeAct(phd.getUsedSetting().getRefTime_act());
analySetting.setReftimeConc(phd.getUsedSetting().getRefTime_conc());
int insert = this.baseMapper.insert(analySetting);
if (insert>0){
bRet = true;
}
return bRet;
return insert;
}
}

View File

@ -31,8 +31,7 @@ public class GardsCalibrationPairsSpectrumServiceImpl extends ServiceImpl<GardsC
@Override
@Transactional
public boolean saveGardsCalibrationPairsGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis) {
boolean bRet = false;
public int saveGardsCalibrationPairsGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis) {
List<GardsCalibrationPairs> calibrationPairsList = new LinkedList<>();
// RNMAN.GARDS_CALIBRATION_PAIRS 表写入 Energy 刻度数据对
int t_size = middleData.calibration_pairs_E_idCalPoint.size();
@ -108,8 +107,8 @@ public class GardsCalibrationPairsSpectrumServiceImpl extends ServiceImpl<GardsC
}
}
if (CollectionUtils.isNotEmpty(calibrationPairsList)) {
bRet = this.saveBatch(calibrationPairsList);
this.saveBatch(calibrationPairsList);
}
return bRet;
return calibrationPairsList.size();
}
}

View File

@ -29,8 +29,7 @@ public class GardsCalibrationSpectrumServiceImpl extends ServiceImpl<GardsCalibr
@Override
@Transactional
public boolean saveCalibrationGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis) {
boolean bRet = false;
public int saveCalibrationGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis) {
List<GardsCalibration> calibrationList = new LinkedList<>();
int t_size = middleData.calibration_pairs_E_idCalPoint.size();
if (t_size>0){
@ -96,8 +95,10 @@ public class GardsCalibrationSpectrumServiceImpl extends ServiceImpl<GardsCalibr
calibrationList.add(calibration);
}
if (CollectionUtils.isNotEmpty(calibrationList)) {
bRet = this.saveBatch(calibrationList);
}
return bRet;
for (GardsCalibration calibration:calibrationList) {
this.baseMapper.insertCalibrationGamma(calibration);
}
}
return calibrationList.size();
}
}

View File

@ -21,8 +21,7 @@ public class GardsNuclIdedSpectrumServiceImpl extends ServiceImpl<GardsNuclIdedS
@Override
@Transactional
public boolean saveNuclIdedGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis) {
boolean bRet = false;
public int saveNuclIdedGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis) {
List<GardsNuclIded> nuclIdedList = new LinkedList<>();
int t_size = middleData.nucl_ided_Nuclidename.size();
if(t_size > 0){
@ -51,9 +50,9 @@ public class GardsNuclIdedSpectrumServiceImpl extends ServiceImpl<GardsNuclIdedS
}
}
if (CollectionUtils.isNotEmpty(nuclIdedList)) {
bRet = this.saveBatch(nuclIdedList);
this.saveBatch(nuclIdedList);
}
return bRet;
return nuclIdedList.size();
}
}

View File

@ -21,8 +21,7 @@ public class GardsNuclLinesIdedSpectrumServiceImpl extends ServiceImpl<GardsNucl
@Override
@Transactional
public boolean saveNuclLinesIdedGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis) {
boolean bRet = false;
public int saveNuclLinesIdedGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis) {
Map<String, GStoreMiddleProcessDataNuclLinesIded> map = middleData.nucl_lines_ided_data;
List<GardsNuclLinesIded> nuclLinesIdedList = new LinkedList<>();
for(String key: map.keySet()){
@ -55,7 +54,7 @@ public class GardsNuclLinesIdedSpectrumServiceImpl extends ServiceImpl<GardsNucl
if (CollectionUtils.isNotEmpty(nuclLinesIdedList)) {
this.saveBatch(nuclLinesIdedList);
}
return bRet;
return nuclLinesIdedList.size();
}
}

View File

@ -20,7 +20,7 @@ public class GardsPeaksSpectrumServiceImpl extends ServiceImpl<GardsPeaksSpectru
@Override
@Transactional
public boolean savePeaksGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis) {
public int savePeaksGamma(GStoreMiddleProcessData middleData, Integer sampleId, String idAnalysis) {
List<GardsPeaks> peaksList = new LinkedList<>();
int t_size = middleData.peaks_idPeak.size();
if(t_size > 0){
@ -30,13 +30,13 @@ public class GardsPeaksSpectrumServiceImpl extends ServiceImpl<GardsPeaksSpectru
peaks.setIdAnalysis(Integer.valueOf(idAnalysis));
peaks.setIdPeak(Integer.valueOf(middleData.peaks_idPeak.get(i)));
peaks.setCentroidChannel(Double.valueOf(middleData.peaks_peakCentroid.get(i)));
peaks.setUncCentroidChannel(Double.valueOf(middleData.peaks_uncpeakCentroid.get(i)));
peaks.setUncCentroidChannel(null);
peaks.setEnergy(Double.valueOf(middleData.peaks_Energy.get(i)));
peaks.setUncEnergy(Double.valueOf(middleData.peaks_uncEnergy.get(i)));
peaks.setUncEnergy(null);
peaks.setArea(Double.valueOf(middleData.peaks_Area.get(i)));
peaks.setUncArea(Double.valueOf(middleData.peaks_areaErr.get(i)));
peaks.setEfficiency(Double.valueOf(middleData.peaks_Efficiency.get(i)));
peaks.setUncefficiency(Double.valueOf(middleData.peaks_Uncefficiency.get(i)));
peaks.setUncefficiency(null);
peaks.setFwhm(Double.valueOf(middleData.peaks_Fwhm.get(i)));
peaks.setFwtm(Double.valueOf(middleData.peaks_Fwhmc.get(i)));
peaks.setSignificance(Double.valueOf(middleData.peaks_Significance.get(i)));
@ -65,7 +65,7 @@ public class GardsPeaksSpectrumServiceImpl extends ServiceImpl<GardsPeaksSpectru
if (CollectionUtils.isNotEmpty(peaksList)) {
this.saveBatch(peaksList);
}
return false;
return peaksList.size();
}
}

View File

@ -1,6 +1,7 @@
package org.jeecg.modules.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.modules.base.entity.rnman.GardsQcCheck;
import org.jeecg.modules.entity.vo.GStoreMiddleProcessData;
@ -21,25 +22,25 @@ public class GardsQcCheckSpectrumServiceImpl extends ServiceImpl<GardsQcCheckSpe
@Override
@Transactional
public boolean saveQcCheckGamma(GStoreMiddleProcessData middleData, PHDFile phd, String idAnalysis) {
boolean bRet = false;
public int saveQcCheckGamma(GStoreMiddleProcessData middleData, PHDFile phd, String idAnalysis) {
int t_size = phd.getQcItems().size();
List<GardsQcCheck> qcCheckList = new LinkedList<>();
if(t_size > 0) {
List<GardsQcCheckSpectrum> qcCheckList = new LinkedList<>();
for (int i=0; i<t_size; i++){
GardsQcCheckSpectrum qcCheck = new GardsQcCheckSpectrum();
GardsQcCheck qcCheck = new GardsQcCheck();
qcCheck.setSampleId(Integer.valueOf(phd.getId_sample()));
qcCheck.setIdanalysis(Integer.valueOf(idAnalysis));
qcCheck.setQcName(middleData.QC_CHECK_QC_NAME.get(i));
qcCheck.setQcValue(Double.valueOf(middleData.QC_CHECK_QC_VALUE.get(i)));
qcCheck.setQcStandard(middleData.QC_CHECK_QC_STANDARD.get(i));
qcCheck.setQcResult(Integer.valueOf(middleData.QC_CHECK_QC_RESULT.get(i)));
qcCheck.setQcResult(Double.valueOf(middleData.QC_CHECK_QC_RESULT.get(i)).intValue());
qcCheckList.add(qcCheck);
}
}
return bRet;
if (CollectionUtils.isNotEmpty(qcCheckList)) {
this.saveBatch(qcCheckList);
}
return qcCheckList.size();
}
}

View File

@ -102,7 +102,7 @@ public class GardsSampleAuxSpectrumServiceImpl extends ServiceImpl<GardsSampleAu
sampleAux.setGasBkgdMeasurementId(phd.getHeader().getGas_bk_measurement_id());
sampleAux.setSampleHeight(phd.getSampleBlock().getDimension_2());
sampleAux.setSampleDiameter(phd.getSampleBlock().getDimension_1());
sampleAux.setCalibrationDtg(DateUtils.parseDate(calibTime));
sampleAux.setCalibrationDtg(StringUtils.isNotBlank(calibTime)?DateUtils.parseDate(calibTime):null);
sampleAux.setMsgId(phd.getMsgInfo().getMsg_id());
sampleAux.setArchiveBottleId(phd.getProcess().getArchive_bottle_id());
sampleAux.setXeVolume(phd.getProcess().getSample_volume_of_Xe());

View File

@ -1,6 +1,7 @@
package org.jeecg.modules.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.common.util.DateUtils;
import org.jeecg.modules.base.entity.original.GardsSampleCert;
@ -44,7 +45,7 @@ public class GardsSampleCertSpectrumServiceImpl extends ServiceImpl<GardsSampleC
GardsSampleCert sampleCert = new GardsSampleCert();
sampleCert.setSampleId(sampleId);
sampleCert.setQuantity(phd.getCertificate().getTotal_source_activity());
sampleCert.setAssayDate(DateUtils.parseDate(assay_date));
sampleCert.setAssayDate(StringUtils.isNotBlank(assay_date)?DateUtils.parseDate(assay_date):null);
sampleCert.setUnit(phd.getCertificate().getUnits_activity());
insert = this.baseMapper.insert(sampleCert);
} catch (ParseException e) {