src/assets/css/map/map-panel-style.less | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/panel/RightSearchPanel.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/panel/topicSearch/SewersSearch.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/panel/topicSearch/SewersSelect/AnalysisChoose/Connectivity.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/panel/topicSearch/SewersSelect/AnalysisChoose/CrossSectional.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/panel/topicSearch/SewersSelect/AnalysisChoose/Flow.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/panel/topicSearch/SewersSelect/AnalysisChoose/Tube.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/assets/css/map/map-panel-style.less
@@ -1,9 +1,11 @@ @import "_map-variable"; .leaflet-container, html,body{ // font-family: 'Microsoft YaHei'; html, body { // font-family: 'Microsoft YaHei'; font: 12px/1.5 "Microsoft YaHei", Arial, Helvetica, sans-serif; } /*全局设置***********/ h1, h2, h3, h4, h5, h6, ul, li, p { padding: 0; @@ -11,7 +13,9 @@ list-style: none; } i{font-style: normal} i { font-style: normal } .el-button--primary { color: @color; @@ -214,60 +218,75 @@ margin-left: 10px; } .el-scrollbar__wrap{ .el-scrollbar__wrap { } .el-scrollbar__wrap::-webkit-scrollbar { /*滚动条整体样式*/ width : 5px; /*高宽分别对应横竖滚动条的尺寸*/ width: 5px; /*高宽分别对应横竖滚动条的尺寸*/ height: 1px; } .el-scrollbar__wrap::-webkit-scrollbar-thumb { /*滚动条里面小方块*/ border-radius : 10px; border-radius: 10px; background: none; } .el-scrollbar__wrap::-webkit-scrollbar-track { /*滚动条里面轨道*/ box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2); background : none; box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2); background: none; border-radius: 10px; } #el-scrollbar__wrap::-webkit-scrollbar-button { /*滚动条两端的按钮,可以用display:none让其不显示,也可以添加背景图片,颜色改变显示效果(位置2)*/ background: #74D334; } /*******************操作按钮点击选中整体样式******************************/ .el-button{ .el-button { } .hover-bottom:hover, .active-button{ .active-button { border: 0.00521rem solid #fff700 !important; box-shadow: 0 0 0.03rem #fff700 !important; color:#fff700 !important; color: #fff700 !important; } /***************Company 图层 悬浮框样式。*********************************/ .company-bindTooltip{ .company-bindTooltip { position: absolute; top:0; top: 0; left: 0; display: flex; justify-content: center; justify-items: center; img{display: block;width: 30px;height: 30px;margin-left: -15px;margin-top: -15px} ul{ img { display: block; width: 30px; height: 30px; margin-left: -15px; margin-top: -15px } ul { width: 120px; margin-left: -60px; text-align: center; display: flex; position: absolute; top:20px; left:0; li{ top: 20px; left: 0; li { position: absolute; top:0; left:0; top: 0; left: 0; width: 100%; font-weight: 900; text-shadow: 0 0 4px #fff; @@ -279,6 +298,7 @@ } } } /*.company-bindTooltip { //background: @background-color-split; background: none; @@ -308,7 +328,7 @@ } } }*/ .company-bindTooltip:before{ .company-bindTooltip:before { display: none; } @@ -336,16 +356,19 @@ /*************** PublicTable 表格样式。*********************************/ .el-table{ .el-table { border: 1px solid #396d83 !important; .el-table__body-wrapper::-webkit-scrollbar { width: 0; height: 0; background: none; } .cell{ .cell { padding: 0 3px !important; i{ i { display: block; font-style: normal; font-size: 10px; @@ -353,26 +376,34 @@ } } } .el-table--border th{ .el-table--border th { border-right: none; border-left: 1px solid #ddd; } .el-table--border th.gutter{border-left: none} .el-table--border th.gutter { border-left: none } .el-table .cell, .el-table--border td:first-child .cell, .el-table--border th:first-child .cell { text-align: center; } .el-table th>.cell { .el-table th > .cell { border: 1px #396d83 solid; color: #00fff6; } .el-table__row>td{ .el-table__row > td { border: none; } .el-table::before {//去掉最下面的那一条线 .el-table::before { //去掉最下面的那一条线 height: 0; } .el-table td, .el-table th.is-leaf { font-size: 0.08rem; } @@ -384,21 +415,24 @@ .el-table .success-row { background: #30455f; } .el-table tbody tr:hover>td { background-color:#28304d !important; .el-table tbody tr:hover > td { background-color: #28304d !important; } //修改表格高度 .el-table td { padding: 0!important; padding: 0 !important; font-size: 0.01rem !important; } /***********************************************动画效果************/ .transition{ .transition { transition: all .5s; /* transform-origin: top left;*/ /* transform-origin: top left;*/ animation: bounce-in .2s; } @keyframes bounce-in { 0% { transform: scale(0); @@ -409,9 +443,10 @@ opacity: 1; } } /**map 页面图标按钮*/ .iconBtn { width:0.26rem; width: 0.26rem; height: 0.26rem; text-align: center; background: rgba(0, 16, 30, 0.5); @@ -424,14 +459,16 @@ justify-content: center; justify-items: center; border-radius: 0.03rem; .icon{ .icon { width: 20px; margin: 0 auto; font-size: 20px; } } .panel-title{ .panel-title { color: @color-title; font-size: 18px; padding: 10px; @@ -443,61 +480,109 @@ } .el-picker-panel{ .el-picker-panel { background: @background-color; border-color:@color; color:@color; .el-picker-panel__body-wrapper{ border-color: @color; color: @color; .el-picker-panel__body-wrapper { background: @background-color; } .el-input__inner{ background:@background-color; border-color:@color; } .el-date-table td.today span{ color:@color-highlight; } .el-picker-panel__footer{ .el-input__inner { background: @background-color; border-top-color:@color; border-color: @color; } .el-date-table th{ border-bottom-color:@color; .el-date-table td.today span { color: @color-highlight; } .el-button{ .el-picker-panel__footer { background: @background-color; color:@color; border-color:@color; border-top-color: @color; } .el-button--text{ .el-date-table th { border-bottom-color: @color; } .el-button { background: @background-color; color: @color; border-color: @color; } .el-button--text { padding: 7px 15px; } .el-button:hover{ .el-button:hover { background: @background-color; color:@color-highlight; border-color:@color-highlight; color: @color-highlight; border-color: @color-highlight; } .el-input__inner{ color:#fff; .el-input__inner { color: #fff; text-align: center; } .el-date-picker__time-header{ border-bottom-color:@background-color-split; .el-date-picker__time-header { border-bottom-color: @background-color-split; } .el-date-picker__header-label{color:#fff} .el-date-picker__header-label { color: #fff } } .el-select-dropdown{ .el-select-dropdown { background: @background-color; border-color:@color; color:@color; .el-select-dropdown__item{ color:#fff; border-color: @color; color: @color; .el-select-dropdown__item { color: #fff; } .el-select-dropdown__item.hover{ .el-select-dropdown__item.hover { background: @background-color; box-shadow: 0 0 5px @color-highlight inset; box-shadow: 0 0 5px @color-highlight inset; } .el-select-dropdown__item.selected{ color:@color-highlight; .el-select-dropdown__item.selected { color: @color-highlight; } } } /***********************************************右侧官网相关************/ .el-tabs__header { background: none; } .el-tabs--top .el-tabs__item.is-top:nth-child(2) { padding-left: 20px; } .el-tabs--border-card { background: none; border: none; box-shadow: none; } .el-tabs--border-card>.el-tabs__header { background: none; border-bottom: none; margin: 0; } .el-tabs--border-card>.el-tabs__header .el-tabs__item.is-active { color: #409EFF; background: none; border: none; } .el-tabs--border-card>.el-tabs__header .el-tabs__item { border: none; } .panel-right ::-webkit-scrollbar-thumb { background: none; border: none; } src/components/panel/RightSearchPanel.vue
@@ -1,47 +1,49 @@ <template> <div class="panel-right" v-show="isShow"> <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"> </li> </el-tooltip> </ul> </div> </div> <div class="right-control" :class="[{ 'unfold': !isCollapse },{ 'shrink': isCollapse }] " > <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> <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"> </li> </el-tooltip> </ul> </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> <div class="right-control" :class="[{ 'unfold': !isCollapse },{ 'shrink': isCollapse }] "> <div class="panel-fold-btn" @click="toggleMonitorPanel"> <div :class="[isCollapse? 'btn-stretch':'btn-shrink']"></div> </div> </el-tooltip> --> <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> </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> @@ -56,9 +58,16 @@ import SewersSearch from '@components/panel/topicSearch/SewersSearch' import SoilGroundWaterSearch from '@components/panel/topicSearch/SoilGroundWaterSearch.vue' import bus from '@/eventBus' export default { name: 'MonitorPanel', components: { GasWasteSearch, WaterWasteSearch, SolidWasteSearch, EnvRiskSearch, DischargeSearch }, components: { GasWasteSearch, WaterWasteSearch, SolidWasteSearch, EnvRiskSearch, DischargeSearch }, data () { return { isShow: true, @@ -153,33 +162,33 @@ // const right = rightControl.css('right') // const rightit = rightControl.ownerDocument.defaultView // const right = rightit.getComputedStyle(rightit, null).right // if (right === '10px') { // rightControl.animate({ // right: '-322px' // }) // el.css({ // transform: 'rotateY(180deg)', // 'transform-origin': '50% 50%', // transition: 'transform 1s linear' // }) // el2.animate({ // right: '320px', // speed: 1000 // }) // } else { // rightControl.animate({ // right: '10px' // }) // el.css({ // transform: 'rotateY(0deg)', // 'transform-origin': '50% 50%', // transition: 'transform 1s linear' // }) // el2.animate({ // right: '290px', // speed: 1000 // }) // } // if (right === '10px') { // rightControl.animate({ // right: '-322px' // }) // el.css({ // transform: 'rotateY(180deg)', // 'transform-origin': '50% 50%', // transition: 'transform 1s linear' // }) // el2.animate({ // right: '320px', // speed: 1000 // }) // } else { // rightControl.animate({ // right: '10px' // }) // el.css({ // transform: 'rotateY(0deg)', // 'transform-origin': '50% 50%', // transition: 'transform 1s linear' // }) // el2.animate({ // right: '290px', // speed: 1000 // }) // } }, defaultLastOne () { let v = {} @@ -211,28 +220,32 @@ </script> <style lang="less"> .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;*/ overflow: hidden; .searchPanelChange-enter-active { transform-origin: top right; animation: bounce-in .2s; } .module-wrap{ .searchPanelChange-leave-active { transform-origin: top right; animation: bounce-in .2s reverse; } .search-container { position: relative; //width: 1.79167rem; width: 4.7rem; /* height: 5.6475rem;*/ overflow: hidden; } .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; @@ -240,16 +253,19 @@ cursor: pointer; position: relative; line-height: 0.15rem; li{ li { margin: 0.00521rem 0; text-align: center; img{ img { width: 0.1rem; height: 0.1rem; } } } .panel-right { display: inline-flex; //width: 322px; @@ -285,28 +301,30 @@ // 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; right: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-button--default.special-button { padding: 0; background: @background-color4; color: @color-tool; position: absolute; top: 24px; right: 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); color: @color; @@ -400,18 +418,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; @@ -421,8 +441,9 @@ transform: rotateY(0deg); transform-origin: 50% 50%; transition: transform 1s linear; /*transition: 3s linear;*/ /*transition: 3s linear;*/ } .btn-shrink { width: 20px; height: 40px; @@ -442,14 +463,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; @@ -469,10 +493,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; @@ -504,71 +530,90 @@ display: grid; font-size: 18px; } /*input 点击搜索样式*/ .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: 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{ display: inline-block; position: relative; padding-right: 5px; color:@color-shadow; i{ display: block; width: 15px; height: 10px; position: absolute; top:50%; right: -15px; margin-top: -5px; } } .el-radio.is-checked .levelOfRisk-type{color:#409EFF} /*input 点击搜索样式*/ .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; .state{ width: 30px; height: 30px; position: absolute; top:50%; left:10px; margin-top: -15px; border-radius: 50%; box-shadow: 0 0 3px #000; background: #0B3B6D; } .rightButtonSearch { display: flex; justify-content: space-between; align-items: center; .el-input { margin-right: 10px } .environmental-risk-list.hover, .environmental-risk-list:hover{ color:@color-over; background: @background-color; .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 { display: inline-block; position: relative; padding-right: 5px; color: @color-shadow; i { display: block; width: 15px; height: 10px; position: absolute; top: 50%; right: -15px; margin-top: -5px; } } .el-radio.is-checked .levelOfRisk-type { color: #409EFF } .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; .state { width: 30px; height: 30px; position: absolute; top: 50%; left: 10px; margin-top: -15px; border-radius: 50%; box-shadow: 0 0 3px #000; background: #0B3B6D; } } .environmental-risk-list.hover, .environmental-risk-list:hover { color: @color-over; background: @background-color; } input::-webkit-input-placeholder { color: #569ee1; @@ -695,7 +740,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; } @@ -724,48 +769,66 @@ background-color: #061e51 !important; } } .unfold { transform: translateX(332px); transition: transform 0.5s linear; } .shrink { transform: translateX(0px); transition: transform 0.5s linear; } /******************以下公共部分**********/ .sewers-search{ position: relative; overflow: hidden; .panel-title{} .search-panel{ background-color: transparent; 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 ; color: @color-gray; font-size: 0.01rem; 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);} } .search-btn{ } //location-btn{ // //} .location-btn:hover,.el-input__icon:hover{ color: @color; cursor: pointer; } /******************以下公共部分**********/ .sewers-search { position: relative; overflow: hidden; .panel-title { } .search-panel { background-color: transparent; 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; color: @color-gray; font-size: 0.01rem; 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); } } .search-btn { } //location-btn{ // //} .location-btn:hover, .el-input__icon:hover { color: @color; cursor: pointer; } } } </style> src/components/panel/topicSearch/SewersSearch.vue
@@ -1,78 +1,71 @@ <template> <div class="sewers-search" v-if="gdVisible"> <div class="panel-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.pipelineType" @change="handlePipelineType" :popper-class="'select-down'"> <el-option v-for="item in pipelineTypeOptions" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item :label="form.pipelineType+':'" size="mini"> <el-select style="width: 100%" v-model="form.dataType" @change="handleDataType" :popper-class="'select-down'"> <el-option v-for="item in dataTypeOptions" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <!-- <el-form-item >--> <div class="rightButtonSearch"> <el-input v-model="form.keyword" size="mini" placeholder="在此输入关键字搜索"> <!-- <el-button slot="append" icon="el-icon-search" size="mini"></el-button>--> <!-- <i slot="prefix" class="el-input__icon el-icon-search"></i>--> <!-- <i slot="suffix" class="search-btn el-input__icon el-icon-search" @click="handleSearch"></i> --> </el-input> <el-button class="el-icon-search" @click="handleSearch"></el-button> <el-tabs v-model="activeName" @tab-click="handleClick"> <el-tab-pane label="查询" name="first"> <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.pipelineType" @change="handlePipelineType" :popper-class="'select-down'"> <el-option v-for="item in pipelineTypeOptions" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <el-form-item :label="form.pipelineType+':'" size="mini"> <el-select style="width: 100%" v-model="form.dataType" @change="handleDataType" :popper-class="'select-down'"> <el-option v-for="item in dataTypeOptions" :key="item.value" :label="item.label" :value="item.value"> </el-option> </el-select> </el-form-item> <div class="rightButtonSearch"> <el-input v-model="form.keyword" size="mini" placeholder="在此输入关键字搜索"> </el-input> <el-button class="el-icon-search" @click="handleSearch"></el-button> </div> </el-form> </div> <!-- </el-form-item>--> <!-- <el-form-item>--> <!-- <input type="button" class="btn-ok" @click="handleSearch" value="查询">--> <!-- <input type="button" class="btn-reset" @click="handleSearch" value="重置">--> <!-- </el-form-item>--> </el-form> </div> <el-scrollbar style="height:380.44px;"> <div class="environmental-risk-list" v-for="(item,index) in list" :key="index"> <!-- <i class="state"></i> --> <div @click="handleLocation(item)"> <h3 class="B-TMD-table-list-title-y" :class="['B-TMD-table-list-title-y-nam', { 'warning': item.vehicleStatus==='910003' }, { 'offline': item.vehicleStatus==='910001' }]"> {{ item.properties.pipename }}</h3> <p v-for="itm in labelList" :key="itm.label"> <span>{{ itm.label }}:</span> <span :title="item.properties[itm.key] ">{{ item.properties[itm.key] }}</span> </p> </div> </div> </el-scrollbar> <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" > </el-pagination> </el-card> <el-scrollbar style="height:380.44px;"> <div class="environmental-risk-list" v-for="(item,index) in list" :key="index"> <div @click="handleLocation(item)"> <h3 class="B-TMD-table-list-title-y" :class="['B-TMD-table-list-title-y-nam', { 'warning': item.vehicleStatus==='910003' }, { 'offline': item.vehicleStatus==='910001' }]"> {{ item.properties.pipename }}</h3> <p v-for="itm in labelList" :key="itm.label"> <span>{{ itm.label }}:</span> <span :title="item.properties[itm.key] ">{{ item.properties[itm.key] }}</span> </p> </div> </div> </el-scrollbar> <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" > </el-pagination> </el-card> </el-tab-pane> <el-tab-pane label="分析" name="second"> <SewersAnalysis></SewersAnalysis> </el-tab-pane> <el-tab-pane label="历史" name="third">历史</el-tab-pane> </el-tabs> </div> <!-- <div class="monitor2" v-if="hbVisible">--> <!-- <env-protect-search></env-protect-search>--> <!-- </div>--> <!-- <div class="monitor2" v-if="pkVisible">--> <!-- <discharge-search></discharge-search>--> <!-- </div>--> </template> <script> @@ -81,10 +74,16 @@ import WfsHelper from '@components/helpers/WfsHelper' import AjaxUtils from '@utils/AjaxUtils' import SewersAnalysis from '@components/panel/topicSearch/SewersSelect/SewersAnalysis' export default { name: 'SewersSearch', components: { SewersAnalysis }, data () { return { activeName: 'first', gdVisible: true, list: [], labelList: PipelineTypeOptions[0].labelList, @@ -108,6 +107,9 @@ }, props: ['title'], methods: { handleClick (tab, event) { console.log(tab, event) }, handlePipelineType (val) { this.pipelineTypeOptions.forEach((itm) => { if (val === itm.value) { src/components/panel/topicSearch/SewersSelect/AnalysisChoose/Connectivity.vue
New file @@ -0,0 +1,83 @@ <template> <div class="connectivity"> <el-row> <el-button type="primary" size="mini">起始管段</el-button> <el-button type="primary" size="mini">结束管段</el-button> <el-button type="primary" size="mini">连通性分析</el-button> <el-button type="primary" size="mini">清除</el-button> </el-row> <el-table :data="tableData" height="250" border style="width: 100%"> <el-table-column prop="date" label="管线名称" width="180"> </el-table-column> <el-table-column prop="name" label="管线类型" width="180"> </el-table-column> <el-table-column prop="address" label="操作"> </el-table-column> </el-table> <el-table :data="tableData" height="250" border style="width: 100%"> <el-table-column prop="date" label="管线名称" width="180"> </el-table-column> <el-table-column prop="name" label="管线类型" width="180"> </el-table-column> <el-table-column prop="address" label="操作"> </el-table-column> </el-table> </div> </template> <script> export default { name: 'Connectivity', data () { return { tableData: [{ date: '2016-05-02', name: '王小虎', address: '上海市普陀区金沙江路 1518 弄' }, { date: '2016-05-04', name: '王小虎', address: '上海市普陀区金沙江路 1517 弄' }, { date: '2016-05-01', name: '王小虎', address: '上海市普陀区金沙江路 1519 弄' }, { date: '2016-05-03', name: '王小虎', address: '上海市普陀区金沙江路 1516 弄' }] } } } </script> <style lang="less" scoped> /deep/ .el-table { margin-top: 15px; } </style> src/components/panel/topicSearch/SewersSelect/AnalysisChoose/CrossSectional.vue
New file @@ -0,0 +1,62 @@ <template> <div class="connectivity"> <el-row> <el-button type="primary" size="mini">绘制线段</el-button> <el-button type="primary" size="mini">截断面分析</el-button> <el-button type="primary" size="mini">清除</el-button> </el-row> <el-table :data="tableData" height="250" border style="width: 100%"> <el-table-column prop="date" label="管线名称" width="180"> </el-table-column> <el-table-column prop="name" label="管线类型" width="180"> </el-table-column> <el-table-column prop="address" label="操作"> </el-table-column> </el-table> </div> </template> <script> export default { name: 'CrossSectional', data () { return { tableData: [{ date: '2016-05-02', name: '王小虎', address: '上海市普陀区金沙江路 1518 弄' }, { date: '2016-05-04', name: '王小虎', address: '上海市普陀区金沙江路 1517 弄' }, { date: '2016-05-01', name: '王小虎', address: '上海市普陀区金沙江路 1519 弄' }, { date: '2016-05-03', name: '王小虎', address: '上海市普陀区金沙江路 1516 弄' }] } } } </script> <style lang="less" scoped> /deep/ .el-table { margin-top: 15px; } </style> src/components/panel/topicSearch/SewersSelect/AnalysisChoose/Flow.vue
New file @@ -0,0 +1,60 @@ <template> <div class="connectivity"> <el-row> <el-button type="primary" size="mini">选择管段</el-button> </el-row> <el-table :data="tableData" height="250" border style="width: 100%"> <el-table-column prop="date" label="管线名称" width="180"> </el-table-column> <el-table-column prop="name" label="管线类型" width="180"> </el-table-column> <el-table-column prop="address" label="操作"> </el-table-column> </el-table> </div> </template> <script> export default { name: 'Flow', data () { return { tableData: [{ date: '2016-05-02', name: '王小虎', address: '上海市普陀区金沙江路 1518 弄' }, { date: '2016-05-04', name: '王小虎', address: '上海市普陀区金沙江路 1517 弄' }, { date: '2016-05-01', name: '王小虎', address: '上海市普陀区金沙江路 1519 弄' }, { date: '2016-05-03', name: '王小虎', address: '上海市普陀区金沙江路 1516 弄' }] } } } </script> <style lang="less" scoped> /deep/ .el-table { margin-top: 15px; } </style> src/components/panel/topicSearch/SewersSelect/AnalysisChoose/Tube.vue
New file @@ -0,0 +1,45 @@ <template> <div class="connectivity"> <el-row> <el-button type="primary" size="mini">选择管线</el-button> <el-button type="primary" size="mini">清除</el-button> </el-row> <el-table :data="tableData" height="250" border style="width: 100%"> <el-table-column prop="date" label="管线名称" width="180"> </el-table-column> <el-table-column prop="name" label="管线类型" width="180"> </el-table-column> <el-table-column prop="address" label="操作"> </el-table-column> </el-table> </div> </template> <script> export default { name: 'Tube', data () { return { tableData: [] } } } </script> <style lang="less" scoped> /deep/ .el-table { margin-top: 15px; } </style> src/components/panel/topicSearch/SewersSelect/SewersAnalysis.vue
New file @@ -0,0 +1,48 @@ <template> <div class="sewers-analysis-tab"> <el-tabs v-model="activeName" type="border-card" @tab-click="handleClick"> <el-tab-pane label="连通性" name="first"> <Connectivity></Connectivity> </el-tab-pane> <el-tab-pane label="爆管" name="second"> <Tube></Tube> </el-tab-pane> <el-tab-pane label="流向" name="third"> <Flow></Flow> </el-tab-pane> <el-tab-pane label="横断面" name="four"> <CrossSectional></CrossSectional> </el-tab-pane> </el-tabs> </div> </template> <script> import Connectivity from '@components/panel/topicSearch/SewersSelect/AnalysisChoose/Connectivity' import Tube from '@components/panel/topicSearch/SewersSelect/AnalysisChoose/Tube' import Flow from '@components/panel/topicSearch/SewersSelect/AnalysisChoose/Flow' import CrossSectional from '@components/panel/topicSearch/SewersSelect/AnalysisChoose/CrossSectional' export default { name: 'SewersFirstTab', components: { Connectivity, Tube, Flow, CrossSectional }, data () { return { activeName: 'first' } }, methods: { handleClick (tab, event) { console.log(tab, event) } } } </script> <style lang="less" scoped> </style>