| | |
| | | <template> |
| | | <div class="panel-right" v-show="isShow"> |
| | | <div class="panel-tab"> |
| | | <!-- <div v-for="item in topicMenu" :key="item.id" :title="item.name" class="tab-item" @click="handleGd"--> |
| | | <!-- :class="{'B-TMT-tab-waybill-isActive': isWaybillHover}">--> |
| | | <!-- <img :src="item.icon" style="width: 24px;height: 24px;"></div>--> |
| | | <div class="container"> |
| | | <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 style=" "> |
| | | <!-- <span>{{item.name}}</span>--> |
| | | <!-- <div >--> |
| | | <img src="../../assets/images/map-pages/icon/sl.png" class="icon"> |
| | | <!-- </div>--> |
| | | </li> |
| | | </el-tooltip> |
| | | </ul> |
| | | </div> |
| | | </div> |
| | | <!-- <div class="panel-fold-btn" >--> |
| | | <!-- <div class="btn-stretch" @click="toggleMonitorPanel"></div>--> |
| | | <!-- </div>--> |
| | | |
| | | <!-- <div class="panel-fold-btn" @click="toggleMonitorPanel" >--> |
| | | <!-- <div :class="[isCollapse? 'btn-stretch':'btn-shrink']" ></div>--> |
| | | <!--<!– <div class="btn-stretch" v-if="isCollapse" </div>–>--> |
| | | <!--<!– <div class="btn-shrink" v-else-if="!isCollapse" ></div>–>--> |
| | | <!--<!– :style = "{width:isCollapse ? '290px' : '0px'}"–>--> |
| | | <!-- </div>--> |
| | | <!-- <div class="right-control" v-if="!isCollapse" >--> |
| | | <div class="right-control" :class="[{ 'unfold': !isCollapse },{ 'shrink': isCollapse }] " > |
| | | <div class="panel-fold-btn" @click="toggleMonitorPanel"> |
| | | <!-- <div class="btn-stretch" v-if="isCollapse"></div>--> |
| | | <!-- <div class="btn-shrink" v-else-if="!isCollapse"></div>--> |
| | | <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> |
| | | <transition name="searchPanelChange"> |
| | | <div style=" display: inline-flex;"> |
| | | <div class="panel-tab"> |
| | | <div class="container"> |
| | | <!-- <ul> |
| | | <li style="text-align: right"> |
| | | <div @click="setSearchPanelChange" type="button" class="el-button special-button el-button--default"> |
| | | <i class=" el-icon-d-arrow-right" v-if="selectGroup"></i> |
| | | <i class=" el-icon-d-arrow-left" v-else ></i> |
| | | </div> |
| | | </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)}" 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"> --> |
| | | <i class="icon iconfont" :class="item.icon"></i> |
| | | </li> |
| | | </el-tooltip> |
| | | </ul> |
| | | </div> |
| | | </div> |
| | | <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> |
| | | <div :class="'search-container map-background'" v-show="selectGroup"> |
| | | <div @click="setSearchPanelChange" class="el-button special-button el-button--default "> |
| | | <i class=" el-icon-d-arrow-right" v-if="selectGroup"></i> |
| | | <i class=" el-icon-d-arrow-left" v-else></i> |
| | | </div> |
| | | <div class="el-message-box__content" style="padding:0;font-size: 13px;"> |
| | | <component :title="title" :is="gcComp"></component> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </div> |
| | | </transition> |
| | | <!-- <el-tooltip :popper-class="'map-tooltip'" effect="dark" content="搜索" placement="left" v-show="!selectGroup"> |
| | | <div :class="selectGroup === true ?'active-button':''" class="iconBtn" @click="setSearchPanelChange" style="position: absolute;top:0;right: 0" > |
| | | <i class="el-icon-search icon"></i> |
| | | </div> |
| | | </el-tooltip> --> |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | 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 ReportSearch from './topicSearch/ReportSearch' |
| | | |
| | | import bus from '@/eventBus' |
| | | |
| | | export default { |
| | | name: 'MonitorPanel', |
| | | components: { GasWasteSearch, WaterWasteSearch, SolidWasteSearch, EnvRiskSearch, DischargeSearch }, |
| | | components: { |
| | | GasWasteSearch, |
| | | WaterWasteSearch, |
| | | SolidWasteSearch, |
| | | EnvRiskSearch, |
| | | DischargeSearch, |
| | | ReportSearch |
| | | }, |
| | | data () { |
| | | return { |
| | | isShow: true, |
| | |
| | | topicCheckedList: [], |
| | | isPanelVisible: false, |
| | | gcComp: SewersSearch, |
| | | |
| | | gdVisible: true, |
| | | hbVisible: false, |
| | | pkVisible: false, |
| | | toggleMonitorStyle: 'right:0px', |
| | | |
| | | title: '污雨水管网', |
| | | isCollapse: true |
| | | isCollapse: true, |
| | | selectGroup: false |
| | | } |
| | | }, |
| | | computed: {}, |
| | |
| | | handleClose (done) { |
| | | console.log(done) |
| | | }, |
| | | setSearchPanelChange () { |
| | | this.selectGroup = !this.selectGroup |
| | | if (!this.selectGroup) { |
| | | this.topicList.forEach((itm) => { |
| | | itm.checked = false |
| | | }) |
| | | } |
| | | }, |
| | | selected (val) { |
| | | // console.log(val) |
| | | this.title = val.name + '(检索)' |
| | | this.title = val.name |
| | | this.selectGroup = true |
| | | this.topicList.forEach((itm) => { |
| | | itm.checked = val.name === itm.name |
| | | }) |
| | |
| | | case '污染源': |
| | | this.gcComp = DischargeSearch |
| | | break |
| | | case '废水监测': |
| | | case '废水': |
| | | this.gcComp = WaterWasteSearch |
| | | break |
| | | case '废气监测': |
| | | case '废气': |
| | | this.gcComp = GasWasteSearch |
| | | break |
| | | case '固废管理': |
| | | case '固废': |
| | | this.gcComp = SolidWasteSearch |
| | | break |
| | | case '环境风险': |
| | |
| | | case '土壤及地下水': |
| | | this.gcComp = SoilGroundWaterSearch |
| | | break |
| | | case '污雨水管网': |
| | | case '管线': |
| | | this.gcComp = SewersSearch |
| | | break |
| | | case '管道变更': |
| | | this.gcComp = PipeChangesSearch |
| | | break |
| | | case '管道信息': |
| | | this.gcComp = PipeInformationSearch |
| | | break |
| | | case '企业应急': |
| | | this.gcComp = ReportSearch |
| | | break |
| | | } |
| | | }, |
| | |
| | | // speed: 1000 |
| | | // }) |
| | | // } |
| | | }, |
| | | defaultLastOne () { |
| | | let v = {} |
| | | this.topicList.forEach((item) => { |
| | | if (item.isShow) { |
| | | v = item |
| | | } |
| | | }) |
| | | this.selected(v) |
| | | } |
| | | }, |
| | | mounted () { |
| | | const that = this |
| | | bus.$on('changeSearchBar', function (obj) { |
| | | that.gcComp = '' |
| | | that.topicList.forEach((item) => { |
| | | if (item.name === obj.name) { |
| | | if (obj.type > 0) { |
| | | item.isShow = true |
| | | } else { |
| | | item.isShow = false |
| | | } |
| | | // item.isShow = obj.checked |
| | | if (item.isShow) { |
| | | that.selected(item) |
| | | } else { |
| | | that.defaultLastOne() |
| | | } |
| | | } |
| | | }) |
| | | }) |
| | | // console.log(that.topicList) |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="less"> |
| | | .search-title{ |
| | | color: rgb(255, 255, 255); |
| | | font-size: 16px; |
| | | margin: 5px; |
| | | .searchPanelChange-enter-active { |
| | | transform-origin: top right; |
| | | animation: bounce-in .2s; |
| | | } |
| | | |
| | | .searchPanelChange-leave-active { |
| | | transform-origin: top right; |
| | | animation: bounce-in .2s reverse; |
| | | } |
| | | |
| | | .search-container { |
| | | position: relative; |
| | | width: 1.79167rem; |
| | | /*height: 5.6475rem;*/ |
| | | min-height: 80vh; |
| | | max-height: 90vh; |
| | | //width: 1.79167rem; |
| | | //width: 2.39167rem; |
| | | width: 2.3rem; |
| | | /* height: 5.6475rem;*/ |
| | | overflow: hidden; |
| | | } |
| | | .module-wrap{ |
| | | |
| | | .module-wrap { |
| | | width: 0.15rem; |
| | | height: 0.15rem; |
| | | padding: .04167rem; |
| | | //padding: .00521rem; |
| | | background: rgba(0,16,30,.5); |
| | | background: rgba(0, 16, 30, .5); |
| | | border-radius: .03125rem; |
| | | border: .00521rem solid rgba(255,247,0,.5); |
| | | border: .00521rem solid rgba(255, 247, 0, .5); |
| | | margin: .04167rem 0; |
| | | font-size: .08333rem; |
| | | -webkit-transition: all .2s linear; |
| | |
| | | cursor: pointer; |
| | | position: relative; |
| | | line-height: 0.15rem; |
| | | li{ |
| | | li { |
| | | margin: 0.00521rem 0; |
| | | text-align: center; |
| | | img{ |
| | | font-size: 20px; |
| | | |
| | | img { |
| | | width: 0.1rem; |
| | | height: 0.1rem; |
| | | |
| | | } |
| | | } |
| | | } |
| | | |
| | | .panel-right { |
| | | display: inline-flex; |
| | | //width: 322px; |
| | |
| | | //top: 10px; |
| | | height: 0; |
| | | position: absolute; |
| | | top: .4rem; |
| | | right: .08333rem; |
| | | top: 0.73979rem; |
| | | right: 0.14583rem; |
| | | z-index: 501; |
| | | display: -webkit-box; |
| | | display: -ms-flexbox; |
| | |
| | | // background-color: #061e51 !important; |
| | | // border: solid 1px #0e639e !important; |
| | | //} |
| | | .el-button--default.special-button { |
| | | padding: 0; |
| | | background: @background-color4; |
| | | color: @color-tool; |
| | | position: absolute; |
| | | top: 24px; |
| | | left: 0.02rem; |
| | | border: none; //1px solid @color-tool; |
| | | width: 0.2rem; |
| | | height: 0.2rem; |
| | | text-align: center; |
| | | line-height: 0.2rem; |
| | | margin-top: -0.1rem; |
| | | border-radius: 50%; |
| | | z-index: 999; |
| | | } |
| | | |
| | | .el-button--default.special-button:hover { |
| | | background: @background-color; |
| | | border: 1px solid @color; |
| | | box-shadow: 0 0 2px @color; |
| | | color: @color; |
| | | } |
| | | |
| | | .el-form-item__label { |
| | | color: rgb(52, 224, 255); |
| | |
| | | text-overflow: ellipsis; |
| | | white-space: nowrap; |
| | | } |
| | | .panel-fold-btn{ |
| | | |
| | | .panel-fold-btn { |
| | | overflow: hidden; |
| | | position: absolute; |
| | | top:45%; |
| | | top: 45%; |
| | | left: -18px; |
| | | /*left: 0px;*/ |
| | | //right: 320px; |
| | | /*right: 290px;*/ |
| | | z-index: 1000; |
| | | /*right: 0px;*/ |
| | | background-color: rgba(5,24,66,.8); |
| | | background-color: rgba(5, 24, 66, .8); |
| | | border-radius: 10px 0 0 10px; |
| | | |
| | | .btn-stretch { |
| | | //width: 20px; |
| | | //height: 40px; |
| | |
| | | transition: transform 1s linear; |
| | | /*transition: 3s linear;*/ |
| | | } |
| | | |
| | | .btn-shrink { |
| | | width: 20px; |
| | | height: 40px; |
| | |
| | | font-size: 12px; |
| | | background-color: #0B3B6D; |
| | | } |
| | | .tab-item:hover{ |
| | | |
| | | .tab-item:hover { |
| | | cursor: pointer; |
| | | } |
| | | |
| | | .panel-tab { |
| | | position: relative; |
| | | z-index: 500; |
| | | margin-right: .025rem; |
| | | .container{ |
| | | |
| | | .container { |
| | | max-height: 3.125rem; |
| | | overflow: hidden; |
| | | position: relative; |
| | |
| | | //background: url('../../assets/images/map-pages/icon/bgc.png') no-repeat; |
| | | //background-size: 100% 98%; |
| | | } |
| | | .a{ |
| | | |
| | | .a { |
| | | transform: translateX(328px); |
| | | transition: transform 3s linear; |
| | | } |
| | | |
| | | .panel_searchTotal { |
| | | font-size: 12px; |
| | | float: right; |
| | |
| | | display: grid; |
| | | font-size: 18px; |
| | | } |
| | | |
| | | /*input 点击搜索样式*/ |
| | | .rightButtonSearch{ |
| | | |
| | | .rightButtonSearch { |
| | | display: flex; |
| | | justify-content: space-between; |
| | | align-items: center; |
| | | .el-input{margin-right: 10px} |
| | | .el-icon-search{ |
| | | width: 40px; |
| | | border:1px solid @color; |
| | | height: 26px; |
| | | text-align: center; |
| | | line-height: 26px; |
| | | color:#fff; |
| | | border-radius: 2px; |
| | | cursor:pointer; |
| | | background: rgba(0,16,30,.5); |
| | | |
| | | .el-input { |
| | | margin-right: 10px |
| | | } |
| | | .el-button { |
| | | |
| | | .el-icon-search { |
| | | width: 40px; |
| | | border: 1px solid @color; |
| | | height: 28px; |
| | | line-height: 28px; |
| | | text-align: center; |
| | | color: #fff; |
| | | border-radius: 2px; |
| | | cursor: pointer; |
| | | background: rgba(0, 16, 30, .5); |
| | | padding: 0; |
| | | } |
| | | } |
| | | /*单选按钮样式*/ |
| | | .levelOfRisk{padding-left:20px} |
| | | .levelOfRisk .el-radio{padding-bottom:6px} |
| | | |
| | | .levelOfRisk-type{ |
| | | /*单选按钮样式*/ |
| | | |
| | | .levelOfRisk { |
| | | padding-left: 20px |
| | | } |
| | | |
| | | .levelOfRisk .el-radio { |
| | | padding-bottom: 6px |
| | | } |
| | | |
| | | .levelOfRisk-type { |
| | | display: inline-block; |
| | | position: relative; |
| | | padding-right: 5px; |
| | | color:#f5f5f5; |
| | | i{ |
| | | color: @color-shadow; |
| | | |
| | | i { |
| | | display: block; |
| | | width: 15px; |
| | | height: 10px; |
| | | position: absolute; |
| | | top:50%; |
| | | top: 50%; |
| | | right: -15px; |
| | | margin-top: -5px; |
| | | } |
| | | } |
| | | .el-radio.is-checked .levelOfRisk-type{color:#409EFF} |
| | | |
| | | .environmental-risk-list{ |
| | | border:1px solid @color; |
| | | margin-right: 10px; |
| | | margin-bottom: 15px; |
| | | .el-radio.is-checked .levelOfRisk-type { |
| | | color: #409EFF |
| | | } |
| | | |
| | | .environmental-risk-list { |
| | | position: relative; |
| | | padding-left:50px; |
| | | padding-top:3px; |
| | | padding-bottom:3px; |
| | | color: #f5f5f5; |
| | | .state{ |
| | | 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; |
| | | position: absolute; |
| | | top:50%; |
| | | left:10px; |
| | | top: 50%; |
| | | left: 10px; |
| | | margin-top: -15px; |
| | | border-radius: 50%; |
| | | box-shadow: 0 0 3px #000; |
| | | background: #0B3B6D; |
| | | } |
| | | } |
| | | //.search-panel { |
| | | // border: #07325B; |
| | | // background-color: #07325B !important; |
| | | // margin-top: 0px; |
| | | // |
| | | // .el-input__inner { |
| | | // border-radius: 0px !important; |
| | | // background-color: #061e51 !important; |
| | | // } |
| | | //} |
| | | .environmental-risk-list.hover, |
| | | .environmental-risk-list:hover{ |
| | | background: @background-color; |
| | | } |
| | | .environmental-risk-list.hover h3, |
| | | .environmental-risk-list h3:hover { |
| | | color: @color-highlight; |
| | | } |
| | | |
| | | input::-webkit-input-placeholder { |
| | | color: #569ee1; |
| | |
| | | } |
| | | |
| | | .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; |
| | |
| | | |
| | | ::-webkit-scrollbar-track { |
| | | /*滚动条里面轨道*/ |
| | | box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2); |
| | | box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2); |
| | | border-radius: 0px; |
| | | background: #0E3565; |
| | | } |
| | |
| | | background-color: #061e51 !important; |
| | | } |
| | | } |
| | | |
| | | .unfold { |
| | | transform: translateX(332px); |
| | | transition: transform 0.5s linear; |
| | | } |
| | | |
| | | .shrink { |
| | | transform: translateX(0px); |
| | | transition: transform 0.5s linear; |
| | | } |
| | | |
| | | /******************以下公共部分**********/ |
| | | .query-search{ |
| | | |
| | | .sewers-search { |
| | | position: relative; |
| | | overflow: hidden; |
| | | .search-panel{ |
| | | |
| | | .panel-title { |
| | | } |
| | | |
| | | .search-panel { |
| | | background-color: transparent; |
| | | border: 1px solid @background-color-split; |
| | | padding: 10px 0; |
| | | padding: 10px; |
| | | border-bottom: 1px solid @background-color-split; |
| | | // .el-input{width:calc(100% - 40px);position: relative} |
| | | /deep/ input { |
| | | border-radius: 0; |
| | | background-color: @background-color-split ; |
| | | border: solid 1px @color ; |
| | | background-color: @background-color-split; |
| | | border: solid 1px @color; |
| | | color: @color-gray; |
| | | font-size: 0.01rem; |
| | | padding:0 15px; |
| | | .el-select .el-input.is-focus .el-input__inner{ |
| | | padding: 0 15px; |
| | | |
| | | .el-select .el-input.is-focus .el-input__inner { |
| | | border-color: @color; |
| | | } |
| | | } |
| | | .el-input__inner{background: none;color:#fff;font-size: 14px;border-radius: 0; border-color: @color;background: rgba(0,16,30,.5);} |
| | | |
| | | .el-input__inner { |
| | | background: none; |
| | | color: #fff; |
| | | font-size: 14px; |
| | | border-radius: 0; |
| | | border-color: @color; |
| | | background: rgba(0, 16, 30, .5); |
| | | } |
| | | } |
| | | .search-btn{ |
| | | |
| | | .search-btn { |
| | | |
| | | } |
| | | |
| | | //location-btn{ |
| | | // |
| | | //} |
| | | .location-btn:hover,.el-input__icon:hover{ |
| | | .location-btn:hover, .el-input__icon:hover { |
| | | color: @color; |
| | | cursor: pointer; |
| | | } |