fix:Gamma

This commit is contained in:
nieziyan 2023-09-01 10:44:53 +08:00
parent 26ec3e3f19
commit d6a7df1c3a
96 changed files with 3040 additions and 128 deletions

View File

@ -12,5 +12,5 @@ public interface DateConstant {
String TIME_END = " 23:59:59";
String TIME_ZONE = "UTC+08:00";
String TIME_ZONE = "GMT+08:00";
}

View File

@ -24,4 +24,6 @@ public interface RedisConstant {
String CONSUMER_ALARM = "Consumer_Alarm";
String CONSUMER_ANALYSIS = "Consumer_Analysis";
String NUCLIDE_LINES_LIB = "Nuclide_Lines_Lib:";
}

View File

@ -0,0 +1,34 @@
package org.jeecg.common.constant;
public interface Setting {
String BASEIMPROVEPSS = "BASEIMPROVEPSS";
String CALIBRATIONPSS_HIGH = "CALIBRATIONPSS_HIGH";
String CALIBRATIONPSS_LOW = "CALIBRATIONPSS_LOW";
String ECUTANALYSIS_HIGH = "ECUTANALYSIS_HIGH";
String ECUTANALYSIS_LOW_P = "ECUTANALYSIS_LOW_P";
String BUPDATECAL_P = "BUPDATECAL_P";
String ECUTANALYSIS_LOW_G = "ECUTANALYSIS_LOW_G";
String BUPDATECAL_G = "BUPDATECAL_G";
String ENERGYTOLERANCE = "ENERGYTOLERANCE";
String KEEPCALPEAKSERCHPEAKS = "KEEPCALPEAKSERCHPEAKS";
String K_ALPHA = "K_ALPHA";
String K_BACK = "K_BACK";
String K_BETA = "K_BETA";
String PSS_LOW = "PSS_LOW";
String RISKLEVELK = "RISKLEVELK";
}

View File

@ -0,0 +1,16 @@
package org.jeecg.common.util;
import java.util.ArrayList;
import java.util.List;
public class ListUtils {
public static <T> List<List<T>> partition(List<T> list, int size) {
List<List<T>> partitions = new ArrayList<>();
for (int i = 0; i < list.size(); i += size) {
int end = Math.min(i + size, list.size());
partitions.add(list.subList(i, end));
}
return partitions;
}
}

View File

@ -1,23 +0,0 @@
package org.jeecg.common.util;
import cn.hutool.core.collection.CollUtil;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
public class PageUtil {
public static <T> List<T> page(int pageNo, int pageSize, List<T> data) {
if (CollUtil.isEmpty(data))
return Collections.emptyList();
// 计算偏移量
int offset = (pageNo - 1) * pageSize;
// 总记录数
int totalSize = data.size();
if (offset >= totalSize)
return Collections.emptyList();
// 分页结果数据
return data.stream().skip(offset).limit(pageSize)
.collect(Collectors.toList());
}
}

View File

@ -0,0 +1,26 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class AcquisitionBlock implements Serializable {
/* Acquisition Block */
private String acquisition_start_date; // acquisition start date (yyyy / mm / dd)
private String acquisition_start_time; // acquisition start time (hh : mm : ss . s)
private Double acquisition_real_time; // acquisition real time (s)
private Double acquisition_live_time; // acquisition live time (s)
public AcquisitionBlock(){
acquisition_start_date="";
acquisition_start_time="";
acquisition_real_time=0.0;
acquisition_live_time=0.0;
}
}

View File

@ -0,0 +1,44 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class AnalyseData implements Serializable {
private String applyType;
private boolean sampleData;
private boolean GasBgData;
private boolean DetBgData;
private boolean QCData;
private boolean gFitting;
private boolean bFitting;
private boolean bGammaEnergyValid;
private boolean bBetaEnergyValid;
private List<TableWidget> fittingChannelEnergy;
private CalibrationParam g_calibration_param;
private CalibrationParam b_calibration_param;
private String dbName;
private List<Integer> sampleIds;
public AnalyseData(){
g_calibration_param = new CalibrationParam();
b_calibration_param = new CalibrationParam();
}
}

View File

@ -0,0 +1,33 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class BaseControls implements Serializable {
private boolean ReplotUsed;
private boolean ReplotNeeded;
private int rg_low; //分析范围的最小值
private int rg_high; //分析范围的最大值
private List<Double> XCtrl;
private List<Double> YCtrl;
private List<Double> YSlope;
private List<Double> Baseline;
private List<Double> StepCounts;
public BaseControls(){
rg_low = 1;
rg_high = 1;
ReplotUsed = false;
ReplotNeeded = false;
XCtrl=new LinkedList<>();
YCtrl=new LinkedList<>();
YSlope=new LinkedList<>();
Baseline=new LinkedList<>();
StepCounts=new LinkedList<>();
}
}

View File

@ -0,0 +1,31 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class BgCalibratePara implements Serializable {
private List<Double> b_e_cal; //b 能刻度系数
private List<Double> g_e_cal; //g 能刻度系数
private int b_e_cal_flag; //b 自计算刻度系数配置
private int g_e_cal_flag; //g 自计算刻度系数配置
private boolean bApplyNewCalicSample; // 界面交互新刻度应用
private boolean bApplyNewCalicDetBg;
private boolean bApplyNewCalicGasBg;
private boolean bApplyNewCalicQc;
public BgCalibratePara() {
b_e_cal = new LinkedList<>();
g_e_cal = new LinkedList<>();
b_e_cal_flag = 2;
g_e_cal_flag = 2;
bApplyNewCalicSample = false;
bApplyNewCalicDetBg = false;
bApplyNewCalicGasBg = false;
bApplyNewCalicQc = false;
}
}

View File

@ -0,0 +1,18 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class Boundary implements Serializable {
private Integer minX;
private Integer maxX;
private Integer minY;
private Integer maxY;
}

View File

@ -0,0 +1,20 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class CalibrationBlock implements Serializable {
/* Calibration Block */
private String date_calibration; // date of last calibration (yyyy / mm / dd)
private String time_calibration; // time of last calibration (hh : mm : ss)
public CalibrationBlock(){
date_calibration = "";
time_calibration = "";
}
}

View File

@ -0,0 +1,40 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class CalibrationParam implements Serializable {
public double param_a_c2e_old;
public double param_b_c2e_old;
public double param_c_c2e_old;
public double param_a_c2e_new;
public double param_b_c2e_new;
public double param_c_c2e_new;
public double param_a_e2c_old;
public double param_b_e2c_old;
public double param_c_e2c_old;
public double param_a_e2c_new;
public double param_b_e2c_new;
public double param_c_e2c_new;
public CalibrationParam() {
param_a_c2e_old = 0;
param_b_c2e_old = 0;
param_c_c2e_old = 0;
param_a_e2c_old = 0;
param_b_e2c_old = 0;
param_c_e2c_old = 0;
param_a_c2e_new = 0;
param_b_c2e_new = 0;
param_c_c2e_new = 0;
param_a_e2c_new = 0;
param_b_e2c_new = 0;
param_c_e2c_new = 0;
}
}

View File

@ -0,0 +1,61 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class CertificateBlock implements Serializable {
/* Certificate Block */
private double total_source_activity; // total source activity (Bq)
private String assay_date; // assay date (yyyy / mm / dd)
private String assay_time; // assay time (hh : mm : ss)
private String units_activity; // units of activity: B, b for Bq or [blank]; if nothing, then B is assigned
private List<String> nuclide_name; // nuclide name
private List<String> half_life_time; // half-life in seconds, hours, days, or years
private List<String> time_unit; // time unit(Y, D, H, S)
private List<Double> activity_nuclide_time_assay;// activity of nuclide at time of assay
private List<Double> uncertainty; // uncertainty (%)
private List<Double> g_energy; // γ-energy (keV)
private List<Double> g_intensity; // γ-intensity (percent)
private List<String> electron_decay_mode; // electron decay mode descriptor: B for β particle or C for conversion electron (CE), 0 for none (that is, γ-only source)
private List<Double> maximum_energy; // maximum β-particle energy or CE energy (keV)
private List<Double> intensity_b_particle; // intensity of β-particle (percent)
private int record_count;
public CertificateBlock(){
total_source_activity=0;
assay_date="";
assay_time="";
units_activity="";
nuclide_name= new LinkedList<>();
half_life_time= new LinkedList<>();
time_unit= new LinkedList<>();
activity_nuclide_time_assay= new LinkedList<>();
uncertainty= new LinkedList<>();
g_energy= new LinkedList<>();
g_intensity= new LinkedList<>();
electron_decay_mode= new LinkedList<>();
maximum_energy= new LinkedList<>();
intensity_b_particle= new LinkedList<>();
record_count=0;
}
}

View File

@ -0,0 +1,26 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class ChartData implements Serializable {
private String name;
private String group;
private String color;
private boolean show;
private String type;
private List<SeriseData> pointlist;
public ChartData() {
name = "";
group = "";
color = "yellow";
show = true;
type = "Either";
pointlist = new LinkedList<>();
}
}

View File

@ -0,0 +1,37 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class CoeffData implements Serializable {
public Double totalEf1;
public Double totalEf2;
public Double totalEf3;
public Double totalEf4;
public Double totalEf5;
public Double totalEf6;
public Double Effciency1;
public Double Effciency2;
public Double Effciency3;
public Double Effciency4;
public Double Effciency5;
public Double Effciency6;
public List<Double> energys;
}

View File

@ -0,0 +1,29 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class CollectionBlock implements Serializable {
/* Collection Block */
private String collection_start_date; // collection start date (yyyy / mm / dd)
private String collection_start_time; // collection start time (hh : mm : ss . s)
private String collection_stop_date; // collection stop date (yyyy / mm / dd)
private String collection_stop_time; // collection stop time (hh : mm : ss . s)
private double air_volume; // total air volume sampled (standard cubic meters [scm])
public CollectionBlock(){
collection_start_date="";
collection_start_time="";
collection_stop_date="";
collection_stop_time="";
air_volume=0;
}
}

