noble Gas beta-gamma 模块开发
This commit is contained in:
		
							parent
							
								
									a8f1e88d91
								
							
						
					
					
						commit
						fe5166eb16
					
				|  | @ -96,30 +96,85 @@ | |||
|           <custom-table | ||||
|             size="middle" | ||||
|             :rowKey="getUid()" | ||||
|             :columns="columnsEnergy" | ||||
|             :list="dataSourceEnergy" | ||||
|             :columns="columnsEnergy_G" | ||||
|             :list="dataSourceEnergy_G" | ||||
|             :pagination="false" | ||||
|           > | ||||
|           </custom-table> | ||||
|           <template v-if="allData.benergyBlock===null?false:true"> | ||||
|             <div class="pane-title" style="margin: 15px 0;">B ENERGY</div> | ||||
|             <custom-table | ||||
|               size="middle" | ||||
|               :rowKey="getUid()" | ||||
|               :columns="columnsEnergy_B" | ||||
|               :list="dataSourceEnergy_B" | ||||
|               :pagination="false" | ||||
|             > | ||||
|             </custom-table> | ||||
|           </template> | ||||
|         </a-tab-pane> | ||||
|         <a-tab-pane key="resulution" tab="RESOLUTION" v-if="allData.gresolutionBlock===null?false:true" forceRender> | ||||
|           <div class="pane-title" style="margin-bottom: 15px;">G RESOLUTION</div> | ||||
|           <custom-table | ||||
|             size="middle" | ||||
|             :rowKey="getUid()" | ||||
|             :columns="columnsResulution" | ||||
|             :list="dataSourceResulution" | ||||
|             :columns="columnsResulution_G" | ||||
|             :list="dataSourceResulution_G" | ||||
|             :pagination="false" | ||||
|           > | ||||
|           </custom-table> | ||||
|           <template v-if="allData.bresolutionBlock===null?false:true"> | ||||
|             <div class="pane-title" style="margin: 15px 0;">B RESOLUTION</div> | ||||
|             <custom-table | ||||
|               size="middle" | ||||
|               :rowKey="getUid()" | ||||
|               :columns="columnsResulution_B" | ||||
|               :list="dataSourceResulution_B" | ||||
|               :pagination="false" | ||||
|             > | ||||
|             </custom-table> | ||||
|           </template> | ||||
|         </a-tab-pane> | ||||
|         <a-tab-pane key="efficiency" tab="EFFICIENCY" v-if="allData.gefficiencyBlock===null?false:true" forceRender> | ||||
|           <div class="pane-title" style="margin-bottom: 15px;">GAMMA EFFICIENCY</div> | ||||
|           <custom-table | ||||
|             size="middle" | ||||
|             :rowKey="getUid()" | ||||
|             :columns="columnsEfficiency" | ||||
|             :list="dataSourceEfficiency" | ||||
|             :columns="columnsEfficiency_G" | ||||
|             :list="dataSourceEfficiency_G" | ||||
|             :pagination="false" | ||||
|           > | ||||
|           </custom-table> | ||||
|           <template  v-if="allData.bgEfficiencyBlock===null?false:true"> | ||||
|             <div class="pane-title" style="margin: 15px 0;">BETA-GAMMA EFFICIENCY</div> | ||||
|             <custom-table | ||||
|               size="middle" | ||||
|               :rowKey="getUid()" | ||||
|               :columns="columnsEfficiency_BG" | ||||
|               :list="dataSourceEfficiency_BG" | ||||
|               :pagination="false" | ||||
|             > | ||||
|             </custom-table> | ||||
|           </template> | ||||
|         </a-tab-pane> | ||||
|         <a-tab-pane key="roi" tab="ROI" v-if="allData.roiLimitsBlock===null?false:true" forceRender> | ||||
|           <div class="pane-title" style="margin-bottom: 15px;">ROI LIMITS</div> | ||||
|           <custom-table | ||||
|             size="middle" | ||||
|             :rowKey="getUid()" | ||||
|             :columns="columnsRoiLimits" | ||||
|             :list="dataSourceRoiLimits" | ||||
|             :pagination="false" | ||||
|           > | ||||
|           </custom-table> | ||||
|         </a-tab-pane> | ||||
|         <a-tab-pane key="ratios" tab="RATIOS" v-if="allData.ratiosBlock===null?false:true" forceRender> | ||||
|           <div class="pane-title" style="margin-bottom: 15px;">RATIOS</div> | ||||
|           <custom-table | ||||
|             size="middle" | ||||
|             :rowKey="getUid()" | ||||
|             :columns="columnsRatios" | ||||
|             :list="dataSourceRatios" | ||||
|             :pagination="false" | ||||
|           > | ||||
|           </custom-table> | ||||
|  | @ -132,11 +187,37 @@ | |||
|                 <span class="span-key" style="margin-left: 35px;">Energy Span:</span><span class="row-val">{{ allData.gspectrumBlock.energySpan }}</span>  | ||||
|               </div> | ||||
|               <div> | ||||
|                 <a-checkbox style="margin-right: 15px;" @change="yLogChange">Y log scale</a-checkbox> | ||||
|                 <a-button class="row-btn" @click="resetZoom">Reset Zoom</a-button> | ||||
|                 <a-checkbox style="margin-right: 15px;" @change="e=>yLogChange(e,'G')">Y log scale</a-checkbox> | ||||
|                 <a-button class="row-btn" @click="resetZoom('G')">Reset Zoom</a-button> | ||||
|               </div> | ||||
|           </div> | ||||
|           <div class="gamma-spectrum-chart" id="spectrumChartRef"></div> | ||||
|           <div class="gamma-spectrum-chart" id="spectrumChartRef_G"></div> | ||||
|         </a-tab-pane> | ||||
|         <a-tab-pane key="beta-spectrum" tab="BETA SPECTRUM" v-if="allData.bspectrumBlock===null?false:true"> | ||||
|           <div class="pane-title" style="margin-bottom: 15px;">BETA SPECTRUM</div> | ||||
|           <div class="gamma-spectrum-row"> | ||||
|               <div> | ||||
|                 <span class="span-key">Number of Channels:</span><span class="row-val">{{ allData.bspectrumBlock.numberBChannels }}</span> | ||||
|                 <span class="span-key" style="margin-left: 35px;">Energy Span:</span><span class="row-val">{{ allData.bspectrumBlock.energySpan }}</span>  | ||||
|               </div> | ||||
|               <div> | ||||
|                 <a-checkbox style="margin-right: 15px;" @change="e=>yLogChange(e,'B')">Y log scale</a-checkbox> | ||||
|                 <a-button class="row-btn" @click="resetZoom('B')">Reset Zoom</a-button> | ||||
|               </div> | ||||
|           </div> | ||||
|           <div class="gamma-spectrum-chart" id="spectrumChartRef_B"></div> | ||||
|         </a-tab-pane> | ||||
|         <a-tab-pane key="histogram" tab="HISTOGRAM" v-if="allData.bspectrumBlock===null?false:true"> | ||||
|           <div class="pane-title" style="margin-bottom: 15px;">HISTOGRAM</div> | ||||
|           <div class="gamma-spectrum-row"> | ||||
|               <div> | ||||
|                 <span class="span-key">Number of B Channels:</span><span class="row-val">{{ allData.bspectrumBlock.numberBChannels }}</span> | ||||
|                 <span class="span-key" style="margin-left: 35px;">B Energy Span:</span><span class="row-val">{{ allData.bspectrumBlock.energySpan }}</span>  | ||||
|                 <span class="span-key" style="margin-left: 35px;">Number of G Channels:</span><span class="row-val">{{ allData.bspectrumBlock.energySpan }}</span>  | ||||
|                 <span class="span-key" style="margin-left: 35px;">G Energy Span:</span><span class="row-val">{{ allData.bspectrumBlock.energySpan }}</span>  | ||||
|               </div> | ||||
|           </div> | ||||
|           <div class="gamma-spectrum-chart" id="histogramChartRef"></div> | ||||
|         </a-tab-pane> | ||||
|         <a-tab-pane key="certificate" tab="CERTIFICATE" v-if="allData.certificateBlock===null?false:true" forceRender> | ||||
|           <div class="pane-title" style="margin-bottom: 15px;">CERTIFICATE</div> | ||||
|  | @ -159,6 +240,7 @@ | |||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| const colorList=["#0D5fff","#287D3C","#DF1512","#F3BF24","#D3D4DE","#000000"] | ||||
| import * as echarts from 'echarts' | ||||
| export default { | ||||
|     props: { | ||||
|  | @ -178,12 +260,15 @@ export default { | |||
|     }, | ||||
|     data() { | ||||
|       return { | ||||
|         spectrumChart:null, | ||||
|         yAxisType:"value", | ||||
|         yAxisType_g:"value", | ||||
|         yAxisType_b:"value", | ||||
|         spectrumChart_G:null, | ||||
|         spectrumChart_B:null, | ||||
|         histogramChart:null, | ||||
|         loading:true, | ||||
|         myChart:null, | ||||
|         commentText: "", | ||||
|         columnsEnergy: [ | ||||
|         columnsEnergy_G: [ | ||||
|           { | ||||
|             title: 'G-Energy [keV]', | ||||
|             align: 'left', | ||||
|  | @ -200,8 +285,31 @@ export default { | |||
|             dataIndex: 'uncertainty' | ||||
|           }, | ||||
|         ], | ||||
|         dataSourceEnergy:[], | ||||
|         columnsResulution: [ | ||||
|         columnsEnergy_B: [ | ||||
|           { | ||||
|             title: 'Electron energy [keV]', | ||||
|             align: 'left', | ||||
|             dataIndex: 'electronEnergy' | ||||
|           }, | ||||
|           { | ||||
|             title: 'Decay mode descriptor', | ||||
|             align: 'left', | ||||
|             dataIndex: 'decayModeDescriptor' | ||||
|           }, | ||||
|           { | ||||
|             title: 'Maximum channel / centroid channel of CE', | ||||
|             align: 'left', | ||||
|             dataIndex: 'maximumChannel' | ||||
|           }, | ||||
|           { | ||||
|             title: 'Uncertainty', | ||||
|             align: 'left', | ||||
|             dataIndex: 'uncertainty' | ||||
|           }, | ||||
|         ], | ||||
|         dataSourceEnergy_G:[], | ||||
|         dataSourceEnergy_B:[], | ||||
|         columnsResulution_G: [ | ||||
|           { | ||||
|             title: 'G-Energy [keV]', | ||||
|             align: 'left', | ||||
|  | @ -218,8 +326,26 @@ export default { | |||
|             dataIndex: 'uncertainty' | ||||
|           }, | ||||
|         ], | ||||
|         dataSourceResulution:[], | ||||
|         columnsEfficiency: [ | ||||
|         columnsResulution_B: [ | ||||
|           { | ||||
|             title: 'Electron energy [keV]', | ||||
|             align: 'left', | ||||
|             dataIndex: 'electronEnergy' | ||||
|           }, | ||||
|           { | ||||
|             title: 'FWHM [keV]', | ||||
|             align: 'left', | ||||
|             dataIndex: 'fwhm' | ||||
|           }, | ||||
|           { | ||||
|             title: 'Uncertainty [keV]', | ||||
|             align: 'left', | ||||
|             dataIndex: 'uncertainty' | ||||
|           }, | ||||
|         ], | ||||
|         dataSourceResulution_G:[], | ||||
|         dataSourceResulution_B:[], | ||||
|         columnsEfficiency_G: [ | ||||
|           { | ||||
|             title: 'Energy', | ||||
|             align: 'left', | ||||
|  | @ -236,7 +362,91 @@ export default { | |||
|             dataIndex: 'uncertainty' | ||||
|           }, | ||||
|         ], | ||||
|         dataSourceEfficiency: [], | ||||
|         columnsEfficiency_BG: [ | ||||
|           { | ||||
|             title: 'Nuclide name', | ||||
|             align: 'left', | ||||
|             dataIndex: 'nuclideName' | ||||
|           }, | ||||
|           { | ||||
|             title: 'ROI number', | ||||
|             align: 'left', | ||||
|             dataIndex: 'roiNumber' | ||||
|           }, | ||||
|           { | ||||
|             title: 'Coincidence efficiency', | ||||
|             align: 'left', | ||||
|             dataIndex: 'coincidenceEfficiency' | ||||
|           }, | ||||
|           { | ||||
|             title: 'ROI range start', | ||||
|             align: 'left', | ||||
|             dataIndex: 'roiGRangeStart' | ||||
|           }, | ||||
|           { | ||||
|             title: 'Uncertainty', | ||||
|             align: 'left', | ||||
|             dataIndex: 'uncertainty' | ||||
|           }, | ||||
|         ], | ||||
|         dataSourceEfficiency_G: [], | ||||
|         dataSourceEfficiency_BG: [], | ||||
|         columnsRoiLimits: [ | ||||
|           { | ||||
|             title: 'ROI number', | ||||
|             align: 'left', | ||||
|             dataIndex: 'roiNumber' | ||||
|           }, | ||||
|           { | ||||
|             title: '2-D B-range start', | ||||
|             align: 'left', | ||||
|             dataIndex: 'roiBRangeStart' | ||||
|           }, | ||||
|           { | ||||
|             title: '2-D B-range stop', | ||||
|             align: 'left', | ||||
|             dataIndex: 'roiBRangeStop' | ||||
|           }, | ||||
|           { | ||||
|             title: '2-D G-range start', | ||||
|             align: 'left', | ||||
|             dataIndex: 'roiGRangeStart' | ||||
|           }, | ||||
|           { | ||||
|             title: '2-D G-range stop', | ||||
|             align: 'left', | ||||
|             dataIndex: 'roiGRangeStop' | ||||
|           } | ||||
|         ], | ||||
|         dataSourceRoiLimits: [], | ||||
|         columnsRatios: [ | ||||
|           { | ||||
|             title: 'Ratio identifier', | ||||
|             align: 'left', | ||||
|             dataIndex: 'ratioId' | ||||
|           }, | ||||
|           { | ||||
|             title: 'ROI number for higher G-energy', | ||||
|             align: 'left', | ||||
|             dataIndex: 'roiNumberHigherEnergy' | ||||
|           }, | ||||
|           { | ||||
|             title: 'ROI number for lower G-energy', | ||||
|             align: 'left', | ||||
|             dataIndex: 'roiNumberLowerEnergy' | ||||
|           }, | ||||
|           { | ||||
|             title: 'Count ratio', | ||||
|             align: 'left', | ||||
|             dataIndex: 'countRatio' | ||||
|           }, | ||||
|           { | ||||
|             title: 'Count ratio uncertainty', | ||||
|             align: 'left', | ||||
|             dataIndex: 'countRatioUncertainty' | ||||
|           }, | ||||
|         ], | ||||
|         dataSourceRatios:[], | ||||
|         columnsCertificate: [ | ||||
|           { | ||||
|             title: 'Nuclide name', | ||||
|  | @ -285,30 +495,67 @@ export default { | |||
|           } | ||||
|         ], | ||||
|         dataSourceCertificate: [], | ||||
|         dataSourceSpectrumY: [], | ||||
|         dataSourceSpectrumX: [] | ||||
|         dataSourceSpectrum_G: [], | ||||
|         dataSourceSpectrumX_G: [], | ||||
|         dataSourceSpectrum_B: [], | ||||
|         dataSourceSpectrumX_B: [], | ||||
|         // HISTOGRAM | ||||
|         dataSourceHistogray: { | ||||
|           level_1:[], | ||||
|           level_2:[], | ||||
|           level_3:[], | ||||
|           level_4:[], | ||||
|           level_5:[], | ||||
|           level_6:[] | ||||
|         }, | ||||
|         // dataSourceHistogray: [], | ||||
|       } | ||||
|     }, | ||||
|     mounted () { | ||||
|       this.commentText = this.allData.commentBlock && this.allData.commentBlock.text?this.allData.commentBlock.text.replace(/\n/g, "<br />"):"" | ||||
|       this.dataSourceEnergy=this.allData.genergyBlock | ||||
|       this.dataSourceResulution=this.allData.gresolutionBlock | ||||
|       this.dataSourceEfficiency = this.allData.gefficiencyBlock | ||||
|       this.dataSourceSpectrum = this.allData.gspectrumBlock.gspectrumSubBlock | ||||
|       this.dataSourceSpectrumX = this.allData.gspectrumBlock.gspectrumSubBlock.map((item, index) => { | ||||
|       this.dataSourceEnergy_G=this.allData.genergyBlock | ||||
|       this.dataSourceEnergy_B=this.allData.benergyBlock | ||||
|       this.dataSourceResulution_G=this.allData.gresolutionBlock | ||||
|       this.dataSourceResulution_B=this.allData.bresolutionBlock | ||||
|       this.dataSourceEfficiency_G = this.allData.gefficiencyBlock | ||||
|       this.dataSourceEfficiency_BG = this.allData.bgEfficiencyBlock | ||||
|       this.dataSourceRoiLimits = this.allData.roiLimitsBlock | ||||
|       this.dataSourceRatios = this.allData.ratiosBlock | ||||
|       this.dataSourceSpectrum_G = this.allData.gspectrumBlock.gspectrumSubBlock | ||||
|       this.dataSourceSpectrumX_G = this.allData.gspectrumBlock.gspectrumSubBlock.map((item, index) => { | ||||
|         return index | ||||
|       }) | ||||
|       this.dataSourceSpectrum_B = this.allData.bspectrumBlock.bspectrumSubBlock | ||||
|       this.dataSourceSpectrumX_B = this.allData.bspectrumBlock.bspectrumSubBlock.map((item, index) => { | ||||
|         return index | ||||
|       }) | ||||
|       this.allData.histogramBlock.histogramSubBlock.forEach(item => { | ||||
|         if (item.c === 1) { | ||||
|           this.dataSourceHistogray.level_1.push(item) | ||||
|         } else if (item.c <= 5 && item.c > 1) { | ||||
|           this.dataSourceHistogray.level_2.push(item) | ||||
|         } else if (item.c <= 10 && item.c > 5) { | ||||
|           this.dataSourceHistogray.level_3.push(item) | ||||
|         } else if (item.c <= 50 && item.c > 10) { | ||||
|           this.dataSourceHistogray.level_4.push(item) | ||||
|         } else if (item.c <= 100 && item.c > 50) { | ||||
|           this.dataSourceHistogray.level_5.push(item) | ||||
|         } else if (item.c > 100) { | ||||
|           this.dataSourceHistogray.level_6.push(item) | ||||
|         } | ||||
|       }); | ||||
|       this.dataSourceCertificate = this.allData.certificateBlock?this.allData.certificateBlock.certificateSubBlock:[] | ||||
|     }, | ||||
|   methods: { | ||||
|     getUid() { | ||||
|       return (Math.random()+new Date().getTime()).toString(32).slice(0,8) | ||||
|     }, | ||||
|     yLogChange(e) { | ||||
|       this.yAxisType = e.target.checked?"log":"value" | ||||
|       this.spectrumChart.setOption({ | ||||
|     yLogChange(e,str) { | ||||
|       let yAxisType = e.target.checked ? "log" : "value" | ||||
|       str==="G"?this.yAxisType_g = yAxisType:this.yAxisType_b = yAxisType | ||||
|       let options = { | ||||
|         yAxis: { | ||||
|           type: this.yAxisType, | ||||
|           type: str==="G"?this.yAxisType_g:this.yAxisType_b, | ||||
|           splitLine: { | ||||
|             show: true, | ||||
|             lineStyle: { | ||||
|  | @ -316,17 +563,27 @@ export default { | |||
|             } | ||||
|           } | ||||
|         }, | ||||
|       }); | ||||
|       } | ||||
|       if (str === "G") { | ||||
|         this.spectrumChart_G.setOption(options) | ||||
|       } else { | ||||
|         this.spectrumChart_B.setOption(options) | ||||
|       } | ||||
|     }, | ||||
|     resetZoom() { | ||||
|       this.spectrumChart.setOption({ | ||||
|     resetZoom(str) { | ||||
|       let options = { | ||||
|         dataZoom: [ | ||||
|           { | ||||
|             start: 0, | ||||
|             end: 100 | ||||
|           } | ||||
|         ], | ||||
|       }); | ||||
|       } | ||||
|       if (str === "G") { | ||||
|         this.spectrumChart_G.setOption(options) | ||||
|       } else { | ||||
|         this.spectrumChart_B.setOption(options) | ||||
|       } | ||||
|     }, | ||||
|     handleback() { | ||||
|       this.$emit("back",false) | ||||
|  | @ -334,13 +591,20 @@ export default { | |||
|     handleTabChange(key) { | ||||
|       if (key === "gamma-spectrum") { | ||||
|         this.$nextTick(() => { | ||||
|           this.drawSpectrumChart() | ||||
|           this.drawSpectrumChart_G() | ||||
|         }) | ||||
|       }  | ||||
|       } else if (key === "beta-spectrum") { | ||||
|         this.$nextTick(() => { | ||||
|           this.drawSpectrumChart_B() | ||||
|         }) | ||||
|       } else if (key === "histogram"){ | ||||
|         this.$nextTick(() => { | ||||
|           this.drawHistogramChart() | ||||
|         }) | ||||
|       } | ||||
|     }, | ||||
|     drawSpectrumChart() { | ||||
|       this.spectrumChart = echarts.init(document.getElementById("spectrumChartRef")) | ||||
|       this.spectrumChart.setOption({ | ||||
|     getOptions(str) { | ||||
|       return { | ||||
|         tooltip: { | ||||
|           trigger: 'axis', | ||||
|           formatter: function (params) { | ||||
|  | @ -362,7 +626,7 @@ export default { | |||
|             interval: 5 | ||||
|           }, | ||||
|           boundaryGap: false, | ||||
|           data: this.dataSourceSpectrumX | ||||
|           data: str==="G"?this.dataSourceSpectrumX_G:this.dataSourceSpectrumX_B | ||||
|         }, | ||||
|         grid: { | ||||
|           left: '3%', | ||||
|  | @ -371,7 +635,7 @@ export default { | |||
|           containLabel: true | ||||
|         }, | ||||
|         yAxis: { | ||||
|           type: this.yAxisType, | ||||
|           type: str==="G"?this.yAxisType_g:this.yAxisType_b, | ||||
|           splitLine: { | ||||
|             show: true, | ||||
|             lineStyle: { | ||||
|  | @ -387,19 +651,91 @@ export default { | |||
|         ], | ||||
|         series: [ | ||||
|           { | ||||
|             name: 'Log2', | ||||
|             type: 'line', | ||||
|             itemStyle: { normal: { color: '#0656ff' } }, | ||||
|             data: this.dataSourceSpectrum | ||||
|             data: str==="G"?this.dataSourceSpectrum_G:this.dataSourceSpectrum_B | ||||
|           } | ||||
|         ] | ||||
|       } | ||||
|     }, | ||||
|     drawSpectrumChart_G() { | ||||
|       this.spectrumChart_G = echarts.init(document.getElementById("spectrumChartRef_G")) | ||||
|       this.spectrumChart_G.setOption(this.getOptions("G")) | ||||
|       window.addEventListener("resize", function () { | ||||
|         spectrumChart_G.resize(); | ||||
|       }); | ||||
|     }, | ||||
|     drawSpectrumChart_B() { | ||||
|       this.spectrumChart_B = echarts.init(document.getElementById("spectrumChartRef_B")) | ||||
|       this.spectrumChart_B.setOption(this.getOptions("B")) | ||||
|       window.addEventListener("resize", function () { | ||||
|         spectrumChart_B.resize(); | ||||
|       }); | ||||
|     }, | ||||
|     drawHistogramChart() { | ||||
|       let dataset=[],series=[] | ||||
|       for (const key in this.dataSourceHistogray) { | ||||
|         if (Object.hasOwnProperty.call(this.dataSourceHistogray, key)) { | ||||
|           if (this.dataSourceHistogray[key].length>0) { | ||||
|             dataset.push({ | ||||
|               source: this.dataSourceHistogray[key] | ||||
|             }) | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|       series = dataset.map((item,index) => { | ||||
|         return { | ||||
|           type: 'scatter', | ||||
|           dimensions: ["b", "g"], | ||||
|           datasetIndex: index, | ||||
|           itemStyle: { | ||||
|             color:colorList[index] | ||||
|           } | ||||
|         } | ||||
|       }) | ||||
|       this.histogramChart = echarts.init(document.getElementById("histogramChartRef")) | ||||
|       this.histogramChart.setOption({ | ||||
|         dataset, | ||||
|         xAxis: { | ||||
|           scale: false, | ||||
|           splitLine: { | ||||
|             show: true, | ||||
|             lineStyle: { | ||||
|               color: "rgbA(64, 105, 121, 0.2)" | ||||
|             }, | ||||
|           }, | ||||
|         }, | ||||
|         yAxis: { | ||||
|           scale: false, | ||||
|           splitLine: { | ||||
|             show: true, | ||||
|             lineStyle: { | ||||
|               color: "rgbA(64, 105, 121, 0.2)" | ||||
|             }, | ||||
|           }, | ||||
|         }, | ||||
|         tooltip: { | ||||
|           trigger: "item", | ||||
|           formatter: function (params) { | ||||
|             return `<div>Beta:${params.value.b}</div> | ||||
|               <div>Gamma:${params.value.g}</div> | ||||
|               <div>Count:${params.value.c}</div>` | ||||
|           } | ||||
|         }, | ||||
|         grid: { | ||||
|           left: '3%', | ||||
|           right: '4%', | ||||
|           bottom: '10%', | ||||
|           containLabel: true | ||||
|         }, | ||||
|         series | ||||
|       }) | ||||
|       window.addEventListener("resize", function () { | ||||
|         myChart.resize(); | ||||
|         histogramChart.resize(); | ||||
|       }); | ||||
|     } | ||||
|     }, | ||||
|   } | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
| <style lang="less" scoped> | ||||
|  | @ -461,7 +797,6 @@ export default { | |||
|   .ant-tabs-bar{ | ||||
|     width: 100%; | ||||
|     height: 40px; | ||||
|     padding: 0 10px; | ||||
|     background-color: rgba(12, 235, 201, 0.05); | ||||
|     border-top: 1px solid rgba(12, 235, 201, 0.3); | ||||
|     border-bottom: 1px solid rgba(12, 235, 201, 0.3); | ||||
|  | @ -528,6 +863,12 @@ export default { | |||
|     height: 36px; | ||||
|     line-height: 36px; | ||||
|   } | ||||
|   .ant-tabs-tab-prev, .ant-tabs-tab-next{ | ||||
|     color: #c9f6f6; | ||||
|   } | ||||
|   .ant-tabs-tab-prev:hover, .ant-tabs-tab-next:hover{ | ||||
|     color: #2affdf; | ||||
|   } | ||||
| } | ||||
| .pane-title{ | ||||
|   height: 40px; | ||||
|  |  | |||
|  | @ -0,0 +1,98 @@ | |||
| <template> | ||||
|   <div style="height: 100%;"> | ||||
|     <List :stationList="stationList" :columns="columns" :dataType="dataType"></List> | ||||
|   </div> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import List from "../../../../list.vue" | ||||
| import { getAction } from '../../../../../../api/manage' | ||||
| 
 | ||||
| const columns = [ | ||||
|   { | ||||
|     title: 'NO', | ||||
|     align: 'left', | ||||
|     scopedSlots: { | ||||
|       customRender: 'index', | ||||
|     }, | ||||
|     customHeaderCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|     customCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|   }, | ||||
|   { | ||||
|     title: 'STATION', | ||||
|     align: 'left', | ||||
|     dataIndex: 'stationName', | ||||
|   }, | ||||
|   { | ||||
|     title: 'DETECTOR CODE', | ||||
|     align: 'left', | ||||
|     dataIndex: 'siteDetCode', | ||||
|   }, | ||||
|   { | ||||
|     title: 'SPECTRAL QUALIFIER', | ||||
|     align: 'left', | ||||
|     dataIndex: 'spectralQualifie', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION START TIME', | ||||
|     align: 'left', | ||||
|     dataIndex: 'acquisitionStart', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION STOP TIME', | ||||
|     align: 'left', | ||||
|     dataIndex: 'acquisitionStop', | ||||
|   }, | ||||
|   { | ||||
|     title: 'CALIB REPORTS', | ||||
|     align: 'left', | ||||
|     dataIndex: 'calibReports', | ||||
|   }, | ||||
| ] | ||||
| export default { | ||||
|   components: { | ||||
|     List, | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       url: { | ||||
|         findStationList: '/webStatistics/findStationList', | ||||
|       }, | ||||
|       stationList: [], | ||||
|       columns, | ||||
|       dataType:"C" | ||||
|     } | ||||
|   }, | ||||
|   mounted() { | ||||
|     console.log(this.dataType); | ||||
|     this.findStationList(); | ||||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Noble Gas Beta-Gamma' }).then((res) => { | ||||
|         if (res.result.length>0) { | ||||
|           this.stationList = res.result.map((res) => ({ label: res.stationCode, value: res.stationId })) | ||||
|         } else { | ||||
|           this.stationList=[] | ||||
|         } | ||||
|       }) | ||||
|     }, | ||||
|   }, | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
| <style lang="less" scoped> | ||||
| 
 | ||||
| </style> | ||||
|  | @ -0,0 +1,93 @@ | |||
| <template> | ||||
|   <div style="height: 100%;"> | ||||
|     <List :stationList="stationList" :columns="columns" :dataType="dataType"></List> | ||||
|   </div> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import List from "../../../../list.vue" | ||||
| import { getAction } from '../../../../../../api/manage' | ||||
| 
 | ||||
| const columns = [ | ||||
|   { | ||||
|     title: 'NO', | ||||
|     align: 'left', | ||||
|     scopedSlots: { | ||||
|       customRender: 'index', | ||||
|     }, | ||||
|     customHeaderCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|     customCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|   }, | ||||
|   { | ||||
|     title: 'STATION', | ||||
|     align: 'left', | ||||
|     dataIndex: 'stationName', | ||||
|   }, | ||||
|   { | ||||
|     title: 'DETECTOR CODE', | ||||
|     align: 'left', | ||||
|     dataIndex: 'siteDetCode', | ||||
|   }, | ||||
|   { | ||||
|     title: 'SPECTRAL QUALIFIER', | ||||
|     align: 'left', | ||||
|     dataIndex: 'spectralQualifie', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION START TIME', | ||||
|     align: 'left', | ||||
|     dataIndex: 'acquisitionStart', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION STOP TIME', | ||||
|     align: 'left', | ||||
|     dataIndex: 'acquisitionStop', | ||||
|   } | ||||
| ] | ||||
| export default { | ||||
|   components: { | ||||
|     List, | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       url: { | ||||
|         findStationList: '/webStatistics/findStationList', | ||||
|       }, | ||||
|       stationList: [], | ||||
|       columns, | ||||
|       dataType:"D" | ||||
|     } | ||||
|   }, | ||||
|   mounted() { | ||||
|     console.log(this.dataType); | ||||
|     this.findStationList(); | ||||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Noble Gas Beta-Gamma' }).then((res) => { | ||||
|         if (res.result.length>0) { | ||||
|           this.stationList = res.result.map((res) => ({ label: res.stationCode, value: res.stationId })) | ||||
|         } else { | ||||
|           this.stationList=[] | ||||
|         } | ||||
|       }) | ||||
|     }, | ||||
|   }, | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
| <style lang="less" scoped> | ||||
| 
 | ||||
| </style> | ||||
|  | @ -0,0 +1,93 @@ | |||
| <template> | ||||
|   <div style="height: 100%;"> | ||||
|     <List :stationList="stationList" :columns="columns" :dataType="dataType"></List> | ||||
|   </div> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import List from "../../../../list.vue" | ||||
| import { getAction } from '../../../../../../api/manage' | ||||
| 
 | ||||
| const columns = [ | ||||
|   { | ||||
|     title: 'NO', | ||||
|     align: 'left', | ||||
|     scopedSlots: { | ||||
|       customRender: 'index', | ||||
|     }, | ||||
|     customHeaderCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|     customCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|   }, | ||||
|   { | ||||
|     title: 'STATION', | ||||
|     align: 'left', | ||||
|     dataIndex: 'stationName', | ||||
|   }, | ||||
|   { | ||||
|     title: 'DETECTOR CODE', | ||||
|     align: 'left', | ||||
|     dataIndex: 'siteDetCode', | ||||
|   }, | ||||
|   { | ||||
|     title: 'SPECTRAL QUALIFIER', | ||||
|     align: 'left', | ||||
|     dataIndex: 'spectralQualifie', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION START TIME', | ||||
|     align: 'left', | ||||
|     dataIndex: 'acquisitionStart', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION STOP TIME', | ||||
|     align: 'left', | ||||
|     dataIndex: 'acquisitionStop', | ||||
|   } | ||||
| ] | ||||
| export default { | ||||
|   components: { | ||||
|     List, | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       url: { | ||||
|         findStationList: '/webStatistics/findStationList', | ||||
|       }, | ||||
|       stationList: [], | ||||
|       columns, | ||||
|       dataType:"Q" | ||||
|     } | ||||
|   }, | ||||
|   mounted() { | ||||
|     console.log(this.dataType); | ||||
|     this.findStationList(); | ||||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Noble Gas Beta-Gamma' }).then((res) => { | ||||
|         if (res.result.length>0) { | ||||
|           this.stationList = res.result.map((res) => ({ label: res.stationCode, value: res.stationId })) | ||||
|         } else { | ||||
|           this.stationList=[] | ||||
|         } | ||||
|       }) | ||||
|     }, | ||||
|   }, | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
| <style lang="less" scoped> | ||||
| 
 | ||||
| </style> | ||||
|  | @ -0,0 +1,94 @@ | |||
| <template> | ||||
|   <div style="height: 100%;"> | ||||
|     <List :stationList="stationList" :spectralQualifie="spectralQualifie" :columns="columns" :dataType="dataType"></List> | ||||
|   </div> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import List from "../../../../list.vue" | ||||
| import { getAction } from '../../../../../../api/manage' | ||||
| 
 | ||||
| const columns = [ | ||||
|   { | ||||
|     title: 'NO', | ||||
|     align: 'left', | ||||
|     scopedSlots: { | ||||
|       customRender: 'index', | ||||
|     }, | ||||
|     customHeaderCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|     customCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|   }, | ||||
|   { | ||||
|     title: 'STATION', | ||||
|     align: 'left', | ||||
|     dataIndex: 'stationName', | ||||
|   }, | ||||
|   { | ||||
|     title: 'DETECTOR CODE', | ||||
|     align: 'left', | ||||
|     dataIndex: 'siteDetCode', | ||||
|   }, | ||||
|   { | ||||
|     title: 'SPECTRAL QUALIFIER', | ||||
|     align: 'left', | ||||
|     dataIndex: 'spectralQualifie', | ||||
|   }, | ||||
|   { | ||||
|     title: 'COLLECTION START TIME', | ||||
|     align: 'left', | ||||
|     dataIndex: 'collectStart', | ||||
|   }, | ||||
|   { | ||||
|     title: 'COLLECTION STOP TIME', | ||||
|     align: 'left', | ||||
|     dataIndex: 'collectStop', | ||||
|   } | ||||
| ] | ||||
| export default { | ||||
|   components: { | ||||
|     List, | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       url: { | ||||
|         findStationList: '/webStatistics/findStationList', | ||||
|       }, | ||||
|       stationList: [], | ||||
|       columns, | ||||
|       dataType: "S", | ||||
|       spectralQualifie:"FULL" | ||||
|     } | ||||
|   }, | ||||
|   mounted() { | ||||
|     console.log(this.dataType); | ||||
|     this.findStationList(); | ||||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Noble Gas Beta-Gamma' }).then((res) => { | ||||
|         if (res.result.length>0) { | ||||
|           this.stationList = res.result.map((res) => ({ label: res.stationCode, value: res.stationId })) | ||||
|         } else { | ||||
|           this.stationList=[] | ||||
|         } | ||||
|       }) | ||||
|     }, | ||||
|   }, | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
| <style lang="less" scoped> | ||||
| 
 | ||||
| </style> | ||||
|  | @ -0,0 +1,94 @@ | |||
| <template> | ||||
|   <div style="height: 100%;"> | ||||
|     <List :stationList="stationList" :spectralQualifie="spectralQualifie" :columns="columns" :dataType="dataType"></List> | ||||
|   </div> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import List from "../../../../list.vue" | ||||
| import { getAction } from '../../../../../../api/manage' | ||||
| 
 | ||||
| const columns = [ | ||||
|   { | ||||
|     title: 'NO', | ||||
|     align: 'left', | ||||
|     scopedSlots: { | ||||
|       customRender: 'index', | ||||
|     }, | ||||
|     customHeaderCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|     customCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|   }, | ||||
|   { | ||||
|     title: 'STATION', | ||||
|     align: 'left', | ||||
|     dataIndex: 'stationName', | ||||
|   }, | ||||
|   { | ||||
|     title: 'DETECTOR CODE', | ||||
|     align: 'left', | ||||
|     dataIndex: 'siteDetCode', | ||||
|   }, | ||||
|   { | ||||
|     title: 'SPECTRAL QUALIFIER', | ||||
|     align: 'left', | ||||
|     dataIndex: 'spectralQualifie', | ||||
|   }, | ||||
|   { | ||||
|     title: 'COLLECTION START TIME', | ||||
|     align: 'left', | ||||
|     dataIndex: 'collectStart', | ||||
|   }, | ||||
|   { | ||||
|     title: 'COLLECTION STOP TIME', | ||||
|     align: 'left', | ||||
|     dataIndex: 'collectStop', | ||||
|   } | ||||
| ] | ||||
| export default { | ||||
|   components: { | ||||
|     List, | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       url: { | ||||
|         findStationList: '/webStatistics/findStationList', | ||||
|       }, | ||||
|       stationList: [], | ||||
|       columns, | ||||
|       dataType: "S", | ||||
|       spectralQualifie:"PREL" | ||||
|     } | ||||
|   }, | ||||
|   mounted() { | ||||
|     console.log(this.dataType); | ||||
|     this.findStationList(); | ||||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Noble Gas Beta-Gamma' }).then((res) => { | ||||
|         if (res.result.length>0) { | ||||
|           this.stationList = res.result.map((res) => ({ label: res.stationCode, value: res.stationId })) | ||||
|         } else { | ||||
|           this.stationList=[] | ||||
|         } | ||||
|       }) | ||||
|     }, | ||||
|   }, | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
| <style lang="less" scoped> | ||||
| 
 | ||||
| </style> | ||||
|  | @ -81,7 +81,7 @@ export default { | |||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Node Gas HPGe' }).then((res) => { | ||||
|       getAction(this.url.findStationList, { menuName: 'Noble Gas HPGe' }).then((res) => { | ||||
|         if (res.result.length>0) { | ||||
|           this.stationList = res.result.map((res) => ({ label: res.stationCode, value: res.stationId })) | ||||
|         } else { | ||||
|  |  | |||
|  | @ -76,7 +76,7 @@ export default { | |||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Node Gas HPGe' }).then((res) => { | ||||
|       getAction(this.url.findStationList, { menuName: 'Noble Gas HPGe' }).then((res) => { | ||||
|         if (res.result.length>0) { | ||||
|           this.stationList = res.result.map((res) => ({ label: res.stationCode, value: res.stationId })) | ||||
|         } else { | ||||
|  |  | |||
|  | @ -76,7 +76,7 @@ export default { | |||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Node Gas HPGe' }).then((res) => { | ||||
|       getAction(this.url.findStationList, { menuName: 'Noble Gas HPGe' }).then((res) => { | ||||
|         if (res.result.length>0) { | ||||
|           this.stationList = res.result.map((res) => ({ label: res.stationCode, value: res.stationId })) | ||||
|         } else { | ||||
|  |  | |||
|  | @ -77,7 +77,7 @@ export default { | |||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Node Gas HPGe' }).then((res) => { | ||||
|       getAction(this.url.findStationList, { menuName: 'Noble Gas HPGe' }).then((res) => { | ||||
|         if (res.result.length>0) { | ||||
|           this.stationList = res.result.map((res) => ({ label: res.stationCode, value: res.stationId })) | ||||
|         } else { | ||||
|  |  | |||
|  | @ -77,7 +77,7 @@ export default { | |||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Node Gas HPGe' }).then((res) => { | ||||
|       getAction(this.url.findStationList, { menuName: 'Noble Gas HPGe' }).then((res) => { | ||||
|         if (res.result.length>0) { | ||||
|           this.stationList = res.result.map((res) => ({ label: res.stationCode, value: res.stationId })) | ||||
|         } else { | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	Block a user