feat: 增加Strip弹窗,增加FtransltModal中后两个转换页面,增加LoadFrom DB 中 CollectStopB和AcqStartB查询
This commit is contained in:
		
							parent
							
								
									d9c63c9bce
								
							
						
					
					
						commit
						63ede005d2
					
				|  | @ -0,0 +1,257 @@ | |||
| <template> | ||||
|   <div class="int-spc-ims-transfer"> | ||||
|     <a-form-model class="settings" :labelCol="{ style: { width: '75px', textAlign: 'center' } }"> | ||||
|       <div class="top-left"> | ||||
|         <a-form-model-item label="MSG_ID"> | ||||
|           <a-input></a-input> | ||||
|         </a-form-model-item> | ||||
|         <a-form-model-item label="Comment"> | ||||
|           <a-textarea></a-textarea> | ||||
|         </a-form-model-item> | ||||
|         <title-over-border title="Collection Block"> | ||||
|           <a-form-model-item label="Start Time"> | ||||
|             <custom-date-picker show-time /> | ||||
|           </a-form-model-item> | ||||
|           <a-form-model-item label="Stop Time"> | ||||
|             <custom-date-picker show-time /> | ||||
|           </a-form-model-item> | ||||
|           <div> | ||||
|             <p> | ||||
|               Total air volume sampled | ||||
|             </p> | ||||
|             <a-input></a-input> | ||||
|           </div> | ||||
|         </title-over-border> | ||||
|       </div> | ||||
|       <title-over-border title="Header Block" class="header-block"> | ||||
|         <div class="header-block-list"> | ||||
|           <div class="header-block-item"> | ||||
|             <div> | ||||
|               <a-checkbox></a-checkbox> | ||||
|               Designator | ||||
|             </div> | ||||
|             <a-input></a-input> | ||||
|           </div> | ||||
|           <div class="header-block-item"> | ||||
|             <div> | ||||
|               <a-checkbox></a-checkbox> | ||||
|               Station code | ||||
|             </div> | ||||
|             <a-input></a-input> | ||||
|           </div> | ||||
|           <div class="header-block-item"> | ||||
|             <div> | ||||
|               <a-checkbox></a-checkbox> | ||||
|               Detector code | ||||
|             </div> | ||||
|             <a-input></a-input> | ||||
|           </div> | ||||
|           <div class="header-block-item"> | ||||
|             <div> | ||||
|               <a-checkbox></a-checkbox> | ||||
|               Sample geometry | ||||
|             </div> | ||||
|             <a-input></a-input> | ||||
|           </div> | ||||
|         </div> | ||||
|         <div class="system-type-and-spectrum-qualifier"> | ||||
|           <title-over-border title="System type" class="system-type"> | ||||
|             <a-radio-group> | ||||
|               <a-radio>P</a-radio> | ||||
|               <a-radio>G</a-radio> | ||||
|               <a-radio>B</a-radio> | ||||
|             </a-radio-group> | ||||
|           </title-over-border> | ||||
|           <title-over-border title="Spectrum qualifier" class="spectrum-qualifier"> | ||||
|             <a-radio-group> | ||||
|               <a-radio>PREL</a-radio> | ||||
|               <a-radio>FULL</a-radio> | ||||
|             </a-radio-group> | ||||
|           </title-over-border> | ||||
|         </div> | ||||
|         <div class="identifications"> | ||||
|           <div> | ||||
|             <p>Sample reference identification</p> | ||||
|             <a-input></a-input> | ||||
|           </div> | ||||
|           <div> | ||||
|             <p>Background measurement identification</p> | ||||
|             <a-input></a-input> | ||||
|           </div> | ||||
|         </div> | ||||
|         <div class="transmit-time"> | ||||
|           <a-checkbox>Transmit time</a-checkbox> | ||||
|           <custom-date-picker></custom-date-picker> | ||||
|         </div> | ||||
|       </title-over-border> | ||||
|     </a-form-model> | ||||
|     <title-over-border title="Spectrum Transfer" class="spectrum-transfer"> | ||||
|       <div class="title-container"> | ||||
|         <div class="title">Canberra IEC1455(.IEC)</div> | ||||
|         <div class="data-type"> | ||||
|           Data type | ||||
|           <div class="data-type-select"> | ||||
|             <custom-select :option="[{ label: 'SAMPLEPHD', value: 1 }]" /> | ||||
|           </div> | ||||
|         </div> | ||||
|         <div class="title">IMS .ims .rms</div> | ||||
|       </div> | ||||
|       <a-transfer></a-transfer> | ||||
|     </title-over-border> | ||||
|   </div> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import TitleOverBorder from '../../../TitleOverBorder.vue' | ||||
| export default { | ||||
|   components: { TitleOverBorder } | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
| <style lang="less" scoped> | ||||
| .settings { | ||||
|   display: flex; | ||||
|   gap: 20px; | ||||
| 
 | ||||
|   ::v-deep { | ||||
|     .ant-form-item-control-wrapper { | ||||
|       flex: 1; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .ant-form-item { | ||||
|     margin-bottom: 10px; | ||||
|   } | ||||
| 
 | ||||
|   p { | ||||
|     margin-bottom: 5px; | ||||
|   } | ||||
| 
 | ||||
|   .top-left { | ||||
|     flex: 1; | ||||
|   } | ||||
| 
 | ||||
|   .header-block { | ||||
|     flex: 2; | ||||
| 
 | ||||
|     &-list { | ||||
|       display: flex; | ||||
|       gap: 20px; | ||||
| 
 | ||||
|       .header-block-item { | ||||
|         // flex: 1; | ||||
| 
 | ||||
|         .ant-input { | ||||
|           margin-top: 5px; | ||||
|         } | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     .system-type-and-spectrum-qualifier { | ||||
|       margin-top: 20px; | ||||
|       display: flex; | ||||
|       gap: 20px; | ||||
| 
 | ||||
|       .system-type, | ||||
|       .spectrum-qualifier { | ||||
|         flex: 1; | ||||
|       } | ||||
| 
 | ||||
|       .system-type .ant-radio-group { | ||||
|         display: flex; | ||||
|         justify-content: space-between; | ||||
|       } | ||||
| 
 | ||||
|       .spectrum-qualifier { | ||||
|         .ant-radio-wrapper:nth-child(2) { | ||||
|           margin-left: 30px; | ||||
|         } | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     .identifications { | ||||
|       margin-top: 20px; | ||||
|       display: flex; | ||||
|       justify-content: space-between; | ||||
|       gap: 20px; | ||||
| 
 | ||||
|       > div { | ||||
|         flex: 1; | ||||
|       } | ||||
|     } | ||||
| 
 | ||||
|     .transmit-time { | ||||
|       margin-top: 20px; | ||||
|       display: flex; | ||||
|       align-items: center; | ||||
|       gap: 20px; | ||||
| 
 | ||||
|       .ant-checkbox-wrapper { | ||||
|         width: 150px; | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| 
 | ||||
| .spectrum-transfer { | ||||
|   margin-top: 20px; | ||||
| 
 | ||||
|   .title-container { | ||||
|     display: flex; | ||||
| 
 | ||||
|     .title { | ||||
|       flex: 1; | ||||
|       text-align: center; | ||||
|       background-color: #225a6a; | ||||
|       height: 32px; | ||||
|       line-height: 32px; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .data-type { | ||||
|     width: 166px; | ||||
|     padding: 0 8px; | ||||
|     position: relative; | ||||
|     text-align: center; | ||||
|     z-index: 1; | ||||
|     line-height: 32px; | ||||
| 
 | ||||
|     &-select { | ||||
|       top: 100%; | ||||
|       left: 0; | ||||
|       position: absolute; | ||||
|       padding: 8px; | ||||
|       width: 100%; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .ant-transfer { | ||||
|     margin-top: 8px; | ||||
|     display: flex; | ||||
|     align-items: flex-end; | ||||
| 
 | ||||
|     ::v-deep { | ||||
|       .ant-transfer { | ||||
|         &-list { | ||||
|           flex: 1; | ||||
| 
 | ||||
|           &-header { | ||||
|             display: none; | ||||
|           } | ||||
|         } | ||||
| 
 | ||||
|         &-operation { | ||||
|           width: 150px; | ||||
| 
 | ||||
|           .ant-btn { | ||||
|             width: 100%; | ||||
|             height: 32px; | ||||
|             margin-bottom: 20px; | ||||
|             text-align: center; | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| </style> | ||||
|  | @ -0,0 +1,86 @@ | |||
| <template> | ||||
|   <div class="int-spc-canberra-iec-transfer"> | ||||
|     <div class="spectrum-transfer"> | ||||
|       <div class="title-container"> | ||||
|         <div class="title">Select .SPC File</div> | ||||
|         <div class="title">Select .IEC File</div> | ||||
|       </div> | ||||
|       <a-transfer></a-transfer> | ||||
| 
 | ||||
|       <div class="desc"> | ||||
|         <p>使用说明</p> | ||||
|         <p>1、.IMS格式文件必须严格遵循IDC的IMS2.0格式</p> | ||||
|         <p>2、转化后.CHN文件没有包含</p> | ||||
|       </div> | ||||
|     </div> | ||||
|   </div> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import TitleOverBorder from '../../../TitleOverBorder.vue' | ||||
| export default { | ||||
|   components: { TitleOverBorder } | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
| <style lang="less" scoped> | ||||
| 
 | ||||
| 
 | ||||
| .spectrum-transfer { | ||||
|   margin-top: 20px; | ||||
| 
 | ||||
|   .title-container { | ||||
|     display: flex; | ||||
|     gap: 66px; | ||||
| 
 | ||||
|     .title { | ||||
|       flex: 1; | ||||
|       text-align: center; | ||||
|       background-color: #225a6a; | ||||
|       height: 32px; | ||||
|       line-height: 32px; | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .ant-transfer { | ||||
|     margin-top: 8px; | ||||
|     display: flex; | ||||
|     align-items: center; | ||||
| 
 | ||||
|     ::v-deep { | ||||
|       .ant-transfer { | ||||
|         &-list { | ||||
|           flex: 1; | ||||
|           height: 400px; | ||||
| 
 | ||||
|           &-header { | ||||
|             display: none; | ||||
|           } | ||||
|         } | ||||
| 
 | ||||
|         &-operation { | ||||
|           width: 50px; | ||||
| 
 | ||||
|           .ant-btn { | ||||
|             width: 100%; | ||||
|             height: 32px; | ||||
|             text-align: center; | ||||
| 
 | ||||
|             &:first-child { | ||||
|               margin-bottom: 50px; | ||||
|             } | ||||
|           } | ||||
|         } | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| 
 | ||||
|   .desc { | ||||
|     margin-top: 20px; | ||||
| 
 | ||||
|     p { | ||||
|       margin-bottom: 0; | ||||
|     } | ||||
|   } | ||||
| } | ||||
| </style> | ||||
|  | @ -94,7 +94,7 @@ | |||
|             <custom-select :option="[{ label: 'SAMPLEPHD', value: 1 }]" /> | ||||
|           </div> | ||||
|         </div> | ||||
|         <div class="title">IMS.ims.rms</div> | ||||
|         <div class="title">IMS .ims .rms</div> | ||||
|       </div> | ||||
|       <a-transfer></a-transfer> | ||||
|     </title-over-border> | ||||
|  |  | |||
|  | @ -1,11 +1,15 @@ | |||
| <template> | ||||
|   <custom-modal v-model="visible" :width="1080" title="File-Format-Ftransit" :footer="null"> | ||||
|     <a-tabs> | ||||
|     <a-tabs :animated="false"> | ||||
|       <a-tab-pane tab="INT.SPC<=>.IMS" key="1"> | ||||
|         <int-spc-ims-transfer /> | ||||
|       </a-tab-pane> | ||||
|       <a-tab-pane tab="INT.SPC<=>Canberra.IEC" key="2"></a-tab-pane> | ||||
|       <a-tab-pane tab="Canberra.IEC<=>.IMS" key="3"></a-tab-pane> | ||||
|       <a-tab-pane tab="INT.SPC<=>Canberra.IEC" key="2"> | ||||
|         <int-spc-canberra-iec-transfer /> | ||||
|       </a-tab-pane> | ||||
|       <a-tab-pane tab="Canberra.IEC<=>.IMS" key="3"> | ||||
|         <canberra-iec-ims-transfer /> | ||||
|       </a-tab-pane> | ||||
|     </a-tabs> | ||||
|   </custom-modal> | ||||
| </template> | ||||
|  | @ -13,9 +17,11 @@ | |||
| <script> | ||||
| import ModalMixin from '@/mixins/ModalMixin' | ||||
| import IntSpcImsTransfer from './components/IntSpcImsTransfer.vue' | ||||
| import IntSpcCanberraIecTransfer from './components/IntSpcCanberraIecTransfer.vue' | ||||
| import CanberraIecImsTransfer from './components/CanberraIECImsTransfer.vue' | ||||
| 
 | ||||
| export default { | ||||
|   components: { IntSpcImsTransfer }, | ||||
|   components: { IntSpcImsTransfer, IntSpcCanberraIecTransfer, CanberraIecImsTransfer }, | ||||
|   mixins: [ModalMixin] | ||||
| } | ||||
| </script> | ||||
|  |  | |||
|  | @ -152,6 +152,8 @@ export default { | |||
|       } | ||||
| 
 | ||||
|       params.AllUsers = this.allUsersValue | ||||
|       params.CollectStopB = this.collectStopValue | ||||
|       params.AcqStartB = this.acqStartValue | ||||
|       delete params.checkboxGroup | ||||
| 
 | ||||
|       this.onClearSelected() | ||||
|  | @ -392,8 +394,8 @@ export default { | |||
|           props: { | ||||
|             options: [ | ||||
|               { label: 'All User', value: 'AllUsers' }, | ||||
|               { label: 'Collect Stop', value: 'CollectStop' }, | ||||
|               { label: 'Acq.Start', value: 'AcqStart' } | ||||
|               { label: 'Collect Stop', value: 'CollectStopB' }, | ||||
|               { label: 'Acq.Start', value: 'AcqStartB' } | ||||
|             ] | ||||
|           }, | ||||
|           style: { | ||||
|  | @ -439,6 +441,16 @@ export default { | |||
|     allUsersValue() { | ||||
|       const checkboxGroup = this.queryParam.checkboxGroup | ||||
|       return !!(checkboxGroup && checkboxGroup.includes('AllUsers')) | ||||
|     }, | ||||
| 
 | ||||
|     collectStopValue() { | ||||
|       const checkboxGroup = this.queryParam.checkboxGroup | ||||
|       return !!(checkboxGroup && checkboxGroup.includes('CollectStopB')) | ||||
|     }, | ||||
| 
 | ||||
|     acqStartValue() { | ||||
|       const checkboxGroup = this.queryParam.checkboxGroup | ||||
|       return !!(checkboxGroup && checkboxGroup.includes('AcqStartB')) | ||||
|     } | ||||
|   }, | ||||
|   watch: { | ||||
|  |  | |||
							
								
								
									
										32
									
								
								src/views/spectrumAnalysis/components/Modals/StripModal.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										32
									
								
								src/views/spectrumAnalysis/components/Modals/StripModal.vue
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,32 @@ | |||
| <template> | ||||
|   <custom-modal v-model="visible" title="Ratio" :width="240" :okHandler="handleOk"> | ||||
|     <a-input-number :min="1" v-model="ratio"></a-input-number> | ||||
|   </custom-modal> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import ModalMixin from '@/mixins/ModalMixin' | ||||
| export default { | ||||
|   mixins: [ModalMixin], | ||||
|   data() { | ||||
|     return { | ||||
|       ratio: 1 | ||||
|     } | ||||
|   }, | ||||
|   methods: { | ||||
|     handleOk() { | ||||
|       console.log('%c [  ]-14', 'font-size:13px; background:pink; color:#bf2c9f;', this.ratio) | ||||
|       if(!this.ratio) { | ||||
|         this.$message.warn('Ratio Cannot Be Null') | ||||
|         throw new Error('Ratio Empty') | ||||
|       } | ||||
|     } | ||||
|   } | ||||
| } | ||||
| </script> | ||||
| 
 | ||||
| <style lang="less" scoped> | ||||
| .ant-input-number { | ||||
|   width: 100%; | ||||
| } | ||||
| </style> | ||||
|  | @ -46,6 +46,10 @@ | |||
|     <load-from-file-modal v-model="loadFromFileModalVisible" /> | ||||
|     <!-- 从文件加载结束 --> | ||||
| 
 | ||||
|     <!-- Strip 弹窗开始 --> | ||||
|     <strip-modal v-model="stripModalVisible" /> | ||||
|     <!-- Strip 弹窗结束 --> | ||||
| 
 | ||||
|     <!-- Ftransit 弹窗开始 --> | ||||
|     <ftranslt-modal v-model="ftransltModalVisible" /> | ||||
|     <!-- Ftransit 弹窗结束 --> | ||||
|  | @ -209,6 +213,7 @@ import BetaGammaRlrModal from './components/Modals/BetaGammaModals/BetaGammaRLRM | |||
| import StatisticsParamerHistoryModal from './components/Modals/BetaGammaModals/StatisticsParamerHistoryModal.vue' | ||||
| import FtransltModal from './components/Modals/FtransltModal/index.vue' | ||||
| import BetaGammaEnergyCalibrationModal from './components/Modals/BetaGammaModals/BetaGammaEnergyCalibrationModal/index.vue' | ||||
| import StripModal from './components/Modals/StripModal.vue' | ||||
| 
 | ||||
| // 分析类型 | ||||
| const ANALYZE_TYPE = { | ||||
|  | @ -251,7 +256,8 @@ export default { | |||
|     BetaGammaRlrModal, | ||||
|     StatisticsParamerHistoryModal, | ||||
|     FtransltModal, | ||||
|     BetaGammaEnergyCalibrationModal | ||||
|     BetaGammaEnergyCalibrationModal, | ||||
|     StripModal | ||||
|   }, | ||||
|   data() { | ||||
|     this.ANALYZE_TYPE = ANALYZE_TYPE | ||||
|  | @ -263,6 +269,7 @@ export default { | |||
| 
 | ||||
|       loadFromDbModalVisible: false, // 从数据库加载弹窗 | ||||
|       loadFromFileModalVisible: false, // 从文件加载弹窗 | ||||
|       stripModalVisible: false, // Strip 弹窗 | ||||
|       ftransltModalVisible: false, // Ftransit 弹窗 | ||||
| 
 | ||||
|       sampleData: {}, // 要分析的谱数据 | ||||
|  | @ -436,9 +443,16 @@ export default { | |||
|                   title: 'Clean All', | ||||
|                   handler: this.handleCleanAll | ||||
|                 }, | ||||
|                 { | ||||
|                   type: 'a-menu-item', | ||||
|                   title: 'Strip', | ||||
|                   show: this.isGamma, | ||||
|                   handler: () => (this.stripModalVisible = true) | ||||
|                 }, | ||||
|                 { | ||||
|                   type: 'a-menu-item', | ||||
|                   title: 'Ftransit', | ||||
|                   show: this.isGamma, | ||||
|                   handler: () => (this.ftransltModalVisible = true) | ||||
|                 } | ||||
|               ] | ||||
|  | @ -534,32 +548,50 @@ export default { | |||
|                 { | ||||
|                   type: 'a-menu-item', | ||||
|                   title: 'Configure', | ||||
|                   show: this.isGamma, | ||||
|                   handler: () => (this.analyzeConfigureModalVisible = true) | ||||
|                 }, | ||||
|                 { | ||||
|                   type: 'a-menu-item', | ||||
|                   title: 'ReProcessing', | ||||
|                   show: this.isGamma, | ||||
|                   handler: () => (this.reprocessingModalVisible = true) | ||||
|                 }, | ||||
|                 { | ||||
|                   type: 'a-menu-item', | ||||
|                   title: 'Reprocess All', | ||||
|                   show: this.isGamma, | ||||
|                   handler: this.handleReprocessAll | ||||
|                 }, | ||||
|                 { | ||||
|                   type: 'a-menu-item', | ||||
|                   title: 'Interactive Tool', | ||||
|                   show: this.isGamma, | ||||
|                   handler: () => (this.analyzeInteractiveToolModalVisible = true) | ||||
|                 }, | ||||
|                 { | ||||
|                   type: 'a-menu-item', | ||||
|                   title: 'Zero Time', | ||||
|                   show: this.isGamma, | ||||
|                   handler: () => (this.zeroTimeModalVisible = true) | ||||
|                 }, | ||||
|                 { | ||||
|                   type: 'a-menu-item', | ||||
|                   title: 'Korsum', | ||||
|                   show: this.isGamma, | ||||
|                   handler: () => (this.korsumModalShow = true) | ||||
|                 }, | ||||
|                 { | ||||
|                   type: 'a-menu-item', | ||||
|                   title: 'Analyze current spectrum', | ||||
|                   show: this.isBetaGamma, | ||||
|                   handler: () => {} | ||||
|                 }, | ||||
|                 { | ||||
|                   type: 'a-menu-item', | ||||
|                   title: 'Analyze all spectra', | ||||
|                   show: this.isBetaGamma, | ||||
|                   handler: () => {} | ||||
|                 } | ||||
|               ] | ||||
|             } | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	Block a user