Merge remote-tracking branch 'origin/develop' into develop
# Conflicts:
# src/assets/css/map/map-panel-style.less
# src/components/LayerController/modules/LcServiceLayer.vue
# src/components/panel/RightSearchPanel.vue
# src/components/panel/topicSearch/SewersSearch.vue
# src/components/panel/topicSearch/SoilGroundWaterSearch.vue
# src/components/panel/topicSearch/SolidWasteSearch.vue
# src/components/panel/topicSearch/WaterWasteSearch.vue
4个文件已删除
7个文件已添加
27个文件已修改
2 文件已重命名
| | |
| | | import BasemapHelper from '@components/helpers/BasemapHelper' |
| | | import VectorLayerHelper from '@components/helpers/VectorLayerHelper' |
| | | // 初始化显示 |
| | | import ServiceLayerHelper from '@components/helpers/ServiceLayerHelper' |
| | | |
| | | import '@components/plugin/PathDrag' |
| | | // import '@components/plugin/PathDrag' |
| | | import MapConfig from '@/conf/MapConfig' |
| | | import '@components/plugin/PathDashFlow' // 流动线图 |
| | | import DownLoad from '@components/plugin/DownLoad' |
| | |
| | | window.map = map |
| | | window.L = L |
| | | |
| | | initTileLayersHelper(map) |
| | | |
| | | return map |
| | | } |
| | | |
| | |
| | | console.log(map) |
| | | return new BasemapHelper({ map }) |
| | | } |
| | | /** |
| | | * 业务底图初始化 |
| | | * @param map |
| | | * @param L |
| | | */ |
| | | const initTileLayersHelper = (map) => { |
| | | var serviceLayerHelper = new ServiceLayerHelper({ map }) |
| | | return serviceLayerHelper |
| | | } |
| | | |
| | | /** |
| | | * 矢量地图初始化 |
| | | * @param map |
| | |
| | | export default { |
| | | initMap, |
| | | initBasemapsHelper, |
| | | initTileLayersHelper, |
| | | initVectorLayersHelper |
| | | } |
| | |
| | | getSolidWasteSurveyDetail (data) { |
| | | return axios.get(mapUrl.getSolidWasteSurveyDetail, data) |
| | | }, |
| | | // 废气点加载 |
| | | getWasteGas (data) { |
| | | return axios.get(mapUrl.getWasteGas, data) |
| | | }, |
| | | // 废气明细表 |
| | | getWasteGasDetails (data) { |
| | | return axios.get(mapUrl.getWasteGasDetails, data) |
| | | }, |
| | | getWasteWater (data) { |
| | | return axios.get(mapUrl.getWasteWater, data) |
| | | }, |
| | |
| | | export const getSolidWasteSurveyDetail = $HOST + '/wasteSolid/getSolidWasteSurveyDetail' |
| | | |
| | | export const getWasteGas = $HOST + '/wasteGas/getWasteGas' |
| | | export const getWasteGasDetails = $HOST + '/wasteGas/getWasteGasMonitoringDetails' |
| | | |
| | | export const getWasteWater = $HOST + '/wasteWater/getWasteWater' |
| | | |
| | |
| | | @import "_map-variable"; |
| | | |
| | | /*全局设置***********/ |
| | | h1,h2,h3,h4,h5,h6,ul,li,p{ |
| | | h1, h2, h3, h4, h5, h6, ul, li, p { |
| | | padding: 0; |
| | | margin: 0; |
| | | list-style: none; |
| | | } |
| | | |
| | | |
| | | |
| | | |
| | | .el-button--primary { |
| | |
| | | display: none !important; |
| | | } |
| | | |
| | | .el-tabs--card>.el-tabs__header .el-tabs__nav{ |
| | | .el-tabs--card > .el-tabs__header .el-tabs__nav { |
| | | border: none; |
| | | } |
| | | |
| | | .el-tabs--card>.el-tabs__header .el-tabs__item{ |
| | | .el-tabs--card > .el-tabs__header .el-tabs__item { |
| | | border: none; |
| | | margin-left: 10px; |
| | | } |
| | |
| | | } |
| | | |
| | | /***************Company 图层 悬浮框样式。*********************************/ |
| | | .company-bindTooltip{ |
| | | background:none; |
| | | border:none; |
| | | color:red; |
| | | .company-bindTooltip { |
| | | background: none; |
| | | border: none; |
| | | color: red; |
| | | font-size: 16px; |
| | | font-weight: 900 !important; |
| | | text-shadow: 0 0 5px #fff; |
| | | box-shadow: none; |
| | | } |
| | | .company-bindTooltip-hover h3{ |
| | | |
| | | .company-bindTooltip-hover h3 { |
| | | text-align: center; |
| | | border-bottom:1px solid #0B3B6D; |
| | | border-bottom: 1px solid #0B3B6D; |
| | | margin: 0; |
| | | padding:0; |
| | | padding: 0; |
| | | } |
| | | .company-bindTooltip-hover ul{ |
| | | |
| | | .company-bindTooltip-hover ul { |
| | | list-style: none; |
| | | margin: 0; |
| | | padding:0; |
| | | padding: 0; |
| | | width: 260px; |
| | | display: flex; |
| | | flex-wrap: wrap; |
| | | } |
| | | .company-bindTooltip-hover ul li{ |
| | | |
| | | .company-bindTooltip-hover ul li { |
| | | margin: 0; |
| | | padding:3px 0; |
| | | padding: 3px 0; |
| | | width: 50%; |
| | | } |
| | | |
| | | /*************** PublicTable 表格样式。*********************************/ |
| | | .cell { |
| | | padding: 0; |
| | | } |
| | | |
| | | .el-table .cell, .el-table--border td:first-child .cell, .el-table--border th:first-child .cell { |
| | | /* padding-left: 10px; */ |
| | | text-align: center; |
| | | } |
| | | .el-table th>.cell { |
| | | color: #00fff6; |
| | | } |
| | | .el-table__row>td{ |
| | | border: none; |
| | | } |
| | | .el-table::before {//去掉最下面的那一条线 |
| | | height: 0; |
| | | } |
| | | .el-table td, .el-table th.is-leaf { |
| | | border: none; |
| | | } |
| | | .el-table .warning-row { |
| | | background: #28304d; |
| | | } |
| | | |
| | | .el-table .success-row { |
| | | background: #30455f; |
| | | } |
| | | /***********************************************动画效果************/ |
| | | .transition{ |
| | | transition: all .5s; |
| | |
| | | <el-tag>烟尘 : 6.93 标准 : 30</el-tag> |
| | | <el-tag>废气流量 : 120343.18</el-tag> |
| | | </div> |
| | | <div style="width:750px;height:260px;" id="echarts" ref="main"></div> |
| | | <div class="form-echrts"> |
| | | <div> |
| | | <el-button size="mini" round @click="dialogVisible = true">明细表</el-button> |
| | | <el-dialog :visible.sync="dialogVisible" |
| | | :append-to-body="true" |
| | | width="66%" |
| | | center |
| | | > |
| | | <div class="el-dialog-div" style="height: 600px"> |
| | | <public-detailed-list v-bind="$attrs"></public-detailed-list> |
| | | </div> |
| | | </el-dialog> |
| | | </div> |
| | | <div style="width:750px;height:260px;" id="echarts" ref="main"> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import PublicDetailedList from '@components/BaseNav/PublicBounced/GasComponents/PublicDetailedList' |
| | | export default { |
| | | name: 'ECharts', |
| | | components: { |
| | | PublicDetailedList |
| | | }, |
| | | data () { |
| | | return { |
| | | dialogVisible: false |
| | | } |
| | | }, |
| | | methods: { |
| | | drawChart: function () { |
| | | const myChart = this.$echarts.init(this.$refs.main) |
| | |
| | | border: none; |
| | | padding: 0 15px; |
| | | } |
| | | #echarts{ |
| | | margin: 0; |
| | | padding: 0; |
| | | border: 1px solid #396d83; |
| | | margin: 10px 10px 10px 10px; |
| | | .form-echrts{ |
| | | width: 100%; |
| | | height: 100%; |
| | | border: 1px solid #396d83; |
| | | //margin: 10px 10px 10px 10px; |
| | | .el-dialog-div{ |
| | | //height: 50vh!important; |
| | | overflow: auto; |
| | | //overflow: hidden; |
| | | } |
| | | #echarts { |
| | | margin: 0; |
| | | padding: 0; |
| | | //border: 1px solid #396d83; |
| | | //margin: 10px 10px 10px 10px; |
| | | } |
| | | } |
| | | </style> |
| | |
| | | <li @click='tabTaggle("ECharts")'>月数据</li> |
| | | <li @click='tabTaggle("ECharts")'>人工数据</li> |
| | | </ul> |
| | | <component :is="currentTab"></component> |
| | | <component :is="currentTab" v-bind="$attrs"></component> |
| | | </div> |
| | | </template> |
| | | |
New file |
| | |
| | | <template> |
| | | <div class="PublicDetailedList"> |
| | | <el-table :data="tableData" max-height="600px"> |
| | | <el-table-column prop="OnLineMonEmissPointName" label="排放点"></el-table-column> |
| | | <el-table-column prop="MonTimeStr" label="监测时间"></el-table-column> |
| | | <el-table-column label="氮氧化物"> |
| | | <el-table-column prop="MonQty" label="浓度(mg/m³)"></el-table-column> |
| | | <el-table-column prop="OrglQty" label="折算值(mg/m³)"></el-table-column> |
| | | <el-table-column prop="ConvertQty" label="标准值(mg/m³)"></el-table-column> |
| | | <el-table-column prop="EmissQty" label="排放量(kg/h)"></el-table-column> |
| | | </el-table-column> |
| | | <el-table-column label="二氧化硫"> |
| | | <el-table-column prop="MonQty" label="浓度(mg/m³)"></el-table-column> |
| | | <el-table-column prop="OrglQty" label="折算值(mg/m³)"></el-table-column> |
| | | <el-table-column prop="ConvertQty" label="标准值(mg/m³)"></el-table-column> |
| | | <el-table-column prop="EmissQty" label="排放量(kg/h)"></el-table-column> |
| | | </el-table-column> |
| | | <el-table-column label="烟尘"> |
| | | <el-table-column prop="MonQty" label="浓度(mg/m³)"></el-table-column> |
| | | <el-table-column prop="OrglQty" label="折算值(mg/m³)"></el-table-column> |
| | | <el-table-column prop="ConvertQty" label="标准值(mg/m³)"></el-table-column> |
| | | <el-table-column prop="EmissQty" label="排放量(kg/h)"></el-table-column> |
| | | </el-table-column> |
| | | <el-table-column label="废气流量"> |
| | | <el-table-column prop="StdValue" label="气量"></el-table-column> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | export default { |
| | | name: 'PublicDetailedList', |
| | | data () { |
| | | return { |
| | | tableData: [] |
| | | } |
| | | }, |
| | | mounted () { |
| | | this.tableData = this.$attrs.getWasteGasDetails |
| | | console.log(this.$attrs.getWasteGasDetails) |
| | | } |
| | | } |
| | | |
| | | </script> |
| | | |
| | | <style scoped> |
| | | .PublicDetailedList{ |
| | | /*height: 100%*/ |
| | | } |
| | | </style> |
| | |
| | | <div class="border_corner border_corner_left_bottom"></div> |
| | | <div class="border_corner border_corner_right_bottom"></div> |
| | | <div class="main"> |
| | | <div class="main-video"> |
| | | <div class="main-table"> |
| | | <el-table |
| | | stripe='stripe' |
| | | :height="300" |
| | | tooltip-effect="dark" |
| | | :data="displayContentTableData" |
| | | :row-class-name="tableRowClassName" |
| | | > |
| | | <el-table-column prop="StoragePlaceId" label="序号"></el-table-column> |
| | | <el-table-column prop="StoragePlaceTypeName" label="类别"></el-table-column> |
| | | <el-table-column prop="StoragePlaceName" label="固废名称"></el-table-column> |
| | | <el-table-column prop="StorageZDMJ" label="代码"></el-table-column> |
| | | <el-table-column prop="StorageZCNL" label="产生量"></el-table-column> |
| | | <el-table-column prop="StorageZCL" label="储存量"></el-table-column> |
| | | <el-table-column prop="StorageZCNL" label="产生量(t)"></el-table-column> |
| | | <el-table-column prop="StorageZCL" label="储存量(t)"></el-table-column> |
| | | <el-table-column prop="StorageType" label="产生装置"></el-table-column> |
| | | </el-table> |
| | | </div> |
| | |
| | | this.$nextTick(() => { |
| | | this.displayContentTable.forEach(item => { |
| | | this.displayContentTableData = item |
| | | // console.log(item[0]) |
| | | }) |
| | | }) |
| | | }, |
| | | methods: { |
| | | tableRowClassName ({ |
| | | row, |
| | | rowIndex |
| | | }) { |
| | | if (rowIndex % 2 === 0) { |
| | | return 'warning-row' |
| | | } else if (rowIndex % 2 === 1) { |
| | | return 'success-row' |
| | | } |
| | | return '' |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="less" scoped> |
| | | |
| | | .win { |
| | | position: relative; |
| | | background-color: rgba(33, 41, 69, 0.9); |
| | | min-height: 300px; |
| | | } |
| | | |
| | | .main { |
| | | width: 100%; |
| | | height: 100%; |
| | | |
| | | .main-video { |
| | | .main-table { |
| | | width: 100%; |
| | | min-height: 195px; |
| | | //border: 1px @color solid; |
| | | |
| | | video { |
| | | width: 100%; |
| | |
| | | width: 14px; |
| | | height: 14px; |
| | | background: rgba(0, 0, 0, 0); |
| | | border: 1.5px solid #47d5ea; |
| | | border: 1px solid #47d5ea; |
| | | } |
| | | |
| | | .border_corner_left_top { |
| | |
| | | </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="18">控制级别名称:{{ setWasteGasdata.ContrLevelShowName }}</el-col> |
| | | <el-col :span="18">内/外排口:{{ setWasteGasdata.OrOutPortName }}</el-col> |
| | | </el-row> |
| | | </div> |
| | | <div v-else-if="value === 'gufei'"> |
| | | <el-row type="flex" class="row-bg row-item-one" justify="space-around"> |
| | | <el-col :span="8">监测点名称:{{ displayContentTab2.StoragePlaceName }}</el-col> |
| | | <el-col :span="8">生产单位:{{ displayContentTab2.StoragePlaceName }}</el-col> |
| | | <el-col :span="8">排放类型加载:{{ displayContentTab2.DesignFloorArea }}</el-col> |
| | | </el-row> |
| | | <el-row type="flex" class="row-bg" justify="space-around"> |
| | | <el-col :span="8">排放去向:{{ displayContentTab2.StorageQty }}</el-col> |
| | | <el-col :span="8">控制级别名称:{{ displayContentTab2.SurplusFloorArea }}</el-col> |
| | | <el-col :span="8">内/外排口:{{ displayContentTab2.StorageDate }}</el-col> |
| | | </el-row> |
| | | </div> |
| | | <div v-else-if="value === 'gufei'"> |
| | | <ul> |
| | | <li>场所名称:{{ tabData.StoragePlaceName }}</li> |
| | | <li>贮存能力:{{ tabData.StorageQty }}(吨)</li> |
| | | <li>剩余贮存能力:{{ tabData.SurplusFloorArea }}(吨)</li> |
| | | <li>占地面积(㎡):{{ tabData.DesignFloorArea }}(㎡)</li> |
| | | <li>最近贮存日期:{{ tabData.StorageDate }}</li> |
| | | <li></li> |
| | | </ul> |
| | | </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> |
| | |
| | | props: ['displayContentTab', 'value', 'setWasteGasdata'], |
| | | data () { |
| | | return { |
| | | displayContentTab2: [] |
| | | tabData: [] |
| | | } |
| | | }, |
| | | mounted () { |
| | | this.$nextTick(() => { |
| | | this.displayContentTab.forEach(item => { |
| | | this.displayContentTab2 = item |
| | | // console.log(item) |
| | | }) |
| | | }) |
| | | this.processingData() |
| | | }, |
| | | methods: { |
| | | processingData () { |
| | | for (var i = 0; i < this.displayContentTab.length; i++) { |
| | | console.log(this.displayContentTab[i]) |
| | | this.tabData = this.displayContentTab[i] |
| | | } |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | |
| | | |
| | | .win { |
| | | position: relative; |
| | | margin-bottom: 13px; |
| | | background-color: rgba(33, 41, 69,0.9); |
| | | margin-bottom: 10px; |
| | | background-color: rgba(33, 41, 69, 0.9); |
| | | } |
| | | |
| | | .main { |
| | | width: 100%; |
| | | height: 100%; |
| | | .main-matter{ |
| | | |
| | | .main-matter { |
| | | font-size: 13px; |
| | | font-weight: normal; |
| | | padding: 10px 6px; |
| | | //padding: 10px 6px; |
| | | min-height: 70px; |
| | | border: 1px solid #396d83; |
| | | .row-item-one{ |
| | | |
| | | .row-item-one { |
| | | margin-bottom: 7px; |
| | | } |
| | | |
| | | .el-row { |
| | | width: 100%; |
| | | color: #00d0f9; |
| | | display: flex; |
| | | font-size: 12px !important; |
| | | .el-col{ |
| | | |
| | | .el-col { |
| | | flex: 1; |
| | | width: 100%; |
| | | background-color: #243a55;; |
| | | background-color: #243a55; |
| | | text-align: center; |
| | | line-height: 28px; |
| | | margin-left: 6px; |
| | | border-radius: 4px; |
| | | &:nth-child(1){ |
| | | margin-left:0; |
| | | |
| | | &:nth-child(1) { |
| | | margin-left: 0; |
| | | } |
| | | } |
| | | } |
| | | |
| | | ul { |
| | | width: 100%; |
| | | height: 100%; |
| | | display: flex; |
| | | align-items: center; |
| | | justify-content: space-around; |
| | | flex-wrap: wrap; |
| | | line-height: 35px; |
| | | |
| | | li { |
| | | text-align: center; |
| | | width: 32%; |
| | | height: 30px; |
| | | margin: 5px auto; |
| | | background-color: #243a55; |
| | | color: #00d0f9; |
| | | border-radius: 4px; |
| | | } |
| | | |
| | | li:last-child { |
| | | visibility: hidden |
| | | } |
| | | } |
| | | } |
| | | } |
| | | .border_corner{ |
| | | |
| | | .border_corner { |
| | | z-index: 999; |
| | | position: absolute; |
| | | width: 10px; |
| | | height: 10px; |
| | | background: rgba(0,0,0,0); |
| | | border: 1.5px solid #47d5ea; |
| | | //height: 10px; |
| | | background: rgba(0, 0, 0, 0); |
| | | border: 1px solid #47d5ea; |
| | | } |
| | | .border_corner_left_top{ |
| | | |
| | | .border_corner_left_top { |
| | | top: 0; |
| | | left: 0; |
| | | border-right: none; |
| | | border-bottom: none; |
| | | } |
| | | .border_corner_right_top{ |
| | | |
| | | .border_corner_right_top { |
| | | top: 0; |
| | | right: 0; |
| | | border-left: none; |
| | | border-bottom: none; |
| | | } |
| | | .border_corner_left_bottom{ |
| | | |
| | | .border_corner_left_bottom { |
| | | bottom: 0; |
| | | left: 0; |
| | | border-right: none; |
| | | border-top: none; |
| | | } |
| | | .border_corner_right_bottom{ |
| | | |
| | | .border_corner_right_bottom { |
| | | bottom: 0; |
| | | right: 0; |
| | | border-left: none; |
| | |
| | | <div class="border_corner border_corner_left_bottom"></div> |
| | | <div class="border_corner border_corner_right_bottom"></div> |
| | | <div class="main"> |
| | | <div class="main-video"> |
| | | <!-- <div class="main-video">--> |
| | | <video controls> |
| | | <source src="movie.mp4" type="video/mp4"> |
| | | <source src="movie.ogg" type="video/ogg"> |
| | | </video> |
| | | </div> |
| | | <!-- </div>--> |
| | | </div> |
| | | </div> |
| | | </template> |
| | |
| | | .main { |
| | | border: 1px solid #396d83; |
| | | padding: 6px; |
| | | .main-video { |
| | | width: 100%; |
| | | height: 100%; |
| | | //.main-video { |
| | | height: 378px; |
| | | video { |
| | | width: 100%; |
| | | height: 100%; |
| | | height: 378px; |
| | | outline: none; |
| | | } |
| | | } |
| | | //} |
| | | } |
| | | .border_corner{ |
| | | z-index: 999; |
| | |
| | | width: 14px; |
| | | height: 14px; |
| | | background: rgba(0,0,0,0); |
| | | border: 1.5px solid #47d5ea; |
| | | border: 1px solid #47d5ea; |
| | | } |
| | | .border_corner_left_top{ |
| | | top: 0; |
| | |
| | | </div> |
| | | <div class="public-bounced-content"> |
| | | <div class="public-bounced-content-left"> |
| | | <PublicTabs :displayContentTab="displayContentTab" :value="value" |
| | | :setWasteGasdata="setWasteGasdata"></PublicTabs> |
| | | <public-tabs :displayContentTab="displayContentTab" :value="value" |
| | | :setWasteGasdata="setWasteGasdata"></public-tabs> |
| | | <div class="public-bounced-content-left-bottom"> |
| | | <PublicTable v-if="value === 'gufei'" :displayContentTable="displayContentTable"></PublicTable> |
| | | <PublicChart v-else></PublicChart> |
| | | <public-table v-if="value === 'gufei'" |
| | | :displayContentTable="displayContentTable"></public-table> |
| | | <public-chart v-else></public-chart> |
| | | </div> |
| | | </div> |
| | | <div class="public-bounced-content-right"> |
| | | <PublicVideo></PublicVideo> |
| | | <public-video></public-video> |
| | | </div> |
| | | </div> |
| | | </div> |
| | |
| | | displayContentTab: '', |
| | | displayContentTable: '', |
| | | flag: false, |
| | | value: '' |
| | | value: '', |
| | | getWasteGasDetails: [] |
| | | } |
| | | }, |
| | | methods: { |
| | | setData (dataBasic, dataDetailed, value) { |
| | | this.flag = true |
| | | this.value = value |
| | | dataBasic.forEach(item => { |
| | | this.displayContentTitle = item.StoragePlaceName |
| | | }) |
| | |
| | | this.flag = true |
| | | this.value = value |
| | | }, |
| | | setGasData (data, value) { |
| | | setGasData (data, dataDetails, value) { |
| | | this.setWasteGasdata = data |
| | | this.getWasteGasDetails = dataDetails |
| | | // console.log(dataDetails) |
| | | this.displayContentTitle = data.Name |
| | | this.flag = true |
| | | this.value = value |
| | |
| | | |
| | | <script> |
| | | import '@assets/css/map/magic.min.css' |
| | | import presets from './layerControllerPresets' |
| | | |
| | | import iconSetting from '@/assets/images/map-pages/icon/setting.png' |
| | | import LcServiceLayer from './modules/LcServiceLayer' |
| | |
| | | } |
| | | } |
| | | }, |
| | | mounted () { |
| | | this.$nextTick(function () { |
| | | this.init() |
| | | }) |
| | | }, |
| | | methods: { |
| | | showPanel () { |
| | | this.layerControllerVisible = !this.layerControllerVisible |
| | | }, |
| | | init () { |
| | | this.initPreset() |
| | | }, |
| | | initPreset () { |
| | | if (this.preset !== 'default') { |
| | | const prmPreset = presets[this.preset] |
| | | Object.assign(this.layerControllerVisible, prmPreset) // 防止预设参数与默认参数不一致导致报错,如果没有按照您的配置发生改变,请检查拼写是否正确 |
| | | if (prmPreset === 'undefined') { |
| | | console.log('该图层控制面板的预设没有找到,请检查预设名称是否正确!') |
| | | } else { |
| | | this.$store.commit('updateLayerControllerVisible', this.layerControllerVisible) |
| | | } |
| | | } |
| | | }, |
| | | switchPanel () { |
| | | this.panelSwitch.main = !this.panelSwitch.main |
| | |
| | | iconAnchor: [25, 25] |
| | | }) |
| | | }) |
| | | /* marker.bindTooltip(getSolidWasteData[i].Name, { |
| | | permanent: true, |
| | | offset: [0, 14], |
| | | direction: 'bottom', |
| | | className: 'company-bindTooltip' |
| | | }) */ |
| | | layer.addLayer(marker) |
| | | } |
| | | } |
| | |
| | | this.setPanTo(e.latlng, 200) |
| | | } |
| | | |
| | | // flayTo() |
| | | // flayTo() 弹框的可滑动事件 |
| | | this.setPanTo = (pos, value) => { |
| | | var position = pos |
| | | position = window.map.latLngToLayerPoint(position) |
| | |
| | | this.clickListener = async (e) => { |
| | | // console.log(e) |
| | | this.animalService.pulseEffect(e.latlng) |
| | | // const dataValue = { |
| | | // StoragePlaceId: e.layer.options.test.StoragePlaceId |
| | | // } |
| | | // const result = await mapApi.getWasteGas(dataValue) |
| | | const dataValue = { |
| | | StoragePlaceId: e.layer.options.test.StoragePlaceId |
| | | } |
| | | const result = await mapApi.getWasteGasDetails(dataValue) |
| | | // console.log(result.Result.DataInfo) |
| | | const PublicBounced = window.Vue.extend(publicBounced) |
| | | const instance = new PublicBounced() |
| | | instance.setGasData(e.layer.options.test, 'feiqi') |
| | | console.log(e.layer.options.test) |
| | | instance.setGasData(e.layer.options.test, result.Result.DataInfo, 'feiqi') |
| | | // console.log(e.layer.options.test) |
| | | instance.$mount() |
| | | document.body.appendChild(instance.$el) |
| | | this.setPanTo(e.latlng, 240) |
| | | } |
| | | // 不同类型图片加载 |
| | | this.differentTypes = (ContrLevel) => { |
| | |
| | | } |
| | | return effectOfChange |
| | | } |
| | | this.setPanTo = (pos, value) => { |
| | | var position = pos |
| | | position = window.map.latLngToLayerPoint(position) |
| | | position.y += value |
| | | position = window.map.layerPointToLatLng(position) |
| | | window.map.flyTo(position) |
| | | } |
| | | } |
| | |
| | | <div class="wms-panel"> |
| | | <el-scrollbar class="wms-panel-scrollbar"> |
| | | <div v-for="item in serviceLayers" :key="item.code" class="layerbox"> |
| | | <!-- 一级图层遍历 --> |
| | | <div> |
| | | <input type="checkbox" :name="'wmsLayer_'+item.code" :checked="item.checked" :value="item.code" @change="swAllLayers(item)"/>{{ item.name }} |
| | | <input type="checkbox" :name="'wmsLayer_'+item.code" :checked="item.checked" :value="item.code" |
| | | @change="swAllLayers(item)"/>{{ item.name }} |
| | | </div> |
| | | <div class="layerbox-item"> |
| | | <!-- 二级图层遍历 --> |
| | | <div class="basemap-layer-item" v-for="itm in item.layers" :key="itm.code"> |
| | | <input type="checkbox" |
| | | :name="'wmsSublayers_'+item.code+'_'+itm.code" |
| | | :checked="itm.checked" |
| | | :value="itm.code" |
| | | @change="swWmsLayer(itm)"/>{{ itm.name }} |
| | | <!-- 三级图层遍历 --> |
| | | <div style="width: 100%"> |
| | | <div class="basemap-layer-item" v-for="layer in itm.layers" :key="layer.code"> |
| | | <input type="checkbox" |
| | | :name="'wmsSublayers_'+item.code+'_'+layer.code" |
| | | :checked="layer.checked" |
| | | :value="layer.code" |
| | | @change="swWmsLayer(layer)"/>{{ layer.name }} |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </el-scrollbar> |
| | | </div> |
| | | <lc-service-layer-filter v-if="layerFilterVisible" ref="serviceLayerFilter"></lc-service-layer-filter> |
| | | <lc-service-layer-filter ref="serviceLayerFilter"></lc-service-layer-filter> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | export default { |
| | | name: 'LcServiceLayer', |
| | | components: { LcServiceLayerFilter }, |
| | | data () { |
| | | return { |
| | | layerFilterVisible: false |
| | | } |
| | | }, |
| | | computed: { |
| | | serviceLayers () { |
| | | return this.$store.state.map.serviceLayers.LayerSewersLine |
| | |
| | | } |
| | | // this.updateWms() |
| | | }, |
| | | swFilter (item) { |
| | | this.layerFilterVisible = !this.layerFilterVisible |
| | | }, |
| | | updateServiceLayerList () { |
| | | |
| | | }, |
| | |
| | | margin: 10px; |
| | | text-align: center; |
| | | } |
| | | |
| | | .btn-filter { |
| | | cursor: pointer; |
| | | color: #ffffff; |
| | | } |
| | | |
| | | .wms-panel { |
| | | |
| | | .wms-panel-scrollbar{ |
| | |
| | | import store from '@/store' |
| | | import WfsLayerService from './WfsLayerService' |
| | | import BusiLayerService from './BusiLayerService' |
| | | import WmsLayerService from './WmsLayerService' |
| | |
| | | this.layers = {} |
| | | } |
| | | |
| | | init () { |
| | | init (layerConfig) { |
| | | // 1. 遍历layer config |
| | | var layerConfig = store.state.map.serviceLayers.LayerSewersLine |
| | | for (var i = 0, l = layerConfig.length; i < l; i++) { |
| | | var config = layerConfig[i] |
| | | var layers = config.layers |
| | | for (var j = 0; j < layers.length; j++) { |
| | | var childConfig = layers[j] |
| | | var checked = childConfig.checked |
| | | checked && this.load(childConfig) |
| | | } |
| | | layers && this.init(config.layers) |
| | | |
| | | var checked = config.checked |
| | | checked && this.load(config) |
| | | } |
| | | } |
| | | |
| | |
| | | * 加载业务数据图层 |
| | | */ |
| | | |
| | | import styles from '../../../conf/Styles' |
| | | import { STYLES } from '../../../conf/Constants' |
| | | import AjaxUtils from '../../../utils/AjaxUtils' |
| | | |
| | | class WfsLayerService { |
| | |
| | | this.L.geoJSON(features, { |
| | | style: function (feature) { |
| | | return { |
| | | fill: styles.defaultLineStyle.fill, |
| | | weight: styles.defaultLineStyle.weight, |
| | | fillColor: styles.defaultLineStyle.fillColor, |
| | | color: styles.defaultLineStyle.color, |
| | | fillOpacity: styles.defaultLineStyle.fillOpacity, |
| | | opacity: styles.defaultLineStyle.opacity, |
| | | dashArray: styles.defaultLineStyle.dashArray, |
| | | dashSpeed: styles.defaultLineStyle.dashSpeed |
| | | fill: STYLES.FILL, |
| | | weight: STYLES.WEIGHT, |
| | | fillColor: STYLES.FILL_COLOR, |
| | | color: STYLES.COLOR, |
| | | fillOpacity: STYLES.FILL_OPACITY, |
| | | opacity: STYLES.OPACITY, |
| | | dashArray: STYLES.DASH_ARRAY, |
| | | dashSpeed: STYLES.DASH_SPPED |
| | | } |
| | | }, |
| | | pointToLayer: (geoJsonPoint, latlng) => { |
| | |
| | | img: { |
| | | // url: 'assets/images/map/marker-icon.png', |
| | | url: '/assets/images/map/' + icon, |
| | | size: styles.defaultLineStyle.size |
| | | size: STYLES.ICON_SIZE |
| | | } |
| | | }) |
| | | }, |
| | |
| | | const icon = this.config.icon |
| | | const type = e.target.feature.geometry.type |
| | | if (type === 'LineString' || type === 'MultiLineString') { |
| | | layer.setStyle({ weight: styles.defaultLineStyle.weight, color: styles.defaultLineStyle.color }) |
| | | layer.setStyle({ weight: STYLES.WEIGHT, color: STYLES.COLOR }) |
| | | } |
| | | if (type === 'Point' || type === 'MultiPoint') { |
| | | layer.setStyle({ |
| | | img: { |
| | | url: '/assets/images/map/' + icon, |
| | | size: styles.defaultLineStyle.size |
| | | size: STYLES.ICON_SIZE |
| | | } |
| | | }) |
| | | } |
| | |
| | | <div :class="[isCollapse? 'btn-stretch':'btn-shrink']" ></div> |
| | | </div> |
| | | |
| | | <div :class="'search-container map-background'"> |
| | | <div class="el-message-box__content" style="padding:6px;font-size: 13px;"> |
| | | <component :title="title" :is="gcComp"></component> |
| | | </div> |
| | | <div :class="'search-container map-background'"> |
| | | <div class="el-message-box__content" style="padding:6px;font-size: 13px;"> |
| | | <component :title="title" :is="gcComp"></component> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </template> |
| | |
| | | <template> |
| | | <div class="sewers-search" v-if="gdVisible"> |
| | | <div class="query-search" v-if="gdVisible"> |
| | | <div class="search-title">{{title}}</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-select style="width: 100%" v-model="form.areaVal" @change="areaType" :popper-class="'select-down'"> |
| | | <el-option |
| | | v-for="item in areaTypeOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | v-for="item in areaTypeOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | |
| | | <!-- <span class="location-btn" @click="handleLocation(item)">588</span> --> |
| | | <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" |
| | | small |
| | | @current-change="handlePage" |
| | | :page-size=pageSize |
| | | layout="prev, pager, next" |
| | | :total=total |
| | | :current-page=current |
| | | class="warnPagination" |
| | | > |
| | | </el-pagination> |
| | | </el-card> |
| | |
| | | <template> |
| | | <div class="sewers-search" v-if="gdVisible"> |
| | | <div class="query-search" v-if="gdVisible"> |
| | | <div class="search-title">{{title}}</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-select style="width: 100%" v-model="form.areaVal" @change="areaType" :popper-class="'select-down'"> |
| | | <el-option |
| | | v-for="item in areaTypeOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | v-for="item in areaTypeOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="企业名称" size="mini"> |
| | | <el-select style="width: 100%" v-model="form.enterpriseVal" @change="enterpriseType" :popper-class="'select-down'"> |
| | | <el-option |
| | | v-for="item in enterpriseTypeOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | v-for="item in enterpriseTypeOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="二级单位" size="mini"> |
| | | <el-select style="width: 100%" v-model="form.enterpriseSubunitsVal" @change="enterpriseSubunitsType" :popper-class="'select-down'"> |
| | | <el-option |
| | | v-for="item in enterpriseSubunitsTypeOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | v-for="item in enterpriseSubunitsTypeOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="风险级别" size="mini"></el-form-item> |
| | | <el-radio-group v-model="form.type" class="levelOfRisk"> |
| | | <el-radio v-for="(item,index) in levelOfRisk" :label="item.value" :key="index"><span class="levelOfRisk-type">{{item.name}}<i :style="'background:'+item.color"></i></span></el-radio> |
| | | <el-radio v-for="(item,index) in levelOfRisk" :label="item.value" :key="index"><span class="levelOfRisk-type">{{item.name}}<i :style="'background:'+item.color"></i></span></el-radio> |
| | | </el-radio-group> |
| | | <div class="rightButtonSearch"> |
| | | <el-input v-model="form.keyword" size="mini" placeholder="在此输入关键字搜索"> |
| | |
| | | <div class="environmental-risk-list" v-for="(item,index) in 5" :key="index" ><!-- v-for="(item,index) in list" :key="index" --> |
| | | <i class="state"></i> |
| | | <div> |
| | | <h3>###炼化部</h3> |
| | | <p>所属部门:<span>炼化部</span></p> |
| | | <p>风险级别:<span>三级</span></p> |
| | | <h3>###炼化部</h3> |
| | | <p>所属部门:<span>炼化部</span></p> |
| | | <p>风险级别:<span>三级</span></p> |
| | | </div> |
| | | </div> |
| | | </el-scrollbar> |
| | | <!-- <span class="location-btn" @click="handleLocation(item)">588</span> --> |
| | | <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" |
| | | small |
| | | @current-change="handlePage" |
| | | :page-size=pageSize |
| | | layout="prev, pager, next" |
| | | :total=total |
| | | :current-page=current |
| | | class="warnPagination" |
| | | > |
| | | </el-pagination> |
| | | </el-card> |
| | |
| | | <template> |
| | | <div class="sewers-search" v-if="gdVisible"> |
| | | <div class="query-search" v-if="gdVisible"> |
| | | <div class="search-title">{{title}}</div> |
| | | <div class="search-panel "> |
| | | <el-form ref="form" :model="form" label-width="90px" class="search-form"> |
| | |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="二级单位" size="mini"> |
| | | <el-select style="width: 100%" v-model="form.enterpriseSubunitsVal" @change="enterpriseSubunitsType" :popper-class="'select-down'"> |
| | | <el-option |
| | | v-for="item in enterpriseSubunitsTypeOptions" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value"> |
| | | </el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="三级单位" size="mini"> |
| | | <el-select style="width: 100%" v-model="form.enterpriseSubunitsVal" @change="enterpriseSubunitsType" :popper-class="'select-down'"> |
| | | <el-option |
| | | v-for="item in enterpriseSubunitsTypeOptions" |
| | |
| | | { name: '正常', value: '2' }, |
| | | { name: '超标', value: '3' }, |
| | | { name: '异常', value: '4' }, |
| | | { name: '停产', value: '4' } |
| | | { name: '停产', value: '5' } |
| | | ] |
| | | } |
| | | }, |
| | |
| | | enterpriseSubunitsType (val) { |
| | | |
| | | }, |
| | | // 三级单位筛选 |
| | | async handleSearch () { |
| | | const param = { |
| | | pipelineType: this.form.pipelineType, |
| | |
| | | // 数据的传递 |
| | | transferData: '' |
| | | }, |
| | | // 数据搜索之后,存储数据的 |
| | | searchDataDisplay: [] |
| | | } |
| | | }, |
| | |
| | | width="200" |
| | | trigger="click" |
| | | popper-class="popovers" |
| | | title="XXX1明细表" |
| | | title="监测点明细表" |
| | | > |
| | | <refinery></refinery> |
| | | <u slot="reference" style="color: #00ffff">{{row.normal}}</u> |
| | |
| | | sewersAreaGs: 'Company.js' |
| | | } |
| | | |
| | | export const STYLES = { |
| | | FILL: true, |
| | | WEIGHT: 3, |
| | | FILL_COLOR: '#73b2ff', |
| | | COLOR: '#73b2ff', |
| | | FILL_OPACITY: 0.2, |
| | | OPACITY: 1, |
| | | DASH_ARRAY: '4,4', |
| | | DASH_SPPED: -5, |
| | | ICON_SIZE: [20, 20] |
| | | } |
| | | |
| | | export const props = { |
| | | pipename: '管线名称', |
| | | pipecode: '管线编码', |
New file |
| | |
| | | /** |
| | | * 管线数据 |
| | | */ |
| | | import { LayerPipeLines } from './layers/LayerPipeLines' |
| | | import { LayerArea } from './layers/LayerArea' |
| | | import { LayerPk } from './layers/LayerPk' |
| | | |
| | | export const LayerPipeLine = { |
| | | code: 'sewersPipeLine', |
| | | name: '管线数据', |
| | | checked: true, |
| | | layers: [LayerPipeLines, LayerPk, LayerArea] |
| | | } |
New file |
| | |
| | | /** |
| | | * 区域 |
| | | */ |
| | | import { LayerWasteWater } from './layers/LayerWasteWater' |
| | | import { LayerWasteGas } from './layers/LayerWasteGas' |
| | | import { LayerWasteSolid } from './layers/LayerWasteSolid' |
| | | import { LayerAirQuality } from './layers/LayerAirQuality' |
| | | import { LayerEnvRisk } from './layers/LayerEnvRisk' |
| | | import { LayerSoilGroundWater } from './layers/LayerSoilGroundWater' |
| | | |
| | | export const LayerTopic = { |
| | | code: 'sewersTopic', |
| | | name: '专题图层', |
| | | checked: true, |
| | | layers: [LayerWasteWater, LayerWasteGas, LayerWasteSolid, LayerAirQuality, LayerEnvRisk, LayerSoilGroundWater] |
| | | } |
| | |
| | | import * as L from 'leaflet' |
| | | import TDT from './TDT' |
| | | import { LayerSewersPoint } from './layers/LayerSewers' |
| | | import { LayerWasteWater } from './layers/LayerWasteWater' |
| | | import { LayerSolidWaste } from './layers/LayerSolidWaste' |
| | | import { LayerWasteGas } from './layers/LayerWasteGas' |
| | | import { LayerPipeLine } from './layers/LayerPipeLine' |
| | | import { LayerArea } from './layers/LayerArea' |
| | | import { LayerPk } from './layers/LayerPk' |
| | | import { LayerFsss } from './layers/LayerFsss' |
| | | import { LayerHbss } from './layers/LayerHbss' |
| | | import { LayerTopic } from './LayerTopic' |
| | | import { LayerPipeLine } from './LayerPipeLine' |
| | | |
| | | const curWwwPath = window.document.location.href |
| | | const pathname = window.document.location.pathname |
| | |
| | | // center: [26, 104], |
| | | center: [38.828558921813965, 117.41676807403564], |
| | | // center: [29.454345703125, 113.40362548828125], |
| | | zoom: 14, |
| | | zoom: 5, |
| | | worldCopyJump: true, |
| | | inertia: true, |
| | | zoomControl: false, |
| | |
| | | IntranetBaseMaps: TDT.intranet, |
| | | InternetBaseMaps: TDT.internet, |
| | | Layers: { |
| | | LayerSewersLine: [LayerPipeLine, LayerFsss, LayerHbss, LayerArea, LayerPk, LayerWasteWater, LayerWasteGas, LayerSolidWaste], |
| | | LayerSewersLine: [LayerPipeLine, LayerTopic], |
| | | layerSewersPoint: LayerSewersPoint |
| | | } // 污雨水图层配置 |
| | | } |
New file |
| | |
| | | /** |
| | | * 区域 |
| | | */ |
| | | const APP_GIS_HOST_2 = 'http://xearth.cn:8088' |
| | | const WFS_URL = APP_GIS_HOST_2 + '/server/ogcserver/PipeLine/wfs' |
| | | export const LayerAirQuality = { |
| | | code: 'sewersAirQuality', |
| | | name: '空气质量', |
| | | checked: true, |
| | | layers: [ |
| | | { |
| | | code: 'airQualityStation', |
| | | name: '监测站', |
| | | sname: '监测站', // 表名 |
| | | checked: true, // 默认选中状态 |
| | | url: WFS_URL + '?TYPENAME=公司', |
| | | minZoom: 10 |
| | | } |
| | | ] |
| | | } |
New file |
| | |
| | | /** |
| | | * 流域 |
| | | */ |
| | | const APP_GIS_HOST_2 = 'http://xearth.cn:8088' |
| | | const WFS_URL = APP_GIS_HOST_2 + '/server/ogcserver/PipeLine/wfs' |
| | | export const LayerBasin = { |
| | | code: 'sewersBasin', |
| | | name: '区域图层', |
| | | checked: true, |
| | | layers: [ |
| | | { |
| | | code: 'basinCj', |
| | | name: '长江流域', |
| | | sname: '长江流域', // 表名 |
| | | checked: true, // 默认选中状态 |
| | | url: WFS_URL + '?TYPENAME=公司', |
| | | minZoom: 10 |
| | | }, |
| | | { |
| | | code: 'basinHh', |
| | | name: '黄河流域', |
| | | sname: '黄河流域', |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=码头', |
| | | minZoom: 10 |
| | | }, |
| | | { |
| | | code: 'basinBh', |
| | | name: '渤海流域', |
| | | sname: '渤海流域', |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=装置区', |
| | | minZoom: 10 |
| | | }, |
| | | { |
| | | code: 'basinQt', |
| | | name: '其他', |
| | | sname: '其他', |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=装置区', |
| | | minZoom: 10 |
| | | } |
| | | ] |
| | | } |
New file |
| | |
| | | /** |
| | | * 环境风险 |
| | | */ |
| | | const APP_GIS_HOST_2 = 'http://xearth.cn:8088' |
| | | const WFS_URL = APP_GIS_HOST_2 + '/server/ogcserver/PipeLine/wfs' |
| | | export const LayerEnvRisk = { |
| | | code: 'sewersEnvRisk', |
| | | name: '环境风险', |
| | | checked: true, |
| | | layers: [ |
| | | { |
| | | code: 'envRiskChart', |
| | | name: '风险统计图', |
| | | sname: '风险统计图', // 表名 |
| | | checked: true, // 默认选中状态 |
| | | url: WFS_URL + '?TYPENAME=公司', |
| | | minZoom: 10 |
| | | }, |
| | | { |
| | | code: 'envRiskMaterial', |
| | | name: '物资库', |
| | | sname: '物资库', |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=码头', |
| | | minZoom: 10 |
| | | }, |
| | | { |
| | | code: 'envRiskMajor', |
| | | name: '重大风险', |
| | | sname: '重大风险', |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=装置区', |
| | | minZoom: 10 |
| | | }, |
| | | { |
| | | code: 'envRiskFirst', |
| | | name: '一级风险', |
| | | sname: '一级风险', |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=装置区', |
| | | minZoom: 10 |
| | | }, |
| | | { |
| | | code: 'envRiskSecond', |
| | | name: '二级风险', |
| | | sname: '二级风险', |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=装置区', |
| | | minZoom: 10 |
| | | } |
| | | ] |
| | | } |
File was renamed from src/conf/layers/LayerPipeLine.js |
| | |
| | | const APP_GIS_HOST_2 = 'http://xearth.cn:8088' |
| | | const WFS_URL = APP_GIS_HOST_2 + '/server/ogcserver/PipeLine/wfs' |
| | | |
| | | export const LayerPipeLine = { |
| | | code: 'sewersPipeLine', |
| | | export const LayerPipeLines = { |
| | | code: 'sewersPipeLines', |
| | | name: '管线', |
| | | checked: true, |
| | | layers: [ |
| | |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=管网', |
| | | minZoom: 10, // 在指定级别显示 |
| | | childLayer: 'fsss,hbss' // 关联PointLayers |
| | | childLayer: 'sewersFsss,sewersHbss' // 关联PointLayers |
| | | }, |
| | | { |
| | | code: 'oilline', |
| | |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=含油污水', |
| | | minZoom: 10, |
| | | childLayer: 'fsss,hbss' // 关联PointLayers |
| | | childLayer: 'sewersFsss,sewersHbss' // 关联PointLayers |
| | | }, |
| | | { |
| | | code: 'saltline', |
| | |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=含盐污水', |
| | | minZoom: 10, |
| | | childLayer: 'fsss,hbss' // 关联PointLayers |
| | | childLayer: 'sewersFsss,sewersHbss' // 关联PointLayers |
| | | }, |
| | | { |
| | | code: 'alkaliline', |
| | |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=含碱污水', |
| | | minZoom: 10, |
| | | childLayer: 'fsss,hbss' // 关联PointLayers |
| | | childLayer: 'sewersFsss,sewersHbss' // 关联PointLayers |
| | | }, |
| | | { |
| | | code: 'outlet', |
| | |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=事故水', |
| | | minZoom: 10, |
| | | childLayer: 'fsss,hbss' // 关联PointLayers |
| | | childLayer: 'sewersFsss,sewersHbss' // 关联PointLayers |
| | | }, |
| | | { |
| | | code: 'loopline', |
| | |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=循环水', |
| | | minZoom: 10, |
| | | childLayer: 'fsss,hbss' // 关联PointLayers |
| | | childLayer: 'sewersFsss,sewersHbss' // 关联PointLayers |
| | | }, |
| | | { |
| | | code: 'purifyline', |
| | |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=净化水', |
| | | minZoom: 10, |
| | | childLayer: 'fsss,hbss' // 关联PointLayers |
| | | childLayer: 'sewersFsss,sewersHbss' // 关联PointLayers |
| | | }, |
| | | { |
| | | code: 'lifeline', |
| | |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=生活污水', |
| | | minZoom: 10, |
| | | childLayer: 'fsss,hbss' // 关联PointLayers |
| | | childLayer: 'sewersFsss,sewersHbss' // 关联PointLayers |
| | | }, |
| | | { |
| | | code: 'areainfo', |
New file |
| | |
| | | /** |
| | | * 土壤及地下水 |
| | | */ |
| | | const APP_GIS_HOST_2 = 'http://xearth.cn:8088' |
| | | const WFS_URL = APP_GIS_HOST_2 + '/server/ogcserver/PipeLine/wfs' |
| | | export const LayerSoilGroundWater = { |
| | | code: 'sewersSoilGroundWater', |
| | | name: '土壤及地下水', |
| | | checked: true, |
| | | layers: [ |
| | | { |
| | | code: 'soil', |
| | | name: '土壤', |
| | | sname: '土壤', // 表名 |
| | | checked: true, // 默认选中状态 |
| | | url: WFS_URL + '?TYPENAME=公司', |
| | | minZoom: 10 |
| | | }, |
| | | { |
| | | code: 'groundWater', |
| | | name: '地下水', |
| | | sname: '地下水', |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=码头', |
| | | minZoom: 10 |
| | | }, |
| | | { |
| | | code: 'firstRiskBlock', |
| | | name: '一级风险地块', |
| | | sname: '一级风险地块', |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=装置区', |
| | | minZoom: 10 |
| | | }, |
| | | { |
| | | code: 'secondRiskBlock', |
| | | name: '二级风险地块', |
| | | sname: '二级风险地块', |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=装置区', |
| | | minZoom: 10 |
| | | }, |
| | | { |
| | | code: 'threeRiskBlock', |
| | | name: '三级风险地块', |
| | | sname: '三级风险地块', |
| | | checked: true, // 默认选中状态 |
| | | wfs: WFS_URL + '?TYPENAME=装置区', |
| | | minZoom: 10 |
| | | } |
| | | ] |
| | | } |
File was renamed from src/conf/layers/LayerSolidWaste.js |
| | |
| | | * @type {string} |
| | | */ |
| | | |
| | | export const LayerSolidWaste = { |
| | | export const LayerWasteSolid = { |
| | | code: 'solidWaste', |
| | | name: '固废', |
| | | checked: true, |
| | |
| | | <popup ref="popup" @callPopup="callPopup"></popup> |
| | | <div id="map" ref="rootmap"> |
| | | </div> |
| | | <sgis-layer-controller :preset="'warningPreset'"> |
| | | <lc-basemap></lc-basemap> |
| | | <!-- <div class="barline"></div>--> |
| | | <lc-service-layer class="barline" v-if="lcServiceLayerVisible"></lc-service-layer> |
| | | </sgis-layer-controller> |
| | | <sgis-layer-controller></sgis-layer-controller> |
| | | <monitor-panel></monitor-panel> |
| | | <!-- <top-enterprise-panel></top-enterprise-panel>--> |
| | | <tool-box-panel ref="toolBox"></tool-box-panel> |
| | |
| | | import Sgis from '@src/Sgis' |
| | | // import mapConfig from '@/conf/MapConfig' |
| | | import SgisLayerController from '@components/LayerController/LayerController' |
| | | import LcBasemap from '@components/LayerController/modules/LcBaseMap' |
| | | import LcServiceLayer from '@components/LayerController/modules/LcServiceLayer' |
| | | import MonitorPanel from '@components/panel/RightSearchPanel' |
| | | // import TopEnterprisePanel from '@components/panel/TopEnterprisePanel' |
| | | import summarySheets from '@components/table/summarySheets.vue' |
| | |
| | | // import MenuSpecial from '@components/panel/MenuTopic' |
| | | import LegendPanel from '@components/panel/LegendPanel' |
| | | import Enterprise from '../components/table/enterprise' |
| | | // 底图业务js逻辑 |
| | | |
| | | import AddWasteWaterHelper from '@components/BaseNav/WasteWater/WasteWater' |
| | | import AddGasHelper from '@components/BaseNav/flueGas/flueGas' |
| | | // // 公共展示数据 |
| | | import PublicBounced from '@components/BaseNav/PublicBounced/PublicBounced' |
| | | import LayerFactory from '@components/LayerController/service/LayerFactory' |
| | |
| | | // TopEnterprisePanel, |
| | | SgisLayerController, |
| | | MonitorPanel, |
| | | LcBasemap, |
| | | LcServiceLayer, |
| | | Popup, |
| | | summarySheets, |
| | | PublicBounced |
| | |
| | | }) |
| | | }, |
| | | methods: { |
| | | AddGasHelper () { |
| | | const data = { |
| | | companyId: 3900100145, |
| | | id: '', |
| | | monType: 2, |
| | | userCode: 'wenchun.deng', |
| | | monDuration: '', |
| | | epName: '', |
| | | secdDeptId: '', |
| | | contrLevel: '', |
| | | dataStatus: '', |
| | | dataFlag: '', |
| | | runStatus: '', |
| | | emissTypeId: '' |
| | | } |
| | | const AddGas = new AddGasHelper({ map: this.map }) |
| | | AddGas.requestData(data) |
| | | AddGas.SetPlueGasContent(this.config, this.$refs.PublicBounced) |
| | | }, |
| | | ChangeWaterState () { |
| | | const data = { |
| | | companyId: 3900100145, |
| | | id: '', |
| | | monType: 1, |
| | | userCode: 'wenchun.deng', |
| | | monDuration: '', |
| | | epName: '', |
| | | secdDeptId: '', |
| | | contrLevel: '', |
| | | dataStatus: '', |
| | | dataFlag: '', |
| | | runStatus: '', |
| | | emissTypeId: '' |
| | | } |
| | | const AddWasteWater = new AddWasteWaterHelper({ map: this.map }) |
| | | AddWasteWater.requestData(data) |
| | | AddWasteWater.SetWasteWaterContent(this.config, this.$refs.PublicBounced) |
| | | }, |
| | | saveMapStatus () { |
| | | window.serviceLayerHelper = this.serviceLayerHelper |
| | | this.$store.commit('setMapObj', this.map) |
| | |
| | | L: window.L, |
| | | map: this.map |
| | | }) |
| | | layerFactory.init() |
| | | layerFactory.init(this.$store.state.map.serviceLayers.LayerSewersLine) |
| | | window.layerFactory = layerFactory |
| | | |
| | | this.basemapHelper = Sgis.initBasemapsHelper(this.map) // 初始化基础底图助手 |
| | | this.basemapHelper.initBasemap(this.config, false) // 第二个参数,表示是否内网底图 |
| | | |
| | | // this.serviceLayerHelper = Sgis.initTileLayersHelper(this.map) // 初始化业务底图助手 |
| | | // console.log('-------' + this.$refs.popup.$el) |
| | | // this.serviceLayerHelper.initServiceLayers(this.config, this.$refs.popup) |
| | | |
| | | this.vectorLayerHelper = Sgis.initVectorLayersHelper(this.map) // 初始化动态要素图层助手 |
| | | this.vectorLayerHelper.initVectorLayers(this.config) |
| | | |
| | |
| | | // this.setBasemapHelper(this.basemapHelper) |
| | | // this.setServiceLayerHelper(this.serviceLayerHelper) |
| | | // this.setVectorLayerHelper(this.vectorLayerHelper) |
| | | this.addMarker() |
| | | }, |
| | | addMarker () { |
| | | const L = this.L |
| | | var icon = new L.Icon({ |
| | | iconUrl: 'assets/images/map/marker-icon.png', |
| | | shadowUrl: 'assets/images/map/marker-shadow.png', |
| | | iconSize: [25, 41], |
| | | iconAnchor: [12, 41], |
| | | popupAnchor: [1, -34], |
| | | shadowSize: [41, 41] |
| | | }) |
| | | var marker = L.marker([32.2221, 118.7843], { |
| | | icon: icon |
| | | }).addTo(this.map) |
| | | .bindPopup(() => this.$refs.popup.$el, { |
| | | className: 's-map-popup', |
| | | minWidth: 300, |
| | | closeButton: false, |
| | | autoClose: false |
| | | }) |
| | | .bindTooltip('字体光晕效果t.', { |
| | | // permanent : true, |
| | | offset: [0, 0], // 偏移 |
| | | direction: 'right', // 放置位置 |
| | | // sticky:true,//是否标记在点上面 |
| | | className: 'anim-tooltip'// CSS控制 |
| | | }) |
| | | |
| | | marker.on('popupopen', this.onLayerClick) |
| | | }, |
| | | onLayerClick () { |
| | | this.$refs.popup.setShow() |
| | |
| | | import 'leaflet/dist/leaflet.css' |
| | | import Sgis from '@src/Sgis' |
| | | import PipeLineList from './PipeLineList' |
| | | import { mapMutations } from 'vuex' |
| | | |
| | | export default { |
| | | name: 'PipeLineIndex', |
| | |
| | | }) |
| | | }, |
| | | methods: { |
| | | ...mapMutations({ |
| | | setMapObj: 'setMapObj', |
| | | setLayerHelper: 'setLayerHelper' |
| | | }), |
| | | init () { |
| | | const mapcontainer = this.$refs.rootmap |
| | | this.mapObj = Sgis.initMap(mapcontainer) |
| | | this.basemapHelper = Sgis.initBasemaps(this.mapObj.map, this.mapObj.L) // 初始化底图 |
| | | this.vectorLayerHelper = Sgis.initLayers(this.mapObj.map, this.mapObj.L, {}, this.$nodeEnv) // 初始化业务图层 |
| | | this.setLayerHelper(this.vectorLayerHelper) |
| | | Sgis.initMap(mapcontainer) |
| | | return this.map |
| | | }, |
| | | setLayerHelper () { |
| | | |
| | | } |
| | | } |
| | | } |