Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop
| | |
| | | getWasteGasDetails (data) { |
| | | return axios.get(mapUrl.getWasteGasDetails, data) |
| | | }, |
| | | // 废水点 |
| | | getWasteWater (data) { |
| | | return axios.get(mapUrl.getWasteWater, data) |
| | | }, |
| | | // 废水监测数据 |
| | | getWasteWaterMonitoring (data) { |
| | | return axios.get(mapUrl.getWasteWaterMonitoring, data) |
| | | }, |
| | | // 废水点明细表 |
| | | getWasteWaterMonitoringDetails (data) { |
| | | return axios.get(mapUrl.getWasteWaterMonitoringDetails, data) |
| | | }, |
| | | getCompany (data) { |
| | | return axios.get(mapUrl.getCompany, data) |
| | | } |
| | |
| | | export const getWasteGasDetails = $HOST + '/wasteGas/getWasteGasMonitoringDetails' |
| | | |
| | | export const getWasteWater = $HOST + '/wasteWater/getWasteWater' |
| | | export const getWasteWaterMonitoring = $HOST + '/wasteWater/getWasteWaterMonitoring' |
| | | export const getWasteWaterMonitoringDetails = $HOST + '/wasteWater/getWasteWaterMonitoringDetails' |
| | | |
| | | export const getCompany = $HOST + '/company/getCompany' |
| | |
| | | }, |
| | | data () { |
| | | return { |
| | | watchData: [], |
| | | dialogVisible: false |
| | | } |
| | | }, |
| | |
| | | }, |
| | | mounted () { |
| | | this.drawChart() |
| | | const dataWatch = JSON.parse(JSON.stringify(this.$attrs)) |
| | | console.log(dataWatch) |
| | | } |
| | | } |
| | | </script> |
| | |
| | | </div> |
| | | <div v-else-if="value === 'feishui'"> |
| | | <el-row type="flex" class="row-bg row-item-one" justify="space-around"> |
| | | <el-col :span="8">监测点名称:{{ setWasteGasdata.Name }}</el-col> |
| | | <el-col :span="8">生产单位:{{ setWasteGasdata.porltName }}</el-col> |
| | | <el-col :span="8">排放类型名称:{{ setWasteGasdata.MonTypeName }}</el-col> |
| | | <el-col :span="8">监测点名称:{{ setWasteWaterdata.Name }}</el-col> |
| | | <el-col :span="8">生产单位:{{ setWasteWaterdata.porltName }}</el-col> |
| | | <el-col :span="8">排放类型名称:{{ setWasteWaterdata.MonTypeName }}</el-col> |
| | | </el-row> |
| | | <el-row type="flex" class="row-bg" justify="space-around"> |
| | | <el-col :span="8">排放去向:{{ setWasteGasdata.EmissDirecti }}</el-col> |
| | | <el-col :span="8">控制级别名称:{{ setWasteGasdata.ContrLevelShowName }}</el-col> |
| | | <el-col :span="8">内/外排口:{{ setWasteGasdata.OrOutPortName }}</el-col> |
| | | <el-col :span="8">排放去向:{{ setWasteWaterdata.EmissDirecti }}</el-col> |
| | | <el-col :span="8">控制级别名称:{{ setWasteWaterdata.ContrLevelShowName }}</el-col> |
| | | <el-col :span="8">内/外排口:{{ setWasteWaterdata.OrOutPortName }}</el-col> |
| | | </el-row> |
| | | </div> |
| | | </div> |
| | |
| | | <script> |
| | | export default { |
| | | name: 'GasTable', |
| | | props: ['displayContentTab', 'value', 'setWasteGasdata'], |
| | | props: ['displayContentTab', 'value', 'setWasteGasdata', 'setWasteWaterdata'], |
| | | data () { |
| | | return { |
| | | tabData: [] |
| | |
| | | <div class="public-bounced-content"> |
| | | <div class="public-bounced-content-left"> |
| | | <public-tabs :displayContentTab="displayContentTab" :value="value" |
| | | :setWasteGasdata="setWasteGasdata"></public-tabs> |
| | | :setWasteGasdata="setWasteGasdata" :setWasteWaterdata="setWasteWaterdata"></public-tabs> |
| | | <div class="public-bounced-content-left-bottom"> |
| | | <public-table v-if="value === 'gufei'" |
| | | :displayContentTable="displayContentTable"></public-table> |
| | | <public-chart v-else :getWasteGasDetails="getWasteGasDetails"></public-chart> |
| | | <public-chart v-else :getWasteGasDetails="getWasteGasDetails" :getWasteWaterMonitoring="getWasteWaterMonitoring" ></public-chart> |
| | | </div> |
| | | </div> |
| | | <div class="public-bounced-content-right"> |
| | |
| | | data () { |
| | | return { |
| | | setWasteGasdata: '', |
| | | setWasteWaterdata: '', |
| | | displayContentTitle: '', |
| | | displayContentTab: '', |
| | | displayContentTable: '', |
| | | flag: false, |
| | | value: '', |
| | | getWasteGasDetails: [] |
| | | getWasteGasDetails: [], |
| | | getWasteWaterMonitoringDetails: [], |
| | | getWasteWaterMonitoring: [] |
| | | } |
| | | }, |
| | | methods: { |
| | |
| | | this.flag = true |
| | | this.value = value |
| | | }, |
| | | setWaterData (dataWater, dataDetail, drawData, value) { |
| | | this.setWasteWaterdata = dataWater |
| | | // console.log(data) |
| | | this.getWasteWaterMonitoring = drawData |
| | | console.log(drawData) |
| | | this.getWasteWaterMonitoringDetails = dataDetail |
| | | this.displayContentTitle = dataWater.Name |
| | | this.flag = true |
| | | this.value = value |
| | | }, |
| | | closePopup () { |
| | | this.flag = false |
| | | } |
| | |
| | | <template> |
| | | <div :class='["float-panel",layerControllerVisible ? "active" : ""]' > |
| | | <div @click="showPanel" class="iconBtn transition" :class='layerControllerVisible ? "active-button" : ""' v-show="!layerControllerVisible" style="position: absolute;top:0;left: 0"> |
| | | <div @click="showPanel" class="iconBtn" :class='layerControllerVisible ? "active-button" : ""' v-show="!layerControllerVisible" style=" position: absolute;top:0;left: 0;"> |
| | | <img src="@assets/images/map-pages/icon/layer.png" alt="" class="icon"> |
| | | <span class="icon-name">图层</span> |
| | | <!-- <span class="icon-name">图层</span>--> |
| | | </div> |
| | | <transition name="fade"> |
| | | <div :class="'legend-content map-background'" v-show="layerControllerVisible" style=" transform-origin: top left;"> |
| | | <transition name="animationChange"> |
| | | <div :class="'legend-content map-background'" v-show="layerControllerVisible"> |
| | | <lc-service-layer></lc-service-layer> |
| | | <buttom @click="showPanel" type="button" class="el-button special-button el-button--default el-icon-d-arrow-left"></buttom> |
| | | <button @click="showPanel" type="button" class="el-button special-button el-button--default el-icon-d-arrow-left"></button> |
| | | </div> |
| | | </transition> |
| | | </div> |
| | |
| | | </script> |
| | | |
| | | <style lang="less"> |
| | | .animationChange-enter-active, .animationChange-leave-active { |
| | | transition: all 0.5s; |
| | | } |
| | | |
| | | .animationChange-enter, .animationChange-leave-to { |
| | | opacity: 0; |
| | | transform: translateX(-100px); |
| | | } |
| | | .float-panel.active{ |
| | | overflow: visible; |
| | | } |
| | | .float-panel { |
| | | position: absolute; |
| | | left: 0.14583rem; |
| | | top: 0.8rem; |
| | | top: 0.73979rem; |
| | | height: auto; |
| | | font-size: 11px; |
| | | z-index: 1000; |
| | | display: flex; |
| | | |
| | | min-height: 0.28rem; |
| | | min-width: 0.28rem; |
| | | overflow: hidden; |
| | | div { |
| | | color: #00fff6; |
| | | } |
| | |
| | | background:@background-color; |
| | | } |
| | | .legend-content{ |
| | | width: 1.79167rem; |
| | | width: 2.2rem; |
| | | } |
| | | } |
| | | |
| | |
| | | this.clickListener = async (e) => { |
| | | // console.log(e) |
| | | this.animalService.pulseEffect(e.latlng) |
| | | // const dataValue = { |
| | | // StoragePlaceId: e.layer.options.test.StoragePlaceId |
| | | // } |
| | | // const result = await mapApi.getWasteWater(dataValue) |
| | | // console.log(result) |
| | | const dataValue = { |
| | | StoragePlaceId: e.layer.options.test.StoragePlaceId |
| | | } |
| | | const drawback = await mapApi.getWasteWaterMonitoring() |
| | | console.log(drawback) |
| | | const result = await mapApi.getWasteWaterMonitoringDetails(dataValue) |
| | | const PublicBounced = window.Vue.extend(publicBounced) |
| | | const instance = new PublicBounced() |
| | | instance.setGasData(e.layer.options.test, 'feishui') |
| | | instance.setWaterData(e.layer.options.test, result.Result.DataInfo, drawback.Result.DataInfo, 'feishui') |
| | | console.log(e.layer.options.test) |
| | | instance.$mount() |
| | | document.body.appendChild(instance.$el) |
| | | this.setPanTo(e.latlng, 240) |
| | | } |
| | | |
| | | // 根据返回值的不同标记不同图片 |
| | |
| | | } |
| | | return testChange |
| | | } |
| | | this.setPanTo = (pos, value) => { |
| | | var position = pos |
| | | position = window.map.latLngToLayerPoint(position) |
| | | position.y += value |
| | | position = window.map.layerPointToLatLng(position) |
| | | window.map.flyTo(position) |
| | | } |
| | | } |
| | |
| | | :value="itm.code" |
| | | @change="swWmsLayer(itm)"/>{{ itm.name }} |
| | | <!-- 三级图层遍历 --> |
| | | <div style="width: 100%"> |
| | | <div class="layerbox-item-3"> |
| | | <div class="basemap-layer-item" v-for="layer in itm.layers" :key="layer.code"> |
| | | <input type="checkbox" |
| | | :name="'wmsSublayers_'+item.code+'_'+layer.code" |
| | |
| | | .layerbox { |
| | | width: 100%; |
| | | .layerbox-item { |
| | | display: flex; |
| | | flex-flow: row wrap; |
| | | margin-left: 15px; |
| | | margin-top: 5px; |
| | | |
| | | padding-left: 20px; |
| | | padding-top: 5px; |
| | | .basemap-layer-item { |
| | | width: 50%; |
| | | margin-bottom: 5px; |
| | | } |
| | | } |
| | | .layerbox-item-3{ |
| | | padding-left: 20px; |
| | | padding-top: 5px; |
| | | display: flex; |
| | | flex-wrap: wrap; |
| | | .basemap-layer-item{width: 50%} |
| | | } |
| | | } |
| | | } |
| | | } |
| | |
| | | swSubFilter (url, item) { |
| | | item.checked = !item.checked |
| | | if (item.checked) { |
| | | window.serviceLayerHelper.loadGeojsonLayer(url, item) |
| | | window.layerFactory.show(item) |
| | | } else { |
| | | window.serviceLayerHelper.removeLayer(item) |
| | | window.layerFactory.hide(item) |
| | | } |
| | | // window.serviceLayerHelper.loadLayers() |
| | | } |
| | |
| | | |
| | | <style scoped lang="less"> |
| | | .inner-panel { |
| | | width: 500px; |
| | | color: #90c8e0; |
| | | font-size: 13px; |
| | | |
| | | position: absolute; |
| | | left: 260px; |
| | | left: 270px; |
| | | z-index: 1000; |
| | | height: 220px; |
| | | top: 0; |
| | |
| | | } |
| | | |
| | | loadData (wfsUrl) { |
| | | AjaxUtils.get4JsonDataByUrl(wfsUrl, this.params, (res) => this.draw(res.data.features)) |
| | | AjaxUtils.get4JsonDataByUrl(wfsUrl, this.params, (res) => { |
| | | console.log(res) |
| | | this.draw(res.data.features) |
| | | }) |
| | | } |
| | | |
| | | draw (features) { |
| | |
| | | </div> |
| | | </template> |
| | | <script> |
| | | import { LayerWasteWater } from '../../conf/layers/LayerWasteWater' |
| | | import { LayerWasteGas } from '../../conf/layers/LayerWasteGas' |
| | | import { LayerWasteSolid } from '../../conf/layers/LayerWasteSolid' |
| | | import { LayerAirQuality } from '../../conf/layers/LayerAirQuality' |
| | | import { LayerEnvRisk } from '../../conf/layers/LayerEnvRisk' |
| | | import { LayerSoilGroundWater } from '../../conf/layers/LayerSoilGroundWater' |
| | | import { LayerPipeLines } from '../../conf/layers/LayerPipeLines' |
| | | import { LayerPk } from '../../conf/layers/LayerPk' |
| | | import { LayerArea } from '../../conf/layers/LayerArea' |
| | | |
| | | export default { |
| | | name: 'LegendPanel', |
| | | data () { |
| | | return { |
| | | // 控制图例 内容的 显示/隐藏 |
| | | legendControl: false |
| | | } |
| | | }, |
| | | computed: { |
| | | serviceLayers () { |
| | | return this.$store.state.map.serviceLayers.LayerSewersLine |
| | | legendControl: false, |
| | | serviceLayers: [LayerSoilGroundWater, LayerEnvRisk, LayerAirQuality, LayerWasteSolid, LayerWasteGas, LayerWasteWater, LayerArea, LayerPk, LayerPipeLines] |
| | | } |
| | | }, |
| | | methods: { |
| | |
| | | <!-- :class="{'B-TMT-tab-waybill-isActive': isWaybillHover}">--> |
| | | <!-- <img :src="item.icon" style="width: 24px;height: 24px;"></div>--> |
| | | <div class="container"> |
| | | <ul> |
| | | <li style="text-align: right"> |
| | | <button type="button" class="el-button special-button el-button--default el-icon-d-arrow-right"></button> |
| | | </li> |
| | | </ul> |
| | | <ul v-for="item in topicList" :key="item.name" :class="item.checked?'module-wrap map-btn-active':'module-wrap map-btn-unactive'" @click="()=>{selected(item)}" > |
| | | <el-tooltip :popper-class="'map-tooltip'" effect="dark" :content="item.name" placement="left"> |
| | | <li> |
| | |
| | | //top: 10px; |
| | | height: 0; |
| | | position: absolute; |
| | | top: .46rem; |
| | | top: 0.42979rem; |
| | | right: 0.14583rem; |
| | | z-index: 501; |
| | | display: -webkit-box; |
| | |
| | | // background-color: #061e51 !important; |
| | | // border: solid 1px #0e639e !important; |
| | | //} |
| | | .el-button--default { |
| | | padding: 15px 3px; |
| | | background: rgba(0, 16, 30, 0.7); |
| | | color: #C0C4CC; |
| | | } |
| | | .el-button--default:hover{ |
| | | background: transparent; |
| | | border-color: #0f93a9; |
| | | } |
| | | |
| | | .el-form-item__label { |
| | | color: rgb(52, 224, 255); |
| | |
| | | <template> |
| | | <div class="left-top-toolbox-panel"> |
| | | <div class="specific-tools"> |
| | | <el-button :class="selectGroup === true ?'active-button':''" class="el-button-choice" @mouseover.enter.native="changeSelectMouse"> |
| | | <el-button :class="selectGroup === true ?'active-button':''" class="el-button-choice" @click.enter.native="changeSelectMouse"> |
| | | <img src="@assets/images/map-pages/icon/toolbox/Selecd/tool.png" alt="" class="icon" /> |
| | | <span class="span-default">工具</span> |
| | | <!--<span class="span-default">工具</span>--> |
| | | </el-button> |
| | | <transition name="animationChange"> |
| | | <el-row v-show="selectGroup" class="specific-tools-group"> |
| | |
| | | @click.native="changeChoose(index)"> |
| | | <img :src="item.iconSelecd" alt="" v-if="active === index"/> |
| | | <img :src="item.icon" alt="" v-else/> |
| | | <span v-if="active === index">{{ item.label }}</span> |
| | | <span v-else class="default-span">{{ item.label }}</span> |
| | | <!--<span v-if="active === index">{{ item.label }}</span> |
| | | <span v-else class="default-span">{{ item.label }}</span>--> |
| | | </el-button> |
| | | <el-button v-for="(itemT,indexT) in item.items" :key="indexT" @click="choiceItem(itemT,indexT)" |
| | | v-show="item.index!=='2'"> |
| | |
| | | |
| | | .specific-tools { |
| | | display: flex; |
| | | |
| | | overflow: hidden; |
| | | .el-button { |
| | | z-index: 999; |
| | | padding: 0; |
| | | margin: 0 0.015rem; |
| | | width: 45px; |
| | | height: 45px; |
| | | width: 0.2725rem; |
| | | height: 0.2725rem; |
| | | background: @background-color; |
| | | //vertical-align: middle !important; |
| | | |
| | | vertical-align: middle !important; |
| | | .base-map-img { |
| | | position: absolute; |
| | | } |
| | |
| | | span { |
| | | display: block; |
| | | font-size: 10px; |
| | | } |
| | | } |
| | | .specific-tools-group .el-button{ |
| | | span{ |
| | | color: #0B89B5; |
| | | } |
| | | } |
| | |
| | | padding: 0; |
| | | margin: 0; |
| | | margin-right:0.015rem; |
| | | width: 45px; |
| | | height: 45px; |
| | | width: 0.2725rem; |
| | | height: 0.2725rem; |
| | | background: @background-color; |
| | | border: 0.00521rem solid @color-shadow; |
| | | } |
| | |
| | | |
| | | .specific-tools-group { |
| | | z-index: 1; |
| | | |
| | | .tools-panel-choose { |
| | | border: none; |
| | | box-shadow: 0 0 0.03rem @color-shadow; |
| | |
| | | } |
| | | |
| | | .special-button { |
| | | width: 22px; |
| | | height: 45px; |
| | | width: 0.1362rem; |
| | | height: 0.2725rem; |
| | | color: @color-over; |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .base-map-inner-panel { |
| | | display: flex; |
| | | justify-content: center; |
| | | align-items: center; |
| | | |
| | | .base-map-img { |
| | | position: absolute; |
| | | } |
| | | |
| | | .base-map-img-Tool:hover { |
| | | cursor: pointer; |
| | | } |
| | | |
| | | .base-map-anno-Tool { |
| | | position: absolute; |
| | | margin-left: 2px; |
| | | background-color: rgba(0, 0, 0, .5); |
| | | color: @color-over; |
| | | |
| | | .el-checkbox__label { |
| | | padding-left: 5px !important; |
| | | } |
| | | } |
| | | |
| | | .basemap-layer-item { |
| | | display: flex; |
| | | width: 50px; |
| | | height: 50px; |
| | | margin: 10px; |
| | | border: 2px solid white; |
| | | |
| | | input { |
| | | position: relative; |
| | | left: 0; |
| | | top: -53px; |
| | | } |
| | | |
| | | .basemap-layer-item-name { |
| | | position: relative; |
| | | left: 0; |
| | | top: -53px; |
| | | } |
| | | } |
| | | } |
| | | |
| | | </style> |
| | |
| | | } |
| | | }, |
| | | _fillStroke: function (ctx, layer) { |
| | | debugger |
| | | var options = layer.options |
| | | |
| | | if (options.fill) { |
| | |
| | | cursor: pointer; |
| | | } |
| | | .enterprise-function:not(:first-child){ |
| | | margin-left: 10px; |
| | | margin-left: 0.05rem; |
| | | } |
| | | } |
| | | </style> |
| | |
| | | <style scoped lang="less"> |
| | | .summary-sheets { |
| | | position: absolute; |
| | | top: 0.46rem; |
| | | top: 0.42979rem; |
| | | left: 0.14583rem; |
| | | /*width: 850px;*/ |
| | | /*height: 265px;*/ |
| | |
| | | /** |
| | | * 管网 |
| | | */ |
| | | import { LayerHbss } from './LayerHbss' |
| | | import { LayerFsss } from './LayerFsss' |
| | | |
| | | const APP_GIS_HOST_2 = 'http://xearth.cn:8088' |
| | | const WFS_URL = APP_GIS_HOST_2 + '/server/ogcserver/PipeLine/wfs' |
| | | |
| | |
| | | code: 'sewersPipeLines', |
| | | name: '管线', |
| | | checked: true, |
| | | childLayer: [LayerFsss, LayerHbss], |
| | | layers: [ |
| | | { |
| | | code: 'rainline', |
| | |
| | | sname: '雨水线', |
| | | checked: true, |
| | | wfs: WFS_URL + '?TYPENAME=管网', |
| | | minZoom: 10 // 在指定级别显示 |
| | | minZoom: 10 |
| | | }, |
| | | { |
| | | code: 'accidentline', |
| | |
| | | |
| | | export const LayerSewersPoint = [ |
| | | { |
| | | code: 'fsss', |
| | | code: 'sewersFsss', |
| | | name: '附属设施', |
| | | checked: false, // 默认选中状态 |
| | | type: 'geojson', |
| | |
| | | ] |
| | | }, |
| | | { |
| | | code: 'hbss', |
| | | code: 'sewersHbss', |
| | | name: '环保设施', |
| | | checked: false, // 默认选中状态 |
| | | type: 'geojson', |
| | |
| | | ] |
| | | }, |
| | | { |
| | | code: 'pk', |
| | | code: 'sewersPk', |
| | | name: '排口', |
| | | checked: false, // 默认选中状态 |
| | | type: 'geojson', |
| | |
| | | ] |
| | | }, |
| | | { |
| | | code: 'qyxx', |
| | | code: 'sewersQyxx', |
| | | name: '区域信息', |
| | | checked: false, // 默认选中状态 |
| | | type: 'geojson', |