View File

@ -0,0 +1,14 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class CommentData implements Serializable {
private String analyst;
private String comment;
}

View File

@ -0,0 +1,16 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class CommentInfo implements Serializable {
private String spectrumCommentInfo;
private String spectrumOtherCommentInfo;
private String spectrumAnalysisCommentInfo;
}

View File

@ -0,0 +1,9 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class ConfigureData implements Serializable {
}

View File

@ -0,0 +1,18 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class EfficiencyData implements Serializable {
private String Energy;
private String Efficiency;
private String Fit;
private String Delta;
}

View File

@ -0,0 +1,18 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class EnergyData implements Serializable {
public String channel;
public String Energy;
public String Fit;
public String Delta;
}

View File

@ -0,0 +1,21 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class FittingBody implements Serializable {
private Double paramA;
private Double paramB;
private Double paramC;
private List<SeriseData> tempPoints;
private Integer count;
}

View File

@ -0,0 +1,26 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class GEfficiencyBlock implements Serializable {
private List<Double> g_energy; // γ -energy (keV)
private List<Double> efficiency; // efficiency (counts in peak/photon emitted)
private List<Double> uncertainty; // uncertainty (counts in peak/photon emitted)
private Integer record_count;
public GEfficiencyBlock(){
g_energy = new LinkedList<>();
efficiency = new LinkedList<>();
uncertainty = new LinkedList<>();
}
}

View File

@ -0,0 +1,26 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class GEnergyBlock implements Serializable {
private List<Double> g_energy; // γ -energy (keV)
private List<Double> centroid_channel; // centroid channel
private List<Double> uncertainty; // uncertainty (channels)
private Integer record_count;
public GEnergyBlock(){
g_energy = new LinkedList<>();
centroid_channel = new LinkedList<>();
uncertainty = new LinkedList<>();
}
}

View File

@ -0,0 +1,26 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class GResolutionBlock implements Serializable {
private List<Double> g_energy; // γ -energy (keV)
private List<Double> FWHM; // FWHM (keV)
private List<Double> uncertainty; // uncertainty (keV)
private Integer record_count;
public GResolutionBlock(){
g_energy = new LinkedList<>();
FWHM = new LinkedList<>();
uncertainty = new LinkedList<>();
}
}

View File

@ -0,0 +1,28 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class GSpectrumBlock implements Serializable {
/* g_Spectrum Block */
private long num_g_channel; // number of γ channels
private long g_energy_span; // γ-energy span (keV)
private long begin_channel; // begin of channels
private List<Long> counts; // count at channel
public GSpectrumBlock(){
num_g_channel=0;
g_energy_span=0;
begin_channel=0;
counts= new LinkedList<>();
}
}

View File

