From c56e506fd34c58209240e97fc29043639fae5d19 Mon Sep 17 00:00:00 2001
From: ChenZeping <chenzeping>
Date: 星期四, 29 四月 2021 15:13:21 +0800
Subject: [PATCH] 统计表,指标,预报警表格弹框公共修改,管线分析功能
---
src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue | 361 +++++++++++++++++++++++++++------------------------
1 files changed, 192 insertions(+), 169 deletions(-)
diff --git a/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue b/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue
index 7a9b7a5..3894691 100644
--- a/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue
+++ b/src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue
@@ -13,25 +13,24 @@
<el-button type="primary" @click="linkQuery" size="mini" style="margin-bottom: 5px;"
title="鏍规嵁璧峰銆佺粨鏉熺娈佃繘琛岃繛閫氭�у垎鏋�">杩為�氭�у垎鏋�
</el-button>
- <el-button type="primary" @click="linkClear" size="mini" style="margin-bottom: 5px;"
+ <el-button type="primary" @click="handleClick" size="mini" style="margin-bottom: 5px;"
title="鏍规嵁璧峰銆佺粨鏉熺娈佃繘琛岃繛閫氭�у垎鏋�">娓呴櫎
</el-button>
<!-- <el-scrollbar style="height:450px">-->
<!-- <el-card shadow="hover">-->
<span class="fixed-style">璧峰绠℃</span>
<el-table
- ref="singleTable"
- highlight-current-row
:data="tableDataLinkStart"
- @row-click="linkSelectStart"
max-height="200"
+ @row-click="linkSelectStart"
style="width: 100%" size="mini">
<el-table-column
- prop="lineloopna"
+ prop="datasource"
label="绠$嚎绫诲瀷"
>
</el-table-column>
<el-table-column
+ :show-overflow-tooltip="true"
sortable
width="100"
prop="pipecode"
@@ -41,14 +40,14 @@
<el-table-column
sortable
width="100"
- prop="startpoint"
+ prop="material"
label="璧风偣缂栧彿"
>
</el-table-column>
<el-table-column
sortable
width="100"
- prop="endpointnu"
+ prop="material"
label="缁堢偣缂栧彿"
>
</el-table-column>
@@ -64,17 +63,19 @@
</el-table>
<span class="fixed-style">缁撴潫绠℃</span>
<el-table
+ height="100"
max-height="200"
highlight-current-row
:data="tableDataLinkEnd"
@row-click="linkSelectEnd"
style="width: 100%" size="mini">
<el-table-column
- prop="lineloopna"
+ prop="datasource"
label="绠$嚎绫诲瀷"
>
</el-table-column>
<el-table-column
+ :show-overflow-tooltip="true"
sortable
width="100"
prop="pipecode"
@@ -84,14 +85,14 @@
<el-table-column
sortable
width="100"
- prop="startpoint"
+ prop="material"
label="璧风偣缂栧彿"
>
</el-table-column>
<el-table-column
sortable
width="100"
- prop="endpointnu"
+ prop="material"
label="缁堢偣缂栧彿"
>
</el-table-column>
@@ -153,7 +154,7 @@
<!-- </el-card>-->
<!-- </el-scrollbar>-->
</el-tab-pane>
- <el-tab-pane label="鐖嗙" name="second" style="color: #cccccc">
+ <el-tab-pane label="鐖嗙" style=";color: #cccccc" name="second">
<el-row>
<span>鐖嗙锛堢浉鍏冲紑鍏筹級</span>
<el-button type="primary" @click="bgClick" size="mini" style="margin-bottom: 5px;" title="鍦板浘涓婄偣鍑婚�夋嫨鍙戠敓鐖嗙鐨勭娈�">
@@ -163,14 +164,14 @@
</el-button>
</el-row>
<!-- <el-card shadow="hover">-->
- <span class="fixed-style">鍙戠敓鐖嗚鐨勭娈�:</span>
+ <span class="fixed-style">鍙戠敓鐖嗚鐨勭娈�</span>
<el-table
ref="singleTable"
highlight-current-row
:data="bgPipeLine"
style="width: 100%" size="mini">
<el-table-column
- prop="lineloopna"
+ prop="pipecode"
label="绠$嚎绫诲瀷"
>
</el-table-column>
@@ -184,14 +185,14 @@
<el-table-column
sortable
width="100"
- prop="startpoint"
+ prop="pipecode"
label="璧风偣缂栧彿"
>
</el-table-column>
<el-table-column
sortable
width="100"
- prop="endpointnu"
+ prop="pipecode"
label="缁堢偣缂栧彿"
>
</el-table-column>
@@ -205,7 +206,7 @@
</template>
</el-table-column>
</el-table>
- <span class="fixed-style">闇�瑕佸叧闂殑闃�闂細</span>
+ <span class="fixed-style">闇�瑕佸叧闂殑闃�闂�</span>
<el-table
highlight-current-row
:data="bgFm"
@@ -381,7 +382,7 @@
<span>鏂潰鍥�</span>
</div>
<span v-show="!myChartShow" style="color: #909399;font-size: 12px;">鏆傛棤鏁版嵁</span>
- <div v-show="myChartShow" id="echarts_box" ref="myChart" style="width: 600px;height:300px;"></div>
+ <div v-show="myChartShow" id="echarts_box" ref="myChart" style="width: 350px;height:200px;"></div>
</el-card>
</el-tab-pane>
</el-tabs>
@@ -488,12 +489,12 @@
const param = {
x: point[0],
y: point[1],
- radius: 3
+ radius: 5
}
// 鏍规嵁鍙傛暟璇锋眰鎺ュ彛鏁版嵁
const res = await mapApi.findPipelineByClickPoint(param)
if (this.activeName === 'first') {
- if (this.linkType) {
+ if (this.linkType === 1) {
this.tableDataLinkStart = res.data
} else {
this.tableDataLinkEnd = res.data
@@ -502,10 +503,14 @@
this.bgPipeLine = res.data
} else if (this.activeName === 'third') {
this.tableDataLiuxiang = res.data
- } else if (this.activeName === 'fourth') {
-
- }
- console.log(res)
+ } else if (this.activeName === 'fourth') {}
+ console.log(res.data)
+ },
+ // 娴佸悜鏄剧ず 鐨勬柟娉曞弬鏁板皝
+ createFlowLine (param) {
+ const flowLine = window.L.polyline(param.points, param.option)
+ flowLine.addTo(window.map)
+ return flowLine
},
// 杩為�氭�� ===> 鍦板浘鐐瑰嚮璧峰绠℃e
@@ -518,7 +523,7 @@
// 杩為�氭�� 璧峰绠℃ table鍒楄〃鏁版嵁 閫夋嫨鏁版嵁浜嬩欢 鐨勭偣鍑讳簨浠�
linkSelectStart (e) {
console.log('閫夋嫨璧峰绠℃')
- this.$refs.singleTable.setCurrentRow(e)
+ // this.$refs.singleTable.setCurrentRow(e)
this.currentSelectStart = e
if (this.currentSelectStartLine != null) {
this.currentSelectStartLine.remove()
@@ -529,8 +534,8 @@
style: function (feature) {
return { color: 'rgba(0,255,0,.6)' }
}
- }).addTo(this.map)
- this.map.panInsideBounds(this.currentSelectStartLine.getBounds())
+ }).addTo(window.map)
+ window.map.panInsideBounds(this.currentSelectStartLine.getBounds())
},
// 杩為�氭�� ===> 鍦板浘鐐瑰嚮缁撴潫绠℃
linkClickEnd () {
@@ -541,7 +546,6 @@
// 杩為�氭�� 缁撴潫绠℃ table鍒楄〃鏁版嵁 閫夋嫨鏁版嵁浜嬩欢 鐨勭偣鍑讳簨浠�
linkSelectEnd (e) {
console.log('閫夋嫨缁撴潫绠℃')
- console.log(e)
this.currentSelectEnd = e
// 鍋氬垽鏂璻emove
@@ -549,14 +553,14 @@
this.currentSelectEndLine.remove()
this.currentSelectEndLine = null
}
-
+ // geoGson
const geom = JSON.parse(e.geomText)
this.currentSelectEndLine = window.L.geoJSON(geom, {
style: function (feature) {
return { color: 'rgba(200,0,200,.6)' }
}
- }).addTo(this.map)
- this.map.panInsideBounds(this.currentSelectEndLine.getBounds())
+ }).addTo(window.map)
+ window.map.panInsideBounds(this.currentSelectEndLine.getBounds())
},
// 杩為�氭�ф煡璇�
async linkQuery () {
@@ -578,7 +582,6 @@
startLineID: this.currentSelectStart.id,
endLineID: this.currentSelectEnd.id
}
- console.log(param)
// 璇锋眰鎺ュ彛鍜屾暟鎹�
const res = await mapApi.findConnectedPipelines(param)
console.log(res)
@@ -590,7 +593,9 @@
}
this.tableDataLinkResult = res.data
this.currentLinkIsTrue = '杩為��'
+ // table 鏁扮粍鏁版嵁缃┖
const linkPipe = []
+ // 鏁版嵁閬嶅巻geoJson
res.data.forEach((itm, idx) => {
const geom = JSON.parse(itm.geomText)
const points = []
@@ -599,29 +604,23 @@
})
linkPipe.push(points)
})
-
- // linkPipe.forEach((itm, idx) => {
- // const param1 = {
- // points: itm,
- // option: {
- // dashArray: '15 15',
- // dashSpeed: -30,
- // color: '#ffff00'
- // }
- // }
- // const line = main.createFlowLine(param1)
- // const createFlowLine = (param) => {
- // const flowLine = window.L.polyline(param.points, param.option)
- // flowLine.addTo(window.map)
- // return flowLine
- // }
- // this.linkPipeline.push(line)
- // })
+ linkPipe.forEach((itm, idx) => {
+ const param1 = {
+ points: itm,
+ option: {
+ dashArray: '15 15',
+ dashSpeed: -30,
+ color: '#ffff00'
+ }
+ }
+ const line = this.createFlowLine(param1)
+ this.linkPipeline.push(line)
+ })
},
// 杩為�氭�� 鍒嗘瀽缁撴灉table鍒楄〃鏁版嵁閫夋嫨鐐瑰嚮浜嬩欢
linkResultSelect (e) {
- console.log('杩為�氭�у垎鏋愮粨鏋滃垪琛ㄧ偣鍑�')
- console.log(e)
+ // console.log('杩為�氭�у垎鏋愮粨鏋滃垪琛ㄧ偣鍑�')
+ // console.log(e)
// const geom = JSON.parse(e.geomText)
// if (this.currentSelectResultLine != null) {
@@ -676,63 +675,64 @@
this.currentSelectEndLine = null
}
this.clearLinkPipe()
- // const geom = JSON.parse(e.geomText)
- // this.currentSelectEndLine = L.geoJSON(geom, {
- // style: function (feature) {
- // return { color: 'rgba(200,0,200,.6)' }
- // }
- // }).addTo(this.map)
- this.map.panInsideBounds(this.currentSelectEndLine.getBounds())
+ // 缁欓�夋嫨涓殑鏁版嵁娣诲姞璁剧疆鏍峰紡
+ const geom = JSON.parse(e.geomText)
+ this.currentSelectEndLine = window.L.geoJSON(geom, {
+ style: function (feature) {
+ return { color: 'rgba(200,0,200,.6)' }
+ }
+ }).addTo(window.map)
+ window.map.panInsideBounds(this.currentSelectEndLine.getBounds())
- // const param = {
- // lineID: e.id
- // }
- // const res = await api.findLeakages(param)
- // console.log(res)
+ // 鏁版嵁璇锋眰鍙傛暟
+ const param = {
+ lineID: e.id
+ }
+ const res = await mapApi.findLeakages(param)
+ console.log(res)
- // const len = res.data.length
- // if (len === 0) {
- // this.$message('鏈壘鍒伴渶瑕佸叧闂殑闃�闂�')
- //
- // return
- // }
- // res.data.reverse()
- // this.bgFm = res.data
- //
- // this.bgPoint = res.data[0].startControlPoint
- //
- // const point = JSON.parse(this.bgPoint.geomText)
- //
- // const p = [point.coordinates[1], point.coordinates[0]]
- //
- // // this.bgMarker = main.createFlowMarker(p)
- // this.bgMarker.bindTooltip(this.bgPoint.pointnumbe)
- // this.bgMarker.addTo(this.map)
- // this.map.flyTo(p)
- //
- // const linkPipe = []
- // res.data.forEach((itm, idx) => {
- // const geom = JSON.parse(itm.geomText)
- // const points = []
- // geom.coordinates.forEach((it, id) => {
- // points.push(it.reverse())
- // })
- //
- // linkPipe.push(points)
- // })
+ const len = res.data.length
+ if (len === 0) {
+ this.$message('鏈壘鍒伴渶瑕佸叧闂殑闃�闂�')
+ return
+ }
+ res.data.reverse()
+ this.bgFm = res.data
- // linkPipe.forEach((itm, idx) => {
- // const param1 = {
- // points: itm,
- // option: {
- // dashArray: '15 15',
- // dashSpeed: -30,
- // color: '#ffff00'
- // }
- // }
- // const line = main.createFlowLine(param1)
- // this.linkPipeline.push(line)
- // })
+ this.bgPoint = res.data[0].startControlPoint
+
+ const point = JSON.parse(this.bgPoint.geomText)
+
+ const p = [point.coordinates[1], point.coordinates[0]]
+
+ // this.bgMarker = main.createFlowMarker(p)
+ this.bgMarker.bindTooltip(this.bgPoint.pointnumbe)
+ this.bgMarker.addTo(this.map)
+ this.map.flyTo(p)
+
+ const linkPipe = []
+ res.data.forEach((itm, idx) => {
+ const geom = JSON.parse(itm.geomText)
+ const points = []
+ geom.coordinates.forEach((it, id) => {
+ points.push(it.reverse())
+ })
+
+ linkPipe.push(points)
+ })
+
+ linkPipe.forEach((itm, idx) => {
+ const param1 = {
+ points: itm,
+ option: {
+ dashArray: '15 15',
+ dashSpeed: -30,
+ color: '#ffff00'
+ }
+ }
+ const line = this.createFlowLine(param1)
+ this.linkPipeline.push(line)
+ })
},
bgFmClick (e) {
console.log('鐐瑰嚮褰卞搷鐨勯榾闂�')
@@ -740,7 +740,7 @@
const point = [e.data[0][0], e.data[0][1]]
// const marker = main.createFlowMarker(point)
// marker.addTo(this.map)
- this.map.flyTo(point, 16)
+ window.map.flyTo(point, 16)
},
// 娴佸悜鍒嗘瀽缁撴灉table鍒楄〃鏁版嵁鐐瑰嚮
@@ -748,51 +748,54 @@
console.log('杩為�氭�у垎鏋愮粨鏋滃垪琛ㄧ偣鍑�')
console.log(e)
- // const geom = JSON.parse(e.geomText)
- // if (this.currentSelectResultLine != null) {
- // this.currentSelectResultLine.remove()
- // this.currentSelectResultLine = null
- // }
- // this.currentSelectResultLine = L.geoJSON(geom, {
- // style: function (feature) {
- // return { color: 'rgba(0,250,255,.6)' }
- // }
- // }).addTo(this.map)
- // this.map.panInsideBounds(this.currentSelectResultLine.getBounds())
+ const geom = JSON.parse(e.geomText)
+ if (this.currentSelectResultLine != null) {
+ this.currentSelectResultLine.remove()
+ this.currentSelectResultLine = null
+ }
+ this.currentSelectResultLine = window.L.geoJSON(geom, {
+ style: function (feature) {
+ return { color: 'rgba(0,250,255,.6)' }
+ }
+ }).addTo(window.map)
+ window.map.panInsideBounds(this.currentSelectResultLine.getBounds())
},
- // 鐐瑰嚮鏄剧ず娴佸悜 table鍒楄〃鏁版嵁
+ // 鐐瑰嚮鏄剧ず娴佸悜 table鍒楄〃涓殑鏁版嵁 => 杩涜瀹樼綉娴佸悜鐨勬樉绀�
async lxQuery (e) {
- console.log(e)
+ // console.log(e)
this.clearLinkPipe()
- // const param = {
- // lineNodeID: e.startpoint
- // }
- // const res = await api.findFlowDirection(param)
+ const param = {
+ // lineNodeID: e.startpoint
+ lineNodeID: e.gid
+ }
+ const res = await mapApi.findFlowDirection(param)
+ this.getres(res)
+ },
+ // 鐐瑰嚮鏄剧ず娴佸悜 table鍒楄〃涓殑鏁版嵁 => 杩涜瀹樼綉娴佸悜鐨勬樉绀� 鐨勬暟鎹鐞嗘柟娉�
+ getres (res) {
+ this.lxTableDataResult = res.data
+ const linkPipe = []
+ res.data.forEach((itm, idx) => {
+ const geom = JSON.parse(itm.geomText)
+ const points = []
+ geom.coordinates.forEach((it, id) => {
+ points.push(it.reverse())
+ })
+ linkPipe.push(points)
+ })
- // this.lxTableDataResult = res.data
- // const linkPipe = []
- // res.data.forEach((itm, idx) => {
- // const geom = JSON.parse(itm.geomText)
- // const points = []
- // geom.coordinates.forEach((it, id) => {
- // points.push(it.reverse())
- // })
- //
- // linkPipe.push(points)
- // })
-
- // linkPipe.forEach((itm, idx) => {
- // // const param1 = {
- // // points: itm,
- // // option: {
- // // dashArray: '15 15',
- // // dashSpeed: -30,
- // // color: '#ffff00'
- // // }
- // // }
- // // const line = main.createFlowLine(param1)
- // // this.linkPipeline.push(line)
- // })
+ linkPipe.forEach((itm, idx) => {
+ const param1 = {
+ points: itm,
+ option: {
+ dashArray: '15 15',
+ dashSpeed: -30,
+ color: '#ffff00'
+ }
+ }
+ const line = this.createFlowLine(param1)
+ this.linkPipeline.push(line)
+ })
},
// 娓呴櫎娴佸悜
clearLX () {
@@ -804,15 +807,15 @@
// 娴佸悜-绠$嚎閫夋嫨
selectRowLiuXiang (e) {
// 閫夋嫨瑕佹樉绀虹殑娴佸悜绾�
- console.log('閫夋嫨瑕佹樉绀虹殑娴佸悜绾�')
- console.log(e)
+ // console.log('閫夋嫨瑕佹樉绀虹殑娴佸悜绾�')
+ // console.log(e)
},
lxHandleClick (e) {
- console.log('姝f祦鍚戞樉绀�')
- console.log(e)
-
- // 娓呴櫎娴佸悜鏂规硶
- this.clearLX()
+ // console.log('姝f祦鍚戞樉绀�')
+ // console.log(e)
+ //
+ // // 娓呴櫎娴佸悜鏂规硶
+ // this.clearLX()
// const param = {
// points: e.data,
// option: {
@@ -820,7 +823,7 @@
// dashSpeed: -30
// }
// }
- // this.flowPipeLine = main.createFlowLine(param)
+ // this.flowPipeLine = this.createFlowLine(param)
},
// 娓呮鍒嗘瀽缁撴灉
@@ -834,12 +837,12 @@
},
// 閫嗘祦鍚戞樉绀�
lxHandleClick2 (e) {
- console.log('閫嗘祦鍚戞樉绀�')
- console.log(e)
- if (this.flowPipeLine != null) {
- this.flowPipeLine.remove()
- this.flowPipeLine = null
- }
+ // console.log('閫嗘祦鍚戞樉绀�')
+ // console.log(e)
+ // if (this.flowPipeLine != null) {
+ // this.flowPipeLine.remove()
+ // this.flowPipeLine = null
+ // }
// const param = {
// points: e.data,
// option: {
@@ -847,20 +850,20 @@
// dashSpeed: 30
// }
// }
- // this.flowPipeLine = main.createFlowLine(param)
+ // this.flowPipeLine = this.createFlowLine(param)
},
// 妯柇闈㈢粯鍒剁嚎娈�
drawLine () {
- console.log('drawLine')
+ // console.log('drawLine')
if (this.measure === null) {
- this.measure = new DrawLine(this.map)
+ this.measure = new DrawLine(window.map)
}
this.measure.destory()
this.measure.init()
},
// 妯柇闈㈡暟鎹姹�
async getHdmPoint (line) {
- console.log('妯柇闈㈢殑缁樺埗绾�')
+ // console.log('妯柇闈㈢殑缁樺埗绾�')
// console.table(line)
// 妯柇闈㈡暟鎹�
this.hdmParam = {
@@ -877,8 +880,8 @@
return false
}
// 宸茬粯鍒剁嚎鍥� 杩涜缁樺埗妯柇闈㈡暟鎹垎鏋�
- // const res = await api.getCrossSection(this.hdmParam)
- // console.log(res)
+ const res = await mapApi.getCrossSection(this.hdmParam)
+ console.log(res)
},
// 妯柇闈㈢粯鍒跺畬鎴愬悗 杩涜妯柇闈㈡暟鎹垎鏋� 杩涜鍥捐〃灞曠ず
async selectRow (e) {
@@ -897,7 +900,7 @@
type: 'line'
}]
}
- this.myChartShow = true
+ // this.myChartShow = true
this.myChart.setOption(option)
},
// 妯柇闈㈡竻闄�
@@ -912,6 +915,26 @@
</script>
<style lang="less" scoped>
+///deep/ .el-table__row:hover > td {
+// background: none !important;
+//}
+//
+///deep/ .el-table__row--striped:hover > td {
+// background: none !important;
+//}
+
+///deep/ .el-table__row.hover-row {
+// background: rgba(0, 16, 30, 0.9) !important
+//}
+
+/deep/ .el-table .has-gutter tr th {
+ border: none !important;
+}
+
+/deep/ .el-table tbody tr:hover > td {
+ background: none !important
+}
+
/deep/ .el-tabs__header {
background: none !important;
}
@@ -976,6 +999,6 @@
}
/deep/ .fixed-table {
- background: rgba(0, 16, 30, 1) !important;
+ //background: rgba(0, 16, 30, 0.9) !important;
}
</style>
--
Gitblit v1.8.0