From d5888d8fabfd9b5033e8b1d57f3cb6d5e9de86fb Mon Sep 17 00:00:00 2001
From: zhangshuaibao <15731629597@163.com>
Date: 星期四, 01 四月 2021 17:50:43 +0800
Subject: [PATCH] Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop
---
src/components/panel/topicSearch/SolidWasteSearch.vue | 253 ++++++++++++++++++++++++++++++--------------------
1 files changed, 152 insertions(+), 101 deletions(-)
diff --git a/src/components/panel/topicSearch/SolidWasteSearch.vue b/src/components/panel/topicSearch/SolidWasteSearch.vue
index 31267fe..87b3911 100644
--- a/src/components/panel/topicSearch/SolidWasteSearch.vue
+++ b/src/components/panel/topicSearch/SolidWasteSearch.vue
@@ -1,140 +1,178 @@
<template>
- <div class="sewers-search" v-if="judgeVisible">
+ <div class="solidwaste-search" v-if="judgeVisible">
<div class="search-title">
<span>鍥哄簾</span>
+ <!-- <span>{{ title }}</span>-->
</div>
<div class="search-panel ">
<el-form ref="form" :model="form" label-width="90px" class="search-form">
- <el-form-item label="璁炬柦绫诲瀷锛�" size="mini" class="search-panel-item">
+ <el-form-item v-for="(item,index) in solidWasteTypeOptions" :key="index" :label="item.label+'锛�'" size="mini"
+ class="search-panel-item">
<el-select style="width: 100%" v-model="form.pipelineType" @change="handlePipelineType"
:popper-class="'select-down'">
<el-option
- v-for="item in SolidWasteTypeOptions"
+ v-for="item in solidWasteTypeOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
- <el-form-item :label="form.pipelineType+'锛�'" size="mini">
- <el-select style="width: 100%" v-model="form.dataType" @change="handleDataType" :popper-class="'select-down'">
- <el-option
- v-for="item in dataTypeOptions"
- :key="item.value"
- :label="item.label"
- :value="item.value">
- </el-option>
- </el-select>
- </el-form-item>
- <el-input v-model="form.keyword" size="mini"
- placeholder="鍦ㄦ杈撳叆鍏抽敭瀛楁悳绱�">
+ <div class="search-radio">
+ <el-radio v-model="radio" label="1">鍏ㄩ儴</el-radio>
+ <el-radio v-model="radio" label="2">姝e父</el-radio>
+ <el-radio v-model="radio" label="3">棰勮</el-radio>
+ </div>
+ <el-input v-model="form.keyword" size="mini" placeholder="鍦ㄦ杈撳叆鍏抽敭瀛楁悳绱�">
<i slot="suffix" class="search-btn el-input__icon el-icon-search" @click="handleSearch"></i>
</el-input>
</el-form>
- </div>
- <el-scrollbar style="height:100%">
- <div class="B-TMD-table-list" v-for="(item,index) in list" :key="index">
- <div class="B-TMD-table-list-title">
- <div class="B-TMD-table-list-head">
- <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 id="waybillNumber" class="" :title="item.properties.pipename">
- <span class="location-btn" @click="handleLocation(item)">{{ item.properties.pipename }}</span>
- </span>
- </div>
- </div>
+ <el-card class="box-card"
+ v-for="(item,index) in searchDataDisplay.slice((currentPage-1)*PageSize,currentPage*PageSize)"
+ :key="index">
+ <div v-if="totalCount > 0">
+ {{ item.CompanyName }}
</div>
- <div class="B-TMD-table-list-content">
-
- <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>
+ </el-card>
+ <div class="search-pagination">
+ <el-pagination
+ small
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ :current-page="currentPage"
+ :page-sizes="[1, 2, 3]"
+ :page-size="1"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total='totalCount'>
+ </el-pagination>
</div>
- </el-scrollbar>
- <el-card class="footer-page" v-if="total > 10">
- <el-pagination
- small
- @current-change="handlePage"
- :page-size=pageSize
- layout="prev, pager, next"
- :total=total
- :current-page=current
- class="warnPagination"
- >
- </el-pagination>
- </el-card>
+ </div>
+ <!-- <el-scrollbar style="height:100%">-->
+ <!-- </el-scrollbar>-->
</div>
</template>
<script>
-// 寮曞叆鍙�夋嫨鏁版嵁
-import { SolidWasteTypeOptions } from '@/conf/layers/LayerSolidWaste'
-import WfsHelper from '@components/helpers/WfsHelper'
-import AjaxUtils from '@utils/AjaxUtils'
+import mapApi from '@/api/mapApi'
export default {
name: 'SolidWasteSearch',
+ props: ['title'],
data () {
return {
judgeVisible: true,
- list: [],
- labelList: SolidWasteTypeOptions[0].labelList,
- total: 0,
- SolidWasteTypeOptions: SolidWasteTypeOptions,
- dataTypeOptions: SolidWasteTypeOptions[0].options,
+ solidWasteTypeOptions: [{
+ value: '1',
+ label: '鍖哄煙',
+ options: [{
+ value: '1',
+ layerName: '鍥哄簾',
+ key: 'pipename',
+ label: '鍏ㄩ儴鍥哄簾'
+ }],
+ labelList: [{
+ label: '杈撻�佷粙璐�',
+ key: 'mediumtype'
+ }, {
+ label: '闀垮害(m)',
+ key: 'length'
+ }]
+ }, {
+ value: '2',
+ label: '浼佷笟鍚嶇О',
+ options: [{
+ value: '1',
+ layerName: '鍥哄簾',
+ key: 'pipename',
+ label: '鍏ㄩ儴鍥哄簾'
+ }],
+ labelList: [{
+ label: '杈撻�佷粙璐�',
+ key: 'mediumtype'
+ }, {
+ label: '闀垮害(m)',
+ key: 'length'
+ }]
+ }, {
+ value: '3',
+ label: '浜岀骇鍗曚綅',
+ options: [{
+ value: '1',
+ layerName: '鍥哄簾',
+ key: 'pipename',
+ label: '鍏ㄩ儴鍥哄簾'
+ }],
+ labelList: [{
+ label: '杈撻�佷粙璐�',
+ key: 'mediumtype'
+ }, {
+ label: '闀垮害(m)',
+ key: 'length'
+ }]
+ }, {
+ value: '4',
+ label: '浼佷笟鍚嶇О',
+ options: [{
+ value: '1',
+ layerName: '鍥哄簾',
+ key: 'pipename',
+ label: '鍏ㄩ儴鍥哄簾'
+ }],
+ labelList: [{
+ label: '杈撻�佷粙璐�',
+ key: 'mediumtype'
+ }, {
+ label: '闀垮害(m)',
+ key: 'length'
+ }]
+ }],
+ radio: '1',
form: {
- pipelineType: SolidWasteTypeOptions[0].label,
- dataType: SolidWasteTypeOptions[0].options[0].label,
- query: SolidWasteTypeOptions[0].options[0],
- keyword: '鍥哄簾闈㈡澘鏁版嵁鏌ヨ'
+ keyword: '鍥哄簾闈㈡澘鏁版嵁鏌ヨ',
+ // 鏁版嵁鐨勪紶閫�
+ transferData: ''
},
- isWaybillHover: true,
- isRouteHover: false
+ searchDataDisplay: [],
+ // 榛樿鏄剧ず绗嚑椤�
+ currentPage: 1,
+ // 鎬绘潯鏁帮紝鏍规嵁鎺ュ彛鑾峰彇鏁版嵁闀垮害(娉ㄦ剰锛氳繖閲屼笉鑳戒负绌�)
+ totalCount: 1,
+ // 涓暟閫夋嫨鍣紙鍙慨鏀癸級
+ pageSizes: [1, 2, 3, 4],
+ // 榛樿姣忛〉鏄剧ず鐨勬潯鏁帮紙鍙慨鏀癸級
+ PageSize: 1
}
},
- props: ['title'],
methods: {
+ // 姣忛〉鏄剧ず鐨勬潯鏁�
+ handleSizeChange (val) {
+ this.PageSize = val
+ this.currentPage = 1
+ },
+ // 鏄剧ず绗嚑椤�
+ handleCurrentChange (val) {
+ this.currentPage = val
+ },
handlePipelineType (val) {
- this.SolidWasteTypeOptions.forEach((itm) => {
- if (val === itm.value) {
- this.dataTypeOptions = itm.options
- this.form.pipelineType = itm.label
- this.form.labelList = itm.labelList
- }
- })
- this.form.dataType = this.dataTypeOptions[0].label
- this.form.key = this.dataTypeOptions[0].key
- },
- handleDataType (val) {
- this.dataTypeOptions.forEach((itm) => {
- if (val === itm.value) {
- this.form.query = itm
+ // console.log(val)
+ this.solidWasteTypeOptions.forEach(item => {
+ // console.log(item.value)
+ if (val === item.value) {
+ // console.log('鏁版嵁閫夋嫨鐩稿悓')
+ // 鎺ユ敹鏁版嵁 鐢ㄤ簬涔嬪悗鎺ュ彛鏁版嵁鐨勮皟鐢�
+ // this.form.transferData = item.value
+ this.handleSearch(item.value)
}
})
},
- async handleSearch () {
- const param = {
- pipelineType: this.form.pipelineType,
- dataType: this.form.dataType
- }
- console.log(param)
- var wfsHelper = new WfsHelper()
- wfsHelper.addTypeName(this.form.query.layerName)
- wfsHelper.addLike(this.form.query.key, this.form.keyword)
- const res = await AjaxUtils.GetDataAsynByUrl(wfsHelper.getUrl(), {})
- if (res.data instanceof Object && Object.prototype.hasOwnProperty.call(res.data, 'features')) {
- this.list = res.data.features
- }
- },
- handleLocation (val) {
- console.log(val)
- const bound = this.L.geoJSON([val], {}).getBounds()
- var layer = window.serviceLayerHelper.getByLayerId(val.id)
- layer && layer.openPopup()
- this.$store.state.map.map.flyToBounds(bound)
+ // 鐐瑰嚮鎼滅储瀹炵幇鏁版嵁鐨勬悳绱㈠睍绀�
+ async handleSearch (data) {
+ // console.log(this.form.keyword)
+ const result = await mapApi.getSolidWasteSurveyDetail(data)
+ // console.log(result)
+ this.searchDataDisplay = result.Result.DataInfo
+ this.totalCount = result.Result.DataInfo.length
}
}
}
@@ -142,7 +180,7 @@
<style lang="less" scoped>
-.sewers-search {
+.solidwaste-search {
position: relative;
overflow: hidden;
@@ -172,12 +210,25 @@
}
- //location-btn{
- //
- //}
+ .search-radio {
+ margin: 15px auto;
+ display: flex;
+ align-items: center;
+ justify-content: space-around;
+ }
+
.location-btn:hover, .el-input__icon:hover {
color: @color;
cursor: pointer;
}
+
+ .box-card {
+ margin: 15px auto;
+ }
+
+ .search-pagination {
+ padding: 0;
+ margin: 15px auto;
+ }
}
</style>
--
Gitblit v1.8.0