@ -0,0 +1,423 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
@Data
public class GStoreMiddleProcessData implements Serializable {
public boolean dbWriteFlag; //数据库存储标示 例如
public String dbWriteStatusFlag; //数据写入状态标示 例如 P U F
public String ErrorInfo; //错误信息
//gards_analyses数据表数据
public String IdAnalysis; //分析ID号
public String sample_id; //样品ID号
public String analyses_analysisBegin; //分析开始时
public String analyses_analysisEnd; //分析的结束时间
public String analyses_type; //Reviewed:交互 Auto自动
public String analyses_software; //使用的软件
public String analyses_swVersion; //软件版本号
public String analyses_analyst; //分析员名称
public String analyses_baseline_filePath; //基线数据路径
public String analyses_lc_filePath; //lc数据基线路径
public String analyses_scac_filePath; //scac数据路径
public String analyses_save_filePath; //原始文件存储文件名
public String analyses_baselineMethod; //基线计数方
public String analyses_peaksMethod; //寻峰方法描
public String analyses_nuclideMethod; //核素识别方
public String analyses_uncCalcMethod; //不确定度计
public String analyses_lcMethod; //Lc计算方法
public String analyses_LogPath; //日志路径
public String analyses_ReportPath; //报告路径
public String analyses_baseline_absolute_filePath; //基线数据绝对路径
public String analyses_lc_absolute_filePath; //lc数据基线绝对路径
public String analyses_scac_absolute_filePath; //scac数据绝对路径
public String analyses_save_absolute_filePath; //原始文件存储绝对文件名
public String analyses_absolute_LogPath; //日志绝对路径
public String analyses_absolute_ReportPath; //报告绝对路径
public double analyses_searchStartChannel; //寻峰起始道
public double analyses_searchEndChannel; //寻峰结束道
public double analyses_searchThreshold; //寻峰阈值
public double analyses_numberOfPeaks; //峰数目
public double analyses_totalCounts; //总计数 未知
public double analyses_category; //分级结果
public String analyses_comments; //注释
//gards_ calibration_pairs数据表
public String calibration_pairs_sample_type; //Ggamma探测器的数据#g_Bbeta探测器的数据,#b_
public String calibration_pairs_E_Caltype; //energy能量刻度
public String calibration_pairs_E_Input; //PHD代表数据来自PHD文件External代表数据来自外部如刻度工具其它文件等
public List<String> calibration_pairs_E_idCalPoint; //刻度点ID号
public List<String> calibration_pairs_E_xValue; //
public List<String> calibration_pairs_E_yValue; //
public List<String> calibration_pairs_E_uncYValue; //
public String calibration_pairs_EF_Caltype; //Efficiency效率刻度
public String calibration_pairs_EF_Input; //PHD代表数据来自PHD文件External代表数据来自外部如刻度工具其它文件等
public List<String> calibration_pairs_EF_idCalPoint; //刻度点ID号
public List<String> calibration_pairs_EF_xValue; //
public List<String> calibration_pairs_EF_yValue; //
public List<String> calibration_pairs_EF_uncYValue; //
public String calibration_pairs_R_Caltype; //Resolution分辨率刻度
public String calibration_pairs_R_Input; //PHD代表数据来自PHD文件External代表数据来自外部如刻度工具其它文件等
public List<String> calibration_pairs_R_idCalPoint; //刻度点ID号
public List<String> calibration_pairs_R_xValue; //
public List<String> calibration_pairs_R_yValue; //
public List<String> calibration_pairs_R_uncYValue; //
public String calibration_pairs_T_Caltype; //TotalEfficiency总效率刻度
public String calibration_pairs_T_Input; //PHD代表数据来自PHD文件External代表数据来自外部如刻度工具其它文件等
public List<String> calibration_pairs_T_idCalPoint; //刻度点ID号
public List<String> calibration_pairs_T_xValue; //
public List<String> calibration_pairs_T_yValue; //
public List<String> calibration_pairs_T_uncYValue; //
//原始谱 数据
public String calibration_pairs_S_E_Caltype; //energy能量刻度
public String calibration_pairs_S_E_Input; //PHD代表数据来自PHD文件External代表数据来自外部如刻度工具其它文件等
public List<String> calibration_pairs_S_E_idCalPoint; //刻度点ID号
public List<String> calibration_pairs_S_E_xValue; //
public List<String> calibration_pairs_S_E_yValue; //
public List<String> calibration_pairs_S_E_uncYValue; //
public String calibration_pairs_S_EF_Caltype; //Efficiency效率刻度
public String calibration_pairs_S_EF_Input; //PHD代表数据来自PHD文件External代表数据来自外部如刻度工具其它文件等
public List<String> calibration_pairs_S_EF_idCalPoint; //刻度点ID号
public List<String> calibration_pairs_S_EF_xValue; //
public List<String> calibration_pairs_S_EF_yValue; //
public List<String> calibration_pairs_S_EF_uncYValue; //
public String calibration_pairs_S_R_Caltype; //Resolution分辨率刻度
public String calibration_pairs_S_R_Input; //PHD代表数据来自PHD文件External代表数据来自外部如刻度工具其它文件等
public List<String> calibration_pairs_S_R_idCalPoint; //刻度点ID号
public List<String> calibration_pairs_S_R_xValue; //
public List<String> calibration_pairs_S_R_yValue; //
public List<String> calibration_pairs_S_R_uncYValue; //
public String calibration_pairs_S_T_Caltype; //TotalEfficiency总效率刻度
public String calibration_pairs_S_T_Input; //PHD代表数据来自PHD文件External代表数据来自外部如刻度工具其它文件等
public List<String> calibration_pairs_S_T_idCalPoint; //刻度点ID号
public List<String> calibration_pairs_S_T_xValue; //
public List<String> calibration_pairs_S_T_yValue; //
public List<String> calibration_pairs_S_T_uncYValue; //
//gards_ calibration 数据表
public String calibration_sample_type; //Ggamma探测器的数据#g_Bbeta探测器的数据,#b_
public String calibration_E_Caltype; //energy能量刻度
public double calibration_E_function; //拟合方程ID号统一定义
public String calibration_E_functionTypeDef; //函数类型描述
public String calibration_E_functionDef; //拟合方程描述
public double calibration_E_startOfRange; //拟合的起始值
public double calibration_E_endOfRange; //拟合的结束值
public String calibration_E_coeff_string; //拟合系数
public String calibration_E_uncoeff_string; //拟合系数1不确定度
public String calibration_EF_Caltype; //Efficiency效率刻度
public double calibration_EF_function; //拟合方程ID号统一定义
public String calibration_EF_functionTypeDef; //函数类型描述
public String calibration_EF_functionDef; //拟合方程描述
public double calibration_EF_startOfRange; //拟合的起始值
public double calibration_EF_endOfRange; //拟合的结束值
public String calibration_EF_coeff_string; //拟合系数
public String calibration_EF_uncoeff_string; //拟合系数1不确定度
public String calibration_R_Caltype; //Resolution分辨率刻度
public double calibration_R_function; //拟合方程ID号统一定义
public String calibration_R_functionTypeDef; //函数类型描述
public String calibration_R_functionDef; //拟合方程描述
public double calibration_R_startOfRange; //拟合的起始值
public double calibration_R_endOfRange; //拟合的结束值
public String calibration_R_coeff_string; //拟合系数
public String calibration_R_uncoeff_string; //拟合系数1不确定度
public String calibration_T_Caltype; //TotalEfficiency总效率刻度
public double calibration_T_function; //拟合方程ID号统一定义
public String calibration_T_functionTypeDef; //函数类型描述
public String calibration_T_functionDef; //拟合方程描述
public double calibration_T_startOfRange; //拟合的起始值
public double calibration_T_endOfRange; //拟合的结束值
public String calibration_T_coeff_string; //拟合系数
public String calibration_T_uncoeff_string; //拟合系数1不确定度
//gards_ peaks数据表
public List<String> peaks_idPeak; //峰序号
public List<String> peaks_peakCentroid; //峰中心道道址
public List<String> peaks_uncpeakCentroid; //峰中心道不确定度道址
public List<String> peaks_Energy; //峰中心道能量keV
public List<String> peaks_uncEnergy; //峰中心道能量不确定度keV
public List<String> peaks_Area; //峰面积计数已扣除基线面积但未扣除空白样品计数和探测器本底计数
public List<String> peaks_areaErr; //峰面积不确定度以计数为单位
public List<String> peaks_netCountRate; //峰的净计数率1/s=峰面积/活时间 未知
public List<String> peaks_uncNetCountRate; //峰的净计数率的不确定度1/s 未知
public List<String> peaks_Efficiency; //测量系统在峰能量处的绝对效率
public List<String> peaks_Uncefficiency; //测量系统在峰能量处的绝对效率的不确定度
public List<String> peaks_Fwhm; //峰的半高宽keV
public List<String> peaks_Fwhmc; //峰的半高宽Channel
public List<String> peaks_Significance; //峰的灵敏度
public List<String> peaks_Sensitivity; //重峰序号
public List<String> peaks_multiIndex; //峰的感兴趣区的起始道left
public List<String> peaks_ROIstart; //峰的感兴趣区的结束道right
public List<String> peaks_ROIend; //峰序号
public List<String> peaks_tail; //
public List<String> peaks_tailAlpha; //
public List<String> peaks_upperTail; //
public List<String> peaks_upperTailAlpha; //
public List<String> peaks_BWWidthChan; //
public List<String> peaks_recoilBetaChan;
public List<String> peaks_recoilDeltaChan; //
public List<String> peaks_stepRatio; //
public List<String> peaks_backgroundArea; //在峰区域下的基线面积计数
public List<String> peaks_meanBackCount; //基线面积/道数计数
public List<String> peaks_Lc; //峰的可探测线Lc
public List<String> peaks_Ld; //峰的可探测线Ld
public List<String> peaks_Nuclide_name; //文件名称
public List<String> peaks_comments;
// gards_ nucl_lines_ided数据表
private Map<String, GStoreMiddleProcessDataNuclLinesIded> nucl_lines_ided_data;
//gards_ nucl_ided数据表
public List<String> nucl_ided_Nuclidename; // 核素名称
public List<String> nucl_ided_Type; //核素类型 未知
public List<String> nucl_ided_Halflife; //核素半衰期
public List<String> nucl_ided_ave_activ; //平均活度值NULL
public List<String> nucl_ided_ave_activ_err; //平均活度值不确定度NULL
public List<String> nucl_ided_activ_key; //主射线活度值 未知
public List<String> nucl_ided_activ_key_err; //主射线活度值不确定度
public List<String> nucl_ided_mda; //核素的最小可探测活度
public List<String> nucl_ided_mda_err; //核素的最小可探测活度不确定度
public List<String> nucl_ided_nid_flag; //核素识别标志未知
public List<String> nucl_ided_csc_ratio; //符合相加校正因子无设为1
public List<String> nucl_ided_csc_ratio_err; //符合相加校正因子不确定度无设为0
public List<String> nucl_ided_csc_mod_flag; //活度是否经过符合相加校正0
public List<String> nucl_ided_MDC;
public List<String> nucl_ided_Concentration;
public List<String> nucl_ided_Key_Energy; //
public List<String> nucl_ided_Key_Yield; //
//GARDS_QC_CHECK
public List<String> QC_CHECK_QC_NAME;
public List<String> QC_CHECK_QC_VALUE;
public List<String> QC_CHECK_QC_STANDARD;
public List<String> QC_CHECK_QC_RESULT;
//sample information
public String sample_collection_start;
public String sample_collection_stop;
public String sample_time;
public String sample_quantity;
public String sample_decay_time;
public String sample_acquisiton_start;
public String sample_acquistion_stop;
public String sample_acquistion_time;
public String sample_Geometry;
public String sample_Avg_Flow_Rate;
public String sample_stationID; //
public String sample_detectID; //
public String sample_Type; //
public String Collection_Station_Comments;
public String NDC_Analysis_General_Comments;
//SpecSetup
public SpecSetup setting_specSetup;
public GStoreMiddleProcessData(){
dbWriteFlag = false;
dbWriteStatusFlag = "";
ErrorInfo = "";
IdAnalysis = "";
sample_id = "";
analyses_analysisBegin = "";
analyses_analysisEnd = "";
analyses_type = "";
analyses_software = "";
analyses_swVersion = "";
analyses_analyst = "";
analyses_baseline_filePath = "";
analyses_lc_filePath = "";
analyses_scac_filePath = "";
analyses_save_filePath = "";
analyses_baselineMethod = "";
analyses_peaksMethod = "";
analyses_nuclideMethod = "";
analyses_uncCalcMethod = "";
analyses_lcMethod = "";
analyses_LogPath = "";
analyses_ReportPath = "";
analyses_baseline_absolute_filePath = "";
analyses_lc_absolute_filePath = "";
analyses_scac_absolute_filePath = "";
analyses_save_absolute_filePath = "";
analyses_absolute_LogPath = "";
analyses_absolute_ReportPath = "";
analyses_searchStartChannel = 0;
analyses_searchEndChannel = 0;
analyses_searchThreshold = 0;
analyses_numberOfPeaks = 0;
analyses_totalCounts = 0;
analyses_category = 0;
analyses_comments = "";
calibration_pairs_sample_type = "";
calibration_pairs_E_Caltype = "";
calibration_pairs_E_Input = "";
calibration_pairs_E_idCalPoint = new LinkedList<>();
calibration_pairs_E_xValue = new LinkedList<>();
calibration_pairs_E_yValue = new LinkedList<>();
calibration_pairs_E_uncYValue = new LinkedList<>();
calibration_pairs_EF_Caltype = "";
calibration_pairs_EF_Input = "";
calibration_pairs_EF_idCalPoint = new LinkedList<>();
calibration_pairs_EF_xValue = new LinkedList<>();
calibration_pairs_EF_yValue = new LinkedList<>();
calibration_pairs_EF_uncYValue = new LinkedList<>();
calibration_pairs_R_Caltype = "";
calibration_pairs_R_Input = "";
calibration_pairs_R_idCalPoint = new LinkedList<>();
calibration_pairs_R_xValue = new LinkedList<>();
calibration_pairs_R_yValue = new LinkedList<>();
calibration_pairs_R_uncYValue = new LinkedList<>();
calibration_pairs_T_Caltype = "";
calibration_pairs_T_Input = "";
calibration_pairs_T_idCalPoint = new LinkedList<>();
calibration_pairs_T_xValue = new LinkedList<>();
calibration_pairs_T_yValue = new LinkedList<>();
calibration_pairs_T_uncYValue = new LinkedList<>();
calibration_pairs_S_E_Caltype = "";
calibration_pairs_S_E_Input = "";
calibration_pairs_S_E_idCalPoint = new LinkedList<>();
calibration_pairs_S_E_xValue = new LinkedList<>();
calibration_pairs_S_E_yValue = new LinkedList<>();
calibration_pairs_S_E_uncYValue = new LinkedList<>();
calibration_pairs_S_EF_Caltype = "";
calibration_pairs_S_EF_Input = "";
calibration_pairs_S_EF_idCalPoint = new LinkedList<>();
calibration_pairs_S_EF_xValue = new LinkedList<>();
calibration_pairs_S_EF_yValue = new LinkedList<>();
calibration_pairs_S_EF_uncYValue = new LinkedList<>();
calibration_pairs_S_R_Caltype = "";
calibration_pairs_S_R_Input = "";
calibration_pairs_S_R_idCalPoint = new LinkedList<>();
calibration_pairs_S_R_xValue = new LinkedList<>();
calibration_pairs_S_R_yValue = new LinkedList<>();
calibration_pairs_S_R_uncYValue = new LinkedList<>();
calibration_pairs_S_T_Caltype = "";
calibration_pairs_S_T_Input = "";
calibration_pairs_S_T_idCalPoint = new LinkedList<>();
calibration_pairs_S_T_xValue = new LinkedList<>();
calibration_pairs_S_T_yValue = new LinkedList<>();
calibration_pairs_S_T_uncYValue = new LinkedList<>();
calibration_sample_type = "";
calibration_E_Caltype = "";
calibration_E_function = 0;
calibration_E_functionTypeDef = "";
calibration_E_functionDef = "";
calibration_E_startOfRange = 0;
calibration_E_endOfRange = 0;
calibration_E_coeff_string = "";
calibration_E_uncoeff_string = "";
calibration_EF_Caltype = "";
calibration_EF_function = 0;
calibration_EF_functionTypeDef = "";
calibration_EF_functionDef = "";
calibration_EF_startOfRange = 0;
calibration_EF_endOfRange = 0;
calibration_EF_coeff_string = "";
calibration_EF_uncoeff_string = "";
calibration_R_Caltype = "";
calibration_R_function = 0;
calibration_R_functionTypeDef = "";
calibration_R_functionDef = "";
calibration_R_startOfRange = 0;
calibration_R_endOfRange = 0;
calibration_R_coeff_string = "";
calibration_R_uncoeff_string = "";
calibration_T_Caltype = "";
calibration_T_function = 0;
calibration_T_functionTypeDef = "";
calibration_T_functionDef = "";
calibration_T_startOfRange = 0;
calibration_T_endOfRange = 0;
calibration_T_coeff_string = "";
calibration_T_uncoeff_string = "";
peaks_idPeak = new LinkedList<>();
peaks_peakCentroid = new LinkedList<>();
peaks_uncpeakCentroid = new LinkedList<>();
peaks_Energy = new LinkedList<>();
peaks_uncEnergy = new LinkedList<>();
peaks_Area = new LinkedList<>();
peaks_areaErr = new LinkedList<>();
peaks_netCountRate = new LinkedList<>();
peaks_uncNetCountRate = new LinkedList<>();
peaks_Efficiency = new LinkedList<>();
peaks_Uncefficiency = new LinkedList<>();
peaks_Fwhm = new LinkedList<>();
peaks_Fwhmc = new LinkedList<>();
peaks_Significance = new LinkedList<>();
peaks_Sensitivity = new LinkedList<>();
peaks_multiIndex = new LinkedList<>();
peaks_ROIstart = new LinkedList<>();
peaks_ROIend = new LinkedList<>();
peaks_tail = new LinkedList<>();
peaks_tailAlpha = new LinkedList<>();
peaks_upperTail = new LinkedList<>();
peaks_upperTailAlpha = new LinkedList<>();
peaks_BWWidthChan = new LinkedList<>();
peaks_recoilBetaChan = new LinkedList<>();
peaks_recoilDeltaChan = new LinkedList<>();
peaks_stepRatio = new LinkedList<>();
peaks_backgroundArea = new LinkedList<>();
peaks_meanBackCount = new LinkedList<>();
peaks_Lc = new LinkedList<>();
peaks_Ld = new LinkedList<>();
peaks_Nuclide_name = new LinkedList<>();
peaks_comments = new LinkedList<>();
nucl_lines_ided_data = new HashMap<>();
nucl_ided_Nuclidename = new LinkedList<>();
nucl_ided_Type = new LinkedList<>();
nucl_ided_Halflife = new LinkedList<>();
nucl_ided_ave_activ = new LinkedList<>();
nucl_ided_ave_activ_err = new LinkedList<>();
nucl_ided_activ_key = new LinkedList<>();
nucl_ided_activ_key_err = new LinkedList<>();
nucl_ided_mda = new LinkedList<>();
nucl_ided_mda_err = new LinkedList<>();
nucl_ided_nid_flag = new LinkedList<>();
nucl_ided_csc_ratio = new LinkedList<>();
nucl_ided_csc_ratio_err = new LinkedList<>();
nucl_ided_csc_mod_flag = new LinkedList<>();
nucl_ided_MDC = new LinkedList<>();
nucl_ided_Concentration = new LinkedList<>();
nucl_ided_Key_Energy = new LinkedList<>();
nucl_ided_Key_Yield = new LinkedList<>();
QC_CHECK_QC_NAME = new LinkedList<>();
QC_CHECK_QC_VALUE = new LinkedList<>();
QC_CHECK_QC_STANDARD = new LinkedList<>();
QC_CHECK_QC_RESULT = new LinkedList<>();
sample_collection_start = "";
sample_collection_stop = "";
sample_time = "";
sample_quantity = "";
sample_decay_time = "";
sample_acquisiton_start = "";
sample_acquistion_stop = "";
sample_acquistion_time = "";
sample_Geometry = "";
sample_Avg_Flow_Rate = "";
sample_stationID = "";
sample_detectID = "";
sample_Type = "";
Collection_Station_Comments = "";
NDC_Analysis_General_Comments = "";
setting_specSetup = new SpecSetup();
}
}

