|
@@ -0,0 +1,93 @@
|
|
|
+<template>
|
|
|
+ <div class="page-container">
|
|
|
+ <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="datetimerange"
|
|
|
+ range-separator="至"
|
|
|
+ start-placeholder="开始时间"
|
|
|
+ end-placeholder="截止时间"
|
|
|
+ :unlink-panels="true"
|
|
|
+ value-format="YYYY-MM-DD HH:mm:ss"
|
|
|
+ />
|
|
|
+ </el-form-item>
|
|
|
+
|
|
|
+ <el-form-item>
|
|
|
+ <el-button type="primary" :loading="isQuerying" @click="queryHandle">检索</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </el-form>
|
|
|
+ <ECLineChart :chartData="chartData" id="line1" :yUnit="yUnit" :title="$attrs['ctxObj']['paramName']" height="400px" width="1000px"/>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script setup>
|
|
|
+ import {reactive,ref,toRaw,onMounted,useAttrs} from 'vue'
|
|
|
+ import * as echarts from 'echarts'
|
|
|
+ import ECLineChart from '../../components/ECLineChart.vue'
|
|
|
+ import paramHisAPI from '../../api/paramHis.js'
|
|
|
+ import wellParamAPI from '../../api/wellParam.js'
|
|
|
+ import {ElMessageBox,ElMessage} from 'element-plus'
|
|
|
+
|
|
|
+ const attrs = useAttrs()
|
|
|
+
|
|
|
+ const chartData=ref([])
|
|
|
+
|
|
|
+ const yUnit=ref('')
|
|
|
+
|
|
|
+ const isQuerying=ref(false)
|
|
|
+ const queryForm = reactive({
|
|
|
+ dataTime:null
|
|
|
+ })
|
|
|
+
|
|
|
+
|
|
|
+ const queryHandle=()=>{
|
|
|
+ isQuerying.value=true
|
|
|
+ let formdata=toRaw(queryForm)
|
|
|
+ let startDate=formdata.dataTime?formdata.dataTime[0]:null
|
|
|
+ let endDate=formdata.dataTime?formdata.dataTime[1]:null
|
|
|
+ paramHisAPI.loadHis({startDate,endDate,wellId:attrs['ctxObj']['wellId'],paramCode:attrs['ctxObj']['paramCode']}).then(resp=>{
|
|
|
+ isQuerying.value=false
|
|
|
+ console.log(resp)
|
|
|
+ if(resp.code!=0){
|
|
|
+ ElMessage.error(resp.msg)
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ chartData.value=buildCurveData(resp.data.data)
|
|
|
+
|
|
|
+ }).catch(err=>{
|
|
|
+ isQuerying.value=false
|
|
|
+ })
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ const buildCurveData=(datas)=>{ //[{gatherTime,dispDataVal}]
|
|
|
+ let curveDatas=[]
|
|
|
+ datas.forEach(data=>{
|
|
|
+ curveDatas.push([data.gatherTime,data.dispDataVal||data.dataVal])
|
|
|
+ })
|
|
|
+ //console.log(curveDatas)
|
|
|
+ return curveDatas
|
|
|
+ }
|
|
|
+
|
|
|
+ onMounted(()=>{
|
|
|
+
|
|
|
+ wellParamAPI.getByWellAndParam(attrs['ctxObj']['wellId'],attrs['ctxObj']['paramCode']).then(resp=>{
|
|
|
+ console.log(resp)
|
|
|
+ if(resp.code==0&&resp.data){
|
|
|
+ yUnit.value=resp.data.displayUnit
|
|
|
+ }
|
|
|
+ queryHandle()
|
|
|
+ }).catch(err=>{
|
|
|
+
|
|
|
+ })
|
|
|
+ })
|
|
|
+</script>
|
|
|
+
|
|
|
+<style scoped>
|
|
|
+</style>
|