|
|
@@ -3,55 +3,60 @@
|
|
|
<!-- 苏州河 -->
|
|
|
<div ref="scrollContainer" v-if="route.params.id=='28'" style="border: 2px solid #409EFF;background-color: rgba(127, 161, 215, 0.5);border-radius: 50px 50px 50px 50px;
|
|
|
align-items: center;display: flex;position: absolute;z-index: 9999;bottom: 1%;left: 1%;width:50vw;height: 10vh;overflow-x:auto;overflow-y: hidden;">
|
|
|
- <svg-icon icon-class="start1" v-if="!isStart" @click="reStart" style="margin-left: 10%;width: 30px;height:30px;cursor: pointer;"/>
|
|
|
- <svg-icon icon-class="pause1" v-if="isStart" @click="pause" style="margin-left: 10%;width: 30px;height:30px;cursor: pointer;"/>
|
|
|
- <el-slider @change="pauseIn" :format-tooltip="formatTooltip" v-model="activities1" :max="dateLength" :marks="marks" style="width: 80%;margin-left: 1%;"/>
|
|
|
-
|
|
|
+ <svg-icon icon-class="start1" v-if="!isStart" @click="reStart"
|
|
|
+ style="margin-left: 10%;width: 30px;height:30px;cursor: pointer;"/>
|
|
|
+ <svg-icon icon-class="pause1" v-if="isStart" @click="pause"
|
|
|
+ style="margin-left: 10%;width: 30px;height:30px;cursor: pointer;"/>
|
|
|
+ <el-slider @change="pauseIn" :format-tooltip="formatTooltip" v-model="activities1" :max="dateLength"
|
|
|
+ :marks="marks" style="width: 80%;margin-left: 1%;"/>
|
|
|
+
|
|
|
</div>
|
|
|
- <div v-if="route.params.id=='28'" style="background-color: white;position: absolute;z-index: 9999;top: 1%;left: 1%;width: 20vw;height: 45vh;overflow:auto;">
|
|
|
+ <div v-if="route.params.id=='28'"
|
|
|
+ style="background-color: white;position: absolute;z-index: 9999;top: 1%;left: 1%;width: 20vw;height: 45vh;overflow:auto;">
|
|
|
<div class="biz-data-card-header">方案列表</div>
|
|
|
- <el-table
|
|
|
+ <el-table
|
|
|
:data="tableDataFangan"
|
|
|
style="width: 98%;margin-left: 1%;margin-top: 1%;height: 40vh;"
|
|
|
:cell-style="{ padding:'5px' }"
|
|
|
:header-cell-style="{height: heightAll*0.01+'px',}"
|
|
|
:row-style="{ fontSize: '16px',textAlign:'center'}"
|
|
|
- border >
|
|
|
- <el-table-column type="index" label="序号" width="80">
|
|
|
- <template #default="{ $index }">
|
|
|
- <div style="text-align: center;">
|
|
|
- {{ $index + 1 }}
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="name" label="名称">
|
|
|
- <template #default="scope">
|
|
|
- <span style="cursor: pointer;color:#409EFF" @click="getZ(scope.row)">{{ scope.row.name }}</span>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- </el-table>
|
|
|
+ border>
|
|
|
+ <el-table-column type="index" label="序号" width="80">
|
|
|
+ <template #default="{ $index }">
|
|
|
+ <div style="text-align: center;">
|
|
|
+ {{ $index + 1 }}
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="name" label="名称">
|
|
|
+ <template #default="scope">
|
|
|
+ <span style="cursor: pointer;color:#409EFF" @click="getZ(scope.row)">{{ scope.row.name }}</span>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ </el-table>
|
|
|
</div>
|
|
|
- <div v-if="route.params.id=='28'" style="background-color: white;position: absolute;z-index: 9999;top: 1%;right: 1%;width: 30vw;height: 85vh;overflow:auto;">
|
|
|
+ <div v-if="route.params.id=='28'"
|
|
|
+ style="background-color: white;position: absolute;z-index: 9999;top: 1%;right: 1%;width: 30vw;height: 85vh;overflow:auto;">
|
|
|
<div class="biz-data-card-header">水位信息</div>
|
|
|
- <el-table
|
|
|
+ <el-table
|
|
|
:data="tableData"
|
|
|
style="width: 98%;margin-left: 1%;margin-top: 1%;height: 80vh;"
|
|
|
:cell-style="{ padding:'5px' }"
|
|
|
:header-cell-style="{height: heightAll*0.01+'px',}"
|
|
|
:row-style="{ fontSize: '16px',textAlign:'center'}"
|
|
|
- border >
|
|
|
- <el-table-column type="index" label="序号" width="80">
|
|
|
- <template #default="{ $index }">
|
|
|
- <div style="text-align: center;">
|
|
|
- {{ $index + 1 }}
|
|
|
- </div>
|
|
|
- </template>
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="name" label="站名" width="200">
|
|
|
- </el-table-column>
|
|
|
- <el-table-column prop="z" label="水位" width=""/>
|
|
|
- <el-table-column prop="time" label="时间" width="210"/>
|
|
|
- </el-table>
|
|
|
+ border>
|
|
|
+ <el-table-column type="index" label="序号" width="80">
|
|
|
+ <template #default="{ $index }">
|
|
|
+ <div style="text-align: center;">
|
|
|
+ {{ $index + 1 }}
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="name" label="站名" width="200">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column prop="z" label="水位" width=""/>
|
|
|
+ <el-table-column prop="time" label="时间" width="210"/>
|
|
|
+ </el-table>
|
|
|
</div>
|
|
|
<!-- 温带风暴潮 -->
|
|
|
<div ref="scrollContainer" v-if="route.params.id=='20'" style="border: 2px solid #409EFF;background-color: rgba(127, 161, 215, 0.5);border-radius: 50px 50px 50px 50px;
|
|
|
@@ -173,6 +178,7 @@ import {getStromlist,getStromdataList,getStromdatade} from "@/api/standardizatio
|
|
|
const dialogVisibleFengbao = ref(false)
|
|
|
const titleFengbao = ref('')
|
|
|
const tableDataFangan = ref([])
|
|
|
+const fanganId = ref(null)
|
|
|
const scrollContainer = ref(null);
|
|
|
const scrollAmount =0;
|
|
|
const widthAll = ref(window.innerWidth)
|
|
|
@@ -197,62 +203,68 @@ onMounted(async () => {
|
|
|
polygonLayer.value = createPolygonLayer(jsonDatak5)
|
|
|
mapChart.value.addLayer(polygonLayer.value);
|
|
|
}
|
|
|
- if(route.params.id==='28'){
|
|
|
- tableDataFangan.value = fangan.data.records
|
|
|
- const keys = Object.keys(suzhouJson.data.outPutQUZ)
|
|
|
- dateLength.value = keys.length-1
|
|
|
- keys.forEach(item=>{
|
|
|
- var par = {
|
|
|
- content: '',
|
|
|
- timestamp: item,
|
|
|
- size: 'large',
|
|
|
- type: 'primary',
|
|
|
- }
|
|
|
- activities.value.push(par)
|
|
|
+ if (route.params.id === '28') {
|
|
|
+ getFanganList().then(res => {
|
|
|
+ tableDataFangan.value = res.data.records
|
|
|
+ fanganId.value = tableDataFangan.value[0].id
|
|
|
+ getFanganDataList(fanganId.value).then(res => {
|
|
|
+ const outPutQUZ = res.data.outPutQUZ
|
|
|
+ const keys = Object.keys(outPutQUZ)
|
|
|
+ dateLength.value = keys.length - 1
|
|
|
+ keys.forEach(item => {
|
|
|
+ let par = {
|
|
|
+ content: '',
|
|
|
+ timestamp: item,
|
|
|
+ size: 'large',
|
|
|
+ type: 'primary',
|
|
|
+ }
|
|
|
+ activities.value.push(par)
|
|
|
+ })
|
|
|
+ var parTime = uniformSample(activities.value)
|
|
|
+ console.log(activities.value)
|
|
|
+ var a = Math.round((dateLength.value - 1) * 1 / 3)
|
|
|
+ var b = Math.round((dateLength.value - 1) * 2 / 3)
|
|
|
+ var c = dateLength.value
|
|
|
+ marks.value = {
|
|
|
+ 0: {
|
|
|
+ style: {
|
|
|
+ color: '#1989FA',
|
|
|
+ },
|
|
|
+ label: parTime[0].timestamp.slice(5),
|
|
|
+ },
|
|
|
+ }
|
|
|
+ marks.value[a] = {
|
|
|
+ style: {
|
|
|
+ color: '#1989FA',
|
|
|
+ },
|
|
|
+ label: parTime[1].timestamp.slice(5),
|
|
|
+ }
|
|
|
+ marks.value[b] = {
|
|
|
+ style: {
|
|
|
+ color: '#1989FA',
|
|
|
+ },
|
|
|
+ label: parTime[2].timestamp.slice(5),
|
|
|
+ }
|
|
|
+ marks.value[c] = {
|
|
|
+ style: {
|
|
|
+ color: '#1989FA',
|
|
|
+ },
|
|
|
+ label: parTime[3].timestamp.slice(5),
|
|
|
+ }
|
|
|
+ suzhouJson.data.inputParam = JSON.parse(suzhouJson.data.inputParam)
|
|
|
+ console.log(suzhouJson.data)
|
|
|
+ timerId = setInterval(changeMap, 1000)
|
|
|
+ pointLayer.value = createPointlayer(suzhouPoint)
|
|
|
+ mapChart.value.addLayer(pointLayer.value);
|
|
|
+ })
|
|
|
})
|
|
|
- var parTime = uniformSample(activities.value)
|
|
|
- console.log(activities.value)
|
|
|
- var a = Math.round((dateLength.value - 1) * 1 / 3)
|
|
|
- var b = Math.round((dateLength.value - 1) * 2 / 3)
|
|
|
- var c = dateLength.value
|
|
|
- marks.value = {
|
|
|
- 0:{
|
|
|
- style: {
|
|
|
- color: '#1989FA',
|
|
|
- },
|
|
|
- label: parTime[0].timestamp.slice(5),
|
|
|
- },
|
|
|
- }
|
|
|
- marks.value[a] = {
|
|
|
- style: {
|
|
|
- color: '#1989FA',
|
|
|
- },
|
|
|
- label: parTime[1].timestamp.slice(5),
|
|
|
- }
|
|
|
- marks.value[b] = {
|
|
|
- style: {
|
|
|
- color: '#1989FA',
|
|
|
- },
|
|
|
- label: parTime[2].timestamp.slice(5),
|
|
|
- }
|
|
|
- marks.value[c] = {
|
|
|
- style: {
|
|
|
- color: '#1989FA',
|
|
|
- },
|
|
|
- label: parTime[3].timestamp.slice(5),
|
|
|
- }
|
|
|
- suzhouJson.data.inputParam = JSON.parse(suzhouJson.data.inputParam)
|
|
|
- console.log(suzhouJson.data)
|
|
|
- timerId = setInterval(changeMap, 1000)
|
|
|
- pointLayer.value = createPointlayer(suzhouPoint)
|
|
|
- mapChart.value.addLayer(pointLayer.value);
|
|
|
}
|
|
|
if(route.params.id==='20'){
|
|
|
tableDataFangan.value = fangan.data.records
|
|
|
wendai()
|
|
|
}
|
|
|
if (props.config) {
|
|
|
- // toCenter(props.config.center, props.config.zoom);
|
|
|
+ toCenter(props.config.center, props.config.zoom);
|
|
|
await loadLayers(props.config.layers);
|
|
|
}
|
|
|
});
|
|
|
@@ -270,10 +282,10 @@ function initChart(x,y,mdName,id,color,danwei){
|
|
|
trigger: 'axis'
|
|
|
},
|
|
|
grid: {
|
|
|
- left: '5%',
|
|
|
- right: '5%',
|
|
|
- bottom: '15%',
|
|
|
- top: '18%',
|
|
|
+ left: '5%',
|
|
|
+ right: '5%',
|
|
|
+ bottom: '15%',
|
|
|
+ top: '18%',
|
|
|
containLabel: true
|
|
|
},
|
|
|
xAxis: {
|
|
|
@@ -542,7 +554,7 @@ function changeMap(){
|
|
|
}
|
|
|
pointLayer.value = createPointlayer(suzhouPoint)
|
|
|
mapChart.value.addLayer(pointLayer.value);
|
|
|
- // if(count.value%10===0&&count.value!==0){
|
|
|
+ // if(count.value%10===0&&count.value!==0){
|
|
|
// scrollContainer.value.scrollLeft += scrollAmount + widthAll.value;
|
|
|
// }
|
|
|
|
|
|
@@ -776,7 +788,7 @@ const initMap = () => {
|
|
|
maxZoom: 16,
|
|
|
projection: 'EPSG:4326',
|
|
|
}),
|
|
|
- layers: [vecLayer, cvaLayer],
|
|
|
+ layers: [vecLayer,], // cvaLayer
|
|
|
controls: defaultControls({
|
|
|
zoom: false,//不显示放大放小按钮
|
|
|
rotate: false,//不显示指北针控件
|