View File

@ -0,0 +1,51 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class GStoreMiddleProcessDataNuclLinesIded implements Serializable {
// gards_ nucl_lines_ided数据表
public List<String> nuclideFullname; //FullName
public List<String> idPeak; //峰序号
public List<String> Energy; //核素库中核素对应的能量keV
public List<String> uncEnergy; //核素库中核素对应峰的能量不确定度keV
public List<String> Abundance; //核素库中核素对应峰的发射几率
public List<String> uncAbundance; //核素库中核素对应峰的发射几率不确定度
public List<String> Activity; //利用该峰计算得到的活度
public List<String> uncActivity; //利用该峰计算得到的活度不确定度
public List<String> Effic; //该峰处的探测效率
public List<String> uncEffic; //该峰处的探测效率不确定度
public List<String> Mda; //利用该峰计算得到的最小可探测活度
public List<String> key_flag; //主射线标识01
public List<String> csc_ratio; //符合相加校正因子无设为1
public List<String> csc_ratio_err; //符合相加校正因子不确定度无设为0
public List<String> csc_mod_flag; //活度是否经过符合相加校正0 未知
public List<String> MDC;
public List<String> Concentration;
public GStoreMiddleProcessDataNuclLinesIded(){
nuclideFullname = new LinkedList<>();
idPeak = new LinkedList<>();
Energy = new LinkedList<>();
uncEnergy = new LinkedList<>();
Abundance = new LinkedList<>();
uncAbundance = new LinkedList<>();
Activity = new LinkedList<>();
uncActivity = new LinkedList<>();
Effic = new LinkedList<>();
uncEffic = new LinkedList<>();
Mda = new LinkedList<>();
key_flag = new LinkedList<>();
csc_ratio = new LinkedList<>();
csc_ratio_err = new LinkedList<>();
csc_mod_flag = new LinkedList<>();
MDC = new LinkedList<>();
Concentration = new LinkedList<>();
}
}

View File

@ -0,0 +1,14 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class HalfData implements Serializable {
private String name;
private Double half;
}

View File

@ -0,0 +1,51 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class HeaderBlock implements Serializable {
/* Header Black */
private String designator; // designator
private String site_code; // site code
private String detector_code; // detector code
private String system_type; // system type: P for particulate; B for gas with 3-D β - γ coincidence detection; and
// G for all other gas systems (high-resolu-tion γ-spectrometry or 2-D β-γ coinci-dence detection)
private String sample_geometry; // sample geometry
private String spectrum_quantity; // spectrum qualifier: preliminary ( PREL )or full ( FULL)
private String sample_ref_id; // sample reference identification
private String measurement_id; // measurement identification
private String detector_bk_measurement_id; // detector background measurement identification
private String gas_bk_measurement_id; // gas background measurement identification (memory effect)
private String transmit_date; // transmit date (yyyy / mm / dd)
private String transmit_time; // transmit time (hh : mm : ss . s)
public HeaderBlock(){
designator="";
site_code="";
detector_code="";
system_type="";
sample_geometry="";
spectrum_quantity="";
sample_ref_id="";
measurement_id="";
detector_bk_measurement_id="";
gas_bk_measurement_id="";
transmit_date="";
transmit_time="";
}
}

View File

@ -0,0 +1,16 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class HistogramData implements Serializable {
private Integer b;
private Integer g;
private Long c;
}

View File

@ -0,0 +1,58 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@Data
public class Information implements Serializable {
String sample_measid_name;
String sample_det_measid_name;
String sample_gas_measid_name;
String sit_det_code;
String sample_type;
String geometry;
String spectral_qualifie;
Date transmit_dtg;
String detect_code;
String measurementID;
String bkgdMeasurementID;
String gasBkgdMeasurementID;
String sampleRefId;
String collect_start_str;
Date collect_start;
Date collect_stop;
double s_xe_stable_volume;
Date acquisition_start;
Date acquisition_stop;
double acquisition_real_sec;
double acquisition_live_sec;
double s_volume_of_Xe;
String gas_measid_name;
String det_measid_name;
}

View File

@ -0,0 +1,18 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class InputData implements Serializable {
private Double energy;
private Double TotalEffi;
private Double PeakEffi;
private Double uncertain;
}

View File

@ -0,0 +1,47 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class MessageInfo implements Serializable {
/* Infomations */
private String msg_type;
private String msg_id;
private String msg_src_code;
private String ref_id_str;
private String ref_src_code;
private String seq_num;
private String tot_num;
private String product_id;
private String delivery_id;
private String data_type;
private boolean verify_srid;
public MessageInfo(){
msg_type="";
msg_id="";
msg_src_code="";
ref_id_str="";
ref_src_code="";
seq_num="";
tot_num="";
product_id="";
delivery_id="";
data_type="";
verify_srid=false;
}
}

View File

@ -0,0 +1,65 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class NuclideActMda implements Serializable {
private boolean bCalculateMDA;
private int calculateIdx;
private int key_flag; // key_flag 条射线是主射线 0 开始编号, key_flag < 0 表示无主射线
private double halflife;
private double activity;
private double act_err;
private double mda;
private double mdc;
private double efficiency;
private double effi_err;
private double concentration;
private List<String> fullNames;
private List<Double> vEnergy; // 匹配的γ射线能量
private List<Double> vUncertE;
private List<Double> vYield; // 匹配的γ射线分支比
private List<Double> vUncertY;
private List<Integer> vPeakIdx; // 匹配的峰序号, 1 开始
public NuclideActMda() {
bCalculateMDA = false;
calculateIdx = 0;
key_flag = -1;
halflife = 0.0;
activity = 0.0;
act_err = 0.0;
mda = 0.0;
mdc = 0.0;
efficiency = 0.0;
effi_err = 0.0;
concentration = 0.0;
fullNames = new LinkedList<>();
vEnergy = new LinkedList<>();
vUncertE = new LinkedList<>();
vYield = new LinkedList<>();
vUncertY = new LinkedList<>();
vPeakIdx = new LinkedList<>();
}
}

View File

@ -0,0 +1,24 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class NuclideLine implements Serializable {
private String FullName;
private Double energy;
private Double energy_uncert;
private Double yield;
private Double yield_uncert;
private Double key_flag;
private String name;
}

View File

