From 977955d716039c91fd6292b159e50e15c62100a1 Mon Sep 17 00:00:00 2001
From: yangdelong <828900aaa>
Date: 星期六, 29 五月 2021 16:25:59 +0800
Subject: [PATCH] 企业应急-事件处置-事件信息页面
---
src/components/panel/RightSearchPanel.vue | 392 +++++++++++++++++++++++++++++++++++++------------------
1 files changed, 265 insertions(+), 127 deletions(-)
diff --git a/src/components/panel/RightSearchPanel.vue b/src/components/panel/RightSearchPanel.vue
index 480803e..6df7286 100644
--- a/src/components/panel/RightSearchPanel.vue
+++ b/src/components/panel/RightSearchPanel.vue
@@ -1,46 +1,50 @@
<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>
@@ -54,9 +58,22 @@
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 EnterpriseEmergencySearch from './topicSearch/EnterpriseEmergencySearch'
+
+import bus from '@/eventBus'
+
export default {
name: 'MonitorPanel',
- components: { GasWasteSearch, WaterWasteSearch, SolidWasteSearch, EnvRiskSearch, DischargeSearch },
+ components: {
+ GasWasteSearch,
+ WaterWasteSearch,
+ SolidWasteSearch,
+ EnvRiskSearch,
+ DischargeSearch,
+ EnterpriseEmergencySearch
+ },
data () {
return {
isShow: true,
@@ -65,14 +82,13 @@
topicCheckedList: [],
isPanelVisible: false,
gcComp: SewersSearch,
-
gdVisible: true,
hbVisible: false,
pkVisible: false,
toggleMonitorStyle: 'right:0px',
-
title: '姹¢洦姘寸缃�',
- isCollapse: true
+ isCollapse: true,
+ selectGroup: false
}
},
computed: {},
@@ -95,9 +111,18 @@
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
})
@@ -105,13 +130,13 @@
case '姹℃煋婧�':
this.gcComp = DischargeSearch
break
- case '搴熸按鐩戞祴':
+ case '搴熸按':
this.gcComp = WaterWasteSearch
break
- case '搴熸皵鐩戞祴':
+ case '搴熸皵':
this.gcComp = GasWasteSearch
break
- case '鍥哄簾绠$悊':
+ case '鍥哄簾':
this.gcComp = SolidWasteSearch
break
case '鐜椋庨櫓':
@@ -120,8 +145,17 @@
case '鍦熷¥鍙婂湴涓嬫按':
this.gcComp = SoilGroundWaterSearch
break
- case '姹¢洦姘寸缃�':
+ case '绠$嚎':
this.gcComp = SewersSearch
+ break
+ case '绠¢亾鍙樻洿':
+ this.gcComp = PipeChangesSearch
+ break
+ case '绠¢亾淇℃伅':
+ this.gcComp = PipeInformationSearch
+ break
+ case '浼佷笟搴旀��':
+ this.gcComp = EnterpriseEmergencySearch
break
}
},
@@ -169,35 +203,70 @@
// 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;
@@ -205,16 +274,19 @@
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;
@@ -224,8 +296,8 @@
//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;
@@ -250,6 +322,29 @@
// 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: 20px;
+ 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);
@@ -344,18 +439,20 @@
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;
@@ -367,6 +464,7 @@
transition: transform 1s linear;
/*transition: 3s linear;*/
}
+
.btn-shrink {
width: 20px;
height: 40px;
@@ -386,14 +484,17 @@
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;
@@ -413,10 +514,12 @@
//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;
@@ -448,79 +551,91 @@
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;
@@ -577,12 +692,16 @@
}
.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;
@@ -647,7 +766,7 @@
::-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;
}
@@ -676,43 +795,62 @@
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;
}
--
Gitblit v1.8.0