Merge remote-tracking branch 'origin/station' into station
This commit is contained in:
commit
5fd4e44a6c
|
@ -83,7 +83,7 @@ public class GardsNuclLinesIded implements Serializable {
|
||||||
* 该峰处的探测效率不确定度
|
* 该峰处的探测效率不确定度
|
||||||
*/
|
*/
|
||||||
@TableField(value = "UNEFFIC")
|
@TableField(value = "UNEFFIC")
|
||||||
private Double uncEffic;
|
private Double unEffic;
|
||||||
/**
|
/**
|
||||||
* 利用该峰计算得到的最小可探测活度
|
* 利用该峰计算得到的最小可探测活度
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -56,4 +56,5 @@ public class GardsRoiChannels implements Serializable {
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
private Date moddate;
|
private Date moddate;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -96,4 +96,5 @@ public class GardsRoiResults implements Serializable {
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
private Date moddate;
|
private Date moddate;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -82,7 +82,7 @@ public class GardsNuclLinesIded implements Serializable {
|
||||||
* 该峰处的探测效率不确定度
|
* 该峰处的探测效率不确定度
|
||||||
*/
|
*/
|
||||||
@TableField(value = "UNEFFIC")
|
@TableField(value = "UNEFFIC")
|
||||||
private Double uncEffic;
|
private Double unEffic;
|
||||||
/**
|
/**
|
||||||
* 利用该峰计算得到的最小可探测活度
|
* 利用该峰计算得到的最小可探测活度
|
||||||
*/
|
*/
|
||||||
|
|
|
@ -265,6 +265,7 @@ public class PHDFileUtil {
|
||||||
if (Objects.isNull(ftpClient)){
|
if (Objects.isNull(ftpClient)){
|
||||||
throw new RuntimeException("ftp连接失败!");
|
throw new RuntimeException("ftp连接失败!");
|
||||||
}
|
}
|
||||||
|
InputStream iStream= null;
|
||||||
try {
|
try {
|
||||||
ftpClient.enterLocalPassiveMode();
|
ftpClient.enterLocalPassiveMode();
|
||||||
String fileName = filePath.substring(filePath.lastIndexOf(StringPool.SLASH) + 1);
|
String fileName = filePath.substring(filePath.lastIndexOf(StringPool.SLASH) + 1);
|
||||||
|
@ -282,15 +283,12 @@ public class PHDFileUtil {
|
||||||
for (FTPFile ftpFile:ftpFiles) {
|
for (FTPFile ftpFile:ftpFiles) {
|
||||||
if (ftpFile.getName().equals(fileName)){
|
if (ftpFile.getName().equals(fileName)){
|
||||||
//读取ftp文件的输入流
|
//读取ftp文件的输入流
|
||||||
InputStream iStream=ftpClient.retrieveFileStream(ftpFile.getName());
|
iStream=ftpClient.retrieveFileStream(ftpFile.getName());
|
||||||
//声明一个临时文件
|
//声明一个临时文件
|
||||||
File file = File.createTempFile("tmp", null);
|
File file = File.createTempFile("tmp", null);
|
||||||
//将ftp文件的输入流复制给临时文件
|
//将ftp文件的输入流复制给临时文件
|
||||||
FileUtils.copyInputStreamToFile(iStream, file);
|
FileUtils.copyInputStreamToFile(iStream, file);
|
||||||
List<String> allLines = FileUtils.readLines(file, ftpUtil.getEncoding());
|
List<String> allLines = FileUtils.readLines(file, ftpUtil.getEncoding());
|
||||||
if (Objects.nonNull(iStream)){
|
|
||||||
iStream.close();
|
|
||||||
}
|
|
||||||
return allLines;
|
return allLines;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -300,7 +298,12 @@ public class PHDFileUtil {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
} finally {
|
} finally {
|
||||||
try {
|
try {
|
||||||
ftpClient.disconnect();
|
if (Objects.nonNull(ftpClient)){
|
||||||
|
ftpClient.disconnect();
|
||||||
|
}
|
||||||
|
if (Objects.nonNull(iStream)){
|
||||||
|
iStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
|
|
@ -5,10 +5,7 @@ import io.swagger.annotations.ApiOperation;
|
||||||
import org.jeecg.common.api.QueryRequest;
|
import org.jeecg.common.api.QueryRequest;
|
||||||
import org.jeecg.common.api.vo.Result;
|
import org.jeecg.common.api.vo.Result;
|
||||||
import org.jeecg.modules.entity.GardsSampleDataSpectrum;
|
import org.jeecg.modules.entity.GardsSampleDataSpectrum;
|
||||||
import org.jeecg.modules.entity.vo.AnalyseData;
|
import org.jeecg.modules.entity.vo.*;
|
||||||
import org.jeecg.modules.entity.vo.FittingBody;
|
|
||||||
import org.jeecg.modules.entity.vo.SeriseData;
|
|
||||||
import org.jeecg.modules.entity.vo.StatisticsQueryData;
|
|
||||||
import org.jeecg.modules.service.ISpectrumAnalysisService;
|
import org.jeecg.modules.service.ISpectrumAnalysisService;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.format.annotation.DateTimeFormat;
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
@ -66,8 +63,8 @@ public class SpectrumAnalysesController {
|
||||||
|
|
||||||
@GetMapping("viewRRR")
|
@GetMapping("viewRRR")
|
||||||
@ApiOperation(value = "查看RRR报告", notes = "查看RRR报告")
|
@ApiOperation(value = "查看RRR报告", notes = "查看RRR报告")
|
||||||
public void viewRRR(Integer sampleId, HttpServletResponse response){
|
public Result viewRRR(String dbName, Integer sampleId, boolean sampleData, boolean GasBgData, boolean DetBgData, boolean QCData, boolean bGammaEnergyValid, boolean bBetaEnergyValid){
|
||||||
spectrumAnalysisService.viewRRR(sampleId, response);
|
return spectrumAnalysisService.viewRRR(dbName, sampleId, sampleData, GasBgData, DetBgData, QCData, bGammaEnergyValid, bBetaEnergyValid);
|
||||||
}
|
}
|
||||||
|
|
||||||
@GetMapping("viewSpectrum")
|
@GetMapping("viewSpectrum")
|
||||||
|
|
|
@ -0,0 +1,54 @@
|
||||||
|
package org.jeecg.modules.entity;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class GardsROIChannelsSpectrum implements Serializable {
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 样品id
|
||||||
|
*/
|
||||||
|
private Integer sampleId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 感兴趣区ID号
|
||||||
|
*/
|
||||||
|
private Integer roi;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分析ID号
|
||||||
|
*/
|
||||||
|
private Integer idAnalysis;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 感兴趣区的β能量起始值
|
||||||
|
*/
|
||||||
|
private Integer bChanStart;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 感兴趣区的β能量结束值
|
||||||
|
*/
|
||||||
|
private Integer bChanStop;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 感兴趣区的γ能量起始值
|
||||||
|
*/
|
||||||
|
private Integer gChanStart;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 感兴趣区的γ能量结束值
|
||||||
|
*/
|
||||||
|
private Integer gChanStop;
|
||||||
|
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date moddate;
|
||||||
|
|
||||||
|
}
|
|
@ -0,0 +1,93 @@
|
||||||
|
package org.jeecg.modules.entity;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class GardsROIResultsSpectrum implements Serializable {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 样品id
|
||||||
|
*/
|
||||||
|
private Integer sampleId;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 感兴趣区ID号
|
||||||
|
*/
|
||||||
|
private Integer roi;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 分析ID号
|
||||||
|
*/
|
||||||
|
private Integer idAnalysis;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 样品谱感兴趣区总计数
|
||||||
|
*/
|
||||||
|
private Double sGross;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 气体本底谱感兴趣区总计数
|
||||||
|
*/
|
||||||
|
private Double gGross;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 探测器本底谱感兴趣区总计数
|
||||||
|
*/
|
||||||
|
private Double bGross;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 样品谱感兴趣区净计数
|
||||||
|
*/
|
||||||
|
private Double sNet;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 气体本底谱感兴趣区净计数
|
||||||
|
*/
|
||||||
|
private Double gNet;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 感兴趣区净计数
|
||||||
|
*/
|
||||||
|
private Double net;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 感兴趣区净计数不确定度
|
||||||
|
*/
|
||||||
|
private Double netErr;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 感兴趣区活度浓度
|
||||||
|
*/
|
||||||
|
private Double conc;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 感兴趣区活度浓度不确定度
|
||||||
|
*/
|
||||||
|
private Double concErr;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 感兴趣区LC
|
||||||
|
*/
|
||||||
|
private Double lc;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 感兴趣区MDC
|
||||||
|
*/
|
||||||
|
private Double mdc;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 感兴趣区识别标示;1:识别到,0,未识别到
|
||||||
|
*/
|
||||||
|
private Integer nidFlag;
|
||||||
|
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date moddate;
|
||||||
|
|
||||||
|
}
|
|
@ -71,4 +71,15 @@ public interface SpectrumAnalysisMapper {
|
||||||
|
|
||||||
List<String> UserNuclide(@Param(value = "systemType") String systemType, @Param(value = "userName") String userName);
|
List<String> UserNuclide(@Param(value = "systemType") String systemType, @Param(value = "userName") String userName);
|
||||||
|
|
||||||
|
Integer getAnalysisID(@Param(value = "dbName") String dbName, @Param(value = "sampleId") Integer sampleId);
|
||||||
|
|
||||||
|
GardsCalibrationSpectrum ReadGammaCalibrationParam(@Param(value = "dbName") String dbName, @Param(value = "idAnalysis") Integer idAnalysis, @Param(value = "sampleId") Integer sampleId);
|
||||||
|
|
||||||
|
GardsCalibrationSpectrum ReadBetaCalibrationParam(@Param(value = "dbName") String dbName, @Param(value = "idAnalysis") Integer idAnalysis, @Param(value = "sampleId") Integer sampleId);
|
||||||
|
|
||||||
|
List<GardsROIChannelsSpectrum> ReadROIChannels(@Param(value = "dbName") String dbName, @Param(value = "idAnalysis") Integer idAnalysis, @Param(value = "sampleId") Integer sampleId);
|
||||||
|
|
||||||
|
List<GardsROIResultsSpectrum> ReadROIResults(@Param(value = "dbName") String dbName, @Param(value = "idAnalysis") Integer idAnalysis, @Param(value = "sampleId") Integer sampleId);
|
||||||
|
|
||||||
|
List<GardsXeResultsSpectrum> ReadXeResults(@Param(value = "dbName") String dbName, @Param(value = "idAnalysis") Integer idAnalysis, @Param(value = "sampleId") Integer sampleId);
|
||||||
}
|
}
|
||||||
|
|
|
@ -433,7 +433,7 @@
|
||||||
ACTIVITY,
|
ACTIVITY,
|
||||||
UNCACTIVITY,
|
UNCACTIVITY,
|
||||||
EFFIC,
|
EFFIC,
|
||||||
UNEFFIC,
|
UNEFFIC ,
|
||||||
MDA,
|
MDA,
|
||||||
KEY_FLAG,
|
KEY_FLAG,
|
||||||
MDC,
|
MDC,
|
||||||
|
@ -491,4 +491,98 @@
|
||||||
SELECT nuclide_name FROM sys_default_nuclide where use_type = 3 and nuclide_type = #{systemType} and create_by = #{userName}
|
SELECT nuclide_name FROM sys_default_nuclide where use_type = 3 and nuclide_type = #{systemType} and create_by = #{userName}
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="getAnalysisID" resultType="java.lang.Integer">
|
||||||
|
SELECT ANALYSIS_DB.IDANALYSIS FROM ${dbName}.GARDS_ANALYSES ANALYSIS_DB WHERE ANALYSIS_DB.SAMPLE_ID = #{sampleId}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="ReadGammaCalibrationParam" resultType="org.jeecg.modules.entity.GardsCalibrationSpectrum">
|
||||||
|
SELECT
|
||||||
|
SAMPLE_DATA.DATA_TYPE,
|
||||||
|
CALIBRATION.COEFF1,
|
||||||
|
CALIBRATION.COEFF2,
|
||||||
|
CALIBRATION.COEFF3
|
||||||
|
FROM
|
||||||
|
${dbName}.GARDS_CALIBRATION CALIBRATION,
|
||||||
|
ORIGINAL.GARDS_SAMPLE_DATA SAMPLE_DATA
|
||||||
|
WHERE
|
||||||
|
SAMPLE_DATA.SAMPLE_ID = CALIBRATION.SAMPLE_ID
|
||||||
|
AND CALIBRATION.SAMPLE_TYPE = 'G'
|
||||||
|
AND CALIBRATION.IDANALYSIS = #{idAnalysis}
|
||||||
|
AND CALIBRATION.SAMPLE_ID = #{sampleId}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="ReadBetaCalibrationParam" resultType="org.jeecg.modules.entity.GardsCalibrationSpectrum">
|
||||||
|
SELECT
|
||||||
|
SAMPLE_DATA.DATA_TYPE,
|
||||||
|
CALIBRATION.COEFF1,
|
||||||
|
CALIBRATION.COEFF2,
|
||||||
|
CALIBRATION.COEFF3
|
||||||
|
FROM
|
||||||
|
${dbName}.GARDS_CALIBRATION CALIBRATION,
|
||||||
|
ORIGINAL.GARDS_SAMPLE_DATA SAMPLE_DATA
|
||||||
|
WHERE
|
||||||
|
SAMPLE_DATA.SAMPLE_ID = CALIBRATION.SAMPLE_ID
|
||||||
|
AND CALIBRATION.SAMPLE_TYPE = 'B'
|
||||||
|
AND CALIBRATION.IDANALYSIS = #{idAnalysis}
|
||||||
|
AND CALIBRATION.SAMPLE_ID = #{sampleId}
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="ReadROIChannels" resultType="org.jeecg.modules.entity.GardsROIChannelsSpectrum">
|
||||||
|
SELECT
|
||||||
|
DISTINCT
|
||||||
|
SAMPLE_DATA.DATA_TYPE,
|
||||||
|
ROI_CHANNELS.ROI,
|
||||||
|
ROI_CHANNELS.B_CHAN_START,
|
||||||
|
ROI_CHANNELS.B_CHAN_STOP,
|
||||||
|
ROI_CHANNELS.G_CHAN_START,
|
||||||
|
ROI_CHANNELS.G_CHAN_STOP
|
||||||
|
FROM
|
||||||
|
${dbName}.GARDS_ROI_CHANNELS ROI_CHANNELS,
|
||||||
|
ORIGINAL.GARDS_SAMPLE_DATA SAMPLE_DATA
|
||||||
|
WHERE
|
||||||
|
ROI_CHANNELS.SAMPLE_ID = SAMPLE_DATA.SAMPLE_ID
|
||||||
|
AND ROI_CHANNELS.IDANALYSIS = #{idAnalysis}
|
||||||
|
AND ROI_CHANNELS.SAMPLE_ID = #{sampleId}
|
||||||
|
ORDER BY ROI_CHANNELS.ROI ASC
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="ReadROIResults" resultType="org.jeecg.modules.entity.GardsROIResultsSpectrum">
|
||||||
|
SELECT
|
||||||
|
DISTINCT
|
||||||
|
ROI_RESULTS.ROI,
|
||||||
|
ROI_RESULTS.S_GROSS,
|
||||||
|
ROI_RESULTS.G_GROSS,
|
||||||
|
ROI_RESULTS.B_GROSS,
|
||||||
|
ROI_RESULTS.S_NET,
|
||||||
|
ROI_RESULTS.G_NET,
|
||||||
|
ROI_RESULTS.NET,
|
||||||
|
ROI_RESULTS.NET_ERR,
|
||||||
|
ROI_RESULTS.CONC,
|
||||||
|
ROI_RESULTS.CONC_ERR,
|
||||||
|
ROI_RESULTS.LC,
|
||||||
|
ROI_RESULTS.MDC,
|
||||||
|
ROI_RESULTS.NID_FLAG
|
||||||
|
FROM
|
||||||
|
${dbName}.GARDS_ROI_RESULTS ROI_RESULTS
|
||||||
|
WHERE
|
||||||
|
ROI_RESULTS.IDANALYSIS = #{idAnalysis}
|
||||||
|
AND ROI_RESULTS.SAMPLE_ID = #{sampleId}
|
||||||
|
ORDER BY ROI_RESULTS.ROI ASC
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="ReadXeResults" resultType="org.jeecg.modules.entity.GardsXeResultsSpectrum">
|
||||||
|
SELECT
|
||||||
|
XE_RESULTS.NUCLIDE_NAME,
|
||||||
|
XE_RESULTS.CONC,
|
||||||
|
XE_RESULTS.CONC_ERR,
|
||||||
|
XE_RESULTS.MDC,
|
||||||
|
XE_RESULTS.NID_FLAG,
|
||||||
|
XE_RESULTS.LC
|
||||||
|
FROM
|
||||||
|
${dbName}.GARDS_XE_RESULTS XE_RESULTS
|
||||||
|
WHERE
|
||||||
|
XE_RESULTS.IDANALYSIS = #{idAnalysis}
|
||||||
|
AND XE_RESULTS.SAMPLE_ID = #{sampleId}
|
||||||
|
</select>
|
||||||
|
|
||||||
</mapper>
|
</mapper>
|
|
@ -6,6 +6,7 @@ import org.jeecg.modules.entity.GardsSampleDataSpectrum;
|
||||||
import org.jeecg.modules.entity.vo.AnalyseData;
|
import org.jeecg.modules.entity.vo.AnalyseData;
|
||||||
import org.jeecg.modules.entity.vo.SeriseData;
|
import org.jeecg.modules.entity.vo.SeriseData;
|
||||||
import org.jeecg.modules.entity.vo.StatisticsQueryData;
|
import org.jeecg.modules.entity.vo.StatisticsQueryData;
|
||||||
|
import org.jeecg.modules.entity.vo.TableWidget;
|
||||||
|
|
||||||
import javax.servlet.http.HttpServletRequest;
|
import javax.servlet.http.HttpServletRequest;
|
||||||
import javax.servlet.http.HttpServletResponse;
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
@ -26,7 +27,7 @@ public interface ISpectrumAnalysisService {
|
||||||
|
|
||||||
void viewARR(Integer sampleId, HttpServletResponse response);
|
void viewARR(Integer sampleId, HttpServletResponse response);
|
||||||
|
|
||||||
void viewRRR(Integer sampleId, HttpServletResponse response);
|
Result viewRRR(String dbName, Integer sampleId, boolean sampleData, boolean GasBgData, boolean DetBgData, boolean QCData, boolean bGammaEnergyValid, boolean bBetaEnergyValid);
|
||||||
|
|
||||||
Result viewSpectrum(Integer sampleId);
|
Result viewSpectrum(Integer sampleId);
|
||||||
|
|
||||||
|
|
|
@ -15,8 +15,7 @@ import org.jeecg.common.properties.SpectrumPathProperties;
|
||||||
import org.jeecg.common.system.util.JwtUtil;
|
import org.jeecg.common.system.util.JwtUtil;
|
||||||
import org.jeecg.common.util.*;
|
import org.jeecg.common.util.*;
|
||||||
import org.jeecg.modules.base.entity.original.GardsSampleData;
|
import org.jeecg.modules.base.entity.original.GardsSampleData;
|
||||||
import org.jeecg.modules.entity.GardsSampleDataSpectrum;
|
import org.jeecg.modules.entity.*;
|
||||||
import org.jeecg.modules.entity.GardsXeResultsSpectrum;
|
|
||||||
import org.jeecg.modules.entity.vo.*;
|
import org.jeecg.modules.entity.vo.*;
|
||||||
import org.jeecg.modules.mapper.SpectrumAnalysisMapper;
|
import org.jeecg.modules.mapper.SpectrumAnalysisMapper;
|
||||||
import org.jeecg.modules.native_jni.EnergySpectrumHandler;
|
import org.jeecg.modules.native_jni.EnergySpectrumHandler;
|
||||||
|
@ -234,6 +233,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.isNull(ftpClient)){
|
if (Objects.isNull(ftpClient)){
|
||||||
throw new RuntimeException("ftp连接失败");
|
throw new RuntimeException("ftp连接失败");
|
||||||
}
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
try {
|
try {
|
||||||
//切换被动模式
|
//切换被动模式
|
||||||
ftpClient.enterLocalPassiveMode();
|
ftpClient.enterLocalPassiveMode();
|
||||||
|
@ -250,15 +250,12 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}
|
}
|
||||||
FTPFile ftpFile = ftpFiles.get(0);
|
FTPFile ftpFile = ftpFiles.get(0);
|
||||||
if (Objects.nonNull(ftpFile)){
|
if (Objects.nonNull(ftpFile)){
|
||||||
InputStream inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
|
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
|
||||||
//声明一个临时文件
|
//声明一个临时文件
|
||||||
File file = File.createTempFile("tmp", null);
|
File file = File.createTempFile("tmp", null);
|
||||||
//将ftp文件的输入流复制给临时文件
|
//将ftp文件的输入流复制给临时文件
|
||||||
FileUtils.copyInputStreamToFile(inputStream, file);
|
FileUtils.copyInputStreamToFile(inputStream, file);
|
||||||
map = phdFileUtil.getSourceData(file.getAbsolutePath(), fileName, xeDataList, sampleId, status);
|
map = phdFileUtil.getSourceData(file.getAbsolutePath(), fileName, xeDataList, sampleId, status);
|
||||||
if (Objects.nonNull(inputStream)){
|
|
||||||
inputStream.close();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
|
@ -267,6 +264,9 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.nonNull(ftpClient)){
|
if (Objects.nonNull(ftpClient)){
|
||||||
ftpClient.disconnect();
|
ftpClient.disconnect();
|
||||||
}
|
}
|
||||||
|
if (Objects.nonNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
@ -298,6 +298,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
result.error500("ftp连接失败");
|
result.error500("ftp连接失败");
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
try {
|
try {
|
||||||
//切换被动模式
|
//切换被动模式
|
||||||
ftpClient.enterLocalPassiveMode();
|
ftpClient.enterLocalPassiveMode();
|
||||||
|
@ -315,7 +316,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}
|
}
|
||||||
FTPFile ftpFile = ftpFiles.get(0);
|
FTPFile ftpFile = ftpFiles.get(0);
|
||||||
if (Objects.nonNull(ftpFile)){
|
if (Objects.nonNull(ftpFile)){
|
||||||
InputStream inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
|
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
|
||||||
//声明一个临时文件
|
//声明一个临时文件
|
||||||
File file = File.createTempFile("tmp", null);
|
File file = File.createTempFile("tmp", null);
|
||||||
//将ftp文件的输入流复制给临时文件
|
//将ftp文件的输入流复制给临时文件
|
||||||
|
@ -332,6 +333,9 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.nonNull(ftpClient)){
|
if (Objects.nonNull(ftpClient)){
|
||||||
ftpClient.disconnect();
|
ftpClient.disconnect();
|
||||||
}
|
}
|
||||||
|
if (Objects.nonNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
@ -367,6 +371,8 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.isNull(ftpClient)){
|
if (Objects.isNull(ftpClient)){
|
||||||
throw new RuntimeException("ftp连接失败");
|
throw new RuntimeException("ftp连接失败");
|
||||||
}
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
|
ServletOutputStream outputStream = null;
|
||||||
try {
|
try {
|
||||||
//切换被动模式
|
//切换被动模式
|
||||||
ftpClient.enterLocalPassiveMode();
|
ftpClient.enterLocalPassiveMode();
|
||||||
|
@ -383,20 +389,14 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}
|
}
|
||||||
FTPFile ftpFile = ftpFiles.get(0);
|
FTPFile ftpFile = ftpFiles.get(0);
|
||||||
if (Objects.nonNull(ftpFile)){
|
if (Objects.nonNull(ftpFile)){
|
||||||
InputStream inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
|
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
|
||||||
ServletOutputStream outputStream = response.getOutputStream();
|
outputStream = response.getOutputStream();
|
||||||
byte[] buffer = new byte[1024];
|
byte[] buffer = new byte[1024];
|
||||||
int bytesRead;
|
int bytesRead;
|
||||||
// 将文件输出流写入到输出流中
|
// 将文件输出流写入到输出流中
|
||||||
while ((bytesRead = inputStream.read(buffer)) != -1) {
|
while ((bytesRead = inputStream.read(buffer)) != -1) {
|
||||||
outputStream.write(buffer, 0, bytesRead);
|
outputStream.write(buffer, 0, bytesRead);
|
||||||
}
|
}
|
||||||
if (ObjectUtil.isNotNull(inputStream)){
|
|
||||||
inputStream.close();
|
|
||||||
}
|
|
||||||
if (ObjectUtil.isNotNull(outputStream)){
|
|
||||||
outputStream.close();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
|
@ -405,6 +405,12 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.nonNull(ftpClient)){
|
if (Objects.nonNull(ftpClient)){
|
||||||
ftpClient.disconnect();
|
ftpClient.disconnect();
|
||||||
}
|
}
|
||||||
|
if (ObjectUtil.isNotNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
|
if (ObjectUtil.isNotNull(outputStream)){
|
||||||
|
outputStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
@ -412,61 +418,346 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void viewRRR(Integer sampleId, HttpServletResponse response) {
|
public Result viewRRR(String dbName, Integer sampleId,
|
||||||
//获取自动处理生成的报告地址
|
boolean sampleData, boolean GasBgData,
|
||||||
String reportPath = spectrumAnalysisMapper.viewRRR(sampleId);
|
boolean DetBgData, boolean QCData,
|
||||||
if (StringUtils.isBlank(reportPath)){
|
boolean bGammaEnergyValid, boolean bBetaEnergyValid) {
|
||||||
throw new RuntimeException("人工交互分析生成报告不存在!");
|
Result result = new Result();
|
||||||
|
//GetAnalysisID sample_id
|
||||||
|
if (dbName.equalsIgnoreCase("auto")){
|
||||||
|
dbName = "RNAUTO";
|
||||||
|
}else if (dbName.equalsIgnoreCase("man")){
|
||||||
|
dbName = "RNMAN";
|
||||||
}
|
}
|
||||||
String pathName = reportPath.substring(0, reportPath.lastIndexOf(StringPool.SLASH));
|
Integer analysisID = spectrumAnalysisMapper.getAnalysisID(dbName, sampleId);
|
||||||
String fileName = reportPath.substring(reportPath.lastIndexOf(StringPool.SLASH)+1)+".txt";
|
SpectrumFileRecord dbSpectrumFilePath = spectrumAnalysisMapper.getDBSpectrumFilePath("RNAUTO.GARDS_ANALYSES", sampleId);
|
||||||
//连接ftp
|
Information information = new Information();
|
||||||
FTPClient ftpClient = ftpUtil.LoginFTP();
|
//sampleFile 相关数据
|
||||||
if (Objects.isNull(ftpClient)){
|
if (Objects.nonNull(dbSpectrumFilePath)){
|
||||||
throw new RuntimeException("ftp连接失败");
|
if (StringUtils.isNotBlank(dbSpectrumFilePath.getSampleFilePath())){
|
||||||
}
|
String filePath = dbSpectrumFilePath.getSampleFilePath();
|
||||||
try {
|
String pathName = filePath.substring(0, filePath.lastIndexOf(StringPool.SLASH));
|
||||||
//切换被动模式
|
String fileName = filePath.substring(filePath.lastIndexOf(StringPool.SLASH)+1);
|
||||||
ftpClient.enterLocalPassiveMode();
|
FTPClient ftpClient = ftpUtil.LoginFTP();
|
||||||
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
|
if (Objects.isNull(ftpClient)){
|
||||||
// 设置编码,当文件中存在中文且上传后文件乱码时可使用此配置项
|
result.error500("ftp连接失败");
|
||||||
ftpClient.setControlEncoding("UTF-8");
|
return result;
|
||||||
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 inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
|
|
||||||
ServletOutputStream outputStream = response.getOutputStream();
|
|
||||||
byte[] buffer = new byte[1024];
|
|
||||||
int bytesRead;
|
|
||||||
// 将文件输出流写入到输出流中
|
|
||||||
while ((bytesRead = inputStream.read(buffer)) != -1) {
|
|
||||||
outputStream.write(buffer, 0, bytesRead);
|
|
||||||
}
|
}
|
||||||
if (ObjectUtil.isNotNull(inputStream)){
|
InputStream inputStream = null;
|
||||||
inputStream.close();
|
try {
|
||||||
}
|
//切换被动模式
|
||||||
if (ObjectUtil.isNotNull(outputStream)){
|
ftpClient.enterLocalPassiveMode();
|
||||||
outputStream.close();
|
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
|
||||||
|
// 设置编码,当文件中存在中文且上传后文件乱码时可使用此配置项
|
||||||
|
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)){
|
||||||
|
result.error500("ftp下对应文件不存在");
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
FTPFile ftpFile = ftpFiles.get(0);
|
||||||
|
if (Objects.nonNull(ftpFile)){
|
||||||
|
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
|
||||||
|
//声明一个临时文件
|
||||||
|
File file = File.createTempFile("tmp", null);
|
||||||
|
//将ftp文件的输入流复制给临时文件
|
||||||
|
FileUtils.copyInputStreamToFile(inputStream, file);
|
||||||
|
//加载dll工具库
|
||||||
|
System.loadLibrary("ReadPHDFile");
|
||||||
|
EnergySpectrumStruct struct = EnergySpectrumHandler.getSourceData(file.getAbsolutePath());
|
||||||
|
|
||||||
|
information.setSample_measid_name(struct.measurement_id);
|
||||||
|
information.setSample_det_measid_name(struct.detector_bk_measurement_id);
|
||||||
|
information.setSample_gas_measid_name(struct.gas_bk_measurement_id);
|
||||||
|
information.setSit_det_code(struct.site_code);
|
||||||
|
information.setSample_type(struct.system_type);
|
||||||
|
information.setGeometry(struct.sample_geometry);
|
||||||
|
information.setSpectral_qualifie(struct.spectrum_quantity);
|
||||||
|
String transmit_dtg_str=struct.transmit_date+" "+struct.transmit_time;
|
||||||
|
Date transmit_dtg = DateUtils.parseDate(transmit_dtg_str.substring(0, transmit_dtg_str.indexOf(StringPool.DOT)), "yyyy/MM/dd HH:mm:ss");
|
||||||
|
information.setTransmit_dtg(transmit_dtg);
|
||||||
|
information.setDetect_code(struct.detector_code);
|
||||||
|
information.setMeasurementID(struct.measurement_id.replace("\\","/"));
|
||||||
|
information.setBkgdMeasurementID(struct.detector_bk_measurement_id.replace("\\","/"));
|
||||||
|
information.setGasBkgdMeasurementID(struct.gas_bk_measurement_id.replace("\\","/"));
|
||||||
|
information.setSampleRefId(struct.sample_ref_id);
|
||||||
|
String collect_start_str = struct.collection_start_date+" "+struct.collection_start_time;
|
||||||
|
Date collect_start = DateUtils.parseDate(collect_start_str.substring(0, collect_start_str.indexOf(StringPool.DOT)), "yyyy/MM/dd HH:mm:ss");
|
||||||
|
information.setCollect_start(collect_start);
|
||||||
|
String collect_stop_str = struct.collection_stop_date+" "+struct.collection_stop_time;
|
||||||
|
Date collect_stop = DateUtils.parseDate(collect_stop_str.substring(0, collect_stop_str.indexOf(StringPool.DOT)), "yyyy/MM/dd HH:mm:ss");
|
||||||
|
information.setCollect_stop(collect_stop);
|
||||||
|
information.setS_xe_stable_volume(struct.air_volume);
|
||||||
|
String acquisition_start_str = struct.acquisition_start_date+" "+struct.acquisition_start_time;
|
||||||
|
Date acquisition_start = DateUtils.parseDate(acquisition_start_str.substring(0, acquisition_start_str.indexOf(StringPool.DOT)), "yyyy/MM/dd HH:mm:ss");
|
||||||
|
information.setAcquisition_start(acquisition_start);
|
||||||
|
double dataTime = acquisition_start.getTime()/1000;
|
||||||
|
dataTime = dataTime + struct.acquisition_live_time;
|
||||||
|
String acquisition_stop_str = DateUtils.formatDate(new Date((long) (dataTime * 1000)), "yyyy-MM-dd HH:mm:ss");
|
||||||
|
Date acquisition_stop = DateUtils.parseDate(acquisition_stop_str, "yyyy-MM-dd HH:mm:ss");
|
||||||
|
information.setAcquisition_stop(acquisition_stop);
|
||||||
|
information.setAcquisition_real_sec(struct.acquisition_real_time);
|
||||||
|
information.setAcquisition_live_sec(struct.acquisition_live_time);
|
||||||
|
information.setS_volume_of_Xe(struct.sample_volume_of_Xe);
|
||||||
|
}
|
||||||
|
} catch (IOException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
} catch (ParseException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
} finally {
|
||||||
|
try {
|
||||||
|
if (Objects.nonNull(ftpClient)){
|
||||||
|
ftpClient.disconnect();
|
||||||
|
}
|
||||||
|
if (ObjectUtil.isNotNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
|
} catch (IOException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
if (StringUtils.isNotBlank(dbSpectrumFilePath.getGasBgFilePath())){
|
||||||
throw new RuntimeException(e);
|
String filePath = dbSpectrumFilePath.getGasBgFilePath();
|
||||||
} finally {
|
String pathName = filePath.substring(0, filePath.lastIndexOf(StringPool.SLASH));
|
||||||
try {
|
String fileName = filePath.substring(filePath.lastIndexOf(StringPool.SLASH)+1);
|
||||||
if (Objects.nonNull(ftpClient)){
|
FTPClient ftpClient = ftpUtil.LoginFTP();
|
||||||
ftpClient.disconnect();
|
if (Objects.isNull(ftpClient)){
|
||||||
|
result.error500("ftp连接失败");
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
|
try {
|
||||||
|
//切换被动模式
|
||||||
|
ftpClient.enterLocalPassiveMode();
|
||||||
|
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
|
||||||
|
// 设置编码,当文件中存在中文且上传后文件乱码时可使用此配置项
|
||||||
|
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)){
|
||||||
|
result.error500("ftp下对应文件不存在");
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
FTPFile ftpFile = ftpFiles.get(0);
|
||||||
|
if (Objects.nonNull(ftpFile)){
|
||||||
|
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
|
||||||
|
//声明一个临时文件
|
||||||
|
File file = File.createTempFile("tmp", null);
|
||||||
|
//将ftp文件的输入流复制给临时文件
|
||||||
|
FileUtils.copyInputStreamToFile(inputStream, file);
|
||||||
|
//加载dll工具库
|
||||||
|
System.loadLibrary("ReadPHDFile");
|
||||||
|
EnergySpectrumStruct struct = EnergySpectrumHandler.getSourceData(file.getAbsolutePath());
|
||||||
|
|
||||||
|
information.setGas_measid_name(struct.measurement_id);
|
||||||
|
}
|
||||||
|
} catch (IOException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
} finally {
|
||||||
|
try {
|
||||||
|
if (Objects.nonNull(ftpClient)){
|
||||||
|
ftpClient.disconnect();
|
||||||
|
}
|
||||||
|
if (ObjectUtil.isNotNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
|
} catch (IOException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (StringUtils.isNotBlank(dbSpectrumFilePath.getDetBgFilePath())){
|
||||||
|
String filePath = dbSpectrumFilePath.getDetBgFilePath();
|
||||||
|
String pathName = filePath.substring(0, filePath.lastIndexOf(StringPool.SLASH));
|
||||||
|
String fileName = filePath.substring(filePath.lastIndexOf(StringPool.SLASH)+1);
|
||||||
|
FTPClient ftpClient = ftpUtil.LoginFTP();
|
||||||
|
if (Objects.isNull(ftpClient)){
|
||||||
|
result.error500("ftp连接失败");
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
|
try {
|
||||||
|
//切换被动模式
|
||||||
|
ftpClient.enterLocalPassiveMode();
|
||||||
|
ftpClient.setFileType(FTPClient.BINARY_FILE_TYPE);
|
||||||
|
// 设置编码,当文件中存在中文且上传后文件乱码时可使用此配置项
|
||||||
|
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)){
|
||||||
|
result.error500("ftp下对应文件不存在");
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
FTPFile ftpFile = ftpFiles.get(0);
|
||||||
|
if (Objects.nonNull(ftpFile)){
|
||||||
|
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
|
||||||
|
//声明一个临时文件
|
||||||
|
File file = File.createTempFile("tmp", null);
|
||||||
|
//将ftp文件的输入流复制给临时文件
|
||||||
|
FileUtils.copyInputStreamToFile(inputStream, file);
|
||||||
|
//加载dll工具库
|
||||||
|
System.loadLibrary("ReadPHDFile");
|
||||||
|
EnergySpectrumStruct struct = EnergySpectrumHandler.getSourceData(file.getAbsolutePath());
|
||||||
|
|
||||||
|
information.setDet_measid_name(struct.measurement_id);
|
||||||
|
}
|
||||||
|
} catch (IOException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
} finally {
|
||||||
|
try {
|
||||||
|
if (Objects.nonNull(ftpClient)){
|
||||||
|
ftpClient.disconnect();
|
||||||
|
}
|
||||||
|
if (ObjectUtil.isNotNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
|
} catch (IOException e) {
|
||||||
|
throw new RuntimeException(e);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
|
||||||
throw new RuntimeException(e);
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
//#SAMPLE: LIMITS PER ROI GAMMA
|
||||||
|
GardsCalibrationSpectrum gammaCalibrationParam = spectrumAnalysisMapper.ReadGammaCalibrationParam(dbName, analysisID, sampleId);
|
||||||
|
//#SAMPLE: LIMITS PER ROI BETA
|
||||||
|
GardsCalibrationSpectrum betaCalibrationParam = spectrumAnalysisMapper.ReadBetaCalibrationParam(dbName, analysisID, sampleId);
|
||||||
|
//#SAMPLE: LIMITS PER ROI
|
||||||
|
List<GardsROIChannelsSpectrum> channelsSpectrums = spectrumAnalysisMapper.ReadROIChannels(dbName, analysisID, sampleId);
|
||||||
|
//#GROSS COUNTS PER ROI
|
||||||
|
List<GardsROIResultsSpectrum> resultsSpectrums = spectrumAnalysisMapper.ReadROIResults(dbName, analysisID, sampleId);
|
||||||
|
//#RESULT SUMMARY
|
||||||
|
List<GardsXeResultsSpectrum> xeResultsSpectrums = spectrumAnalysisMapper.ReadXeResults(dbName, analysisID, sampleId);
|
||||||
|
StringBuffer strBuffer = new StringBuffer();
|
||||||
|
strBuffer.append("CNL06 GENERATED REPORT").append("\n");
|
||||||
|
strBuffer.append("REVIEWED RADIONUCLIDE REPORT").append("\n");
|
||||||
|
strBuffer.append("(Noble Gas Version)").append("\n");
|
||||||
|
strBuffer.append("Creation Date "+DateUtils.formatDate(new Date(), "yyyy/MM/dd-HH:mm:ss")).append("\n");
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#FILE INFORMATION").append("\n");
|
||||||
|
strBuffer.append(" SampleMeasID: ").append(information.getMeasurementID()).append("\n");
|
||||||
|
strBuffer.append(" GASBKMeasID: ").append(information.getGasBkgdMeasurementID()).append("\n");
|
||||||
|
strBuffer.append(" SRID: ").append(information.getSampleRefId()).append("\n");
|
||||||
|
strBuffer.append(" Detector Type: ").append("3D b-g").append("\n");
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#COLLECTION INFORMATION").append("\n");
|
||||||
|
strBuffer.append(" Station CODE: ").append(information.getSit_det_code()).append("\n");
|
||||||
|
strBuffer.append(" Detector CODE: ").append(information.getDetect_code()).append("\n");
|
||||||
|
strBuffer.append(" Collection Start: ").append(information.getCollect_start()).append("\n");
|
||||||
|
strBuffer.append(" Collection Stop: ").append(information.getCollect_stop()).append("\n");
|
||||||
|
strBuffer.append(" Collection TIME(h): ").append((information.getCollect_stop().getTime()/1000-information.getCollect_start().getTime()/1000)/3600).append("\n");
|
||||||
|
strBuffer.append(" Air Volume[cm3]: ").append(information.getS_xe_stable_volume()).append("\n");
|
||||||
|
strBuffer.append(" Xe Volume[cm3]: ").append(information.getS_volume_of_Xe()).append("\n");
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#ACQUISITION INFORMATION").append("\n");
|
||||||
|
strBuffer.append(" Acquisition Start: ").append(information.getAcquisition_start()).append("\n");
|
||||||
|
strBuffer.append(" Acq Real Time(s): ").append(information.getAcquisition_real_sec()).append("\n");
|
||||||
|
strBuffer.append(" Acq Live Time: ").append(information.getAcquisition_live_sec()).append("\n");
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#SOFTWARE").append("\n");
|
||||||
|
strBuffer.append(" version: ").append("1.0.1").append("\n");
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#SAMPLE Old CALIBRATION").append("\n");
|
||||||
|
strBuffer.append(" Old Beta Old Gamma ").append("\n");
|
||||||
|
if (sampleData){
|
||||||
|
strBuffer.append(" CH(x) = (?1)+(?2)*x+(?3)x*x ").append(" CH(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
strBuffer.append(" E(x) = (?1)+(?2)*x+(?3)x*x ").append(" E(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
}else {
|
||||||
|
strBuffer.append(" CH(x) = (?1)+(?2)*x+(?3)x*x ").append(" CH(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
strBuffer.append(" E(x) = (?1)+(?2)*x+(?3)x*x ").append(" E(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
}
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#SAMPLE New CALIBRATION").append("\n");
|
||||||
|
strBuffer.append(" New Beta New Gamma ").append("\n");
|
||||||
|
strBuffer.append(" CH(x) = (?1)+(?2)*x+(?3)x*x ").append(" CH(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
strBuffer.append(" E(x) = ("+betaCalibrationParam.getCoeff1()+")+("+betaCalibrationParam.getCoeff2()+")*x+("+betaCalibrationParam.getCoeff3()+")x*x ").append(" E(x) = ("+gammaCalibrationParam.getCoeff1()+")+("+gammaCalibrationParam.getCoeff2()+")*x+("+gammaCalibrationParam.getCoeff3()+")x*x").append("\n");
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#SAMPLE: LIMITS PER ROI").append("\n");
|
||||||
|
strBuffer.append(" Roi Beta Gamma ").append("\n");
|
||||||
|
for (GardsROIChannelsSpectrum channelsSpectrum:channelsSpectrums) {
|
||||||
|
strBuffer.append(" "+channelsSpectrum.getRoi()+" "+channelsSpectrum.getBChanStart()+"to"+channelsSpectrum.getBChanStop()+" "+channelsSpectrum.getGChanStart()+"to"+channelsSpectrum.getGChanStop()).append("\n");
|
||||||
|
}
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#DET Old CALIBRATION").append("\n");
|
||||||
|
strBuffer.append(" Old Beta Old Gamma ").append("\n");
|
||||||
|
if (DetBgData){
|
||||||
|
strBuffer.append(" CH(x) = (?1)+(?2)*x+(?3)x*x ").append(" CH(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
strBuffer.append(" E(x) = (?1)+(?2)*x+(?3)x*x ").append(" E(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
}else {
|
||||||
|
strBuffer.append(" CH(x) = (?1)+(?2)*x+(?3)x*x ").append(" CH(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
strBuffer.append(" E(x) = (?1)+(?2)*x+(?3)x*x ").append(" E(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
}
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#DET New CALIBRATION").append("\n");
|
||||||
|
strBuffer.append(" New Beta New Gamma ").append("\n");
|
||||||
|
strBuffer.append(" CH(x) = (?1)+(?2)*x+(?3)x*x ").append(" CH(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
strBuffer.append(" E(x) = ("+gammaCalibrationParam.getCoeff1()+")+("+gammaCalibrationParam.getCoeff2()+")*x+("+gammaCalibrationParam.getCoeff3()+")x*x ").append(" E(x) = ("+gammaCalibrationParam.getCoeff1()+")+("+gammaCalibrationParam.getCoeff2()+")*x+("+gammaCalibrationParam.getCoeff3()+")x*x").append("\n");
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#DET: LIMITS PER ROI").append("\n");
|
||||||
|
strBuffer.append(" Roi Beta Gamma ").append("\n");
|
||||||
|
for (GardsROIChannelsSpectrum channelsSpectrum:channelsSpectrums) {
|
||||||
|
strBuffer.append(" "+channelsSpectrum.getRoi()+" "+channelsSpectrum.getBChanStart()+"to"+channelsSpectrum.getBChanStop()+" "+channelsSpectrum.getGChanStart()+"to"+channelsSpectrum.getGChanStop()).append("\n");
|
||||||
|
}
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#GAS Old CALIBRATION").append("\n");
|
||||||
|
strBuffer.append(" Old Beta Old Gamma ").append("\n");
|
||||||
|
if (GasBgData){
|
||||||
|
strBuffer.append(" CH(x) = (?1)+(?2)*x+(?3)x*x ").append(" CH(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
strBuffer.append(" E(x) = (?1)+(?2)*x+(?3)x*x ").append(" E(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
}else {
|
||||||
|
strBuffer.append(" CH(x) = (?1)+(?2)*x+(?3)x*x ").append(" CH(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
strBuffer.append(" E(x) = (?1)+(?2)*x+(?3)x*x ").append(" E(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
}
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#GAS New CALIBRATION").append("\n");
|
||||||
|
strBuffer.append(" New Beta New Gamma ").append("\n");
|
||||||
|
strBuffer.append(" CH(x) = (?1)+(?2)*x+(?3)x*x ").append(" CH(x) = (?1)+(?2)*x+(?3)x*x").append("\n");
|
||||||
|
strBuffer.append(" E(x) = ("+betaCalibrationParam.getCoeff1()+")+("+betaCalibrationParam.getCoeff2()+")*x+("+betaCalibrationParam.getCoeff3()+")x*x ").append(" E(x) = ("+gammaCalibrationParam.getCoeff1()+")+("+gammaCalibrationParam.getCoeff2()+")*x+("+gammaCalibrationParam.getCoeff3()+")x*x").append("\n");
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#GAS: LIMITS PER ROI").append("\n");
|
||||||
|
strBuffer.append(" Roi Beta Gamma ").append("\n");
|
||||||
|
for (GardsROIChannelsSpectrum channelsSpectrum:channelsSpectrums) {
|
||||||
|
strBuffer.append(" "+channelsSpectrum.getRoi()+" "+channelsSpectrum.getBChanStart()+"to"+channelsSpectrum.getBChanStop()+" "+channelsSpectrum.getGChanStart()+"to"+channelsSpectrum.getGChanStop()).append("\n");
|
||||||
|
}
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#GROSS COUNTS PER ROI").append("\n");
|
||||||
|
strBuffer.append(" Roi Sample GasBkgnd DetBkgnd ").append("\n");
|
||||||
|
for (GardsROIResultsSpectrum resultsSpectrum:resultsSpectrums) {
|
||||||
|
strBuffer.append(" "+resultsSpectrum.getRoi()+" "+resultsSpectrum.getSGross()+" "+resultsSpectrum.getGGross()+" "+resultsSpectrum.getBGross()+"").append("\n");
|
||||||
|
}
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#NET COUNTS AND LC PER ROI").append("\n");
|
||||||
|
strBuffer.append(" Roi Net count ").append("\n");
|
||||||
|
for (GardsROIResultsSpectrum resultsSpectrum:resultsSpectrums){
|
||||||
|
strBuffer.append(" "+resultsSpectrum.getRoi()+" "+resultsSpectrum.getNet()+" +/- "+Math.sqrt(resultsSpectrum.getNetErr())).append("\n");
|
||||||
|
}
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#CONCENTRATION AND LC PER ROI").append("\n");
|
||||||
|
strBuffer.append(" Roi Conc(mBq/m3) LC(mBq/m3) MDC(mBq/m3): ");
|
||||||
|
for (GardsROIResultsSpectrum resultsSpectrum:resultsSpectrums){
|
||||||
|
strBuffer.append(" "+resultsSpectrum.getRoi()+" "+resultsSpectrum.getConcErr()+" +/- "+resultsSpectrum.getConcErr()+" "+resultsSpectrum.getLc()+" "+resultsSpectrum.getMdc()).append("\n");
|
||||||
|
}
|
||||||
|
strBuffer.append("\n");
|
||||||
|
strBuffer.append("#RESULT SUMMARY").append("\n");
|
||||||
|
strBuffer.append(" Nuclide Name Conc LC MDC NID Flag ").append("\n");
|
||||||
|
for (GardsXeResultsSpectrum xeResultsSpectrum:xeResultsSpectrums) {
|
||||||
|
strBuffer.append(" "+xeResultsSpectrum.getNuclideName()+" "+xeResultsSpectrum.getConc()+" +/- "+xeResultsSpectrum.getConcErr()+" "+xeResultsSpectrum.getLc()+" "+xeResultsSpectrum.getMdc()+" "+xeResultsSpectrum.getNidFlag()).append("\n");
|
||||||
|
}
|
||||||
|
strBuffer.append("\n");
|
||||||
|
|
||||||
|
result.setSuccess(true);
|
||||||
|
result.setResult(strBuffer);
|
||||||
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -515,6 +806,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
result.error500("ftp连接失败");
|
result.error500("ftp连接失败");
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
try {
|
try {
|
||||||
//切换被动模式
|
//切换被动模式
|
||||||
ftpClient.enterLocalPassiveMode();
|
ftpClient.enterLocalPassiveMode();
|
||||||
|
@ -532,7 +824,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}
|
}
|
||||||
FTPFile ftpFile = ftpFiles.get(0);
|
FTPFile ftpFile = ftpFiles.get(0);
|
||||||
if (Objects.nonNull(ftpFile)){
|
if (Objects.nonNull(ftpFile)){
|
||||||
InputStream inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
|
inputStream = ftpClient.retrieveFileStream(ftpFile.getName());
|
||||||
//声明一个临时文件
|
//声明一个临时文件
|
||||||
File file = File.createTempFile("tmp", null);
|
File file = File.createTempFile("tmp", null);
|
||||||
//将ftp文件的输入流复制给临时文件
|
//将ftp文件的输入流复制给临时文件
|
||||||
|
@ -596,6 +888,9 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.nonNull(ftpClient)){
|
if (Objects.nonNull(ftpClient)){
|
||||||
ftpClient.disconnect();
|
ftpClient.disconnect();
|
||||||
}
|
}
|
||||||
|
if (Objects.nonNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
@ -635,7 +930,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
result.error500("ftp连接失败");
|
result.error500("ftp连接失败");
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
try {
|
try {
|
||||||
//切换被动模式
|
//切换被动模式
|
||||||
ftpClient.enterLocalPassiveMode();
|
ftpClient.enterLocalPassiveMode();
|
||||||
|
@ -656,7 +951,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}
|
}
|
||||||
FTPFile sampleFtpFile = sampleFtpFiles.get(0);
|
FTPFile sampleFtpFile = sampleFtpFiles.get(0);
|
||||||
if (Objects.nonNull(sampleFtpFile)){
|
if (Objects.nonNull(sampleFtpFile)){
|
||||||
InputStream inputStream = ftpClient.retrieveFileStream(sampleFtpFile.getName());
|
inputStream = ftpClient.retrieveFileStream(sampleFtpFile.getName());
|
||||||
//声明一个临时文件
|
//声明一个临时文件
|
||||||
File file = File.createTempFile("tmp", null);
|
File file = File.createTempFile("tmp", null);
|
||||||
//将ftp文件的输入流复制给临时文件
|
//将ftp文件的输入流复制给临时文件
|
||||||
|
@ -688,9 +983,6 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}else {
|
}else {
|
||||||
qcResult.setXenonVolumeStatus("Failed");
|
qcResult.setXenonVolumeStatus("Failed");
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(inputStream)){
|
|
||||||
inputStream.close();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
|
@ -701,6 +993,9 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.nonNull(ftpClient)){
|
if (Objects.nonNull(ftpClient)){
|
||||||
ftpClient.disconnect();
|
ftpClient.disconnect();
|
||||||
}
|
}
|
||||||
|
if (Objects.nonNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
@ -712,6 +1007,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
result.error500("ftp连接失败");
|
result.error500("ftp连接失败");
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
try {
|
try {
|
||||||
//切换被动模式
|
//切换被动模式
|
||||||
ftpClient.enterLocalPassiveMode();
|
ftpClient.enterLocalPassiveMode();
|
||||||
|
@ -732,7 +1028,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}
|
}
|
||||||
FTPFile gasBgFtpFile = gasBgFtpFiles.get(0);
|
FTPFile gasBgFtpFile = gasBgFtpFiles.get(0);
|
||||||
if (Objects.nonNull(gasBgFtpFile)){
|
if (Objects.nonNull(gasBgFtpFile)){
|
||||||
InputStream inputStream = ftpClient.retrieveFileStream(gasBgFtpFile.getName());
|
inputStream = ftpClient.retrieveFileStream(gasBgFtpFile.getName());
|
||||||
//声明一个临时文件
|
//声明一个临时文件
|
||||||
File file = File.createTempFile("tmp", null);
|
File file = File.createTempFile("tmp", null);
|
||||||
//将ftp文件的输入流复制给临时文件
|
//将ftp文件的输入流复制给临时文件
|
||||||
|
@ -744,9 +1040,6 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}else {
|
}else {
|
||||||
qcResult.setGasBgValueAndStatus(false);
|
qcResult.setGasBgValueAndStatus(false);
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(inputStream)){
|
|
||||||
inputStream.close();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
|
@ -755,6 +1048,9 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.nonNull(ftpClient)){
|
if (Objects.nonNull(ftpClient)){
|
||||||
ftpClient.disconnect();
|
ftpClient.disconnect();
|
||||||
}
|
}
|
||||||
|
if (Objects.nonNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
@ -766,6 +1062,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
result.error500("ftp连接失败");
|
result.error500("ftp连接失败");
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
try {
|
try {
|
||||||
//切换被动模式
|
//切换被动模式
|
||||||
ftpClient.enterLocalPassiveMode();
|
ftpClient.enterLocalPassiveMode();
|
||||||
|
@ -786,7 +1083,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}
|
}
|
||||||
FTPFile detBgFtpFile = detBgFtpFiles.get(0);
|
FTPFile detBgFtpFile = detBgFtpFiles.get(0);
|
||||||
if (Objects.nonNull(detBgFtpFile)){
|
if (Objects.nonNull(detBgFtpFile)){
|
||||||
InputStream inputStream = ftpClient.retrieveFileStream(detBgFtpFile.getName());
|
inputStream = ftpClient.retrieveFileStream(detBgFtpFile.getName());
|
||||||
//声明一个临时文件
|
//声明一个临时文件
|
||||||
File file = File.createTempFile("tmp", null);
|
File file = File.createTempFile("tmp", null);
|
||||||
//将ftp文件的输入流复制给临时文件
|
//将ftp文件的输入流复制给临时文件
|
||||||
|
@ -798,9 +1095,6 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}else {
|
}else {
|
||||||
qcResult.setDetBgValueAndStatus(false);
|
qcResult.setDetBgValueAndStatus(false);
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(inputStream)){
|
|
||||||
inputStream.close();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
|
@ -809,6 +1103,9 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.nonNull(ftpClient)){
|
if (Objects.nonNull(ftpClient)){
|
||||||
ftpClient.disconnect();
|
ftpClient.disconnect();
|
||||||
}
|
}
|
||||||
|
if (Objects.nonNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
@ -840,6 +1137,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
result.error500("ftp连接失败");
|
result.error500("ftp连接失败");
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
//查询数据库中结果的Xe数据
|
//查询数据库中结果的Xe数据
|
||||||
List<GardsXeResultsSpectrum> xeDataList = spectrumAnalysisMapper.getXeDataList(sampleId);
|
List<GardsXeResultsSpectrum> xeDataList = spectrumAnalysisMapper.getXeDataList(sampleId);
|
||||||
try {
|
try {
|
||||||
|
@ -862,7 +1160,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}
|
}
|
||||||
FTPFile sampleFtpFile = sampleFtpFiles.get(0);
|
FTPFile sampleFtpFile = sampleFtpFiles.get(0);
|
||||||
if (Objects.nonNull(sampleFtpFile)){
|
if (Objects.nonNull(sampleFtpFile)){
|
||||||
InputStream inputStream = ftpClient.retrieveFileStream(sampleFtpFile.getName());
|
inputStream = ftpClient.retrieveFileStream(sampleFtpFile.getName());
|
||||||
//声明一个临时文件
|
//声明一个临时文件
|
||||||
File file = File.createTempFile("tmp", null);
|
File file = File.createTempFile("tmp", null);
|
||||||
//将ftp文件的输入流复制给临时文件
|
//将ftp文件的输入流复制给临时文件
|
||||||
|
@ -910,9 +1208,6 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
rlrDataValues.setXe135_MDC(String.valueOf(xe135.getMdc()));
|
rlrDataValues.setXe135_MDC(String.valueOf(xe135.getMdc()));
|
||||||
rlrDataValues.setXe135_LC(String.valueOf(xe135.getLc()));
|
rlrDataValues.setXe135_LC(String.valueOf(xe135.getLc()));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(inputStream)){
|
|
||||||
inputStream.close();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
@ -922,6 +1217,9 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.nonNull(ftpClient)){
|
if (Objects.nonNull(ftpClient)){
|
||||||
ftpClient.disconnect();
|
ftpClient.disconnect();
|
||||||
}
|
}
|
||||||
|
if (Objects.nonNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
@ -943,6 +1241,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
result.error500("ftp连接失败");
|
result.error500("ftp连接失败");
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
try {
|
try {
|
||||||
if (StringUtils.isNotBlank(dbQcFilePath)){
|
if (StringUtils.isNotBlank(dbQcFilePath)){
|
||||||
String qcPathName = dbQcFilePath.substring(0, dbQcFilePath.lastIndexOf(StringPool.SLASH));
|
String qcPathName = dbQcFilePath.substring(0, dbQcFilePath.lastIndexOf(StringPool.SLASH));
|
||||||
|
@ -957,7 +1256,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}
|
}
|
||||||
FTPFile qcFtpFile = qcFtpFiles.get(0);
|
FTPFile qcFtpFile = qcFtpFiles.get(0);
|
||||||
if (Objects.nonNull(qcFtpFile)){
|
if (Objects.nonNull(qcFtpFile)){
|
||||||
InputStream inputStream = ftpClient.retrieveFileStream(qcFtpFile.getName());
|
inputStream = ftpClient.retrieveFileStream(qcFtpFile.getName());
|
||||||
//声明一个临时文件
|
//声明一个临时文件
|
||||||
File file = File.createTempFile("tmp", null);
|
File file = File.createTempFile("tmp", null);
|
||||||
//将ftp文件的输入流复制给临时文件
|
//将ftp文件的输入流复制给临时文件
|
||||||
|
@ -1042,9 +1341,6 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
map.put("min", min);
|
map.put("min", min);
|
||||||
map.put("max", max);
|
map.put("max", max);
|
||||||
map.put("gammaSpectrum", seriseDataList);
|
map.put("gammaSpectrum", seriseDataList);
|
||||||
if (Objects.nonNull(inputStream)){
|
|
||||||
inputStream.close();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
@ -1054,6 +1350,9 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.nonNull(ftpClient)){
|
if (Objects.nonNull(ftpClient)){
|
||||||
ftpClient.disconnect();
|
ftpClient.disconnect();
|
||||||
}
|
}
|
||||||
|
if (Objects.nonNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
@ -1075,6 +1374,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
result.error500("ftp连接失败");
|
result.error500("ftp连接失败");
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
try {
|
try {
|
||||||
//切换被动模式
|
//切换被动模式
|
||||||
ftpClient.enterLocalPassiveMode();
|
ftpClient.enterLocalPassiveMode();
|
||||||
|
@ -1095,7 +1395,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}
|
}
|
||||||
FTPFile qcFtpFile = qcFtpFiles.get(0);
|
FTPFile qcFtpFile = qcFtpFiles.get(0);
|
||||||
if (Objects.nonNull(qcFtpFile)){
|
if (Objects.nonNull(qcFtpFile)){
|
||||||
InputStream inputStream = ftpClient.retrieveFileStream(qcFtpFile.getName());
|
inputStream = ftpClient.retrieveFileStream(qcFtpFile.getName());
|
||||||
//声明一个临时文件
|
//声明一个临时文件
|
||||||
File file = File.createTempFile("tmp", null);
|
File file = File.createTempFile("tmp", null);
|
||||||
//将ftp文件的输入流复制给临时文件
|
//将ftp文件的输入流复制给临时文件
|
||||||
|
@ -1183,9 +1483,6 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
fittingParaToUiStr.add(String.valueOf(para));
|
fittingParaToUiStr.add(String.valueOf(para));
|
||||||
}
|
}
|
||||||
map.put("EToC", fittingParaToUiStr);
|
map.put("EToC", fittingParaToUiStr);
|
||||||
if (Objects.nonNull(inputStream)){
|
|
||||||
inputStream.close();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
|
@ -1195,6 +1492,9 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.nonNull(ftpClient)){
|
if (Objects.nonNull(ftpClient)){
|
||||||
ftpClient.disconnect();
|
ftpClient.disconnect();
|
||||||
}
|
}
|
||||||
|
if (Objects.nonNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
@ -1216,6 +1516,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
result.error500("ftp连接失败");
|
result.error500("ftp连接失败");
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
if (StringUtils.isNotBlank(sampleFilePath)){
|
if (StringUtils.isNotBlank(sampleFilePath)){
|
||||||
String samplePathName = sampleFilePath.substring(0, sampleFilePath.lastIndexOf(StringPool.SLASH));
|
String samplePathName = sampleFilePath.substring(0, sampleFilePath.lastIndexOf(StringPool.SLASH));
|
||||||
String sampleFileName = sampleFilePath.substring(sampleFilePath.lastIndexOf(StringPool.SLASH)+1);
|
String sampleFileName = sampleFilePath.substring(sampleFilePath.lastIndexOf(StringPool.SLASH)+1);
|
||||||
|
@ -1237,7 +1538,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
FTPFile sampleFtpFile = sampleFtpFiles.get(0);
|
FTPFile sampleFtpFile = sampleFtpFiles.get(0);
|
||||||
if (Objects.nonNull(sampleFtpFile)){
|
if (Objects.nonNull(sampleFtpFile)){
|
||||||
//获取ftp文件的输入流
|
//获取ftp文件的输入流
|
||||||
InputStream inputStream = ftpClient.retrieveFileStream(sampleFtpFile.getName());
|
inputStream = ftpClient.retrieveFileStream(sampleFtpFile.getName());
|
||||||
//声明一个临时文件
|
//声明一个临时文件
|
||||||
File file = File.createTempFile("tmp", null);
|
File file = File.createTempFile("tmp", null);
|
||||||
//ftp文件输入流复制给临时文件
|
//ftp文件输入流复制给临时文件
|
||||||
|
@ -1309,9 +1610,6 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
betaProjectedSeriseData.add(temp);
|
betaProjectedSeriseData.add(temp);
|
||||||
}
|
}
|
||||||
map.put("betaProjectedSeriseData", betaProjectedSeriseData);
|
map.put("betaProjectedSeriseData", betaProjectedSeriseData);
|
||||||
if (Objects.nonNull(inputStream)){
|
|
||||||
inputStream.close();
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
|
@ -1320,6 +1618,9 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.nonNull(ftpClient)){
|
if (Objects.nonNull(ftpClient)){
|
||||||
ftpClient.disconnect();
|
ftpClient.disconnect();
|
||||||
}
|
}
|
||||||
|
if (Objects.nonNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
@ -1814,6 +2115,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
result.error500("ftp连接失败");
|
result.error500("ftp连接失败");
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
InputStream inputStream = null;
|
||||||
try {
|
try {
|
||||||
//切换被动模式
|
//切换被动模式
|
||||||
ftpClient.enterLocalPassiveMode();
|
ftpClient.enterLocalPassiveMode();
|
||||||
|
@ -1834,7 +2136,7 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
}
|
}
|
||||||
FTPFile qcFtpFile = qcFtpFiles.get(0);
|
FTPFile qcFtpFile = qcFtpFiles.get(0);
|
||||||
if (Objects.nonNull(qcFtpFile)){
|
if (Objects.nonNull(qcFtpFile)){
|
||||||
InputStream inputStream = ftpClient.retrieveFileStream(qcFtpFile.getName());
|
inputStream = ftpClient.retrieveFileStream(qcFtpFile.getName());
|
||||||
//声明一个临时文件
|
//声明一个临时文件
|
||||||
File file = File.createTempFile("tmp", null);
|
File file = File.createTempFile("tmp", null);
|
||||||
//将ftp文件的输入流复制给临时文件
|
//将ftp文件的输入流复制给临时文件
|
||||||
|
@ -1867,6 +2169,9 @@ public class SpectrumAnalysisServiceImpl implements ISpectrumAnalysisService {
|
||||||
if (Objects.nonNull(ftpClient)){
|
if (Objects.nonNull(ftpClient)){
|
||||||
ftpClient.disconnect();
|
ftpClient.disconnect();
|
||||||
}
|
}
|
||||||
|
if (Objects.nonNull(inputStream)){
|
||||||
|
inputStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,6 +45,7 @@ public class ReadLineUtil {
|
||||||
if (Objects.isNull(ftpClient)){
|
if (Objects.isNull(ftpClient)){
|
||||||
throw new RuntimeException("ftp连接失败!");
|
throw new RuntimeException("ftp连接失败!");
|
||||||
}
|
}
|
||||||
|
InputStream iStream = null;
|
||||||
try {
|
try {
|
||||||
ftpClient.enterLocalPassiveMode();
|
ftpClient.enterLocalPassiveMode();
|
||||||
String fileName = filePath.substring(filePath.lastIndexOf(StringPool.SLASH) + 1);
|
String fileName = filePath.substring(filePath.lastIndexOf(StringPool.SLASH) + 1);
|
||||||
|
@ -62,7 +63,7 @@ public class ReadLineUtil {
|
||||||
for (FTPFile ftpFile:ftpFiles) {
|
for (FTPFile ftpFile:ftpFiles) {
|
||||||
if (ftpFile.getName().equals(fileName)){
|
if (ftpFile.getName().equals(fileName)){
|
||||||
//读取ftp文件的输入流
|
//读取ftp文件的输入流
|
||||||
InputStream iStream=ftpClient.retrieveFileStream(ftpFile.getName());
|
iStream=ftpClient.retrieveFileStream(ftpFile.getName());
|
||||||
//声明一个临时文件
|
//声明一个临时文件
|
||||||
File file = File.createTempFile("tmp", null);
|
File file = File.createTempFile("tmp", null);
|
||||||
//将ftp文件的输入流复制给临时文件
|
//将ftp文件的输入流复制给临时文件
|
||||||
|
@ -88,7 +89,12 @@ public class ReadLineUtil {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
} finally {
|
} finally {
|
||||||
try {
|
try {
|
||||||
ftpClient.disconnect();
|
if (Objects.nonNull(ftpClient)){
|
||||||
|
ftpClient.disconnect();
|
||||||
|
}
|
||||||
|
if (Objects.nonNull(iStream)){
|
||||||
|
iStream.close();
|
||||||
|
}
|
||||||
} catch (IOException e) {
|
} catch (IOException e) {
|
||||||
throw new RuntimeException(e);
|
throw new RuntimeException(e);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user