@ -0,0 +1,31 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class NuclideLines implements Serializable {
public List<String> fullNames; // 核素全名
public List<Double> vEnergy; // 核素的所有γ射线能量
public List<Double> vUncertE;
public List<Double> vYield; // 核素γ射线分支比
public List<Double> vUncertY;
public double halflife;// 单位
public int key_flag; // 记录主射线下标
public int maxYeildIdx;
public NuclideLines() {
maxYeildIdx = -1;
key_flag = -1;
halflife = 0;
fullNames=new LinkedList<>();
vEnergy=new LinkedList<>();
vUncertE=new LinkedList<>();
vYield=new LinkedList<>();
vUncertY=new LinkedList<>();
}
}

View File

@ -0,0 +1,218 @@
package org.jeecg.modules.base.bizVo;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;
import java.io.Serializable;
import java.util.HashMap;
import java.util.LinkedList;
import java.util.List;
import java.util.Map;
@Data
@JsonIgnoreProperties(ignoreUnknown = true)
public class PHDFile implements Serializable {
private boolean isValid; // 是否有效谱
private boolean bAnalyed; // 记录是否被分析
private String analy_start_time;
private String filename; // 谱文件名称
private String filepath; // 谱文件路径
private String log_path;
private String report_path;
private String baseline_path;
private String lc_path;
private String scac_path;
private String totalCmt; // 谱文件总注释
private String oriTotalCmt;// 原始谱总注释
private SpecSetup usedSetting; // 当前使用的分析设置
private SpecSetup setting; // 新修改的分析设置
// 分析结果
private List<PeakInfo> vPeak;
private List<Double> vEnergy;
private List<Double> vBase;
private List<Double> vLc;
private List<Double> vScac;
private BaseControls baseCtrls;
// 当前修改的刻度名称
private String newEner;
private String newReso;
private String newEffi;
private String newTotE;
// 当前寻峰结果所用的刻度名称
private String usedEner;
private String usedReso;
private String usedEffi;
private String usedTotE;
// 当前寻峰结果所用的刻度数据
private GEnergyBlock usedEnerKD;
private GResolutionBlock usedResoKD;
private GEfficiencyBlock usedEffiKD;
private TotaleffBlock usedTotEKD;
// 存储所有的刻度数据
private Map<String, GEnergyBlock> mapEnerKD; // 能量刻度
private Map<String, GResolutionBlock> mapResoKD; // 分辨率刻度
private Map<String, GEfficiencyBlock> mapEffiKD; // 效率刻度
private Map<String, TotaleffBlock> mapTotEKD; // 总效率刻度
// 当前寻峰结果所用的刻度参数
private ParameterInfo usedEnerPara;
private ParameterInfo usedResoPara;
private ParameterInfo usedEffiPara;
private ParameterInfo usedTotEPara;
// 存储所有的刻度参数
private Map<String, ParameterInfo> mapEnerPara;
private Map<String, ParameterInfo> mapResoPara;
private Map<String, ParameterInfo> mapEffiPara;
private Map<String, ParameterInfo> mapTotEPara;
// 其他参数目前存储的是默认值
private ParameterInfo para_stepRatio;
private ParameterInfo para_tail;
private ParameterInfo para_tailAlpha;
private ParameterInfo para_tailRight;
private ParameterInfo para_tailRightAlpha;
// 谱基本信息
private String id_sample;
private String id_analysis;
private String status;
private String category;
private HeaderBlock header;
private MessageInfo msgInfo;
private GSpectrumBlock Spec;
private AcquisitionBlock acq;
private CollectionBlock collect;
private ProcessingBlock process;
private CalibrationBlock calibration;
private SampleBlock sampleBlock;
private CertificateBlock certificate;
// QC Check
private Map<String, QcCheckItem> QcItems;
// 核素活度浓度
private Map<String, NuclideActMda> mapNucActMda;
public PHDFile() {
bAnalyed = false;
isValid = true;
analy_start_time = "";
filename = "";
filepath = "";
log_path = "";
report_path = "";
baseline_path="";
lc_path="";
scac_path="";
totalCmt = "";
oriTotalCmt="";
usedSetting = new SpecSetup();
setting = new SpecSetup();
vPeak = new LinkedList<>();
vEnergy = new LinkedList<>();
vBase = new LinkedList<>();
vLc = new LinkedList<>();
vScac = new LinkedList<>();
baseCtrls = new BaseControls();
newEner = "PHD";
newReso = "PHD";
newEffi = "PHD";
newTotE = "PHD";
usedEner= "";
usedReso= "";
usedEffi= "";
usedTotE= "";
mapEnerKD = new HashMap<>();
mapResoKD = new HashMap<>();
mapEffiKD = new HashMap<>();
mapTotEKD = new HashMap<>();
usedEnerPara = new ParameterInfo();
usedResoPara = new ParameterInfo();
usedEffiPara = new ParameterInfo();
usedTotEPara = new ParameterInfo();
mapEnerPara = new HashMap<>();
mapResoPara = new HashMap<>();
mapEffiPara = new HashMap<>();
mapTotEPara = new HashMap<>();
para_stepRatio = new ParameterInfo();
para_tail = new ParameterInfo();
para_tailAlpha = new ParameterInfo();
para_tailRight = new ParameterInfo();
para_tailRightAlpha = new ParameterInfo();
id_sample = "";
id_analysis = "";
status = "";
category = "";
header = new HeaderBlock();
msgInfo = new MessageInfo();
Spec = new GSpectrumBlock();
acq = new AcquisitionBlock();
collect = new CollectionBlock();
process = new ProcessingBlock();
calibration = new CalibrationBlock();
sampleBlock = new SampleBlock();
certificate = new CertificateBlock();
QcItems = new HashMap<>();
mapNucActMda = new HashMap<>();
}
}

View File

@ -0,0 +1,21 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class ParameterInfo implements Serializable {
private List<Double> p;
private List<Double> perr;
public ParameterInfo(){
p = new LinkedList<>();
perr = new LinkedList<>();
}
}

View File

@ -0,0 +1,68 @@
package org.jeecg.modules.base.bizVo;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
public class PeakInfo implements Serializable {
public int index; //峰序号
public int multiIndex; //重峰序号
public int left; //峰的左边界
public int right; //峰的右边界
public double peakCentroid; //峰拟合后加权峰中心道
public double energy;
public double fwhmc; //半高宽
public double fwhm; //以keV为单位的半高宽
public double area; //净面积
public double areaErr; //
public double efficiency;
public double lc;
public double ld;
public double meanBackCount;
public double backgroundArea;
public double significance;
public double sensitivity;
public double stepRatio;
public double tail;
public double tailAlpha;
public double upperTail;
public double upperTailAlpha;
public double BWWidthChan;
public String recoilBetaChan;
public String recoilDeltaChan;
public String comments;
public List<String> nuclides;
public PeakInfo(){
nuclides = new LinkedList<>();
}
}

View File

@ -0,0 +1,29 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class ProcessingBlock implements Serializable {
/* Processing Block */
private double sample_volume_of_Xe; // sample volume of Xe (cm 3 )
private double uncertainty_1; // uncertainty (cm 3 )
private double Xe_collection_yield; // Xe collection yield (Xe gas in sample/total Xe gas sampled)
private double uncertainty_2; // uncertainty (Xe gas in sample/total Xe gas sampled)
private String archive_bottle_id; // archive bottle identification
public ProcessingBlock(){
sample_volume_of_Xe=0;
uncertainty_1=0;
Xe_collection_yield=0;
uncertainty_2=0;
archive_bottle_id="";
}
}

View File

@ -0,0 +1,38 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class QCResult implements Serializable {
private String collectTimeEvaluationMetrics;
private String acquisitionTimeEvaluationMetrics;
private String xenonVolumeEvaluationMetrics;
private String xe133MDCEvaluationMetrics;
private String collectTimeValue;
private String collectTimeStatus;
private String acquisitionTimeValue;
private String acquisitionTimeStatus;
private String xenonVolumeValue;
private String xenonVolumeStatus;
private String xe133MDCValue;
private String xe133MDCStatus;
private boolean gasBgValueAndStatus;
private boolean detBgValueAndStatus;
}

View File

@ -0,0 +1,22 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class QcCheckItem implements Serializable {
private String standard;
private double value;
private boolean bPass;
public QcCheckItem(){
standard="";
bPass = false;
value = 0.0;
}
}

View File

@ -0,0 +1,18 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class ResolutionData implements Serializable {
private String Energy;
private String FWHM;
private String Fit;
private String Delta;
}

View File

@ -0,0 +1,58 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class RlrDataValues implements Serializable {
private String srid;
private String colloct_start_date;
private String colloct_start_time;
private String colloct_stop_date;
private String colloct_stop_time;
private String acq_start_date;
private String acq_start_time;
private String acq_live_time;
private String xe131m_conc;
private String xe131m_uncert_conc;
private String xe131m_MDC;
private String xe131m_LC;
private String xe133m_conc;
private String xe133m_uncert_conc;
private String xe133m_MDC;
private String xe133m_LC;
private String xe133_conc;
private String xe133_uncert_conc;
private String xe133_MDC;
private String xe133_LC;
private String xe135_conc;
private String xe135_uncert_conc;
private String xe135_MDC;
private String xe135_LC;
}

View File

@ -0,0 +1,20 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class SampleBlock implements Serializable {
/* Sample Block */
private double dimension_1;
private double dimension_2;
public SampleBlock(){
dimension_1=0;
dimension_2=0;
}
}

View File

