diff --git a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/Prepare_G_Analysis.java b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/Prepare_G_Analysis.java deleted file mode 100644 index c3719cb4..00000000 --- a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/Prepare_G_Analysis.java +++ /dev/null @@ -1,92 +0,0 @@ -package org.jeecg.modules.spectrum; - -import cn.hutool.core.util.StrUtil; -import org.jeecg.common.constant.Setting; -import org.jeecg.modules.base.entity.configuration.GardsNuclLinesLib; -import org.jeecg.modules.base.vo.PHDFile; -import org.jeecg.modules.base.vo.SpecSetup; -import org.jeecg.modules.service.GardsAnalysesService; -import org.jeecg.modules.service.IGardsGammaDefaultParamsService; -import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.stereotype.Component; - -import java.util.List; -import java.util.Map; - -@Component -public class Prepare_G_Analysis { - - @Autowired - private IGardsGammaDefaultParamsService gammaDefaultParamsService; - - @Autowired - private GardsAnalysesService analysesService; - - public PHDFile getSettingFromDB(String systemType){ - Map mapSetting = gammaDefaultParamsService.mapSetting(); - PHDFile phdFile = new PHDFile(); - SpecSetup setting = phdFile.getSetting(); - String BaseImprovePSS = mapSetting.get(Setting.BASEIMPROVEPSS); - if (StrUtil.isNotBlank(BaseImprovePSS)) - setting.setBaseImprovePSS(Double.parseDouble(BaseImprovePSS)); - String CalibrationPSS_low = mapSetting.get(Setting.CALIBRATIONPSS_LOW); - if (StrUtil.isNotBlank(CalibrationPSS_low)) - setting.setCalibrationPSS_low(Double.parseDouble(CalibrationPSS_low)); - String CalibrationPSS_high = mapSetting.get(Setting.CALIBRATIONPSS_HIGH); - if (StrUtil.isNotBlank(CalibrationPSS_high)) - setting.setCalibrationPSS_high(Double.parseDouble(CalibrationPSS_high)); - String ECutAnalysis_High = mapSetting.get(Setting.ECUTANALYSIS_HIGH); - if (StrUtil.isNotBlank(ECutAnalysis_High)){ - setting.setECutAnalysis_High(Double.parseDouble(ECutAnalysis_High)); - }else { - setting.setECutAnalysis_High(Double.POSITIVE_INFINITY); - } - if (StrUtil.equals(systemType,"P")){ - String ECutAnalysis_Low = mapSetting.get(Setting.ECUTANALYSIS_LOW_P); - if (StrUtil.isNotBlank(ECutAnalysis_Low)) - setting.setECutAnalysis_Low(Double.parseDouble(ECutAnalysis_Low)); - String bUpdateCal_P = mapSetting.get(Setting.BUPDATECAL_P); - setting.setBUpdateCal(StrUtil.equals(bUpdateCal_P, "1")); - }else { - String ECutAnalysis_Low = mapSetting.get(Setting.ECUTANALYSIS_LOW_G); - if (StrUtil.isNotBlank(ECutAnalysis_Low)) - setting.setECutAnalysis_Low(Double.parseDouble(ECutAnalysis_Low)); - String bUpdateCal_G = mapSetting.get(Setting.BUPDATECAL_G); - setting.setBUpdateCal(StrUtil.equals(bUpdateCal_G, "1")); - } - String EnergyTolerance = mapSetting.get(Setting.ENERGYTOLERANCE); - if (StrUtil.isNotBlank(EnergyTolerance)) - setting.setEnergyTolerance(Double.parseDouble(EnergyTolerance)); - String KeepCalPeakSearchPeaks = mapSetting.get(Setting.KEEPCALPEAKSERCHPEAKS); - setting.setKeepCalPeakSearchPeaks(StrUtil.equals(KeepCalPeakSearchPeaks,"1")); - String k_alpha = mapSetting.get(Setting.K_ALPHA); - if (StrUtil.isNotBlank(k_alpha)) - setting.setK_alpha(Double.parseDouble(k_alpha)); - String k_back = mapSetting.get(Setting.K_BACK); - if (StrUtil.isNotBlank(k_back)) - setting.setK_back(Double.parseDouble(k_back)); - String k_beta = mapSetting.get(Setting.K_BETA); - if (StrUtil.isNotBlank(k_beta)) - setting.setK_beta(Double.parseDouble(k_beta)); - String PSS_low = mapSetting.get(Setting.PSS_LOW); - if (StrUtil.isNotBlank(PSS_low)) - setting.setPSS_low(Double.parseDouble(PSS_low)); - String RiskLevelK = mapSetting.get(Setting.RISKLEVELK); - if (StrUtil.isNotBlank(RiskLevelK)) - setting.setRiskLevelK(Double.parseDouble(RiskLevelK)); - return phdFile; - } - - public Map> getNuclideLinesG(){ - return null; - } - - public Map> getNuclideLinesP(){ - return null; - } - - public void saveAnalysis(){ - - } - -} diff --git a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/Sample_G_Analysis.java b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/Sample_G_Analysis.java index 2fa08136..b1214e11 100644 --- a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/Sample_G_Analysis.java +++ b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/Sample_G_Analysis.java @@ -1,36 +1,147 @@ package org.jeecg.modules.spectrum; +import cn.hutool.core.date.DateUtil; +import cn.hutool.core.util.StrUtil; import lombok.AllArgsConstructor; import lombok.Data; import lombok.NoArgsConstructor; +import org.jeecg.common.constant.DateConstant; +import org.jeecg.common.constant.Setting; import org.jeecg.common.util.SpringContextUtils; +import org.jeecg.modules.base.entity.configuration.GardsNuclLinesLib; +import org.jeecg.modules.base.entity.original.GardsSampleData; +import org.jeecg.modules.base.entity.rnauto.GardsAnalyses; +import org.jeecg.modules.base.entity.rnauto.GardsRoiChannels; +import org.jeecg.modules.base.vo.GStoreMiddleProcessData; import org.jeecg.modules.base.vo.PHDFile; +import org.jeecg.modules.base.vo.SpecSetup; import org.jeecg.modules.native_jni.struct.EnergySpectrumStruct; +import java.util.Date; +import java.util.List; +import java.util.Map; + @Data -@NoArgsConstructor public class Sample_G_Analysis { - // Gamma谱分析前的准备数据 - private Prepare_G_Analysis prepareGAnalysis; + // Sample谱原始数据 + private GardsSampleData sampleData; + + // 分析所需Service + private SpectrumServiceQuotes serviceQuotes; // Sample谱结构体数据 private EnergySpectrumStruct energySpectrumStruct; - public Sample_G_Analysis(EnergySpectrumStruct energySpectrumStruct) { + public Sample_G_Analysis(EnergySpectrumStruct energySpectrumStruct,SpectrumServiceQuotes serviceQuotes, + GardsSampleData sampleData) { + this.sampleData = sampleData; + this.serviceQuotes = serviceQuotes; this.energySpectrumStruct = energySpectrumStruct; } - - public void analysis(){ - init(); - String systemType = energySpectrumStruct.system_type; - PHDFile phdFile = prepareGAnalysis.getSettingFromDB(systemType); - + PHDFile phdFile = getSettingFromDB(); + GStoreMiddleProcessData middleData = new GStoreMiddleProcessData(); + // 保存Gards_Analyses + GardsAnalyses analysis = toAnalysis(middleData); + Integer sampleId = sampleData.getSampleId(); + analysis.setSampleId(sampleId); + serviceQuotes.getAnalysesService().save(analysis); + } - private void init(){ - prepareGAnalysis = SpringContextUtils.getBean(Prepare_G_Analysis.class); + public void getNuclideLinesG(){ + + } + + public void getNuclideLinesP(){ + + } + + public PHDFile getSettingFromDB(){ + Map mapSetting = serviceQuotes.getGammaDefaultParamsService() + .mapSetting(); + PHDFile phdFile = new PHDFile(); + SpecSetup setting = phdFile.getSetting(); + String BaseImprovePSS = mapSetting.get(Setting.BASEIMPROVEPSS); + if (StrUtil.isNotBlank(BaseImprovePSS)) + setting.setBaseImprovePSS(Double.parseDouble(BaseImprovePSS)); + String CalibrationPSS_low = mapSetting.get(Setting.CALIBRATIONPSS_LOW); + if (StrUtil.isNotBlank(CalibrationPSS_low)) + setting.setCalibrationPSS_low(Double.parseDouble(CalibrationPSS_low)); + String CalibrationPSS_high = mapSetting.get(Setting.CALIBRATIONPSS_HIGH); + if (StrUtil.isNotBlank(CalibrationPSS_high)) + setting.setCalibrationPSS_high(Double.parseDouble(CalibrationPSS_high)); + String ECutAnalysis_High = mapSetting.get(Setting.ECUTANALYSIS_HIGH); + if (StrUtil.isNotBlank(ECutAnalysis_High)){ + setting.setECutAnalysis_High(Double.parseDouble(ECutAnalysis_High)); + }else { + setting.setECutAnalysis_High(Double.POSITIVE_INFINITY); + } + String systemType = energySpectrumStruct.system_type; + if (StrUtil.equals(systemType,"P")){ + String ECutAnalysis_Low = mapSetting.get(Setting.ECUTANALYSIS_LOW_P); + if (StrUtil.isNotBlank(ECutAnalysis_Low)) + setting.setECutAnalysis_Low(Double.parseDouble(ECutAnalysis_Low)); + String bUpdateCal_P = mapSetting.get(Setting.BUPDATECAL_P); + setting.setBUpdateCal(StrUtil.equals(bUpdateCal_P, "1")); + }else { + String ECutAnalysis_Low = mapSetting.get(Setting.ECUTANALYSIS_LOW_G); + if (StrUtil.isNotBlank(ECutAnalysis_Low)) + setting.setECutAnalysis_Low(Double.parseDouble(ECutAnalysis_Low)); + String bUpdateCal_G = mapSetting.get(Setting.BUPDATECAL_G); + setting.setBUpdateCal(StrUtil.equals(bUpdateCal_G, "1")); + } + String EnergyTolerance = mapSetting.get(Setting.ENERGYTOLERANCE); + if (StrUtil.isNotBlank(EnergyTolerance)) + setting.setEnergyTolerance(Double.parseDouble(EnergyTolerance)); + String KeepCalPeakSearchPeaks = mapSetting.get(Setting.KEEPCALPEAKSERCHPEAKS); + setting.setKeepCalPeakSearchPeaks(StrUtil.equals(KeepCalPeakSearchPeaks,"1")); + String k_alpha = mapSetting.get(Setting.K_ALPHA); + if (StrUtil.isNotBlank(k_alpha)) + setting.setK_alpha(Double.parseDouble(k_alpha)); + String k_back = mapSetting.get(Setting.K_BACK); + if (StrUtil.isNotBlank(k_back)) + setting.setK_back(Double.parseDouble(k_back)); + String k_beta = mapSetting.get(Setting.K_BETA); + if (StrUtil.isNotBlank(k_beta)) + setting.setK_beta(Double.parseDouble(k_beta)); + String PSS_low = mapSetting.get(Setting.PSS_LOW); + if (StrUtil.isNotBlank(PSS_low)) + setting.setPSS_low(Double.parseDouble(PSS_low)); + String RiskLevelK = mapSetting.get(Setting.RISKLEVELK); + if (StrUtil.isNotBlank(RiskLevelK)) + setting.setRiskLevelK(Double.parseDouble(RiskLevelK)); + return phdFile; + } + + private GardsAnalyses toAnalysis(GStoreMiddleProcessData middleData){ + GardsAnalyses gardsAnalyses = new GardsAnalyses(); + String dateTime = DateConstant.DATE_TIME; + String analysisBegin = middleData.getAnalyses_analysisBegin(); + Date analysis_Begin = DateUtil.parse(analysisBegin, dateTime) + .toJdkDate(); + gardsAnalyses.setAnalysisBegin(analysis_Begin); + String analysisEnd = middleData.getAnalyses_analysisEnd(); + Date analysis_End = DateUtil.parse(analysisEnd, dateTime) + .toJdkDate(); + gardsAnalyses.setAnalysisEnd(analysis_End); + gardsAnalyses.setType(middleData.getAnalyses_type()); + gardsAnalyses.setSoftware(middleData.getAnalyses_software()); + gardsAnalyses.setSwVersion(middleData.getAnalyses_swVersion()); + gardsAnalyses.setAnalyst(middleData.getAnalyses_analyst()); + gardsAnalyses.setComments(middleData.getAnalyses_comments()); + gardsAnalyses.setSearchStartChannel((int)middleData.getAnalyses_searchStartChannel()); + gardsAnalyses.setSearchEndChannel((int)middleData.getAnalyses_searchEndChannel()); + gardsAnalyses.setSearchThreshold(middleData.getAnalyses_searchThreshold()); + gardsAnalyses.setNumberOfPeaks((int) middleData.getAnalyses_numberOfPeaks()); + gardsAnalyses.setTotalCounts((float) middleData.getAnalyses_totalCounts()); + gardsAnalyses.setBaselinePath(middleData.getAnalyses_baseline_filePath()); + gardsAnalyses.setLcPath(middleData.getAnalyses_lc_filePath()); + gardsAnalyses.setScacPath(middleData.getAnalyses_scac_filePath()); + gardsAnalyses.setLogPath(middleData.getAnalyses_LogPath()); + gardsAnalyses.setReportPath(middleData.getAnalyses_ReportPath()); + return gardsAnalyses; } } diff --git a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/SpectrumServiceQuotes.java b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/SpectrumServiceQuotes.java index b60098c0..c75ee655 100644 --- a/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/SpectrumServiceQuotes.java +++ b/jeecg-module-auto-process/src/main/java/org/jeecg/modules/spectrum/SpectrumServiceQuotes.java @@ -48,4 +48,5 @@ public class SpectrumServiceQuotes { private final GardsAnalysesService analysesService; + private final IGardsGammaDefaultParamsService gammaDefaultParamsService; }