派生自 wuyushui/SewerAndRainNetwork

wangqi
2021-03-09 675f53b52844d1d368d71d966620ba698f24bcde
src/components/panel/topicSearch/SewersSearch.vue
@@ -1,9 +1,5 @@
<template>
  <div class="sewers-search">
    <div class="el-message-box__header panel_header">
      <div class="el-message-box__title panel_title"><!----><span>{{ title }}</span>
      </div>
    </div>
    <div class="el-message-box__content" style="padding:6px;font-size: 13px;">
      <div class="box__content" v-if="gdVisible">
        <div>
@@ -30,7 +26,7 @@
                </el-select>
              </el-form-item>
<!--              <el-form-item >-->
                <el-input v-model="form.key" size="mini"
                <el-input v-model="form.keyword" size="mini"
                          placeholder="在此输入关键字搜索">
<!--                  <el-button slot="append" icon="el-icon-search" size="mini"></el-button>-->
<!--                  <i slot="prefix" class="el-input__icon el-icon-search"></i>-->
@@ -50,9 +46,9 @@
                  <div class="B-TMD-table-list-title-y"
                       :class="['B-TMD-table-list-title-y-nam', { 'warning': item.vehicleStatus==='910003' }, { 'offline': item.vehicleStatus==='910001' }]">
<!--                    <span>运单号:</span>-->
                    <span id="waybillNumber" class="B-TMD-table-list-title-y-num"
                    <span id="waybillNumber" class=""
                          :title="item.properties.pipename">
                                                <span class="B-TMD-table-list-title-y-alarm">{{ item.properties.pipename }}</span>
                                                <span class="location-btn" @click="handleLocation(item)">{{ item.properties.pipename }}</span>
                                            </span>
                  </div>
<!--                  <div class="B-TMD-table-list-title-c">-->
@@ -72,8 +68,8 @@
              </div>
              <div class="B-TMD-table-list-content">
                <div v-for="itm in labelList" :key="itm">
                  <span>{{ itm.label }}::</span>
                <div v-for="itm in labelList" :key="itm.label">
                  <span>{{ itm.label }}:</span>
                  <span id="b_twe_loan" :title="item.properties[itm.key] ">{{ item.properties[itm.key] }}</span>
                </div>
<!--                <div><span>收货企业:</span> <span-->
@@ -113,8 +109,10 @@
</template>
<script>
import { PipelineTypeOptions, pipelineDataTest } from '@/conf/LayerSewers'
import { PipelineTypeOptions } from '@/conf/LayerSewers'
import WfsHelper from '@components/helpers/WfsHelper'
import AjaxUtils from '@utils/AjaxUtils'
export default {
  name: 'SewersSearch',
  data () {
@@ -127,7 +125,9 @@
      dataTypeOptions: PipelineTypeOptions[0].options,
      form: {
        pipelineType: PipelineTypeOptions[0].label,
        dataType: PipelineTypeOptions[0].options[0].label
        dataType: PipelineTypeOptions[0].options[0].label,
        query: PipelineTypeOptions[0].options[0],
        keyword: '研究院01路YS000001'
        // ,
        // size: 10,
        // current: 1
@@ -149,9 +149,14 @@
        }
      })
      this.form.dataType = this.dataTypeOptions[0].label
      this.form.key = this.dataTypeOptions[0].key
    },
    handleDataType (item) {
    handleDataType (val) {
      this.dataTypeOptions.forEach((itm) => {
        if (val === itm.value) {
          this.form.query = itm
        }
      })
    },
    handleSearch () {
      const param = {
@@ -159,7 +164,23 @@
        dataType: this.form.dataType
      }
      console.log(param)
      this.list = pipelineDataTest.features
      var wfsHelper = new WfsHelper()
      wfsHelper.addTypeName(this.form.query.layerName)
      wfsHelper.addLike(this.form.query.key, this.form.keyword)
      // const _this = this
      AjaxUtils.GetDataAsynByUrl(wfsHelper.getUrl(), {}, (res) => {
        console.log(res)
        this.list = res.features
      })
    },
    handleLocation (val) {
      console.log(val)
      const bound = this.L.geoJSON([val], {}).getBounds()
      console.log(bound)
      var layer = window.serviceLayerHelper.getByLayerId(val.id)
      console.log(layer)
      layer && layer.openPopup()
      this.$store.state.map.map.flyToBounds(bound)
    }
  }
}