@ -0,0 +1,46 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class Sections implements Serializable {
private List<Double> collectionTimeSections;
private List<Double> acquisitionTimeSections;
private List<Double> xeVolumeSections;
private List<Double> airVolumeSections;
public Sections(){
collectionTimeSections = new LinkedList<>();
collectionTimeSections.add(0.0);
collectionTimeSections.add(6.0);
collectionTimeSections.add(10.8);
collectionTimeSections.add(13.2);
collectionTimeSections.add(24.0);
acquisitionTimeSections = new LinkedList<>();
acquisitionTimeSections.add(0.0);
acquisitionTimeSections.add(6.0);
acquisitionTimeSections.add(10.8);
acquisitionTimeSections.add(13.2);
acquisitionTimeSections.add(24.0);
xeVolumeSections = new LinkedList<>();
xeVolumeSections.add(0.0);
xeVolumeSections.add(0.2);
xeVolumeSections.add(0.87);
airVolumeSections = new LinkedList<>();
airVolumeSections.add(0.0);
airVolumeSections.add(2.3);
airVolumeSections.add(10.0);
}
}

View File

@ -0,0 +1,14 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class SeriseData implements Serializable {
private double x;
private double y;
}

View File

@ -0,0 +1,26 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class ShapeData implements Serializable {
private int size;
private String name;
private String color;
private SeriseData point;
private String type;
public ShapeData() {
size = 4;
color = "red";
type = "Shape_Round";
}
}

View File

@ -0,0 +1,63 @@
package org.jeecg.modules.base.bizVo;
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 SpecSetup implements Serializable {
private double ECutAnalysis_Low;
private double ECutAnalysis_High;
private double EnergyTolerance;
private double CalibrationPSS_high;
private double CalibrationPSS_low;
private double BaseImprovePSS;
private double PSS_low;
private double k_back;
private double k_alpha;
private double k_beta;
private double RiskLevelK;
private boolean bUpdateCal;
private boolean KeepCalPeakSearchPeaks;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date refTime_act; //活度参考时间默认是AcqStartTime
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date refTime_conc; //默认是CollectStartTime
public SpecSetup(){
ECutAnalysis_Low = 12.0;
ECutAnalysis_High = 12.0;
EnergyTolerance = 0.5;
CalibrationPSS_high = 10.0;
CalibrationPSS_low = 5.0;
BaseImprovePSS = 10.0;
PSS_low = 2.7;
k_back = 1.25;
k_alpha = 2.576;
k_beta = 1.645;
RiskLevelK = 4.264890;
bUpdateCal = false;
KeepCalPeakSearchPeaks = false;
}
}

View File

@ -0,0 +1,53 @@
package org.jeecg.modules.base.bizVo;
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 SpectrumData implements Serializable {
private String stationCode;
private String detectorCode;
private String dataType;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date collectionStart;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date collectionStop;
private String collectionTime;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date acquisitionStart;
private double acquisitionRealTime;
private double acquisitionLiveTime;
private double airVolume;
private double xeVolume;
private double yield;
private String measurementId;
private String gasBkMeasurementId;
private String detectorBkMeasurementId;
private Integer sampleId;
private String status;
}

View File

@ -0,0 +1,33 @@
package org.jeecg.modules.base.bizVo;
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 SpectrumFileRecord implements Serializable {
private Integer sampleId;
private String sampleFilePath;
private String gasBgFilePath;
private String detBgFilePath;
private String qcFilePath;
private String logFilePath;
private String reportFilePath;
private String siteDetCode;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date collectStart;
}

View File

@ -0,0 +1,25 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class SpectrumGroup implements Serializable {
private String SampleSpectrumFile;
private String GasBgSpectrumFile;
private String DetBgSpectrumFile;
private BgCalibratePara BgCalPara;
private List<Double> b_c2e;
private List<Double> g_c2e;
public SpectrumGroup(){
BgCalPara = new BgCalibratePara();
b_c2e = new LinkedList<>();
g_c2e = new LinkedList<>();
}
}

View File

@ -0,0 +1,23 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@Data
public class StatisticsData implements Serializable {
private String nuclideName;
private Date collectStart;
private Double mdc;
private Double conc;
private Date dateTime;
private Double dataValue;
}

View File

@ -0,0 +1,62 @@
package org.jeecg.modules.base.bizVo;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
@Data
public class StatisticsQueryData implements Serializable {
private String dbName;
private String detectorName;
private Integer stationId;
private String statisticsType;
private boolean MDC;
private boolean Activity;
private boolean filterGrpbox;
private List<String> nuclidesList;
private String minCollectTimeLine;
private String maxCollectTimeLine;
private String minAcqLiveLine;
private String maxAcqLiveLine;
private String quantityLine;
private String xeVolumeLine;
private String mdcLine;
private String concLine;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date startTime;
@DateTimeFormat(pattern = "yyyy-MM-dd")
@JsonFormat(pattern = "yyyy-MM-dd")
private Date endTime;
private List<String> items;
private String startDate;
private String endDate;
private List<String> detectorList;
}

View File

@ -0,0 +1,20 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
@Data
public class StcGraph implements Serializable {
private String m_GraphPen;
private String m_strGraphName;
private List<Date> m_Keys;
private List<Double> m_Values;
}

View File

@ -0,0 +1,62 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class StructInsertInput implements Serializable {
//-----------------input:------------------
List<Double> peakCentroid;
List<Double> fwhmc;
List<Double> tail;
List<Double> tailAlpha;
List<Double> upperTail;
List<Double> upperTailAlpha;
List<Double> area;
List<Double> stepRatio;
List<Double> usedEnerPara;
List<Double> usedResoPara;
List<Double> usedEffiPara;
long num_g_channel;
long begin_channel;
List<Double> XCtrl;
List<Double> YCtrl;
List<Double> YSlope;
int rg_low;
int rg_high;
List<Double> para_tail;
List<Double> para_tailAlpha;
List<Double> para_tailRight;
List<Double> para_tailRightAlpha;
List<Double> para_stepRatio;
int curChan;
List<Double> vCount;
}

View File

@ -0,0 +1,31 @@
package org.jeecg.modules.base.bizVo;
import java.io.Serializable;
import java.util.List;
public class StructInsertOutput implements Serializable {
//-----------------output:------------------
List<Double> energy;
List<Double> sensitivity;
List<Double> fwhm;
List<Double> efficiency;
List<Double> BWWidthChan;
List<Double> recoilBetaChan;
List<Double> recoilDeltaChan;
List<Double> vIdx;
List<Double> vLeft;
List<Double> vRight;
List<Double> vCentroid;
}

View File

@ -0,0 +1,14 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class TableAssociation implements Serializable {
private String exLevel;
private String identified;
}

View File

@ -0,0 +1,16 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class TableDaughter implements Serializable {
private String daughters;
private String branchingratios;
private String daughtersstable;
}

View File

@ -0,0 +1,30 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class TableNuclideActivity implements Serializable {
private String nuclide;
private String halfLife;
private String energy;
private String yield;
private String efficiency;
private String activity;
private String actErr;
private String mda;
private String conc;
private String mdc;
}

View File

@ -0,0 +1,28 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class TablePeak implements Serializable {
private String energy;
private String centroid;
private String multiplet;
private String FWHM;
private String netArea;
private String areaErr;
private String significant;
private String sensitivity;
private String indentify;
}

View File

@ -0,0 +1,26 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class TablePeakFit implements Serializable {
private String energy;
private String energyErr;
private String netArea;
private String areaErr;
private String netCountRate;
private String ncRateErr;
private String lc;
private String significance;
}

View File

@ -0,0 +1,18 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class TableQCResult implements Serializable {
private String name;
private String flag;
private double value;
private String standard;
}

View File

@ -0,0 +1,28 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class TableResult implements Serializable {
private String nuclide;
private String activity;
private String actErr;
private String factor1;
private String confidence1;
private String conc;
private String concErr;
private String factor2;
private String confidence2;
}

View File

@ -0,0 +1,20 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class TableWidget implements Serializable {
private Integer rowCount;
private Double channel;
private Double energy;
private String FWHMC;
private String FWHMkeV;
}

View File

@ -0,0 +1,27 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
import java.util.LinkedList;
import java.util.List;
@Data
public class TotaleffBlock implements Serializable {
private List<Double> g_energy; // γ -energy (keV)
private List<Double> total_efficiency; // total efficiency (counts/photon emitted)
private List<Double> uncertainty; // uncertainty (counts/photon emitted)
private int record_count;
public TotaleffBlock(){
g_energy = new LinkedList<>();
total_efficiency = new LinkedList<>();
uncertainty = new LinkedList<>();
record_count = 0;
}
}

View File

@ -0,0 +1,18 @@
package org.jeecg.modules.base.bizVo;
import lombok.Data;
import java.io.Serializable;
@Data
public class XeData implements Serializable {
private String Isotope;
private String Concentration;
private Double Uncertainty;
private Double MDC;
}

View File

@ -0,0 +1,12 @@
package org.jeecg.modules.base.dto;
import lombok.Data;
import java.io.Serializable;
@Data
public class GardsNuclLibDto implements Serializable {
private String name;
private Double halflife;
}

View File

@ -0,0 +1,31 @@
package org.jeecg.modules.base.entity.configuration;
import java.io.Serializable;
import java.util.Date;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.springframework.format.annotation.DateTimeFormat;
import org.jeecgframework.poi.excel.annotation.Excel;
@Data
@TableName("CONFIGURATION.GARDS_GAMMA_DEFAULT_PARAMS")
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class GardsGammaDefaultParams {
private String name;
private String value;
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date moddate;
}

View File

