派生自 wuyushui/SewerAndRainNetwork

ChenZeping
2021-05-08 57d2a23177e74aefe80beca793d0e9ea8c3834ac
src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue
@@ -21,10 +21,11 @@
                <span class="fixed-style">起始管线</span>
                <el-table
                        class="tableBox"
                        height="100"
                        max-height="200"
                        highlight-current-row
                        :data="tableDataLinkStart"
                        @row-click="linkSelectStart"
                        highlight-current-row
                        style="width: 100%" size="mini">
                    <el-table-column
                            prop="datasource"
@@ -229,7 +230,7 @@
                        style="width: 100%" size="mini">
                    <el-table-column
                            :show-overflow-tooltip="true"
                            prop="lineloopna"
                            prop="pipecode"
                            label="管线类型"
                    >
                    </el-table-column>
@@ -245,7 +246,7 @@
                            sortable
                            :show-overflow-tooltip="true"
                            width="100"
                            prop="startpoint"
                            prop="pipecode"
                            label="起点编号"
                    >
                    </el-table-column>
@@ -253,7 +254,7 @@
                            :show-overflow-tooltip="true"
                            sortable
                            width="100"
                            prop="endpointnu"
                            prop="pipecode"
                            label="终点编号"
                    >
                    </el-table-column>
@@ -513,15 +514,24 @@
      this.lxTableDataResult = []
    },
    // 流向地图上点击
    // 地图上点击
    selectPipeLine () {
      window.map.on('click', this.selectClick)
      // // 关闭弹窗
      window.layerFactory.clickSwitch = false
    },
    // 地图上点击回调
    selectClick (e) {
      console.log(e)
      window.map.off('click', this.selectClick)
      const point = [e.latlng.lng, e.latlng.lat]
      this.getPipeLine(point)
      // if () {
      //   // 关闭弹窗
      //   window.layerFactory.clickSwitch = false
      // } else {
      //   window.layerFactory.clickSwitch = true
      // }
    },
    // 点击获取判断数据
    async getPipeLine (point) {
@@ -532,6 +542,7 @@
      }
      // 根据参数请求接口数据
      const res = await mapApi.findPipelineByClickPoint(param)
      console.log(res)
      if (this.activeName === 'first') {
        if (this.linkType === 1) {
          this.tableDataLinkStart = res.data
@@ -544,8 +555,6 @@
        this.tableDataLiuxiang = res.data
      } else if (this.activeName === 'fourth') {
      }
      // debugger
      console.log(res.data)
    },
    // 流向显示 的方法参数封
    createFlowLine (param) {
@@ -557,29 +566,28 @@
      return window.L.marker(point, {
        icon: window.L.divIcon({
          className: 'dIcon',
          html: '<div class="plane live">' +
              // '<img src="'+require("../../assets/images/map/ship.png")+
              '<div style="position: absolute;' +
              '    width: 20px;' +
              '    height: 20px;' +
              '    border-radius: 50%;' +
              '  content: \'\'; background-color: #FF664A;"/>' +
              '<span></span><span></span></div></>',
          iconSize: [90, 36]
          // html: '<div class="plane live">' +
          //     '<div style="position: absolute;' +
          //     '    width: 20px;' +
          //     '    height: 20px;' +
          //     '    border-radius: 50%;' +
          //     '  content: \'\'; background-color: #FF664A;"/>' +
          //     '<span></span><span></span></div></>',
          iconSize: [36, 36]
        })
      })
    },
    // 连通性 ===> 地图点击起始管线e
    linkClickStart (e) {
      console.log(e)
      console.log('地图点击起始管线')
      // console.log(e)
      // console.log('地图点击起始管线')
      this.linkType = 1
      this.selectPipeLine()
    },
    // 连通性 起始管线 table列表数据 选择数据事件 的点击事件
    linkSelectStart (e) {
      console.log('选择起始管线')
      // console.log('选择起始管线')
      // this.$refs.singleTable.setCurrentRow(e)
      this.currentSelectStart = e
      if (this.currentSelectStartLine != null) {
@@ -696,7 +704,7 @@
        style: function (feature) {
          return {
            color: 'rgba(255,0,0,.6)',
            weight: 6
            weight: 10
          }
        }
      }).addTo(window.map)
@@ -744,7 +752,10 @@
      const geom = JSON.parse(e.geomText)
      this.currentSelectEndLine = window.L.geoJSON(geom, {
        style: function (feature) {
          return { color: 'rgba(200,0,200,.6)' }
          return {
            weight: 10,
            color: 'rgba(200,0,200,.6)'
          }
        }
      }).addTo(window.map)
      window.map.panInsideBounds(this.currentSelectEndLine.getBounds())
@@ -754,7 +765,7 @@
        lineID: e.pipesegcode
      }
      const res = await mapApi.findLeakages(param)
      console.log(res)
      // console.log(res)
      const len = res.data.length
      if (len === 0) {
@@ -763,7 +774,7 @@
      }
      res.data.reverse()
      this.bgFm = res.data
      console.log(res.data)
      // console.log(res.data)
      this.bgPoint = res.data[0].startControlPoint
@@ -772,7 +783,7 @@
      const p = [point.coordinates[1], point.coordinates[0]]
      this.bgMarker = this.createFlowMarker(p)
      this.bgMarker.bindTooltip(this.bgPoint.pointnumbe)
      // this.bgMarker.bindTooltip(this.bgPoint.pointnumbe)
      this.bgMarker.addTo(window.map)
      window.map.flyTo(p)
@@ -800,11 +811,12 @@
      })
    },
    bgFmClick (e) {
      console.log('点击影响的阀门')
      // console.log('点击影响的阀门')
      console.log(e)
      const point = [e.data[0][0], e.data[0][1]]
      // const point = [e.data[0][0], e.data[0][1]]
      const point = [e.startControlPoint.y, e.startControlPoint.x]
      const marker = this.createFlowMarker(point)
      marker.addTo(this.map)
      marker.addTo(window.map)
      window.map.flyTo(point, 16)
    },
@@ -820,7 +832,10 @@
      }
      this.currentSelectResultLine = window.L.geoJSON(geom, {
        style: function (feature) {
          return { color: 'rgba(0,250,255,.6)' }
          return {
            weight: 10,
            color: 'rgba(0,250,255,.6)'
          }
        }
      }).addTo(window.map)
      window.map.panInsideBounds(this.currentSelectResultLine.getBounds())
@@ -1099,6 +1114,22 @@
        background: none;
    }
    /deep/ .el-table__body .el-table__row.hover-row td {
        background: none !important;
    }
    /deep/ .el-table__fixed-right-patch {
        /*display: none;*/
    }
    /deep/ .el-table__body tr.current-row > td {
        background: rgba(0, 16, 30, 1) !important;
    }
    /deep/ .fixed-table {
        background: rgba(0, 16, 30, 1) !important;
    }
    /*/deep/ .el-tabs--top .el-tabs__item.is-top:nth-child(2) {*/
    /*    padding-left: 20px;*/
    /*}*/