From f8865d1c7f36c4ffa66002e0dd3a9d5e99e4fe6b Mon Sep 17 00:00:00 2001 From: 徐旺旺 <11530253@qq.com> Date: 星期日, 30 五月 2021 13:45:44 +0800 Subject: [PATCH] Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop --- src/components/base-page/enterprise-emergency/events-reported/ReportLocationSearch.vue | 195 +++++++++++++++++++++++++++++++++++++++++++----- 1 files changed, 175 insertions(+), 20 deletions(-) diff --git a/src/components/base-page/enterprise-emergency/events-reported/ReportLocationSearch.vue b/src/components/base-page/enterprise-emergency/events-reported/ReportLocationSearch.vue index 3bb4744..fbd79d3 100644 --- a/src/components/base-page/enterprise-emergency/events-reported/ReportLocationSearch.vue +++ b/src/components/base-page/enterprise-emergency/events-reported/ReportLocationSearch.vue @@ -3,8 +3,45 @@ <el-row> <el-input type="text" v-model="clickLocation" clearable @change="focusLocation"></el-input> </el-row> - <el-row> - <el-button type="primary" @click="confirm" style="text-align: right">纭</el-button> + <!-- <el-scrollbar style="height:250.34px">--> + <el-row v-for="(item,index) in searchList.slice((currentPage-1)*pageSize,currentPage*pageSize)" :key="index" + style="display: flex;align-items: center;margin: 0.1343rem 15px;text-align: left" + class="environmental-risk-list"> + <el-col :span="4"> + <img src="../../../../../public/assets/images/map/marker-icon.png" alt="" class="state" + style="background: none;margin: 0 15px"> + </el-col> + <el-col :span="12"> + <div class=search-list> + <!-- <h4 :class="activeNum===index?'hover':''" @click="handleLocation(index)">鍚嶇О锛�<h3 style="display: inline-block">{{ item.name }}</h3></h4>--> + <h3 :class="activeNum===index?'hover':''" @click="handleLocation(index)">鍚嶇О锛歿{ item.name }}</h3> + <p style="text-overflow: ellipsis;white-space: nowrap;overflow: hidden">鍦板潃锛�<span>{{ item.address }}</span> + <p>鐢佃瘽锛�<span>{{ item.phone }}</span></p> + </div> + </el-col> + <el-col :span="8" style="text-align: right"> + <el-button type="primary" size="mini" icon="el-icon-position" @click="locationMapClick(item,index)"> + 瀹氫綅 + </el-button> + </el-col> + </el-row> + <!-- </el-scrollbar>--> + <!-- <el-card class="footer-page" >--> + <div v-if="total > 10"> + <el-pagination + small + @current-change="handlePage" + :page-size=pageSize + :current-page.sync="currentPage" + layout="prev, pager, next" + :total=total + class="warnPagination" + > + </el-pagination> + </div> + <!-- </el-card>--> + <el-row style="text-align: right"> + <el-button type="primary" size="small" @click="confirm">纭</el-button> </el-row> </div> </template> @@ -13,20 +50,35 @@ import { reportLocationSearch } from '../../../../api/request' import { pulseEffect } from '../../../../utils/utils' +import eventBus from '../../../../eventBus' +import iconUrl from '../../../../../public/assets/images/map/marker-icon.png' + export default { name: 'ReportLocationSearch', data () { return { + activeNum: -1, // 鐐瑰嚮瀹氫綅缁戝畾鏁版嵁 - clickLocation: '' + clickLocation: '', + searchList: [], + marker: null, + total: 0, + // 鍒嗛〉 榛樿灞曠ず + currentPage: 1, + // 鍒嗛〉 姣忛〉澶氬皯鏁版嵁 + pageSize: 3 } }, methods: { - // 鑾峰緱鐒︾偣 杩涜瀹氫綅 + handlePage (currentPage) { + // this.focusLocation() + this.currentPage = currentPage + }, + handleLocation (index) { + this.activeNum = index + }, + // 鎼滅储瀹氫綅 focusLocation () { - console.log(this.clickLocation) - console.log(window.map.getZoom()) - console.log(window.map.getBounds()) const getBoundsData = '' + window.map.getBounds()._southWest.lng + ',' + window.map.getBounds()._southWest.lat + ',' + window.map.getBounds()._northEast.lng + ',' + window.map.getBounds()._northEast.lat const data = { postStr: { @@ -40,30 +92,84 @@ }, type: 'query' } - console.log(data) reportLocationSearch(data).then(res => { - // console.log(res) - const as = res.pois[0].lonlat.trim().split(' ') - window.map.setView([as[1], as[0]], 17) - pulseEffect([as[1], as[0]]) - // for (let i = 0; i < res.pois.length; i++) { - // const as = res.pois[i].lonlat.trim().split(' ') - // window.map.flyTo([as[0], as[1]], 16) - // } - // window.map.setView(as, 17) + console.log(res) + this.searchList = res.pois + this.total = res.pois.length }) + }, + // 鐐瑰嚮瀹氫綅 + locationMapClick (val, index) { + this.activeNum = index + // console.log(val) + const ps = val.lonlat.trim().split(' ') + // const htmls = '<div><ul><li>' + val.name + '</li></ul></div>' + // var myIcon = window.L.divIcon({ + // html: htmls, + // className: 'company-bindTooltip', + // iconSize: 16 + // }) + this.marker = window.L.marker([ps[1], ps[0]], { + icon: window.L.icon({ + iconUrl: iconUrl, + iconSize: [25, 40], + iconAnchor: [15, 15] + }) + // icon: myIcon + }) + .bindTooltip(val.name, { + permanent: 'true', + direction: 'bottom', + offset: [0, 10], + sticky: true, + className: '' + }) + window.map.addLayer(this.marker) + window.map.setView([ps[1], ps[0]], 17) + pulseEffect([ps[1], ps[0]]) }, // 鐐瑰嚮纭鎸夐挳浜嬩欢 confirm () { - // 閫氳繃瀛愮粍浠跺悜鐖剁粍浠朵紶閫掓暟鎹� - this.$emit('locationClick', this.LongLatPos) - console.log('鎼滅储瀹氫綅') + window.mapManager.clearHighlight() + window.map.removeLayer(this.marker) + this.searchList = [] + this.clickLocation = '' + eventBus.$emit('location-setChange', true) } } } </script> <style lang="less" scoped> + /*/deep/ .el-row {*/ + /* margin: 2px 0 !important;*/ + /* padding: 0;*/ + /* height: 10px;*/ + /* max-height: 10px;*/ + /*}*/ + .environmental-risk-list { + color: @color; + border-bottom: 1px solid rgba(0, 255, 246, 0.14); + + h3 { + font-size: 0.1rem; + } + } + + /*<!--.environmental-risk-list:hover {-->*/ + /*<!-- color: @color-highlight;-->*/ + /*<!-- background: @background-color;-->*/ + /*<!--}-->*/ + .search-list { + h3:hover { + color: @color-highlight; + } + } + + .hover { + color: @color-highlight; + } + .click-location { margin: 0 auto; text-align: center; @@ -77,4 +183,53 @@ margin: 15px auto; } } + + /deep/ + .warnPagination { + .btn-quicknext, .btn-quickprev { + color: #e4e8f1 !important; + background-color: transparent; + // border: 1px solid #25AECD; + border-left: 1px solid #25AECD; + border-bottom: 1px solid #25AECD; + border-top: 1px solid #25AECD; + color: #e4e8f1; + } + + .el-pager li { + color: #e4e8f1; + background: transparent; + // border: 1px solid #25AECD; + border-left: 1px solid #25AECD; + border-bottom: 1px solid #25AECD; + border-top: 1px solid #25AECD; + } + + .el-pager li.active { + border-color: #25AECD; + background-color: rgba(38, 222, 253, 0.3); + color: #e4e8f1; + } + + .el-pager li:hover { + border-color: #25AECD; + background-color: rgba(38, 222, 253, 0.3); + color: #34e0ff; + } + + .btn-prev { + background-color: transparent; + // border: 1px solid #25AECD; + border-left: 1px solid #25AECD; + border-bottom: 1px solid #25AECD; + border-top: 1px solid #25AECD; + color: #e4e8f1; + } + + .btn-next { + background-color: transparent; + border: 1px solid #25AECD; + color: #e4e8f1; + } + } </style> -- Gitblit v1.8.0