From a4a4db4d04174541e4b44b83583be515f77b10b4 Mon Sep 17 00:00:00 2001
From: 陈泽平 <chenzeping>
Date: 星期二, 18 五月 2021 16:30:10 +0800
Subject: [PATCH] 应急问题修改
---
src/components/panel/topicSearch/SewersSearch.vue | 96 +++++++++++++++++++++++++++++++++---------------
1 files changed, 66 insertions(+), 30 deletions(-)
diff --git a/src/components/panel/topicSearch/SewersSearch.vue b/src/components/panel/topicSearch/SewersSearch.vue
index 006b073..bc9772d 100644
--- a/src/components/panel/topicSearch/SewersSearch.vue
+++ b/src/components/panel/topicSearch/SewersSearch.vue
@@ -17,30 +17,33 @@
</el-select>
</el-form-item>
<el-form-item :label="form.pipelineType+'锛�'" size="mini">
- <el-select style="width: 100%" v-model="form.dataType" value-key="code" :popper-class="'select-down'">
- <!-- @change="handleDataType"-->
+ <el-select style="width: 100%" v-model="form.dataType" value-key="code" :popper-class="'select-down'" @change="handleDataType" >
<el-option
- v-for="item in subItems"
- :key="item.code"
- :label="item.name"
- :value="item">
- </el-option>
+ v-for="item in subItems"
+ :key="item.code"
+ :label="item.name"
+ :value="item">
+ </el-option>
</el-select>
</el-form-item>
<div class="rightButtonSearch">
- <el-input v-model="form.keyword" size="mini" placeholder="鍦ㄦ杈撳叆鍏抽敭瀛楁悳绱�">
- </el-input>
+ <el-input v-model="form.keyword" size="mini" placeholder="鍦ㄦ杈撳叆鍏抽敭瀛楁悳绱�"></el-input>
<el-button class="el-icon-search" @click="handleSearch"></el-button>
</div>
</el-form>
</div>
- <el-scrollbar style="height:380.44px;">
- <div class="environmental-risk-list" v-for="(item,index) in list" :key="index">
- <img class="state" :src="getImgSrc()" style="background: none"/>
+ <el-scrollbar style="height:413px;">
+ <div class="environmental-risk-list" v-for="(item,index) in list" :key="index" :class="activeNum===index?'hover':''">
+ <img class="state" :src="getImgSrc()" style="background: none" />
<div>
- <h3 @click="handleLocation(item)">{{ item.properties.pipename }}</h3>
- <p>鎵�灞炰紒涓氾細<span>{{ item.properties.orgcode }}</span>
- <p>璁炬柦绫诲瀷锛�<span>{{ item.properties.teetype }}</span> <el-button class="rt" size="mini" style="margin-right: 0.04rem" @click="btnAffiliatedFacilities(item)" >闄勫睘璁炬柦</el-button></p>
+ <h3 @click="handleLocation(item,index)">{{ item.properties.pipename }}</h3>
+ <p>鎵�灞炰紒涓氾細<span>{{ item.properties.orgname }}</span>
+ <p>璁炬柦绫诲瀷锛�<span>{{ item.properties.linenumtype }}{{ item.properties.fourtype }}{{ item.properties.teetype }}</span>
+ <el-button v-if="fuShuSheShiShow" class="rt btn00fff6" size="mini" style="margin-right: 0.04rem;"
+ @click="btnAffiliatedFacilities(item,index)" >
+ 闄勫睘璁炬柦
+ </el-button>
+ </p>
</div>
</div>
</el-scrollbar>
@@ -51,7 +54,6 @@
:page-size=pageSize
layout="prev, pager, next"
:total=total
- :current-page=current
class="warnPagination"
>
</el-pagination>
@@ -65,7 +67,7 @@
</el-tab-pane>
</el-tabs>
<!-- 闄勫睘璁炬柦闈㈡澘 -->
- <affiliated-facilities></affiliated-facilities>
+ <affiliated-facilities :facilitiesParameter="facilitiesParameter" v-if="fuShuSheShiShow" ></affiliated-facilities>
</div>
</template>
@@ -84,6 +86,7 @@
// 寮曞叆缁勪欢鍐呭
import SewersAnalysis from '@components/panel/topicSearch/SewersSelect/SewersAnalysis'
import SewersHistory from '@components/panel/topicSearch/SewersSelect/SewersHistory'
+import { fitBounds, highlight, locate } from '../../helpers/LocateHelper'
export default {
name: 'SewersSearch',
@@ -99,16 +102,22 @@
list: [],
items: [LayerPipeLines, LayerFsss, LayerHbss, LayerPk, LayerArea],
subItems: LayerPipeLines.layers,
+ pageSize: 10,
total: 0,
form: {
- pipelineType: '绠$綉',
+ pipelineType: '绠$嚎',
dataType: '',
keyword: ''
},
// pageSize: 10,
// current: 1,
isWaybillHover: true,
- isRouteHover: false
+ isRouteHover: false,
+ facilitiesParameter: null,
+ fuShuSheShiShow: true,
+ fuShuSheShiPanelShow: true,
+ activeNum: -1,
+ wfsHelper: null
}
},
props: ['title'],
@@ -120,8 +129,14 @@
handleClick (tab, event) {
console.log(tab, event)
},
+ handlePage (page) {
+ this.wfsHelper.setPage(page)
+ this.handleSearch()
+ },
+ // 璁炬柦绫诲瀷绛涢��
handlePipelineType (val) {
- for (var i = 0; i < this.items.length; i++) {
+ this.list = []
+ for (let i = 0; i < this.items.length; i++) {
const item = this.items[i]
if (val === item.name) {
this.subItems = item.layers
@@ -129,27 +144,48 @@
}
}
},
+ handleDataType () {
+ this.list = []
+ },
async handleSearch () {
- var wfsHelper = new WfsHelper()
+ // console.log(this.form.dataType.sname, this.form.keyword)
+ this.list = []
+ this.wfsHelper.clearFilter()
// todo 鐜板湪绠$綉杩樻病鍖哄垎寮�绫诲瀷锛屽悗闈㈡敼
- wfsHelper.addTypeName(this.form.dataType.sname)
- wfsHelper.addLike('name', this.form.keyword)
+ this.wfsHelper.setTypeName([this.form.dataType.typeName])
+ if (this.form.keyword) {
+ this.wfsHelper.addLike('name', this.form.keyword)
+ }
// const _this = this
- const res = await AjaxUtils.GetDataAsynByUrl(wfsHelper.getUrl(), {})
+ const res = await AjaxUtils.GetDataAsynByUrl(this.wfsHelper.getUrl(), {})
console.log(res)
if (res instanceof Object && Object.prototype.hasOwnProperty.call(res, 'features')) {
+ this.total = res.totalFeatures
this.list = res.features
}
},
- handleLocation (val) {
- const bound = this.L.geoJSON([val], {}).getBounds()
- window.map.flyToBounds(bound)
- window.layerFactory.flyByLayerId(this.form.dataType.code, val.id)
+ handleLocation (val, index) {
+ // console.log(val)
+ this.activeNum = index
// layer && layer.openPopup()
+ const config = this.form.dataType
+ locate(val, config)
},
- btnAffiliatedFacilities (item) {
- console.log(item)
+ btnAffiliatedFacilities (val, index) {
+ this.activeNum = index
+ this.facilitiesParameter = val
+ // 鍒ゆ柇閫夋嫨鏄惁鏄绾匡紝濡傛灉鏄垯鏄剧ず銆婇檮灞炶鏂姐�嬪脊妗�
+ if (this.form.pipelineType === '绠$嚎') {
+ this.fuShuSheShiShow = true
+ } else {
+ this.fuShuSheShiShow = false
+ }
+ fitBounds(val, this.form.dataType.code)
+ highlight(val)
}
+ },
+ mounted () {
+ this.wfsHelper = new WfsHelper()
}
}
</script>
--
Gitblit v1.8.0