particulate 模块接口联调
This commit is contained in:
		
							parent
							
								
									06589dacca
								
							
						
					
					
						commit
						98612e917b
					
				|  | @ -73,35 +73,37 @@ export const JeecgListMixin = { | |||
|   }, | ||||
|   methods:{ | ||||
|     loadData(arg) { | ||||
|       if(!this.url.list){ | ||||
|         this.$message.error("请设置url.list属性!") | ||||
|         return | ||||
|       } | ||||
|       //加载数据 若传入参数1则加载第一页的内容
 | ||||
|       if (arg === 1) { | ||||
|         this.ipagination.current = 1; | ||||
|       } | ||||
|       this.onClearSelected() | ||||
| 
 | ||||
|       var params = this.getQueryParams();//查询条件
 | ||||
|       this.loading = true; | ||||
|       getAction(this.url.list, params).then((res) => { | ||||
|         if (res.success) { | ||||
|           //update-begin---author:zhangyafei    Date:20201118  for:适配不分页的数据列表------------
 | ||||
|           this.dataSource = res.result.records||res.result; | ||||
|           if(res.result.total) | ||||
|           { | ||||
|             this.ipagination.total = res.result.total; | ||||
|           }else{ | ||||
|             this.ipagination.total = 0; | ||||
|           } | ||||
|           //update-end---author:zhangyafei    Date:20201118  for:适配不分页的数据列表------------
 | ||||
|         }else{ | ||||
|           this.$message.warning(res.message) | ||||
|       // if(!this.url.list){
 | ||||
|       //   this.$message.error("请设置url.list属性!")
 | ||||
|       //   return
 | ||||
|       // }
 | ||||
|       if (this.url.list) { | ||||
|          | ||||
|         //加载数据 若传入参数1则加载第一页的内容
 | ||||
|         if (arg === 1) { | ||||
|           this.ipagination.current = 1; | ||||
|         } | ||||
|       }).finally(() => { | ||||
|         this.loading = false | ||||
|       }) | ||||
|         this.onClearSelected() | ||||
|         var params = this.getQueryParams();//查询条件
 | ||||
|         this.loading = true; | ||||
|         getAction(this.url.list, params).then((res) => { | ||||
|           if (res.success) { | ||||
|             //update-begin---author:zhangyafei    Date:20201118  for:适配不分页的数据列表------------
 | ||||
|             this.dataSource = res.result.records||res.result; | ||||
|             if(res.result.total) | ||||
|             { | ||||
|               this.ipagination.total = res.result.total; | ||||
|             }else{ | ||||
|               this.ipagination.total = 0; | ||||
|             } | ||||
|             //update-end---author:zhangyafei    Date:20201118  for:适配不分页的数据列表------------
 | ||||
|           }else{ | ||||
|             this.$message.warning(res.message) | ||||
|           } | ||||
|         }).finally(() => { | ||||
|           this.loading = false | ||||
|         }) | ||||
|       } | ||||
|     }, | ||||
|     initDictConfig(){ | ||||
|       console.log("--这是一个假的方法!") | ||||
|  | @ -120,6 +122,7 @@ export const JeecgListMixin = { | |||
|     }, | ||||
|     getQueryParams() { | ||||
|       //获取查询条件
 | ||||
|       console.log("this.queryParamthis.queryParam",this.queryParam); | ||||
|       let sqp = {} | ||||
|       if(this.superQueryParams){ | ||||
|         sqp['superQueryParams']=encodeURI(this.superQueryParams) | ||||
|  |  | |||
|  | @ -1,6 +1,6 @@ | |||
| <template> | ||||
|   <div style="height: 100%;"> | ||||
|     <a-card v-show="!isDetail" :bordered="false" style="margin-left: 20px"> | ||||
|     <a-card v-if="!isDetail" :bordered="false" style="margin-left: 20px"> | ||||
|       <!-- <search-form :items="formItems" v-model="queryParam" @search="searchQuery"> --> | ||||
|       <search-form :items="formItems" v-model="queryParam" @search="searchQueryData"> | ||||
|         <a-space style="float: right" class="btn-group" slot="additional"> | ||||
|  | @ -27,7 +27,7 @@ | |||
|         </template> | ||||
|       </custom-table> | ||||
|     </a-card> | ||||
|     <Detail v-show="isDetail" @back="handleBack"></Detail> | ||||
|     <Detail v-if="isDetail" :allData="detailJson" @back="handleBack"></Detail> | ||||
|   </div> | ||||
| </template> | ||||
| <script> | ||||
|  | @ -105,34 +105,35 @@ export default { | |||
|         endTime: dateFormat(new Date(), 'yyyy-MM-dd'), | ||||
|       }, | ||||
|       url: { | ||||
|         list: '/webStatistics/findParticulatePage', | ||||
|         listPage: '/webStatistics/findParticulatePage', | ||||
|         delete: '/gardsSampleData/deleteById', | ||||
|         findStationList: '/webStatistics/findStationList', | ||||
|         findParticulatePage: '/jeecg-web-statistics/webStatistics/findParticulatePage', | ||||
|       }, | ||||
|       stationList: [], | ||||
|       dataSource:[] | ||||
|       dataSource: [], | ||||
|       detailJson:{} | ||||
|     } | ||||
|   }, | ||||
|   mounted() { | ||||
|     console.log("this.$route.meta",this.$route.meta); | ||||
|     this.queryParam.dataType = this.$route.meta.title | ||||
|   }, | ||||
|   // mounted() { | ||||
|   //   console.log("this.$route.meta",this.$route.meta); | ||||
|   //   this.queryParam.dataType = this.$route.meta.title | ||||
|   // }, | ||||
|   created() { | ||||
|     this.findStationList() | ||||
|   }, | ||||
|   watch: { | ||||
|       '$route.meta.title'(val) { | ||||
|         if(val === 'SPHDF'){ | ||||
|             this.queryParam.dataType = 'FULL' | ||||
|         } else if(val === 'SPHDP'){ | ||||
|             this.queryParam.dataType = 'PREL' | ||||
|         } else{ | ||||
|             this.queryParam.dataType = val.substring(0, 1) | ||||
|         } | ||||
|       this.searchQuery() | ||||
|     }, | ||||
|   }, | ||||
|   // watch: { | ||||
|   //     '$route.meta.title'(val) { | ||||
|   //       if(val === 'SPHDF'){ | ||||
|   //           this.queryParam.dataType = 'FULL' | ||||
|   //       } else if(val === 'SPHDP'){ | ||||
|   //           this.queryParam.dataType = 'PREL' | ||||
|   //       } else{ | ||||
|   //           this.queryParam.dataType = val.substring(0, 1) | ||||
|   //       } | ||||
|   //     // this.searchQuery() | ||||
|   //   }, | ||||
|   // }, | ||||
|   methods: { | ||||
|     searchQueryData() { | ||||
|       this.queryParam = { | ||||
|  | @ -147,7 +148,7 @@ export default { | |||
|         pageSize: 10, | ||||
|         stationIds: ["209", "211", "213"] | ||||
|       } | ||||
|       getAction(this.url.list, params).then((res) => { | ||||
|       getAction(this.url.listPage, params).then((res) => { | ||||
|         console.log("查询数据结果", res); | ||||
|         if (res.success) { | ||||
|           this.dataSource = res.result.records | ||||
|  | @ -155,8 +156,17 @@ export default { | |||
|       }) | ||||
|     }, | ||||
|     handleDetail(record) { | ||||
|       this.isDetail = true | ||||
|       console.log("点击行信息",record); | ||||
|       console.log("点击行信息", record); | ||||
|       getAction("webStatistics/findGeneratedReport", { sampleId: "1523651" }).then(res => { | ||||
|         console.log(res); | ||||
|         if (res.success) { | ||||
|           this.detailJson = res.result | ||||
|           this.detailJson = JSON.parse(JSON.stringify(this.detailJson)) | ||||
|           this.isDetail = true | ||||
|         } else { | ||||
|           this.$message.warning(res.message) | ||||
|         } | ||||
|       }) | ||||
|     }, | ||||
|     handleBack(flag) { | ||||
|       this.isDetail = flag | ||||
|  |  | |||
|  | @ -1,23 +1,13 @@ | |||
| <template> | ||||
|   <a-card :bordered="false" style="margin-left: 20px"> | ||||
|     <search-form :items="formItems" v-model="queryParam" @search="searchQueryData"> | ||||
|       <a-space style="float: right" class="btn-group" slot="additional"> | ||||
|         <a-button @click="handleEdit" type="primary"> | ||||
|           <img src="@/assets/images/global/edit.png" alt="" /> | ||||
|           Excel | ||||
|         </a-button> | ||||
|       </a-space> | ||||
|     </search-form>  | ||||
|   </a-card> | ||||
|   <div style="height: 100%;"> | ||||
|     <List :stationList="stationList" :columns="columns" :dataType="dataType"></List> | ||||
|   </div> | ||||
| </template> | ||||
| 
 | ||||
| <script> | ||||
| import dateFormat from '../../components/jeecg/JEasyCron/format-date' | ||||
| import { JeecgListMixin } from '@/mixins/JeecgListMixin' | ||||
| import List from "./list.vue" | ||||
| import { getAction } from '../../api/manage' | ||||
| const url = { | ||||
|   list: '/webStatistics/findParticulatePage', | ||||
|   findStationList: '/webStatistics/findStationList', | ||||
| } | ||||
| 
 | ||||
| const columns = [ | ||||
|   { | ||||
|     title: 'NO', | ||||
|  | @ -72,131 +62,41 @@ const columns = [ | |||
|     dataIndex: 'acquisitionStop', | ||||
|   }, | ||||
| ] | ||||
| 
 | ||||
| export default { | ||||
|   mixins: [JeecgListMixin], | ||||
|   components: { | ||||
|     List, | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       queryParam: { | ||||
|         dataType: 'B', | ||||
|         startTime: dateFormat(new Date(), 'yyyy-MM-dd'), | ||||
|         endTime: dateFormat(new Date(), 'yyyy-MM-dd'), | ||||
|       url: { | ||||
|         listPage: '/webStatistics/findParticulatePage', | ||||
|         delete: '/gardsSampleData/deleteById', | ||||
|         findStationList: '/webStatistics/findStationList', | ||||
|         findParticulatePage: '/jeecg-web-statistics/webStatistics/findParticulatePage', | ||||
|       }, | ||||
|       stationList: [], | ||||
|       url, | ||||
|       columns, | ||||
|       dataType:"C" | ||||
|     } | ||||
|   }, | ||||
|   computed: { | ||||
|     formItems() { | ||||
|       return [ | ||||
|         { | ||||
|           type: 'a-input', | ||||
|           label: '', | ||||
|           name: 'search', | ||||
|           props: { | ||||
|             placeholder: 'search...', | ||||
|             style: { | ||||
|               width: '166px', | ||||
|             }, | ||||
|           }, | ||||
|           style: { | ||||
|             width: 'auto', | ||||
|           }, | ||||
|         }, | ||||
|         { | ||||
|           type: 'custom-select', | ||||
|           label: 'Stations', | ||||
|           name: 'stationIds', | ||||
|           props: { | ||||
|             placeholder: 'select stations', | ||||
|             mode: 'multiple', | ||||
|             maxTagCount: 1, | ||||
|             options: [ | ||||
|               { | ||||
|                 label: 'ALL', | ||||
|                 value: '', | ||||
|               }, | ||||
|               ...this.stationList, | ||||
|             ], | ||||
|             style: { | ||||
|               width: '200px', | ||||
|             }, | ||||
|           }, | ||||
|           style: { | ||||
|             width: 'auto', | ||||
|           }, | ||||
|         }, | ||||
|         { | ||||
|           label: 'Start date', | ||||
|           type: 'custom-date-picker', | ||||
|           name: 'startTime', | ||||
|           props: { | ||||
|             showTime: { format: 'HH:mm' }, | ||||
|             format: 'YYYY-MM-DD', | ||||
|             valueFormat: 'YYYY-MM-DD:ss', | ||||
|             style: { | ||||
|               minWidth: 'auto', | ||||
|               width: '200px', | ||||
|             }, | ||||
|           }, | ||||
|           style: { | ||||
|             width: 'auto', | ||||
|           }, | ||||
|         }, | ||||
|         { | ||||
|           label: 'End date', | ||||
|           type: 'custom-date-picker', | ||||
|           name: 'endTime', | ||||
|           props: { | ||||
|             showTime: { format: 'HH:mm' }, | ||||
|             format: 'YYYY-MM-DD', | ||||
|             valueFormat: 'YYYY-MM-DD:ss', | ||||
|             style: { | ||||
|               minWidth: 'auto', | ||||
|               width: '200px', | ||||
|             }, | ||||
|           }, | ||||
|           style: { | ||||
|             width: 'auto', | ||||
|           }, | ||||
|         }, | ||||
|       ] | ||||
|     }, | ||||
|   }, | ||||
|   watch: { | ||||
|     "$route":{ | ||||
|       handler: function (val, oldVal) { | ||||
|         if(val.meta.title === 'SPHDF'){ | ||||
|           this.queryParam.dataType = 'FULL' | ||||
|         } else if(val.meta.title === 'SPHDP'){ | ||||
|             this.queryParam.dataType = 'PREL' | ||||
|         } else{ | ||||
|           this.queryParam.dataType = val.meta.title.substring(0, 1) | ||||
|         } | ||||
|       }, | ||||
|       deep:true, | ||||
|       immediate:true | ||||
|     } | ||||
|   }, | ||||
|   created() { | ||||
|     this.findStationList() | ||||
|   }, | ||||
|   mounted() { | ||||
|     console.log("this.$route.meta",this.$route.meta); | ||||
|     // this.queryParam.dataType = this.$route.meta.title | ||||
|     console.log(this.dataType); | ||||
|     this.findStationList(); | ||||
|   }, | ||||
|    | ||||
|   methods: { | ||||
|     searchQueryData() { | ||||
|       console.log("查询数据",this.queryParam); | ||||
|     }, | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Particulate' }).then((res) => { | ||||
|         console.log("resdsfsdf",res); | ||||
|         this.stationList = res.result.map((res) => ({ label: res.stationCode, value: res.stationId })) | ||||
|         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> | ||||
										
											
												File diff suppressed because it is too large
												Load Diff
											
										
									
								
							|  | @ -62,7 +62,7 @@ | |||
|               <a-col :span="12">{{ allData.headerBlock.transmitDate }}</a-col> | ||||
|             </a-row> | ||||
|           </templete> | ||||
|           <template v-if="allData.commentBlock"> | ||||
|           <template v-if="allData.commentBlock && allData.commentBlock.text"> | ||||
|             <div class="pane-title">COMMENT</div> | ||||
|             <a-row> | ||||
|               <a-col class="comment-block" :span="24" v-html="commentText"></a-col> | ||||
|  | @ -124,16 +124,16 @@ | |||
|           > | ||||
|           </custom-table> | ||||
|         </a-tab-pane> | ||||
|         <a-tab-pane key="gamma-spectrum" tab="GAMMA SPECTRUM" v-if="allData.gSpectrumBlock===null?false:true"> | ||||
|         <a-tab-pane key="gamma-spectrum" tab="GAMMA SPECTRUM" v-if="allData.gspectrumBlock===null?false:true"> | ||||
|           <div class="pane-title" style="margin-bottom: 15px;">GAMMA SPECTRUM</div> | ||||
|           <div class="gamma-spectrum-row"> | ||||
|               <div> | ||||
|                 <span>Number of Channels:</span><span class="row-val">8192</span> | ||||
|                 <span style="margin-left: 35px;">Energy Span:</span><span class="row-val">8192</span>  | ||||
|                 <span>Number of Channels:</span><span class="row-val">{{ allData.gspectrumBlock.numberGChannels }}</span> | ||||
|                 <span style="margin-left: 35px;">Energy Span:</span><span class="row-val">{{ allData.gspectrumBlock.energySpan }}</span>  | ||||
|               </div> | ||||
|               <div> | ||||
|                 <a-checkbox style="margin-right: 15px;">Y log scale</a-checkbox> | ||||
|                 <a-button class="row-btn">Reset Zoom</a-button> | ||||
|                 <a-checkbox style="margin-right: 15px;" @change="yLogChange">Y log scale</a-checkbox> | ||||
|                 <a-button class="row-btn" @click="resetZoom">Reset Zoom</a-button> | ||||
|               </div> | ||||
|           </div> | ||||
|           <div class="gamma-spectrum-chart" id="spectrumChartRef"></div> | ||||
|  | @ -141,9 +141,9 @@ | |||
|         <a-tab-pane key="certificate" tab="CERTIFICATE" v-if="allData.certificateBlock===null?false:true"> | ||||
|           <div class="pane-title" style="margin-bottom: 15px;">CERTIFICATE</div> | ||||
|           <div class="certificate-row"> | ||||
|             <span>Total Source Activity [ Bq ]:</span><span class="row-val">8192</span> | ||||
|             <span style="margin-left: 35px;">Assay Date:</span><span class="row-val">8192</span>  | ||||
|             <span style="margin-left: 35px;">Units of Activity:</span><span class="row-val">8192</span>  | ||||
|             <span>Total Source Activity [ Bq ]:</span><span class="row-val">{{ allData.certificateBlock.totalSourceActivity }}</span> | ||||
|             <span style="margin-left: 35px;">Assay Date:</span><span class="row-val">{{ allData.certificateBlock.assayDate }}</span>  | ||||
|             <span style="margin-left: 35px;">Units of Activity:</span><span class="row-val">{{ allData.certificateBlock.unitsOfActivity }}</span>  | ||||
|           </div> | ||||
|           <custom-table | ||||
|             size="middle" | ||||
|  | @ -160,40 +160,29 @@ | |||
| 
 | ||||
| <script> | ||||
| import * as echarts from 'echarts' | ||||
| import allData from "./data.json" | ||||
|   export default { | ||||
| // import allData from "./data.json" | ||||
| export default { | ||||
|     props: { | ||||
|       allData: { | ||||
|         type: Object, | ||||
|         default: ()=>{} | ||||
|       }, | ||||
|   }, | ||||
|     watch: { | ||||
|       allData: { | ||||
|         handler(val) { | ||||
|           console.log(val); | ||||
|         }, | ||||
|         deep: true, | ||||
|         immediate:true | ||||
|       } | ||||
|     }, | ||||
|     data() { | ||||
|       return { | ||||
|         spectrumChart:null, | ||||
|         yAxisType:"value", | ||||
|         loading:true, | ||||
|         myChart:null, | ||||
|         allData, | ||||
|         tabMenus: [ | ||||
|           { | ||||
|             name: "INFO", | ||||
|             key: "info", | ||||
|             // isShow: this.allData.headerBlock?true:false  | ||||
|           },{ | ||||
|             name: "ENERGY", | ||||
|             key: "energy", | ||||
|             // isShow: this.allData.gEnergyBlock?true:false  | ||||
|           },{ | ||||
|             name: "RESOLUTION", | ||||
|             key: "resulution", | ||||
|             // isShow: this.allData.gResolutionBlock?true:false  | ||||
|           },{ | ||||
|             name: "EFFICIENCY", | ||||
|             key: "efficiency", | ||||
|             // isShow: this.allData.gEfficiencyBlock?true:false  | ||||
|           },{ | ||||
|             name: "GAMMA SPECTRUM", | ||||
|             key: "gamma-spectrum", | ||||
|             // isShow: this.allData.gSpectrumBlock?true:false  | ||||
|           },{ | ||||
|             name: "CERTIFICATE", | ||||
|             key:"certificate", | ||||
|             // isShow: this.allData.certificateBlock?true:false  | ||||
|           }, | ||||
|         ], | ||||
|         commentText: "", | ||||
|         columnsEnergy: [ | ||||
|           { | ||||
|  | @ -222,7 +211,7 @@ import allData from "./data.json" | |||
|           { | ||||
|             title: 'FWHM [keV]', | ||||
|             align: 'left', | ||||
|             dataIndex: 'FWHM' | ||||
|             dataIndex: 'fwhm' | ||||
|           }, | ||||
|           { | ||||
|             title: 'Uncertainty [keV]', | ||||
|  | @ -296,54 +285,31 @@ import allData from "./data.json" | |||
|             dataIndex: 'particleBIntensity' | ||||
|           } | ||||
|         ], | ||||
|         dataSourceCertificate:[] | ||||
|         dataSourceCertificate: [], | ||||
|         dataSourceSpectrumY: [], | ||||
|         dataSourceSpectrumX: [] | ||||
|       } | ||||
|     }, | ||||
|     mounted () { | ||||
|       console.log(this.allData); | ||||
|       this.commentText = this.allData.commentBlock.text.replace(/\n/g, "<br />") | ||||
|       this.dataSourceEnergy=this.allData.gEnergyBlock.gEnergySubBlock | ||||
|       this.dataSourceResulution=this.allData.gResolutionBlock.gResolutionSubBlock | ||||
|       this.dataSourceEfficiency = this.allData.gEfficiencyBlock.gEfficiencySubBlock | ||||
|       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) => { | ||||
|         return index | ||||
|       }) | ||||
|       console.log(this.dataSourceSpectrumX); | ||||
|       this.dataSourceCertificate = this.allData.certificateBlock?this.allData.certificateBlock.certificateSubBlock:[] | ||||
|     }, | ||||
|   methods: { | ||||
|     handleback() { | ||||
|       this.$emit("back",false) | ||||
|     }, | ||||
|     handleTabChange(key) { | ||||
|       console.log(key); | ||||
|       if (key === "gamma-spectrum") { | ||||
|         this.$nextTick(() => { | ||||
|           this.drawSpectrumChart() | ||||
|         }) | ||||
|       }  | ||||
|     }, | ||||
|     drawSpectrumChart() { | ||||
|       const spectrumChart = echarts.init(document.getElementById("spectrumChartRef")) | ||||
|       spectrumChart.setOption({ | ||||
|         tooltip: { | ||||
|           trigger: 'item', | ||||
|           formatter: '{a} <br/>{b} : {c}' | ||||
|         }, | ||||
|         xAxis: { | ||||
|           type: 'value', | ||||
|           splitLine: { | ||||
|             show: true, | ||||
|             lineStyle: { | ||||
|               color: "rgbA(64, 105, 121, 0.2)" | ||||
|             } | ||||
|           }, | ||||
|           data: ['A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I'] | ||||
|         }, | ||||
|         grid: { | ||||
|           left: '3%', | ||||
|           right: '4%', | ||||
|           bottom: '3%', | ||||
|           containLabel: true | ||||
|         }, | ||||
|     yLogChange(e) { | ||||
|       this.yAxisType = e.target.checked?"log":"value" | ||||
|       this.spectrumChart.setOption({ | ||||
|         yAxis: { | ||||
|           type: 'log', | ||||
|           type: this.yAxisType, | ||||
|           // type: 'log', | ||||
|           splitLine: { | ||||
|             show: true, | ||||
|             lineStyle: { | ||||
|  | @ -351,12 +317,79 @@ import allData from "./data.json" | |||
|             } | ||||
|           } | ||||
|         }, | ||||
|       }); | ||||
|     }, | ||||
|     resetZoom() { | ||||
|       this.spectrumChart.setOption({ | ||||
|         dataZoom: [ | ||||
|           { | ||||
|             start: 0, | ||||
|             end: 100 | ||||
|           } | ||||
|         ], | ||||
|       }); | ||||
|     }, | ||||
|     handleback() { | ||||
|       this.$emit("back",false) | ||||
|     }, | ||||
|     handleTabChange(key) { | ||||
|       if (key === "gamma-spectrum") { | ||||
|         this.$nextTick(() => { | ||||
|           this.drawSpectrumChart() | ||||
|         }) | ||||
|       }  | ||||
|     }, | ||||
|     drawSpectrumChart() { | ||||
|       this.spectrumChart = echarts.init(document.getElementById("spectrumChartRef")) | ||||
|       this.spectrumChart.setOption({ | ||||
|         tooltip: { | ||||
|           trigger: 'axis', | ||||
|           formatter: '{a} <br/>{b} : {c}' | ||||
|         }, | ||||
|         xAxis: { | ||||
|           // type: 'time', | ||||
|           splitLine: { | ||||
|             show: true, | ||||
|             lineStyle: { | ||||
|               color: "rgbA(64, 105, 121, 0.2)" | ||||
|             }, | ||||
|           }, | ||||
|           axisTick: { | ||||
|             show: false, | ||||
|             alignWithLabel: true, | ||||
|             interval: 5 | ||||
|           }, | ||||
|           boundaryGap: false, | ||||
|           data: this.dataSourceSpectrumX | ||||
|         }, | ||||
|         grid: { | ||||
|           left: '3%', | ||||
|           right: '4%', | ||||
|           bottom: '10%', | ||||
|           containLabel: true | ||||
|         }, | ||||
|         yAxis: { | ||||
|           type: this.yAxisType, | ||||
|           // type: 'log', | ||||
|           splitLine: { | ||||
|             show: true, | ||||
|             lineStyle: { | ||||
|               color: "rgbA(64, 105, 121, 0.2)" | ||||
|             } | ||||
|           } | ||||
|         }, | ||||
|         dataZoom: [ | ||||
|           { | ||||
|             start: 0, | ||||
|             end: 20 | ||||
|           } | ||||
|         ], | ||||
|         series: [ | ||||
|           { | ||||
|             name: 'Log2', | ||||
|             type: 'line', | ||||
|             itemStyle: { normal: { color: '#0656ff' } }, | ||||
|             data: [1, 3, 9, 27, 81, 247, 741, 2223, 6669] | ||||
|             data: this.dataSourceSpectrum | ||||
|           } | ||||
|         ] | ||||
|       }) | ||||
|  |  | |||
							
								
								
									
										103
									
								
								src/views/statistics/detbkphd.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										103
									
								
								src/views/statistics/detbkphd.vue
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,103 @@ | |||
| <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', | ||||
|     width: 50, | ||||
|     scopedSlots: { | ||||
|       customRender: 'index', | ||||
|     }, | ||||
|     customHeaderCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|     customCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|   }, | ||||
|   { | ||||
|     title: 'STATION', | ||||
|     align: 'left', | ||||
|     dataIndex: 'stationName', | ||||
|     width: 130, | ||||
|   }, | ||||
|   { | ||||
|     title: 'DETECTOR CODE', | ||||
|     align: 'left', | ||||
|     width: 100, | ||||
|     dataIndex: 'siteDetCode', | ||||
|   }, | ||||
|   { | ||||
|     title: 'SPECTRAL QUALIFIER', | ||||
|     align: 'left', | ||||
|     width: 100, | ||||
|     dataIndex: 'spectralQualifie', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION START TIME', | ||||
|     align: 'left', | ||||
|     width: 100, | ||||
|     dataIndex: 'acquisitionStart', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION STOP TIME', | ||||
|     align: 'left', | ||||
|     width: 120, | ||||
|     dataIndex: 'acquisitionStop', | ||||
|   }, | ||||
| ] | ||||
| export default { | ||||
|   components: { | ||||
|     List, | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       url: { | ||||
|         listPage: '/webStatistics/findParticulatePage', | ||||
|         delete: '/gardsSampleData/deleteById', | ||||
|         findStationList: '/webStatistics/findStationList', | ||||
|         findParticulatePage: '/jeecg-web-statistics/webStatistics/findParticulatePage', | ||||
|       }, | ||||
|       stationList: [], | ||||
|       columns, | ||||
|       dataType:"D" | ||||
|     } | ||||
|   }, | ||||
|   mounted() { | ||||
|     console.log(this.dataType); | ||||
|     this.findStationList(); | ||||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Particulate' }).then((res) => { | ||||
|         console.log("resdsfsdf", 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> | ||||
							
								
								
									
										202
									
								
								src/views/statistics/list.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										202
									
								
								src/views/statistics/list.vue
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,202 @@ | |||
| <template> | ||||
|   <div style="height: 100%;"> | ||||
|     <a-card v-if="!isDetail" :bordered="false" style="margin-left: 20px"> | ||||
|       <search-form :items="formItems" v-model="queryParam" @search="searchQueryData"> | ||||
|         <a-space style="float: right" class="btn-group" slot="additional"> | ||||
|           <a-button @click="handleEdit" type="primary"> | ||||
|             <img src="@/assets/images/global/edit.png" alt="" /> | ||||
|             Excel | ||||
|           </a-button> | ||||
|         </a-space> | ||||
|       </search-form> | ||||
|       <custom-table | ||||
|         size="middle" | ||||
|         rowKey="sampleId" | ||||
|         :columns="columns" | ||||
|         :list="dataSource" | ||||
|         :pagination="ipagination" | ||||
|         :loading="loading" | ||||
|         @change="handleTableChange" | ||||
|         @detail="handleDetail" | ||||
|         :selectedRowKeys.sync="selectedRowKeys" | ||||
|         :scroll="{ x: true, y: 'calc(100vh - 410px)' }" | ||||
|       > | ||||
|         <template slot="index" slot-scope="{ index }"> | ||||
|           {{ index + 1 }} | ||||
|         </template> | ||||
|       </custom-table> | ||||
|     </a-card> | ||||
|     <Detail v-if="isDetail" :allData="detailJson" @back="handleBack"></Detail> | ||||
|   </div> | ||||
| </template> | ||||
| <script> | ||||
| 
 | ||||
| import { JeecgListMixin } from '@/mixins/JeecgListMixin' | ||||
| import { getAction } from '../../api/manage' | ||||
| import dateFormat from '../../components/jeecg/JEasyCron/format-date' | ||||
| import Detail from "./detail.vue" | ||||
| export default { | ||||
|   name: 'menuTree', | ||||
|   props: { | ||||
|     stationList: { | ||||
|       type: Array, | ||||
|       default: ()=>[] | ||||
|     }, | ||||
|     columns: { | ||||
|       type: Array, | ||||
|       default: ()=>[] | ||||
|     }, | ||||
|     dataType: { | ||||
|       type: String, | ||||
|       default:"" | ||||
|     } | ||||
|   }, | ||||
|   mixins: [JeecgListMixin], | ||||
|   components: { | ||||
|     Detail, | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       isDetail:false, | ||||
|       queryParam: { | ||||
|         dataType: this.dataType, | ||||
|         startTime: dateFormat(new Date(), 'yyyy-MM-dd'), | ||||
|         endTime: dateFormat(new Date(), 'yyyy-MM-dd'), | ||||
|       }, | ||||
|       url: { | ||||
|         list: '/webStatistics/findParticulatePage', | ||||
|         delete: '/gardsSampleData/deleteById', | ||||
|         findStationList: '/webStatistics/findStationList', | ||||
|         findParticulatePage: '/jeecg-web-statistics/webStatistics/findParticulatePage', | ||||
|       }, | ||||
|       dataSource: [], | ||||
|       detailJson:{} | ||||
|     } | ||||
|   }, | ||||
|   methods: { | ||||
|     searchQueryData() { | ||||
|       console.log("查询数据", this.queryParam); | ||||
|       console.log(this.dataType); | ||||
|       let params = { | ||||
|         dataType: "S", | ||||
|         startTime: "2023-05-01", | ||||
|         endTime: "2023-05-07", | ||||
|         pageNo: 1, | ||||
|         pageSize: 10, | ||||
|         stationIds: ["209", "211", "213"] | ||||
|         // dataType: this.queryParam.dataType||"S", | ||||
|         // startTime: this.queryParam.startTime, | ||||
|         // endTime:this.queryParam.endTime, | ||||
|       } | ||||
|       getAction(this.url.list, params).then((res) => { | ||||
|         console.log("查询数据结果", res); | ||||
|         if (res.success) { | ||||
|           this.dataSource = res.result.records | ||||
|         } | ||||
|       }) | ||||
|     }, | ||||
|     handleDetail(record) { | ||||
|       // this.isDetail = true | ||||
|       console.log("点击行信息", record); | ||||
|       // 测试接口数据 record.sampleId | ||||
|       getAction("webStatistics/findGeneratedReport", { sampleId: "1523651" }).then(res => { | ||||
|         console.log(res); | ||||
|         if (res.success) { | ||||
|           this.detailJson = res.result | ||||
|           this.detailJson = JSON.parse(JSON.stringify(this.detailJson)) | ||||
|           this.isDetail = true | ||||
|         } else { | ||||
|           this.$message.warning(res.message) | ||||
|         } | ||||
|       }) | ||||
|     }, | ||||
|     handleBack(flag) { | ||||
|       this.isDetail = flag | ||||
|     }, | ||||
|     handleTableChange(pagination, filters, sorter, { currentDataSource }) { | ||||
|       console.log(pagination, filters, sorter, { currentDataSource }); | ||||
|     } | ||||
|   }, | ||||
|   computed: { | ||||
|     formItems() { | ||||
|       return [ | ||||
|         { | ||||
|           type: 'a-input', | ||||
|           label: '', | ||||
|           name: 'search', | ||||
|           props: { | ||||
|             placeholder: 'search...', | ||||
|             style: { | ||||
|               width: '166px', | ||||
|             }, | ||||
|           }, | ||||
|           style: { | ||||
|             width: 'auto', | ||||
|           }, | ||||
|         }, | ||||
|         { | ||||
|           type: 'custom-select', | ||||
|           label: 'Stations', | ||||
|           name: 'stationIds', | ||||
|           props: { | ||||
|             placeholder: 'select stations', | ||||
|             mode: 'multiple', | ||||
|             maxTagCount: 1, | ||||
|             options: [ | ||||
|               { | ||||
|                 label: 'ALL', | ||||
|                 value: '', | ||||
|               }, | ||||
|               ...this.stationList, | ||||
|             ], | ||||
|             style: { | ||||
|               width: '200px', | ||||
|             }, | ||||
|           }, | ||||
|           style: { | ||||
|             width: 'auto', | ||||
|           }, | ||||
|         }, | ||||
|         { | ||||
|           label: 'Start date', | ||||
|           type: 'custom-date-picker', | ||||
|           name: 'startTime', | ||||
|           props: { | ||||
|             showTime: { format: 'HH:mm' }, | ||||
|             format: 'YYYY-MM-DD', | ||||
|             valueFormat: 'YYYY-MM-DD:ss', | ||||
|             style: { | ||||
|               minWidth: 'auto', | ||||
|               width: '200px', | ||||
|             }, | ||||
|           }, | ||||
|           style: { | ||||
|             width: 'auto', | ||||
|           }, | ||||
|         }, | ||||
|         { | ||||
|           label: 'End date', | ||||
|           type: 'custom-date-picker', | ||||
|           name: 'endTime', | ||||
|           props: { | ||||
|             showTime: { format: 'HH:mm' }, | ||||
|             format: 'YYYY-MM-DD', | ||||
|             valueFormat: 'YYYY-MM-DD:ss', | ||||
|             style: { | ||||
|               minWidth: 'auto', | ||||
|               width: '200px', | ||||
|             }, | ||||
|           }, | ||||
|           style: { | ||||
|             width: 'auto', | ||||
|           }, | ||||
|         }, | ||||
|       ] | ||||
|     }, | ||||
|   }, | ||||
| } | ||||
| </script> | ||||
| <style lang="less" scoped> | ||||
| 
 | ||||
| </style> | ||||
|    | ||||
							
								
								
									
										103
									
								
								src/views/statistics/qcphd.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										103
									
								
								src/views/statistics/qcphd.vue
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,103 @@ | |||
| <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', | ||||
|     width: 50, | ||||
|     scopedSlots: { | ||||
|       customRender: 'index', | ||||
|     }, | ||||
|     customHeaderCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|     customCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|   }, | ||||
|   { | ||||
|     title: 'STATION', | ||||
|     align: 'left', | ||||
|     dataIndex: 'stationName', | ||||
|     width: 130, | ||||
|   }, | ||||
|   { | ||||
|     title: 'DETECTOR CODE', | ||||
|     align: 'left', | ||||
|     width: 100, | ||||
|     dataIndex: 'siteDetCode', | ||||
|   }, | ||||
|   { | ||||
|     title: 'SPECTRAL QUALIFIER', | ||||
|     align: 'left', | ||||
|     width: 100, | ||||
|     dataIndex: 'spectralQualifie', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION START TIME', | ||||
|     align: 'left', | ||||
|     width: 100, | ||||
|     dataIndex: 'acquisitionStart', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION STOP TIME', | ||||
|     align: 'left', | ||||
|     width: 120, | ||||
|     dataIndex: 'acquisitionStop', | ||||
|   }, | ||||
| ] | ||||
| export default { | ||||
|   components: { | ||||
|     List, | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       url: { | ||||
|         listPage: '/webStatistics/findParticulatePage', | ||||
|         delete: '/gardsSampleData/deleteById', | ||||
|         findStationList: '/webStatistics/findStationList', | ||||
|         findParticulatePage: '/jeecg-web-statistics/webStatistics/findParticulatePage', | ||||
|       }, | ||||
|       stationList: [], | ||||
|       columns, | ||||
|       dataType:"Q" | ||||
|     } | ||||
|   }, | ||||
|   mounted() { | ||||
|     console.log(this.dataType); | ||||
|     this.findStationList(); | ||||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Particulate' }).then((res) => { | ||||
|         console.log("resdsfsdf", 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> | ||||
							
								
								
									
										103
									
								
								src/views/statistics/sphdf.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										103
									
								
								src/views/statistics/sphdf.vue
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,103 @@ | |||
| <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', | ||||
|     width: 50, | ||||
|     scopedSlots: { | ||||
|       customRender: 'index', | ||||
|     }, | ||||
|     customHeaderCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|     customCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|   }, | ||||
|   { | ||||
|     title: 'STATION', | ||||
|     align: 'left', | ||||
|     dataIndex: 'stationName', | ||||
|     width: 130, | ||||
|   }, | ||||
|   { | ||||
|     title: 'DETECTOR CODE', | ||||
|     align: 'left', | ||||
|     width: 100, | ||||
|     dataIndex: 'siteDetCode', | ||||
|   }, | ||||
|   { | ||||
|     title: 'SPECTRAL QUALIFIER', | ||||
|     align: 'left', | ||||
|     width: 100, | ||||
|     dataIndex: 'spectralQualifie', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION START TIME', | ||||
|     align: 'left', | ||||
|     width: 100, | ||||
|     dataIndex: 'acquisitionStart', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION STOP TIME', | ||||
|     align: 'left', | ||||
|     width: 120, | ||||
|     dataIndex: 'acquisitionStop', | ||||
|   }, | ||||
| ] | ||||
| export default { | ||||
|   components: { | ||||
|     List, | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       url: { | ||||
|         listPage: '/webStatistics/findParticulatePage', | ||||
|         delete: '/gardsSampleData/deleteById', | ||||
|         findStationList: '/webStatistics/findStationList', | ||||
|         findParticulatePage: '/jeecg-web-statistics/webStatistics/findParticulatePage', | ||||
|       }, | ||||
|       stationList: [], | ||||
|       columns, | ||||
|       dataType:"FULL" | ||||
|     } | ||||
|   }, | ||||
|   mounted() { | ||||
|     console.log(this.dataType); | ||||
|     this.findStationList(); | ||||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Particulate' }).then((res) => { | ||||
|         console.log("resdsfsdf", 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> | ||||
							
								
								
									
										103
									
								
								src/views/statistics/sphdp.vue
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										103
									
								
								src/views/statistics/sphdp.vue
									
									
									
									
									
										Normal file
									
								
							|  | @ -0,0 +1,103 @@ | |||
| <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', | ||||
|     width: 50, | ||||
|     scopedSlots: { | ||||
|       customRender: 'index', | ||||
|     }, | ||||
|     customHeaderCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|     customCell: () => { | ||||
|       return { | ||||
|         style: { | ||||
|           'padding-left': '26px !important', | ||||
|         }, | ||||
|       } | ||||
|     }, | ||||
|   }, | ||||
|   { | ||||
|     title: 'STATION', | ||||
|     align: 'left', | ||||
|     dataIndex: 'stationName', | ||||
|     width: 130, | ||||
|   }, | ||||
|   { | ||||
|     title: 'DETECTOR CODE', | ||||
|     align: 'left', | ||||
|     width: 100, | ||||
|     dataIndex: 'siteDetCode', | ||||
|   }, | ||||
|   { | ||||
|     title: 'SPECTRAL QUALIFIER', | ||||
|     align: 'left', | ||||
|     width: 100, | ||||
|     dataIndex: 'spectralQualifie', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION START TIME', | ||||
|     align: 'left', | ||||
|     width: 100, | ||||
|     dataIndex: 'acquisitionStart', | ||||
|   }, | ||||
|   { | ||||
|     title: 'ACQUISITION STOP TIME', | ||||
|     align: 'left', | ||||
|     width: 120, | ||||
|     dataIndex: 'acquisitionStop', | ||||
|   }, | ||||
| ] | ||||
| export default { | ||||
|   components: { | ||||
|     List, | ||||
|   }, | ||||
|   data() { | ||||
|     return { | ||||
|       url: { | ||||
|         listPage: '/webStatistics/findParticulatePage', | ||||
|         delete: '/gardsSampleData/deleteById', | ||||
|         findStationList: '/webStatistics/findStationList', | ||||
|         findParticulatePage: '/jeecg-web-statistics/webStatistics/findParticulatePage', | ||||
|       }, | ||||
|       stationList: [], | ||||
|       columns, | ||||
|       dataType:"PREL" | ||||
|     } | ||||
|   }, | ||||
|   mounted() { | ||||
|     console.log(this.dataType); | ||||
|     this.findStationList(); | ||||
|   }, | ||||
|   methods: { | ||||
|     findStationList() { | ||||
|       getAction(this.url.findStationList, { menuName: 'Particulate' }).then((res) => { | ||||
|         console.log("resdsfsdf", 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> | ||||
		Loading…
	
		Reference in New Issue
	
	Block a user