| | |
| | | <template> |
| | | <div class="float-panel"> |
| | | <div :class='["btn",layerControllerVisible ? "active" : ""]' @click="showPanel"><span><img src="@assets/images/map-pages/icon/layer.png" alt="" width="26px" style="display: block;margin: auto"><span class="icon-name">图层</span></span></div> |
| | | <div :class='["iconBtn",layerControllerVisible ? "active" : ""]' @click="showPanel"><span><img src="@assets/images/map-pages/icon/layer.png" alt="" width="26px" style="display: block;margin: auto"><span class="icon-name">图层</span></span></div> |
| | | <transition name="fade"> |
| | | <div :class="'legend-content map-background'" style="position: absolute;left: 50px;top: 0" v-show="layerControllerVisible"> |
| | | <lc-service-layer></lc-service-layer> |
| | |
| | | import iconSetting from '@/assets/images/map-pages/icon/setting.png' |
| | | import LcServiceLayer from './modules/LcServiceLayer' |
| | | |
| | | const cityOptions = ['上海', '北京', '广州', '深圳'] |
| | | export default { |
| | | name: 'LayerController', |
| | | components: { LcServiceLayer }, |
| | |
| | | icons: { |
| | | setting: iconSetting |
| | | }, |
| | | checkAll: false, |
| | | checkedCities: ['上海', '北京'], |
| | | cities: cityOptions, |
| | | isIndeterminate: true, |
| | | layerControllerVisible: false, |
| | | panelSwitch: { |
| | | main: true // 主窗口 |
| | |
| | | methods: { |
| | | showPanel () { |
| | | this.layerControllerVisible = !this.layerControllerVisible |
| | | }, |
| | | handleCheckAllChange (val) { |
| | | this.checkedCities = val ? cityOptions : [] |
| | | this.isIndeterminate = false |
| | | }, |
| | | handleCheckedCitiesChange (value) { |
| | | const checkedCount = value.length |
| | | this.checkAll = checkedCount === this.cities.length |
| | | this.isIndeterminate = checkedCount > 0 && checkedCount < this.cities.length |
| | | }, |
| | | init () { |
| | | this.initPreset() |
| | |
| | | div { |
| | | color: #00fff6; |
| | | } |
| | | .btn { |
| | | .iconBtn { |
| | | width:45px; |
| | | text-align: center; |
| | | background: rgba(0, 16, 30, 0.5); |
| | |
| | | margin-left: 30px; |
| | | height: auto; |
| | | } |
| | | |
| | | .switch-head-up { |
| | | width: 22px; |
| | | height: 16px; |
| | | float: right; |
| | | margin-top: 10px; |
| | | margin-right: 10px; |
| | | cursor: pointer; |
| | | background-image: url(../../assets/images/map-pages/icon/xljt1.png); |
| | | transform: rotateX(0deg); |
| | | transform-origin: 50% 50%; |
| | | transition: transform 0.5s linear 0s; |
| | | } |
| | | |
| | | .switch-head-down { |
| | | transform: rotateX(180deg); |
| | | transform-origin: 50% 50%; |
| | |
| | | color: #569EB7; |
| | | padding: 0 16px; |
| | | } |
| | | |
| | | .horn { |
| | | width: 6px; |
| | | height: 6px; |
| | | float: left; |
| | | position: absolute; |
| | | } |
| | | |
| | | .horn-tl { |
| | | background-image: url(../../assets/images/map-pages/cosmetics/horn_tl.png); |
| | | left: -1px; |
| | | top: -1px; |
| | | } |
| | | |
| | | .horn-tr { |
| | | background-image: url(../../assets/images/map-pages/cosmetics/horn_tr.png); |
| | | right: -1px; |
| | | top: -1px; |
| | | } |
| | | |
| | | .horn-bl { |
| | | background-image: url(../../assets/images/map-pages/cosmetics/horn_bl.png); |
| | | left: -1px; |
| | | bottom: -1px; |
| | | } |
| | | |
| | | .horn-br { |
| | | background-image: url(../../assets/images/map-pages/cosmetics/horn_br.png); |
| | | right: -1px; |
| | | bottom: -1px; |
| | | } |
| | | |
| | | ::-webkit-scrollbar { |
| | | width: 7px; |
| | | height: 5px !important; |
New file |
| | |
| | | <template> |
| | | <div class="float-panel"> |
| | | <div :class='["btn",active ? "active" : ""]' @click="onClick"> |
| | | <span> |
| | | <img :src="src" alt="" width="26px" style="display: block;margin: auto"> |
| | | <span class="icon-name">{{label}}</span> |
| | | </span> |
| | | </div> |
| | | </div> |
| | | </template> |
| | | |
| | | <script> |
| | | import '@assets/css/map/magic.min.css' |
| | | |
| | | import iconSetting from '@/assets/images/map-pages/icon/setting.png' |
| | | |
| | | export default { |
| | | name: 'LayerController', |
| | | props: { |
| | | src: String, |
| | | label: String, |
| | | active: Object, |
| | | onClick: Function |
| | | }, |
| | | computed: { |
| | | map () { |
| | | return this.$store.state.map.map |
| | | }, |
| | | L () { |
| | | return this.$store.state.map.L |
| | | }, |
| | | layerHelper () { |
| | | return this.$store.state.map.layerHelper |
| | | } |
| | | }, |
| | | data () { |
| | | return { |
| | | width: '250px', |
| | | isShow: true, |
| | | icons: { |
| | | setting: iconSetting |
| | | }, |
| | | layerControllerVisible: false, |
| | | panelSwitch: { |
| | | main: true // 主窗口 |
| | | } |
| | | } |
| | | }, |
| | | mounted () { |
| | | this.$nextTick(function () { |
| | | this.init() |
| | | }) |
| | | }, |
| | | methods: { |
| | | } |
| | | } |
| | | </script> |
| | | |
| | | <style lang="less"> |
| | | .float-panel { |
| | | position: absolute; |
| | | left: 2px; |
| | | top: 120px; |
| | | height: auto; |
| | | font-size: 11px; |
| | | z-index: 1000; |
| | | |
| | | div { |
| | | color: #00fff6; |
| | | } |
| | | .btn { |
| | | width:45px; |
| | | text-align: center; |
| | | background: rgba(0, 16, 30, 0.5); |
| | | cursor: pointer; |
| | | color: #00fff6; |
| | | border: 0.00521rem solid #00fff6; |
| | | box-shadow: 0 0 0.03rem #00fff6; |
| | | } |
| | | .active { |
| | | border: 0.00521rem solid #fff700; |
| | | box-shadow: 0 0 0.03rem #fff700; |
| | | } |
| | | .title-border { |
| | | width: 100%; |
| | | height: 28px; |
| | | background: #10488c; |
| | | -webkit-clip-path: polygon(0px 0px, 0px 28px, 230px 28px, 230px 9px, 95px 9px, 86px 0px); |
| | | clip-path: polygon(0px 0px, 0px 28px, 230px 28px, 230px 9px, 95px 9px, 86px 0px); |
| | | position: relative; |
| | | } |
| | | |
| | | .title-border:before { |
| | | content: ""; |
| | | display: block; |
| | | position: absolute; |
| | | width: 6px; |
| | | height: 6px; |
| | | top: 0; |
| | | left: 0; |
| | | background-color: #38c8ef; |
| | | } |
| | | |
| | | .title-border:after { |
| | | content: ""; |
| | | display: block; |
| | | position: absolute; |
| | | width: 6px; |
| | | height: 6px; |
| | | top: 9px; |
| | | right: 0; |
| | | background-color: #38c8ef; |
| | | -webkit-clip-path: polygon(0px 0px, 0px 1px, 5px 1px, 5px 6px, 6px 6px, 6px 0px); |
| | | clip-path: polygon(0px 0px, 0px 1px, 5px 1px, 5px 6px, 6px 6px, 6px 0px); |
| | | } |
| | | |
| | | .title-text-border { |
| | | width: 30px; |
| | | height: 120px; |
| | | float: left; |
| | | background: #091331; |
| | | // -webkit-clip-path: polygon(1px 1px, 1px 27px, 229px 27px, 229px 10px, 94px 10px, 85px 1px); |
| | | // clip-path: polygon(1px 1px, 1px 27px, 229px 27px, 229px 10px, 94px 10px, 85px 1px); |
| | | } |
| | | |
| | | .title-icon { |
| | | float: left; |
| | | width: 22px; |
| | | height: 22px; |
| | | margin-top: 4px; |
| | | margin-left: 2px; |
| | | background-image: url(../../assets/images/map-pages/icon/setting.png); |
| | | } |
| | | |
| | | .title-text { |
| | | width: 25px; |
| | | color: #00d0f9; |
| | | font-weight: bold; |
| | | margin-top: 6px; |
| | | text-align: center; |
| | | font-size: 14px; |
| | | filter: brightness(100%); |
| | | text-shadow: 0 0 5px #00d0f9, 0 0 0 #00d0f9, 0 0 0 #00d0f9, 0 0 0 #0258c5, 0 0 0 #0258c5, 0 0 2px #0258c5, 0 0 5px #0258c5, 0 0 15px #0258c5; |
| | | } |
| | | |
| | | .title-line { |
| | | display: inline-block; |
| | | width: 120px; |
| | | height: 1px; |
| | | // margin-top: 14px; |
| | | margin-left: 4px; |
| | | background-color: #04527f; |
| | | line-height: 5px; |
| | | vertical-align: middle; |
| | | } |
| | | |
| | | .title-point { |
| | | display: inline-block; |
| | | width: 5px; |
| | | height: 5px; |
| | | // margin-top: 12px; |
| | | background-color: #04527f; |
| | | line-height: 5px; |
| | | vertical-align: middle; |
| | | } |
| | | |
| | | .title-button { |
| | | float: right; |
| | | width: 28px; |
| | | height: 28px; |
| | | cursor: pointer; |
| | | |
| | | :hover { |
| | | font-weight: bold; |
| | | color: white; |
| | | } |
| | | } |
| | | |
| | | .body-box { |
| | | background-color: rgba(44, 62, 80, 0.6); |
| | | border: 1px solid #10488c; |
| | | margin-top: -1px; |
| | | margin-left: 30px; |
| | | height: auto; |
| | | } |
| | | .switch-head-down { |
| | | transform: rotateX(180deg); |
| | | transform-origin: 50% 50%; |
| | | transition: transform 0.5s linear 0s; |
| | | } |
| | | |
| | | select { |
| | | background: transparent; |
| | | margin: 6px; |
| | | border: .5px solid #569EB7; |
| | | width: 150px; |
| | | color: #569EB7; |
| | | padding: 0 16px; |
| | | } |
| | | ::-webkit-scrollbar { |
| | | width: 7px; |
| | | height: 5px !important; |
| | | } |
| | | |
| | | ::-webkit-scrollbar-thumb { |
| | | /*滚动条里面小方块*/ |
| | | border-radius: 10px; |
| | | box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2); |
| | | background: #0661AE; |
| | | border: 1px solid transparent; |
| | | } |
| | | |
| | | ::-webkit-scrollbar-track { |
| | | /*滚动条里面轨道*/ |
| | | // box-shadow : inset 0 0 5px rgba(0, 0, 0, 0.2); |
| | | border-radius: 0px; |
| | | background: #0E3565; |
| | | } |
| | | } |
| | | |
| | | </style> |
| | |
| | | <template> |
| | | <div class="enterprise-panel"> |
| | | <div class="enterprise-function" @click="showWarnDialog()"> |
| | | <img src="@/assets/images/map-pages/icon/map/warn.png" alt="" width="32px"> |
| | | <div :class='["iconBtn",warnVisible ? "active" : ""]'><span><img src="@/assets/images/map-pages/icon/map/warn.png" alt="" width="26px" style="display: block;margin: auto"><span class="icon-name">预报警</span></span></div> |
| | | |
| | | </div> |
| | | <div class="enterprise-function" @click="showStatisDialog()"> |
| | | <img src="@/assets/images/map-pages/icon/map/company.png" alt="" width="32px"> |
| | | <div :class='["iconBtn",companyVisible ? "active" : ""]'><span><img src="@/assets/images/map-pages/icon/map/company.png" alt="" width="26px" style="display: block;margin: auto"><span class="icon-name">指标</span></span></div> |
| | | </div> |
| | | <Dialog ref="warnDialog" title="企业预警报警分类统计"> |
| | | <warn></warn> |
| | |
| | | }, |
| | | data () { |
| | | return { |
| | | comp: Warn |
| | | comp: Warn, |
| | | warnVisible: false, |
| | | companyVisible: false |
| | | } |
| | | }, |
| | | methods: { |
| | |
| | | }, |
| | | showWarnDialog () { |
| | | this.$refs.warnDialog.show() |
| | | this.warnVisible = true |
| | | }, |
| | | showStatisDialog () { |
| | | this.$refs.indexStatisticsDialog.show() |
| | | this.companyVisible = true |
| | | } |
| | | } |
| | | } |
| | |
| | | z-index: 9999; |
| | | |
| | | .enterprise-function{ |
| | | width: 40px; |
| | | width: 50px; |
| | | float: left; |
| | | cursor: pointer; |
| | | } |
| | | .iconBtn { |
| | | width:45px; |
| | | text-align: center; |
| | | background: rgba(0, 16, 30, 0.5); |
| | | cursor: pointer; |
| | | color: #00fff6; |
| | | border: 0.00521rem solid #00fff6; |
| | | box-shadow: 0 0 0.03rem #00fff6; |
| | | } |
| | | .active { |
| | | // border: 0.00521rem solid #fff700; |
| | | // box-shadow: 0 0 0.03rem #fff700; |
| | | } |
| | | } |
| | | </style> |
| | |
| | | <template> |
| | | <div class="summary-sheets"> |
| | | <div> |
| | | <i class="el-icon-c-scale-to-original" @click="closeBtn"></i> |
| | | </div> |
| | | <Dialog ref="summarySheets" title="企业指标分类统计"> |
| | | <tab-handover></tab-handover> |
| | | </Dialog > |
| | | <div :class='["iconBtn",summaryVisible ? "active" : ""]' @click="closeBtn"><span><img src="@assets/images/map-pages/icon/toolbox/table.png" alt="" width="26px" style="display: block;margin: auto"><span class="icon-name">统计表</span></span></div> |
| | | <Dialog ref="summarySheets" title="企业指标分类统计"> |
| | | <tab-handover></tab-handover> |
| | | </Dialog > |
| | | </div> |
| | | </template> |
| | | |
| | |
| | | tabHandover, |
| | | Dialog |
| | | }, |
| | | |
| | | data () { |
| | | return { |
| | | summaryVisible: false |
| | | } |
| | | }, |
| | | methods: { |
| | | closeBtn () { |
| | | // const summary = document.getElementById('summary') |
| | |
| | | left: 1px; |
| | | /*width: 850px;*/ |
| | | /*height: 265px;*/ |
| | | border: #90c8e0 1px solid; |
| | | z-index:2000; |
| | | background-color: rgba(26, 73, 81, 0.901960784313726); |
| | | /*color: #fff;*/ |
| | | .el-icon-c-scale-to-original { |
| | | width: 30px; |
| | | height: 30px; |
| | | font-size: 30px; |
| | | } |
| | | .iconBtn { |
| | | width:45px; |
| | | text-align: center; |
| | | background: rgba(0, 16, 30, 0.5); |
| | | cursor: pointer; |
| | | color: #00fff6; |
| | | border: 0.00521rem solid #00fff6; |
| | | box-shadow: 0 0 0.03rem #00fff6; |
| | | } |
| | | .active { |
| | | border: 0.00521rem solid #fff700; |
| | | box-shadow: 0 0 0.03rem #fff700; |
| | | } |
| | | } |
| | | </style> |