@ -25,9 +25,9 @@ public class GardsNuclLib implements Serializable {
private String type;
private Integer halflife;
private Double halflife;
private Integer halflifeErr;
private Double halflifeErr;
private Long numLines;

View File

@ -3,6 +3,8 @@ package org.jeecg.modules.base.entity.configuration;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
@ -16,19 +18,19 @@ public class GardsNuclLinesLib implements Serializable {
private String name;
@TableField(value = "ENERGY")
private Integer energy;
private Double energy;
@TableField(value = "ENERGY_UNCERT")
private Integer energyUncert;
private Double energyUncert;
@TableField(value = "YIELD")
private Integer yield;
private Double yield;
@TableField(value = "YIELD_UNCERT")
private Integer yieldUncert;
private Double yieldUncert;
@TableField(value = "KEY_FLAG")
private Integer keyFlag;
private Integer keyFlag = -1;
@TableField(value = "NUCLIDE_ID")
private Integer nuclideId;
@ -36,9 +38,15 @@ public class GardsNuclLinesLib implements Serializable {
@TableField(value = "FULLNAME")
private String fullName;
@TableField(exist = false)
private Integer maxYeildIdx = -1;
@TableField(exist = false)
private Double halflife = 0d;
@TableField(value = "MODDATE")
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
private Date MODDATE;
@JsonIgnore
private Date moddate;
}

View File

@ -1,51 +0,0 @@
package org.jeecg.modules.controller;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
import java.io.IOException;
import java.io.UnsupportedEncodingException;
import java.net.URLDecoder;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.query.QueryGenerator;
import org.jeecg.common.aspect.annotation.AutoLog;
import java.util.Date;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.modules.base.entity.configuration.GardsNuclLib;
import org.jeecg.modules.service.IGardsNuclLibService;
import org.jeecgframework.poi.excel.ExcelImportUtil;
import org.jeecgframework.poi.excel.def.NormalExcelConstants;
import org.jeecgframework.poi.excel.entity.ExportParams;
import org.jeecgframework.poi.excel.entity.ImportParams;
import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import org.springframework.web.servlet.ModelAndView;
import com.alibaba.fastjson.JSON;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
@Api(value = "核素信息库管理",tags = "核素信息库管理")
@RestController
@RequestMapping("gardsNuclLib")
public class GardsNuclLibController extends JeecgController<GardsNuclLib, IGardsNuclLibService> {
@Autowired
private IGardsNuclLibService gardsNuclLibService;
@GetMapping("allName")
@ApiOperation(value = "核素名列表",notes = "核素名列表")
public List<String> allName(){
return null;
}
}

View File

@ -16,7 +16,6 @@ import org.jeecg.common.constant.DateConstant;
import org.jeecg.common.constant.DictConstant;
import org.jeecg.common.constant.SymbolConstant;
import org.jeecg.common.system.vo.DictModel;
import org.jeecg.common.util.PageUtil;
import org.jeecg.modules.base.dto.AlarmAnalysisRuleDto;
import org.jeecg.modules.base.dto.AnalysisLogDto;
import org.jeecg.modules.base.dto.NuclideInfo;
@ -111,7 +110,7 @@ public class AlarmAnalysisLogServiceImpl extends ServiceImpl<AlarmAnalysisLogMap
Integer pageNo = analysisLogVo.getPageNo();
Integer pageSize = analysisLogVo.getPageSize();
int total = result.size();
List<AnalysisLogDto> records = PageUtil.page(pageNo, pageSize, result);
List<AnalysisLogDto> records = ListUtil.page(pageNo, pageSize, result);
Page<AnalysisLogDto> page = new Page<>(pageNo,pageSize,total);
page.setRecords(records);
return Result.OK(page);

View File

@ -11,7 +11,6 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.constant.*;
import org.jeecg.common.system.vo.DictModel;
import org.jeecg.common.util.PageUtil;
import org.jeecg.common.util.RedisStreamUtil;
import org.jeecg.common.util.RedisUtil;
import org.jeecg.modules.base.dto.AlarmAnalysisRuleDto;
@ -127,7 +126,7 @@ public class AlarmAnalysisRuleServiceImpl extends ServiceImpl<AlarmAnalysisRuleM
}
// 封装分页
int total = dtos.size();
List<AlarmAnalysisRuleDto> records = PageUtil.page(pageNo, pageSize, dtos);
List<AlarmAnalysisRuleDto> records = ListUtil.page(pageNo, pageSize, dtos);
Page<AlarmAnalysisRuleDto> page = new Page<>(pageNo,pageSize,total);
page.setRecords(records);
return Result.OK(page);

View File

@ -1,18 +0,0 @@
package org.jeecg.modules.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import org.jeecg.modules.base.entity.configuration.GardsNuclLib;
import org.jeecg.modules.mapper.GardsNuclLibMapper;
import org.jeecg.modules.service.IGardsNuclLibService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.List;
import java.util.stream.Collectors;
@Service
@DS("ora")
public class GardsNuclLibServiceImpl extends ServiceImpl<GardsNuclLibMapper, GardsNuclLib> implements IGardsNuclLibService {
}

View File

@ -0,0 +1,77 @@
package org.jeecg.modules;
import cn.hutool.core.util.StrUtil;
import org.jeecg.common.constant.Setting;
import org.jeecg.modules.base.bizVo.HeaderBlock;
import org.jeecg.modules.base.bizVo.PHDFile;
import org.jeecg.modules.base.bizVo.SpecSetup;
import org.jeecg.modules.base.entity.configuration.GardsGammaDefaultParams;
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 Demo {
@Autowired
private IGardsGammaDefaultParamsService gammaDefaultParamsService;
public void getSettingFromDB(){
Map<String, String> 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);
}
HeaderBlock header = phdFile.getHeader();
String systemType = header.getSystem_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));
}
}

View File

@ -0,0 +1,11 @@
package org.jeecg.modules.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.base.entity.configuration.GardsGammaDefaultParams;
public interface GardsGammaDefaultParamsMapper extends BaseMapper<GardsGammaDefaultParams> {
}

View File

@ -1,5 +1,5 @@
<?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.GardsNuclLibMapper">
<mapper namespace="org.jeecg.demo.mapper.GardsGammaDefaultParamsMapper">
</mapper>

View File

@ -0,0 +1,12 @@
package org.jeecg.modules.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.base.entity.configuration.GardsGammaDefaultParams;
import java.util.Map;
public interface IGardsGammaDefaultParamsService extends IService<GardsGammaDefaultParams> {
Map<String,String> mapSetting();
}

View File

@ -0,0 +1,25 @@
package org.jeecg.modules.service.impl;
import com.baomidou.dynamic.datasource.annotation.DS;
import org.jeecg.modules.base.entity.configuration.GardsGammaDefaultParams;
import org.jeecg.modules.mapper.GardsGammaDefaultParamsMapper;
import org.jeecg.modules.service.IGardsGammaDefaultParamsService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.Map;
import java.util.stream.Collectors;
@Service
@DS("ora")
public class GardsGammaDefaultParamsServiceImpl extends ServiceImpl<GardsGammaDefaultParamsMapper, GardsGammaDefaultParams> implements IGardsGammaDefaultParamsService {
@Override
public Map<String, String> mapSetting() {
Map<String, String> paramsMap = list().stream()
.collect(Collectors.toMap(GardsGammaDefaultParams::getName,
GardsGammaDefaultParams::getValue));
return paramsMap;
}
}

View File

