| | |
| | | </div> |
| | | </li> |
| | | </ul> --> |
| | | <ul v-for="item in topicList" :key="item.name" |
| | | <ul v-for="item in list" :key="item.name" |
| | | :class="item.checked?'module-wrap map-btn-active':'module-wrap map-btn-unactive'" |
| | | @click="()=>{selected(item)}" v-show="item.isShow"> |
| | | <el-tooltip :popper-class="'map-tooltip'" effect="dark" :content="item.name" placement="left"> |
| | | <li> |
| | | <img src="../../assets/images/map-pages/icon/sl.png" class="icon"> |
| | | <!-- <img src="../../assets/images/map-pages/icon/sl.png" class="icon"> --> |
| | | <i class="icon iconfont" :class="item.icon"></i> |
| | | </li> |
| | | </el-tooltip> |
| | | </ul> |
| | | </div> |
| | | </div> |
| | | <div class="right-control" :class="[{ 'unfold': !isCollapse },{ 'shrink': isCollapse }] "> |
| | | <div class="right-control" :class="[{ 'unfold': !isCollapse },{ 'shrink': isCollapse }] " v-if="gcComp!=''"> |
| | | <div class="panel-fold-btn" @click="toggleMonitorPanel"> |
| | | <div :class="[isCollapse? 'btn-stretch':'btn-shrink']"></div> |
| | | </div> |
| | |
| | | |
| | | <script> |
| | | import EnvRiskSearch from './topicSearch/EnvRiskSearch' |
| | | import DischargeSearch from './topicSearch/DischargeSearch' |
| | | import { TopicList } from '../../conf/Topic' |
| | | import PollutionSourceSearch from './topicSearch/PollutionSourceSearch' |
| | | import { topicList } from '../../conf/Topic' |
| | | |
| | | import GasWasteSearch from '@components/panel/topicSearch/GasWasteSearch' |
| | | import WaterWasteSearch from '@components/panel/topicSearch/WaterWasteSearch' |
| | | import WasteGasSearch from '@components/panel/topicSearch/WasteGasSearch' |
| | | import WasteWaterSearch from '@components/panel/topicSearch/WasteWaterSearch' |
| | | import SolidWasteSearch from '@components/panel/topicSearch/SolidWasteSearch' |
| | | import SewersSearch from '@components/panel/topicSearch/SewersSearch' |
| | | import SoilGroundWaterSearch from '@components/panel/topicSearch/SoilGroundWaterSearch.vue' |
| | | import PipeChangesSearch from '@components/panel/topicSearch/pipeChangesSearch.vue' |
| | | import PipeInformationSearch from '@components/panel/topicSearch/pipeInformationSearch.vue' |
| | | |
| | | import bus from '@/eventBus' |
| | | import EnterpriseEmergencySearch from './topicSearch/EnterpriseEmergencySearch' |
| | | |
| | | export default { |
| | | name: 'MonitorPanel', |
| | | components: { |
| | | GasWasteSearch, |
| | | WaterWasteSearch, |
| | | WasteGasSearch, |
| | | WasteWaterSearch, |
| | | SolidWasteSearch, |
| | | EnvRiskSearch, |
| | | DischargeSearch |
| | | PollutionSourceSearch, |
| | | EnterpriseEmergencySearch |
| | | }, |
| | | data () { |
| | | return { |
| | | isShow: true, |
| | | topicMenu: [], |
| | | topicList: TopicList, |
| | | list: topicList, |
| | | topicCheckedList: [], |
| | | isPanelVisible: false, |
| | | gcComp: SewersSearch, |
| | |
| | | hbVisible: false, |
| | | pkVisible: false, |
| | | toggleMonitorStyle: 'right:0px', |
| | | |
| | | title: '污雨水管网', |
| | | isCollapse: true, |
| | | selectGroup: false |
| | | } |
| | | }, |
| | | computed: {}, |
| | | computed: { |
| | | serviceLayers () { |
| | | return this.$store.state.map.serviceLayers.LayerSewersLine |
| | | } |
| | | }, /* |
| | | watch: { |
| | | '$store.state.map.topic.topicCheckedList': function (newVal, oldVal) { |
| | | console.log(oldVal) |
| | |
| | | }) |
| | | }) |
| | | } |
| | | }, |
| | | }, */ |
| | | methods: { |
| | | handleClose (done) { |
| | | console.log(done) |
| | | }, |
| | | setSearchPanelChange () { |
| | | // 搜索面板没有显示时,将所有主题选择状态设置为false |
| | | this.selectGroup = !this.selectGroup |
| | | if (!this.selectGroup) { |
| | | this.topicList.forEach((itm) => { |
| | | this.list.forEach((itm) => { |
| | | itm.checked = false |
| | | }) |
| | | } |
| | | }, |
| | | unselected (val) { |
| | | // console.log(val) |
| | | this.selectGroup = true |
| | | this.list.forEach((itm) => { |
| | | if (itm.name === val.name) { |
| | | console.log(val.name) |
| | | itm.checked = false |
| | | itm.isShow = false |
| | | } |
| | | }) |
| | | }, |
| | | selected (val) { |
| | | // console.log(val) |
| | | this.title = val.name |
| | | this.selectGroup = true |
| | | this.topicList.forEach((itm) => { |
| | | itm.checked = val.name === itm.name |
| | | this.list.forEach((itm) => { |
| | | if (itm.name === val.name) { |
| | | itm.isShow = true |
| | | itm.checked = true |
| | | } else { |
| | | itm.checked = false |
| | | } |
| | | }) |
| | | this.setComp(val) |
| | | }, |
| | | setComp (val) { |
| | | this.title = val.name |
| | | switch (val.name) { |
| | | case '污染源': |
| | | this.gcComp = DischargeSearch |
| | | this.gcComp = PollutionSourceSearch |
| | | break |
| | | case '废水': |
| | | this.gcComp = WaterWasteSearch |
| | | this.gcComp = WasteWaterSearch |
| | | break |
| | | case '废气': |
| | | this.gcComp = GasWasteSearch |
| | | this.gcComp = WasteGasSearch |
| | | break |
| | | case '固废': |
| | | this.gcComp = SolidWasteSearch |
| | |
| | | case '管道信息': |
| | | this.gcComp = PipeInformationSearch |
| | | break |
| | | case '企业应急': |
| | | this.gcComp = EnterpriseEmergencySearch |
| | | break |
| | | } |
| | | }, |
| | | handlePage (page) { |
| | | }, |
| | | handleGd () { |
| | | this.title = '管道信息查询' |
| | | }, |
| | | toggleMonitorPanel () { |
| | | this.isCollapse = !this.isCollapse |
| | |
| | | // }) |
| | | // } |
| | | }, |
| | | defaultLastOne () { |
| | | let v = {} |
| | | this.topicList.forEach((item) => { |
| | | if (item.isShow) { |
| | | v = item |
| | | containsLayer (layer) { |
| | | if (layer) { |
| | | for (let i = 0; i < layer.length; i++) { |
| | | const lay = layer[i] |
| | | const checked = lay.checked |
| | | |
| | | for (let j = 0; j < this.list.length; j++) { |
| | | const topic = this.list[j] |
| | | if (lay.name === topic.name) { |
| | | if (lay.layers) { |
| | | const isChecked = this.isChecked(lay.layers) |
| | | if (isChecked) { |
| | | this.selected(topic) |
| | | } else { |
| | | this.unselected(topic) |
| | | } |
| | | } else if (checked) { |
| | | this.selected(topic) |
| | | } |
| | | break |
| | | } |
| | | } |
| | | this.containsLayer(lay.layers) |
| | | } |
| | | }) |
| | | this.selected(v) |
| | | } |
| | | }, |
| | | isChecked (layers) { |
| | | for (let i = 0; i < layers.length; i++) { |
| | | const layer = layers[i] |
| | | const checked = layer.checked |
| | | if (checked) { |
| | | return true |
| | | } |
| | | if (layer.layers) { |
| | | return this.isChecked(layer.layers) |
| | | } |
| | | } |
| | | return false |
| | | } |
| | | }, |
| | | mounted () { |
| | | const that = this |
| | | bus.$on('changeSearchBar', function (obj) { |
| | | // console.log(obj.checked, obj.name) |
| | | that.topicList.forEach((item) => { |
| | | if (item.name === obj.name) { |
| | | item.isShow = obj.checked |
| | | if (item.isShow) { |
| | | that.selected(item) |
| | | } else { |
| | | that.defaultLastOne() |
| | | } |
| | | } |
| | | }) |
| | | }) |
| | | /* bus.$on('changeSearchBar', (obj) => { |
| | | const topic = this.search(this.serviceLayers, obj) |
| | | console.log('====' + JSON.stringify(topic)) |
| | | }) */ |
| | | }, |
| | | watch: { |
| | | serviceLayers: { |
| | | handler: function (newVal, oldVal) { |
| | | this.containsLayer(newVal) |
| | | }, |
| | | immediate: true, |
| | | deep: true |
| | | } |
| | | } |
| | | } |
| | | </script> |
| | |
| | | .search-container { |
| | | position: relative; |
| | | //width: 1.79167rem; |
| | | width: 2.79167rem; |
| | | //width: 2.39167rem; |
| | | width: 2.3rem; |
| | | /* height: 5.6475rem;*/ |
| | | overflow: hidden; |
| | | } |
| | |
| | | cursor: pointer; |
| | | position: relative; |
| | | line-height: 0.15rem; |
| | | |
| | | li { |
| | | margin: 0.00521rem 0; |
| | | text-align: center; |
| | | font-size: 20px; |
| | | |
| | | img { |
| | | width: 0.1rem; |
| | |
| | | //top: 10px; |
| | | height: 0; |
| | | position: absolute; |
| | | top: 0.42979rem; |
| | | top: 0.73979rem; |
| | | right: 0.14583rem; |
| | | z-index: 501; |
| | | display: -webkit-box; |
| | |
| | | background: @background-color4; |
| | | color: @color-tool; |
| | | position: absolute; |
| | | top: 24px; |
| | | right: 0.02rem; |
| | | top: 20px; |
| | | left: 0.02rem; |
| | | border: none; //1px solid @color-tool; |
| | | width: 0.2rem; |
| | | height: 0.2rem; |
| | |
| | | |
| | | .environmental-risk-list { |
| | | position: relative; |
| | | cursor: pointer; |
| | | padding-left: 50px; |
| | | padding-top: 5px; |
| | | padding-bottom: 5px; |
| | | color: @color-shadow; |
| | | border-bottom: 1px solid @background-color-split; |
| | | |
| | | h3{ cursor: pointer;} |
| | | .state { |
| | | width: 30px; |
| | | height: 30px; |
| | |
| | | background: #0B3B6D; |
| | | } |
| | | } |
| | | |
| | | .environmental-risk-list.hover, |
| | | .environmental-risk-list:hover { |
| | | color: @color-over; |
| | | .environmental-risk-list:hover{ |
| | | background: @background-color; |
| | | } |
| | | .environmental-risk-list.hover h3, |
| | | .environmental-risk-list h3:hover { |
| | | color: @color-highlight; |
| | | } |
| | | |
| | | input::-webkit-input-placeholder { |
| | |
| | | } |
| | | |
| | | .footer-page { |
| | | position: absolute; |
| | | // position: absolute; |
| | | background-color: transparent !important; |
| | | bottom: 10px !important; |
| | | margin-left: 0px; |
| | | // bottom: 10px !important; |
| | | // margin-left: 0px; |
| | | border: none; |
| | | |
| | | margin: 0; |
| | | border-top: 1px solid rgba(0, 255, 246, 0.14); |
| | | .el-card__body{ |
| | | padding: 5px; |
| | | } |
| | | .warnPagination { |
| | | .btn-quicknext, .btn-quickprev { |
| | | color: #e4e8f1 !important; |