Parcourir la source

单井测量数据增加,ipr回归数据显示及历时数据查询

chenwen il y a 1 an
Parent
commit
df150cb647
2 fichiers modifiés avec 123 ajouts et 3 suppressions
  1. 45 3
      src/pages/single/WellProduceParam.vue
  2. 78 0
      src/pages/single/WellRegressionHis.vue

+ 45 - 3
src/pages/single/WellProduceParam.vue

@@ -72,6 +72,34 @@
 			</div>				
 		  
 		</el-card>
+		
+		
+		<el-card class="box-card">
+		  <template #header>
+		    <div class="card-header">
+		      <span>IPR回归参数{{'【'+(crtWell.wellName||'')+'】'}}</span>
+			  <div class="card-header-tool">
+				    <el-icon size="24" color="#ffba30" title="历史记录" @click="showHisData('WellRegressionHis')"><Clock/></el-icon>
+			  </div>
+		    </div>
+		  </template>
+			<div class="flex-card-body">
+				<div class="param-block regression-block">
+					<div class="param-tit">液量回归</div>
+					<div>{{regression?.liquidExpression}}</div>
+				</div>
+				<div class="param-block regression-block">
+					<div class="param-tit">油量回归</div>
+					<div>{{regression?.oilExpression}}</div>
+				</div>
+				<div class="param-block regression-block">
+					<div class="param-tit">水量回归</div>
+					<div>{{regression?.waterExpression}}</div>
+				</div>
+			</div>				
+		  
+		</el-card>
+		
 				  
 		<el-dialog v-model="dialogCtr.show" :title="dialogCtr.title" :close-on-click-modal="false" width="75%"
 		:destroy-on-close="true"
@@ -92,7 +120,7 @@
 	import WellMeasureHis from './WellMeasureHis.vue'
 	import WellPumpHis from './WellPumpHis.vue'
 	import WellAnalysisParamHis from './WellAnalysisParamHis.vue'
-	
+	import WellRegressionHis from './WellRegressionHis.vue'
 	
 	const crtWell=reactive({
 		wellId:null,
@@ -106,6 +134,7 @@
 	const measureParams=ref(produceAnalysisAPI.getMeasureParams())
 	const pumpParams=ref(produceAnalysisAPI.getPumpParams())
 	const generateParams=ref(produceAnalysisAPI.getCalcParams())
+	const regression=ref(null)
 	
 	//弹窗动态组件配置
 	const dialogCtr=reactive({
@@ -117,7 +146,8 @@
 	const dialogInnerComp={
 		WellMeasureHis,
 		WellPumpHis,
-		WellAnalysisParamHis
+		WellAnalysisParamHis,
+		WellRegressionHis
 	}
 	
 	const dialogCompKey=ref(null)
@@ -169,6 +199,10 @@
 				})
 			}
 			
+			if(resp.data.regression){
+				regression.value=resp.data.regression
+			}
+			
 			
 		}).catch(err=>{
 			console.log(err)
@@ -285,6 +319,7 @@
 		/* justify-items: center; */
 		justify-content: center;
 	}
+	
 	.param-block{
 		font-size:14px;
 		vertical-align:baseline;
@@ -330,5 +365,12 @@
 		flex:1;
 	}
 	
-	
+	.regression-block{
+		width:450px;
+	}
+	.flex-card-body{
+		display: flex;
+		justify-content: space-between;
+		align-items: center;
+	}
 </style>

+ 78 - 0
src/pages/single/WellRegressionHis.vue

@@ -0,0 +1,78 @@
+<template>
+	<div class="qpage qpage-popwin">
+		<el-form :inline="true" :model="queryForm" class="query-form-inline"  label-width="auto">
+		  <el-form-item label=" ">
+		    <el-date-picker
+		           v-model="queryForm.dataTime"
+		           type="daterange"
+		           start-placeholder="开始时间"
+		           end-placeholder="截止时间"
+		           :unlink-panels="true"
+		   		   value-format="YYYY-MM-DD"
+		   		   style="width:220px"
+		         />
+		  </el-form-item>
+		  
+		  <el-form-item>
+		    <el-button type="primary" :loading="isQuerying" @click="queryHandle">检索</el-button>
+		  </el-form-item>
+		</el-form>
+		
+		<div class="qpage-body">
+			<CrudTable 
+			ref="crudTable"
+			page-info-opts="total, prev, pager, next,sizes"
+			url="/analysis/ipr/queryRegression"
+			:initWhere="{wellId:$attrs.id}"
+			:pageSize="20"
+			>
+			  
+			  <template #tabColumns={indexGenerate}>
+				  <el-table-column type="index" :index="indexGenerate" label="序号" width="60" align="center" fixed/>
+				  <el-table-column prop="createTime" label="创建时间" width="160"  fixed/>
+				  <el-table-column prop="liquidExpression" label="液量回归方程" width="240" />
+				  <el-table-column prop="oilExpression" label="油量回归方程" width="240" />
+				  <el-table-column prop="waterExpression" label="水量回归方程" width="240" />
+			  </template>
+				
+			</CrudTable>
+		</div>
+		
+		
+		
+		
+	</div>
+</template>
+
+<script setup>
+	import {reactive,ref,toRaw} from 'vue'
+	import CrudTable from '../../components/crudtable/CrudTable.vue'
+	const crudTable=ref(null)
+	
+	const isQuerying=ref(false)
+	const queryForm = reactive({
+	  dataTime: null
+	})
+	
+	const queryHandle=()=>{
+		isQuerying.value=true
+		let formdata=toRaw(queryForm)
+		formdata['startTime']=formdata.dataTime?formdata.dataTime[0]:null
+		formdata['endTime']=formdata.dataTime?(formdata.dataTime[1]+' 23:59:59'):null
+		crudTable.value.query(queryForm).then(resp=>{
+			isQuerying.value=false
+		})
+		
+	}
+</script>
+
+<style scoped>
+	@import url('../../assets/css/qpage.css');
+	
+	.qpage-popwin{
+		height: 60vh;
+	}
+	.edit-form-item{
+		width:260px;
+	}
+</style>