@ -15,7 +15,6 @@ import org.jeecg.common.constant.SymbolConstant;
import org.jeecg.common.constant.enums.FileTypeEnum;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.common.util.FTPUtil;
import org.jeecg.common.util.PageUtil;
import org.jeecg.modules.base.comparator.FileComparator;
import org.jeecg.modules.base.dto.FileDto;
import org.jeecg.modules.base.vo.FileVo;
@ -145,7 +144,7 @@ public class SpectrumFileServiceImpl implements ISpectrumFileService {
String field = fileVo.getField();
String order = fileVo.getOrder();
fileDtos.sort(new FileComparator(field, order));
List<FileDto> records = PageUtil.page(pageNo, pageSize, fileDtos);
List<FileDto> records = ListUtil.page(pageNo, pageSize, fileDtos);
page.setRecords(records).setTotal(fileDtos.size());
return Result.OK(page);
} catch (IOException e) {

View File

@ -0,0 +1,14 @@
package org.jeecg.modules.system.controller;
import io.swagger.annotations.Api;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.modules.base.entity.configuration.GardsNuclLib;
import org.jeecg.modules.system.service.IGardsNuclLibService;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Api(value = "核素信息库管理",tags = "核素信息库管理")
@RestController
@RequestMapping("gardsNuclLib")
public class GardsNuclLibController extends JeecgController<GardsNuclLib, IGardsNuclLibService> {
}

View File

@ -1,9 +1,13 @@
package org.jeecg.modules.mapper;
package org.jeecg.modules.system.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.base.dto.GardsNuclLibDto;
import org.jeecg.modules.base.entity.configuration.GardsNuclLib;
import java.util.List;
public interface GardsNuclLibMapper extends BaseMapper<GardsNuclLib> {
List<GardsNuclLibDto> halfLife(List<String> nuclideNames);
}

View File

@ -0,0 +1,11 @@
package org.jeecg.modules.system.mapper;
import java.util.List;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.base.entity.configuration.GardsNuclLinesLib;
public interface GardsNuclLinesLibMapper extends BaseMapper<GardsNuclLinesLib> {
}

View File

@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.jeecg.modules.base.entity.postgre.SysDefaultNuclide;
import java.util.List;
@Mapper
public interface SysDefaultNuclideMapper extends BaseMapper<SysDefaultNuclide> {

View File

@ -0,0 +1,20 @@
<?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.system.mapper.GardsNuclLibMapper">
<select id="halfLife" resultType="org.jeecg.modules.base.dto.GardsNuclLibDto">
SELECT
name,
halflife
FROM
CONFIGURATION.GARDS_NUCL_LIB
<where>
<if test="nuclideNames != null and nuclideNames.size() > 0">
name IN
<foreach collection="nuclideNames" open="(" close=")" item="item" separator="," index="index">
#{item}
</foreach>
</if>
</where>
</select>
</mapper>

View File

@ -0,0 +1,5 @@
<?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.system.mapper.GardsNuclLinesLibMapper">
</mapper>

View File

@ -0,0 +1,5 @@
<?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.system.mapper.SysDefaultNuclideMapper">
</mapper>

View File

@ -1,10 +1,12 @@
package org.jeecg.modules.service;
package org.jeecg.modules.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.base.entity.configuration.GardsNuclLib;
import java.util.List;
import java.util.Map;
public interface IGardsNuclLibService extends IService<GardsNuclLib> {
Map<String,Double> halfLife(List<String> nuclideNames);
}

View File

@ -0,0 +1,13 @@
package org.jeecg.modules.system.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.google.common.collect.Multimap;
import org.jeecg.modules.base.entity.configuration.GardsNuclLinesLib;
import java.util.List;
import java.util.Map;
public interface IGardsNuclLinesLibService extends IService<GardsNuclLinesLib> {
Map<String,List<GardsNuclLinesLib>> mapLines(List<String> nuclideNames);
}

View File

@ -3,9 +3,11 @@ package org.jeecg.modules.system.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.base.entity.configuration.GardsNuclLinesLib;
import org.jeecg.modules.base.entity.postgre.SysDefaultNuclide;
import java.util.List;
import java.util.Map;
/**
@ -13,15 +15,13 @@ import java.util.List;
*/
public interface ISysDefaultNuclideService extends IService<SysDefaultNuclide> {
/**
* 通过核素用途获取核素数据
* @param useType 核素用途
* @return
*/
Result<?> queryNuclideByType(Integer pageNo, Integer pageSize, Integer useType);
Result<?> allName(Integer useType);
Result<?> add(List<SysDefaultNuclide> nuclides);
Map<String,List<GardsNuclLinesLib>> mapLines(String nuclideType);
void mapLines2Redis();
}

View File

@ -0,0 +1,32 @@
package org.jeecg.modules.system.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.map.MapUtil;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import org.jeecg.modules.base.dto.GardsNuclLibDto;
import org.jeecg.modules.base.entity.configuration.GardsNuclLib;
import org.jeecg.modules.system.mapper.GardsNuclLibMapper;
import org.jeecg.modules.system.service.IGardsNuclLibService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Service
@DS("ora")
public class GardsNuclLibServiceImpl extends ServiceImpl<GardsNuclLibMapper, GardsNuclLib> implements IGardsNuclLibService {
@Override
public Map<String, Double> halfLife(List<String> nuclideNames) {
Map<String, Double> halfLife = MapUtil.newHashMap();
if (CollUtil.isEmpty(nuclideNames))
return halfLife;
halfLife = baseMapper.halfLife(nuclideNames).stream().collect(Collectors
.toMap(GardsNuclLibDto::getName, GardsNuclLibDto::getHalflife));
return halfLife;
}
}

View File

@ -0,0 +1,67 @@
package org.jeecg.modules.system.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.ListUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.google.common.collect.ArrayListMultimap;
import com.google.common.collect.Multimap;
import com.google.common.collect.Multimaps;
import org.apache.commons.collections.MultiHashMap;
import org.jeecg.common.util.ListUtils;
import org.jeecg.modules.base.entity.configuration.GardsNuclLinesLib;
import org.jeecg.modules.system.mapper.GardsNuclLinesLibMapper;
import org.jeecg.modules.system.service.IGardsNuclLibService;
import org.jeecg.modules.system.service.IGardsNuclLinesLibService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Service
@DS("ora")
public class GardsNuclLinesLibServiceImpl extends ServiceImpl<GardsNuclLinesLibMapper, GardsNuclLinesLib> implements IGardsNuclLinesLibService {
@Autowired
private IGardsNuclLibService nuclLibService;
@Override
public Map<String,List<GardsNuclLinesLib>> mapLines(List<String> nuclideNames) {
Map<String,List<GardsNuclLinesLib>> result = MapUtil.newHashMap();
if (CollUtil.isEmpty(nuclideNames))
return result;
//List<List<String>> partition = ListUtils.partition(nuclideNames, 20);
LambdaQueryWrapper<GardsNuclLinesLib> wrapper = new LambdaQueryWrapper<>();
wrapper.in(GardsNuclLinesLib::getName, nuclideNames);
List<GardsNuclLinesLib> allNuclide = list(wrapper);
/*for (List<String> subNuclide : partition) {
wrapper.in(GardsNuclLinesLib::getName, subNuclide);
allNuclide.addAll(list(wrapper));
wrapper.clear();
}*/
Map<String, Double> halfLife = nuclLibService.halfLife(nuclideNames);
for (int i = 0; i < allNuclide.size(); i++) {
GardsNuclLinesLib linesLib = allNuclide.get(i);
Double yield = linesLib.getYield();
linesLib.setYield(yield / 100);
int keyFlag = linesLib.getKeyFlag();
if (keyFlag > 0){
linesLib.setKeyFlag(i);
linesLib.setMaxYeildIdx(i);
}
String name = linesLib.getName();
Double day = halfLife.get(name);
if (ObjectUtil.isNotNull(day))
linesLib.setHalflife(day * 86400);
}
result = allNuclide.stream().collect(Collectors.groupingBy(GardsNuclLinesLib::getName));
return result;
}
}

View File

@ -2,26 +2,44 @@ package org.jeecg.modules.system.service.impl;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.ListUtil;
import cn.hutool.core.map.MapUtil;
import cn.hutool.core.util.ObjectUtil;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.google.common.collect.Multimap;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.constant.Prompt;
import org.jeecg.common.constant.RedisConstant;
import org.jeecg.common.util.RedisUtil;
import org.jeecg.modules.base.entity.configuration.GardsNuclLinesLib;
import org.jeecg.modules.base.entity.postgre.SysDefaultNuclide;
import org.jeecg.modules.monitor.domain.RedisInfo;
import org.jeecg.modules.system.mapper.SysDefaultNuclideMapper;
import org.jeecg.modules.system.service.IGardsNuclLinesLibService;
import org.jeecg.modules.system.service.ISysDefaultNuclideService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.PostConstruct;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
@Service
public class SysDefaultNuclideServiceImpl extends ServiceImpl<SysDefaultNuclideMapper, SysDefaultNuclide> implements ISysDefaultNuclideService {
@Autowired
private RedisUtil redisUtil;
@Autowired
private IGardsNuclLinesLibService nuclLinesLibService;
@Override
public Result<?> queryNuclideByType(Integer pageNo, Integer pageSize, Integer useType) {
Page<SysDefaultNuclide> page = new Page<>(pageNo, pageSize);
@ -53,8 +71,54 @@ public class SysDefaultNuclideServiceImpl extends ServiceImpl<SysDefaultNuclideM
remove(wrapper);
}
boolean success = saveBatch(nuclides);
if (success)
if (success){
mapLines2Redis();
return Result.OK(Prompt.ADD_SUCC);
}
return Result.error(Prompt.ADD_ERR);
}
@Override
public Map<String,List<GardsNuclLinesLib>> mapLines(String nuclideType) {
List<String> nuclideTypes = ListUtil.toList("G","P");
Map<String,List<GardsNuclLinesLib>> mapLines = MapUtil.newHashMap();
if (!nuclideTypes.contains(nuclideType))
return mapLines;
String key = RedisConstant.NUCLIDE_LINES_LIB + nuclideType;
if (redisUtil.hasKey(key))
return (Map<String,List<GardsNuclLinesLib>>)redisUtil.get(key);
LambdaQueryWrapper<SysDefaultNuclide> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(SysDefaultNuclide::getUseType,1);
wrapper.eq(SysDefaultNuclide::getNuclideType,nuclideType);
List<SysDefaultNuclide> nuclides = list(wrapper);
List<String> nuclideNames = nuclides.stream()
.map(SysDefaultNuclide::getNuclideName)
.filter(StrUtil::isNotBlank)
.collect(Collectors.toList());
mapLines = nuclLinesLibService.mapLines(nuclideNames);
redisUtil.set(key,mapLines);
return mapLines;
}
@PostConstruct
@Override
public void mapLines2Redis() {
List<String> nuclideTypes = ListUtil.toList("G","P");
LambdaQueryWrapper<SysDefaultNuclide> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(SysDefaultNuclide::getUseType,1);
wrapper.in(SysDefaultNuclide::getNuclideType,nuclideTypes);
List<SysDefaultNuclide> nuclides = list(wrapper);
Map<String, List<SysDefaultNuclide>> nuclideMap = nuclides.stream()
.filter(nuclide -> StrUtil.isNotBlank(nuclide.getNuclideName()))
.collect(Collectors.groupingBy(SysDefaultNuclide::getNuclideType));
for (Map.Entry<String, List<SysDefaultNuclide>> entry : nuclideMap.entrySet()) {
List<String> nuclideNames = entry.getValue().stream()
.map(SysDefaultNuclide::getNuclideName)
.collect(Collectors.toList());
String nuclideType = entry.getKey();
String key = RedisConstant.NUCLIDE_LINES_LIB + nuclideType;
Map<String,List<GardsNuclLinesLib>> mapLines = nuclLinesLibService.mapLines(nuclideNames);
redisUtil.set(key,mapLines);
}
}
}

View File

@ -12,11 +12,11 @@
#password=123456
#database_name=original
#diver_name=oracle.jdbc.driver.OracleDriver
#url=jdbc:oracle:thin:@82.157.234.81:1521:orcl
#username=configuration
#password=123456
#database_name=configuration
diver_name=oracle.jdbc.driver.OracleDriver
url=jdbc:oracle:thin:@82.157.234.81:1521:orcl
username=configuration
password=123456
database_name=configuration
#diver_name=oracle.jdbc.driver.OracleDriver
#url=jdbc:oracle:thin:@82.157.234.81:1521:orcl
@ -25,11 +25,11 @@
#database_name=rnauto
#postgre
diver_name=org.postgresql.Driver
url=jdbc:postgresql://182.92.183.230:5432/jeecg-boot
username=postgres
password=U6D!TGH3
database_name=public
#diver_name=org.postgresql.Driver
#url=jdbc:postgresql://182.92.183.230:5432/jeecg-boot
#username=postgres
#password=U6D!TGH3
#database_name=public
#SQLServer2005\u4ee5\u4e0a
#diver_name=org.hibernate.dialect.SQLServerDialect