From 8db683d564865b4bcfb436b35dff1eea5b3816fc Mon Sep 17 00:00:00 2001 From: zhangshuaibao <15731629597@163.com> Date: 星期四, 08 四月 2021 11:08:47 +0800 Subject: [PATCH] Merge branch 'develop' of http://xearth.cn:6600/r/wuyushui/SewerAndRainNetwork into develop --- src/components/panel/RightSearchPanel.vue | 40 - src/components/panel/topicSearch/GasWasteSearch.vue | 55 -- src/assets/css/map/map-panel-style.less | 19 src/components/BaseNav/PublicBounced/GasComponents/EChartsHour.vue | 107 ++--- src/components/LayerController/modules/LcServiceLayerFilter.vue | 14 src/assets/css/map/map-popup.less | 4 src/components/LayerController/LayerController.vue | 12 src/components/panel/topicSearch/DischargeSearch.vue | 9 src/components/BaseNav/PublicBounced/PublicBounced.vue | 40 - src/components/LayerController/modules/LcServiceLayer.vue | 16 src/components/plugin/proj4leaflet.js | 273 ++++++++++++++ src/router/index.js | 8 src/components/panel/topicSearch/SolidWasteSearch.vue | 4 src/components/table/components/SolidWaste.vue | 279 ++++++++++---- src/components/panel/topicSearch/EnvRiskSearch.vue | 15 src/components/panel/topicSearch/WaterWasteSearch.vue | 4 src/components/table/summarySheets.vue | 73 ++- src/components/BaseNav/PublicBounced/GasComponents/PublicVideo.vue | 2 src/styles/theme-dark/el-ui/tabs.less | 6 package.json | 2 src/components/panel/topicSearch/SewersSearch.vue | 49 -- src/views/Temp.vue | 46 ++ src/components/panel/topicSearch/SoilGroundWaterSearch.vue | 7 23 files changed, 710 insertions(+), 374 deletions(-) diff --git a/package.json b/package.json index abf1a54..40e1977 100644 --- a/package.json +++ b/package.json @@ -19,6 +19,7 @@ "dayjs": "^1.9.6", "echarts": "^4.2.1", "element-ui": "^2.14.1", + "esri-leaflet": "^3.0.1", "fullscreen": "^1.1.1", "jquery": "^3.5.1", "js-cookie": "^2.2.0", @@ -28,6 +29,7 @@ "leaflet.markercluster": "^1.4.1", "lodash": "^4.17.10", "nprogress": "^0.2.0", + "proj4": "^2.7.2", "qs": "^6.10.1", "rbush": "^3.0.1", "screenfull": "^3.3.3", diff --git a/src/assets/css/map/map-panel-style.less b/src/assets/css/map/map-panel-style.less index 1a3ca97..f91da00 100644 --- a/src/assets/css/map/map-panel-style.less +++ b/src/assets/css/map/map-panel-style.less @@ -53,6 +53,7 @@ .select-down { border: none !important; background-color: @background-color; + margin: 0; //.el-scrollbar{ // @@ -242,13 +243,18 @@ /***************Company 鍥惧眰 鎮诞妗嗘牱寮忋��*********************************/ .company-bindTooltip { - background: none; + background: @background-color-split; border: none; color: red; font-size: 16px; font-weight: 900 !important; text-shadow: 0 0 5px #fff; + //filter:Dropshadow(offx=1,offy=0,color=white) + //Dropshadow(offx=0,offy=1,color=white) + //Dropshadow(offx=0,offy=-1,color=white) + //Dropshadow(offx=-1,offy=0,color=white); box-shadow: none; + -webkit-text-stroke: .5px #fff; } .company-bindTooltip-hover h3 { @@ -342,3 +348,14 @@ } } +.panel-title{ + color: @color-title; + font-size: 18px; + padding: 10px; + text-align: center; + border-bottom: 1px solid @background-color-split; +} + +.el-tabs__header .is-top { + +} diff --git a/src/assets/css/map/map-popup.less b/src/assets/css/map/map-popup.less index d451294..4ab0b2e 100644 --- a/src/assets/css/map/map-popup.less +++ b/src/assets/css/map/map-popup.less @@ -6,13 +6,15 @@ background-color: @background-color; /*background-color: transparent;*/ border: .00521rem solid @color; - padding: .05rem; //-webkit-box-shadow: 0 0 0.03125rem 0 @color; //box-shadow: 0 0 0.03125rem 0 @color; -webkit-box-shadow: 0 0 10px 0 @color; box-shadow: 0 0 .03rem @color; //border-radius: .03rem; + padding:6px; border-radius: 10px; + .leaflet-popup-content{margin: 0} + } .leaflet-popup-tip-container { diff --git a/src/components/BaseNav/PublicBounced/GasComponents/EChartsHour.vue b/src/components/BaseNav/PublicBounced/GasComponents/EChartsHour.vue index d7f9953..49744bd 100644 --- a/src/components/BaseNav/PublicBounced/GasComponents/EChartsHour.vue +++ b/src/components/BaseNav/PublicBounced/GasComponents/EChartsHour.vue @@ -50,18 +50,19 @@ <!-- </div>--> <!-- </el-dialog>--> <!-- </div>--> - <div style="width:750px;height:260px;" id="echarts" ref="main"> + <div style="width:100%;height:1rem;margin-top:-0.1rem;position:absolute;" id="echarts" ref="main"> </div> </div> </div> </template> <script> -// import PublicDetailedList from '@components/BaseNav/PublicBounced/GasComponents/PublicDetailedList' +import PublicDetailedList from '@components/BaseNav/PublicBounced/GasComponents/PublicDetailedList' + export default { name: 'ECharts', components: { - // PublicDetailedList + PublicDetailedList }, data () { return { @@ -234,69 +235,53 @@ } }, mounted () { - this.drawChart() - const dataWatch = JSON.parse(JSON.stringify(this.$attrs.getWasteWaterMonitoring)) - console.log(dataWatch) - for (var i = 0; i < dataWatch.length; i++) { - this.dataDate.push(dataWatch[i].MonTimeStr.substring(10, 17)) - } - console.log(this.dataDate) + this.$nextTick(() => { + this.drawChart() + const dataWatch = JSON.parse(JSON.stringify(this.$attrs.getWasteWaterMonitoring)) + // console.log(dataWatch) + for (var i = 0; i < dataWatch.length; i++) { + this.dataDate.push(dataWatch[i].MonTimeStr.substring(10, 17)) + } + // console.log(this.dataDate) + }) } } </script> <style scoped lang="less"> - .infomation { - margin-left: 10px; - } +.Infomation { + margin-left: 10px; + height: 0.2rem; +} - .el-tag { - height: 25px; - line-height: 25px; - margin-right: 10px; - font-size: 10px; - background-color: rgba(0, 255, 246, 0.14); - color: #00d0f9; - border: none; - padding: 0 15px; - } +.el-tag { + height: 25px; + line-height: 25px; + margin-right: 10px; + font-size: 10px; + background-color: rgba(0, 255, 246, 0.14); + color: #00d0f9; + border: none; + padding: 0 15px; +} - .form-echrts { - width: 100%; - height: 100%; - border: 1px solid #396d83; - //margin: 10px 10px 10px 10px; - .el-dialog-div { - //height: 50vh!important; - overflow: auto; - //overflow: hidden; - } - .block{ - .date{ - width: 300px; - height: 30px; - } - } - .text-size{ - display: flex; - justify-content: space-around; - } - .from-search{ - display: flex; - justify-content: space-around; - .demo-form-inline{ - display: flex; - justify-content: space-around; - } - .el-button--mini, .el-button--mini.is-round{ - height: 30px; - } - } - #echarts { - margin: 0; - padding: 0; - //border: 1px solid #396d83; - //margin: 10px 10px 10px 10px; - } - } +.form-echrts { + width: 100%; + height: 1rem; + border-top: 1px solid #396d83; + //margin: 10px 10px 10px 10px; + .el-dialog-div { + //height: 50vh!important; + overflow: auto; + //overflow: hidden; + } + + #echarts { + margin: 0; + padding: 0; + //height: 3rem; + //border: 1px solid #396d83; + //margin: 10px 10px 10px 10px; + } +} </style> diff --git a/src/components/BaseNav/PublicBounced/GasComponents/PublicVideo.vue b/src/components/BaseNav/PublicBounced/GasComponents/PublicVideo.vue index 426879e..4c581a3 100644 --- a/src/components/BaseNav/PublicBounced/GasComponents/PublicVideo.vue +++ b/src/components/BaseNav/PublicBounced/GasComponents/PublicVideo.vue @@ -26,7 +26,7 @@ .win { position: relative; background-color: rgba(33, 41, 69, 0.9); - height: 2.1rem; + //height: 2rem; } .main { diff --git a/src/components/BaseNav/PublicBounced/PublicBounced.vue b/src/components/BaseNav/PublicBounced/PublicBounced.vue index 051b3c4..5a47938 100644 --- a/src/components/BaseNav/PublicBounced/PublicBounced.vue +++ b/src/components/BaseNav/PublicBounced/PublicBounced.vue @@ -14,39 +14,13 @@ <public-chart v-else :getWasteGasDetails="getWasteGasDetails" :value="value" :getWasteWaterMonitoring="getWasteWaterMonitoring" - :getWasteWaterMonitoringDetails="getWasteWaterMonitoringDetails -"></public-chart> + :getWasteWaterMonitoringDetails="getWasteWaterMonitoringDetails"></public-chart> </div> </div> <div class="public-bounced-content-right"> <public-video></public-video> </div> </div> - <!-- <el-dialog--> - <!-- :visible.sync="flag"--> - <!-- width="70%"--> - <!-- v-drag--> - <!-- :modal="false">--> - <!-- <div class="public-bounced-title">--> - <!-- <span>{{ displayContentTitle }}</span>--> - <!-- <i class="el-icon-circle-close" @click="closePopup"></i>--> - <!-- </div>--> - <!-- <div class="public-bounced-content">--> - <!-- <div class="public-bounced-content-left">--> - <!-- <public-tabs :displayContentTab="displayContentTab" :value="value"--> - <!-- :setWasteGasdata="setWasteGasdata" :setWasteWaterdata="setWasteWaterdata"></public-tabs>--> - <!-- <div class="public-bounced-content-left-bottom">--> - <!-- <public-table v-if="value === 'gufei'"--> - <!-- :displayContentTable="displayContentTable"></public-table>--> - <!-- <public-chart v-else :getWasteGasDetails="getWasteGasDetails"--> - <!-- :getWasteWaterMonitoring="getWasteWaterMonitoring"></public-chart>--> - <!-- </div>--> - <!-- </div>--> - <!-- <div class="public-bounced-content-right">--> - <!-- <public-video></public-video>--> - <!-- </div>--> - <!-- </div>--> - <!-- </el-dialog>--> </div> </template> @@ -107,7 +81,7 @@ this.setWasteWaterdata = dataWater // console.log(data) this.getWasteWaterMonitoring = drawData - console.log(drawData) + // console.log(drawData) this.getWasteWaterMonitoringDetails = dataDetail this.displayContentTitle = dataWater.Name this.flag = true @@ -119,14 +93,16 @@ <style lang="less" scoped> .public-bounced { - width: 10rem; + width: 8rem; //height: 2.6rem; //width: 70vw; //height: 30vh; z-index: 999; position: absolute; - top: 5%; - left: 5%; + //bottom: 2rem; + //left: 5rem; + top: 15%; + left: 15%; background-color: #002432; border: 1px #9fc5c8 solid; @@ -159,7 +135,7 @@ justify-content: space-around; .public-bounced-content-left { - width: 6.8rem; + width: 4.8rem; } .public-bounced-content-right { diff --git a/src/components/LayerController/LayerController.vue b/src/components/LayerController/LayerController.vue index dcb6ed3..ce4d496 100644 --- a/src/components/LayerController/LayerController.vue +++ b/src/components/LayerController/LayerController.vue @@ -1,7 +1,7 @@ <template> <div :class='["float-panel",layerControllerVisible ? "active" : ""]' > - <el-tooltip :popper-class="'map-tooltip'" effect="dark" content="鍥惧眰" placement="left"> + <el-tooltip :popper-class="'map-tooltip'" effect="dark" content="鍥惧眰鎺у埗" placement="left"> <div @click="showPanel" class="iconBtn" :class='layerControllerVisible ? "active-button" : ""' v-show="!layerControllerVisible" style=" position: absolute;top:0;left: 0;"> <img src="@assets/images/map-pages/icon/layer.png" alt="" class="icon"> <!-- <span class="icon-name">鍥惧眰</span>--> @@ -96,10 +96,6 @@ min-height: 0.28rem; min-width: 0.28rem; overflow: hidden; - div { - color: #00fff6; - } - .iconBtn.active{ display: none; } @@ -238,20 +234,20 @@ background: #0E3565; } .el-button--default{ - margin-left: 10px; padding: 15px 3px; background:@background-color; color:@color-tool; position: absolute; top:0; - right: -26px; + left: 100%; + margin-left: .02rem; border-radius: 0.03rem 50% 50% 0.03rem; } .el-button--default:hover{ background:@background-color; } .legend-content{ - width: 250px; + width: 1.79167rem; } } diff --git a/src/components/LayerController/modules/LcServiceLayer.vue b/src/components/LayerController/modules/LcServiceLayer.vue index 68c74b6..3308d0e 100644 --- a/src/components/LayerController/modules/LcServiceLayer.vue +++ b/src/components/LayerController/modules/LcServiceLayer.vue @@ -1,11 +1,11 @@ <template> <div class="inner-panel"> - <div class="title"> 鍥惧眰鎺у埗 </div> + <div class="panel-title"> 鍥惧眰鎺у埗 </div> <div class="wms-panel"> <el-scrollbar class="wms-panel-scrollbar"> <div v-for="item in serviceLayers" :key="item.code" class="layerbox"> <!-- 涓�绾у浘灞傞亶鍘� --> - <div> + <div style="padding-left:10px;padding-top:10px"> <input type="checkbox" :name="'wmsLayer_'+item.code" :checked="item.checked" :value="item.code" @change="swAllLayers(item)"/>{{ item.name }} </div> @@ -103,13 +103,6 @@ <style scoped lang="less"> .inner-panel { - .title{ - color: @color-title; - font-size: 18px; - margin: 10px; - text-align: center; - } - .btn-filter { cursor: pointer; color: #ffffff; @@ -118,13 +111,14 @@ .wms-panel { .wms-panel-scrollbar{ - height: 50vh; + height: 457px; width: 100%; + font-size: 14px; } .layerbox { width: 100%; .layerbox-item { - padding-left: 20px; + padding-left: 30px; padding-top: 5px; .basemap-layer-item { margin-bottom: 5px; diff --git a/src/components/LayerController/modules/LcServiceLayerFilter.vue b/src/components/LayerController/modules/LcServiceLayerFilter.vue index f390c9f..2e4d80d 100644 --- a/src/components/LayerController/modules/LcServiceLayerFilter.vue +++ b/src/components/LayerController/modules/LcServiceLayerFilter.vue @@ -101,7 +101,6 @@ <style scoped lang="less"> .inner-panel { - color: #90c8e0; font-size: 13px; position: absolute; left: 1.82167rem; @@ -110,21 +109,20 @@ .filter-group { display: flex; flex-flow: row; - .filter-item { width: 0.6rem; height: 100%; margin-right: 5px; - + background-color: @background-color; + box-shadow: 0 0 0.03rem #00fff6; + border-radius: 0.03rem; .title { - height: 25px; - background-color: #091331; - border: 1px solid #10488c; + border-bottom:1px solid @background-color-split; + padding: 5px 0; + background-color: @background-color; } .content { - background-color: rgba(44, 62, 80, 0.6); - border: 1px solid #10488c; max-height: 200px; padding-bottom: 5px; //overflow-y: hidden; diff --git a/src/components/panel/RightSearchPanel.vue b/src/components/panel/RightSearchPanel.vue index 875399d..30af0e3 100644 --- a/src/components/panel/RightSearchPanel.vue +++ b/src/components/panel/RightSearchPanel.vue @@ -10,15 +10,13 @@ <button type="button" class="el-button special-button el-button--default el-icon-d-arrow-right"></button> </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)}" > - <el-tooltip :popper-class="'map-tooltip'" effect="dark" :content="item.name" placement="left"> - <li> -<!-- <span>{{item.name}}</span>--> -<!-- <div >--> - <img src="../../assets/images/map-pages/icon/sl.png" class="icon"> -<!-- </div>--> - </li> - </el-tooltip> + <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> @@ -41,7 +39,7 @@ </div> <div :class="'search-container map-background'"> - <div class="el-message-box__content" style="padding:6px;font-size: 13px;"> + <div class="el-message-box__content" style="padding:0 6px 6px 6px;font-size: 13px;"> <component :title="title" :is="gcComp"></component> </div> </div> @@ -182,11 +180,7 @@ </script> <style lang="less"> -.search-title{ - color:@color-title; - font-size: 18px; - margin: 5px; -} + .search-container { position: relative; width: 1.79167rem; @@ -469,13 +463,14 @@ .el-icon-search{ width: 40px; border:1px solid @color; - height: 26px; - line-height: 26px; + height: 28px; + line-height: 28px; text-align: center; color:#fff; border-radius: 2px; cursor:pointer; background: rgba(0,16,30,.5); + padding:0; } } /*鍗曢�夋寜閽牱寮�*/ @@ -524,16 +519,6 @@ color:@color-over; background: @background-color; } - //.search-panel { - // border: #07325B; - // background-color: #07325B !important; - // margin-top: 0px; - // - // .el-input__inner { - // border-radius: 0px !important; - // background-color: #061e51 !important; - // } - //} input::-webkit-input-placeholder { color: #569ee1; @@ -701,10 +686,11 @@ .sewers-search{ position: relative; overflow: hidden; + .panel-title{} .search-panel{ background-color: transparent; - border: 1px solid @background-color-split; padding: 10px 0; + border-bottom: 1px solid @background-color-split; // .el-input{width:calc(100% - 40px);position: relative} /deep/ input { border-radius: 0; diff --git a/src/components/panel/topicSearch/DischargeSearch.vue b/src/components/panel/topicSearch/DischargeSearch.vue index 981d8e8..294a471 100644 --- a/src/components/panel/topicSearch/DischargeSearch.vue +++ b/src/components/panel/topicSearch/DischargeSearch.vue @@ -1,6 +1,6 @@ <template> <div class="sewers-search" v-if="gdVisible"> - <div class="search-title">{{title}}</div> + <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"> @@ -40,7 +40,7 @@ <!-- <el-form-item >--> <div class="rightButtonSearch"> <el-input v-model="form.keyword" size="mini" placeholder="鍦ㄦ杈撳叆鍏抽敭瀛楁悳绱�"></el-input> - <el-buttom class="el-icon-search" @click="handleSearch"></el-buttom> + <el-button class="el-icon-search" @click="handleSearch"></el-button> </div> </el-form> </div> @@ -122,7 +122,7 @@ import WfsHelper from '@components/helpers/WfsHelper' import AjaxUtils from '@utils/AjaxUtils' export default { - name: 'SewersSearch', + name: 'DischargeSearch', data () { return { gdVisible: true, @@ -147,7 +147,8 @@ { name: '涓�绾ч闄�', value: '2', color: 'sandybrown' }, { name: '浜岀骇椋庨櫓', value: '3', color: 'yellow' }, { name: '涓夌骇椋庨櫓', value: '4', color: 'green' } - ] + ], + areaTypeOptions: [] } }, props: ['title'], diff --git a/src/components/panel/topicSearch/EnvRiskSearch.vue b/src/components/panel/topicSearch/EnvRiskSearch.vue index 1df0f11..8c214dc 100644 --- a/src/components/panel/topicSearch/EnvRiskSearch.vue +++ b/src/components/panel/topicSearch/EnvRiskSearch.vue @@ -1,6 +1,6 @@ <template> <div class="sewers-search" v-if="gdVisible"> - <div class="search-title">{{title}}</div> + <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"> @@ -13,7 +13,7 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="浼佷笟鍚嶇О" size="mini"> + <el-form-item label="浼佷笟鍚嶇О锛�" size="mini"> <el-select style="width: 100%" v-model="form.enterpriseVal" @change="enterpriseType" :popper-class="'select-down'"> <el-option v-for="item in enterpriseTypeOptions" @@ -23,7 +23,7 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="浜岀骇鍗曚綅" size="mini"> + <el-form-item label="浜岀骇鍗曚綅锛�" size="mini"> <el-select style="width: 100%" v-model="form.enterpriseSubunitsVal" @change="enterpriseSubunitsType" :popper-class="'select-down'"> <el-option v-for="item in enterpriseSubunitsTypeOptions" @@ -33,14 +33,14 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="椋庨櫓绾у埆" size="mini"></el-form-item> + <el-form-item label="椋庨櫓绾у埆锛�" size="mini"></el-form-item> <el-radio-group v-model="form.type" class="levelOfRisk"> <el-radio v-for="(item,index) in levelOfRisk" :label="item.value" :key="index"><span class="levelOfRisk-type">{{item.name}}<i :style="'background:'+item.color"></i></span></el-radio> </el-radio-group> <div class="rightButtonSearch"> <el-input v-model="form.keyword" size="mini" placeholder="鍦ㄦ杈撳叆鍏抽敭瀛楁悳绱�"> </el-input> - <el-buttom class="el-icon-search" @click="handleSearch"></el-buttom> + <el-button class="el-icon-search" @click="handleSearch"></el-button> </div> </el-form> </div> @@ -82,7 +82,7 @@ import WfsHelper from '@components/helpers/WfsHelper' import AjaxUtils from '@utils/AjaxUtils' export default { - name: 'SewersSearch', + name: 'EnvRiskSearch', data () { return { gdVisible: true, @@ -107,7 +107,8 @@ { name: '涓�绾ч闄�', value: '2', color: 'sandybrown' }, { name: '浜岀骇椋庨櫓', value: '3', color: 'yellow' }, { name: '涓夌骇椋庨櫓', value: '4', color: 'green' } - ] + ], + areaTypeOptions: [] } }, props: ['title'], diff --git a/src/components/panel/topicSearch/GasWasteSearch.vue b/src/components/panel/topicSearch/GasWasteSearch.vue index b46642e..80c2f12 100644 --- a/src/components/panel/topicSearch/GasWasteSearch.vue +++ b/src/components/panel/topicSearch/GasWasteSearch.vue @@ -1,6 +1,6 @@ <template> <div class="sewers-search" v-if="gdVisible"> - <div class="search-title">{{title}}</div> + <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"> @@ -13,7 +13,7 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="浼佷笟鍚嶇О" size="mini"> + <el-form-item label="浼佷笟鍚嶇О锛�" size="mini"> <el-select style="width: 100%" v-model="form.enterpriseVal" @change="enterpriseType" :popper-class="'select-down'"> <el-option v-for="item in enterpriseTypeOptions" @@ -23,7 +23,7 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="浜岀骇鍗曚綅" size="mini"> + <el-form-item label="浜岀骇鍗曚綅锛�" size="mini"> <el-select style="width: 100%" v-model="form.enterpriseSubunitsVal" @change="enterpriseSubunitsType" :popper-class="'select-down'"> <el-option v-for="item in enterpriseSubunitsTypeOptions" @@ -33,7 +33,7 @@ </el-option> </el-select> </el-form-item> - <el-form-item label="涓夌骇鍗曚綅" size="mini"> + <el-form-item label="涓夌骇鍗曚綅锛�" size="mini"> <el-select style="width: 100%" v-model="form.enterpriseSubunitsVal" @change="enterpriseSubunitsType" :popper-class="'select-down'"> <el-option v-for="item in enterpriseSubunitsTypeOptions" @@ -54,7 +54,7 @@ <!-- <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-buttom class="el-icon-search" @click="handleSearch"></el-buttom> + <el-button class="el-icon-search" @click="handleSearch"></el-button> </div> <!-- </el-form-item>--> <!-- <el-form-item>--> @@ -63,7 +63,7 @@ <!-- </el-form-item>--> </el-form> </div> - <el-scrollbar style="height:300px"> + <el-scrollbar style="height:264px"> <div class="environmental-risk-list" ><!-- v-for="(item,index) in list" :key="index" --> <i class="state"></i> <div> @@ -72,46 +72,7 @@ <p>椋庨櫓绾у埆锛�<span>涓夌骇</span></p> </div> </div> - <div class="environmental-risk-list" ><!-- v-for="(item,index) in list" :key="index" --> - <i class="state"></i> - <div> - <h3>###鐐煎寲閮�</h3> - <p>鎵�灞為儴闂細<span>鐐煎寲閮�</span></p> - <p>椋庨櫓绾у埆锛�<span>涓夌骇</span></p> - </div> - </div> - <div class="environmental-risk-list" ><!-- v-for="(item,index) in list" :key="index" --> - <i class="state"></i> - <div> - <h3>###鐐煎寲閮�</h3> - <p>鎵�灞為儴闂細<span>鐐煎寲閮�</span></p> - <p>椋庨櫓绾у埆锛�<span>涓夌骇</span></p> - </div> - </div> - <div class="environmental-risk-list" ><!-- v-for="(item,index) in list" :key="index" --> - <i class="state"></i> - <div> - <h3>###鐐煎寲閮�</h3> - <p>鎵�灞為儴闂細<span>鐐煎寲閮�</span></p> - <p>椋庨櫓绾у埆锛�<span>涓夌骇</span></p> - </div> - </div> - <div class="environmental-risk-list" ><!-- v-for="(item,index) in list" :key="index" --> - <i class="state"></i> - <div> - <h3>###鐐煎寲閮�</h3> - <p>鎵�灞為儴闂細<span>鐐煎寲閮�</span></p> - <p>椋庨櫓绾у埆锛�<span>涓夌骇</span></p> - </div> - </div> - <div class="environmental-risk-list" ><!-- v-for="(item,index) in list" :key="index" --> - <i class="state"></i> - <div> - <h3>###鐐煎寲閮�</h3> - <p>鎵�灞為儴闂細<span>鐐煎寲閮�</span></p> - <p>椋庨櫓绾у埆锛�<span>涓夌骇</span></p> - </div> - </div> + </el-scrollbar> <!-- <span class="location-btn" @click="handleLocation(item)">588</span> --> <el-card class="footer-page" v-if="total > 10"> @@ -141,7 +102,7 @@ import WfsHelper from '@components/helpers/WfsHelper' import AjaxUtils from '@utils/AjaxUtils' export default { - name: 'SewersSearch', + name: 'GasWasteSearch', data () { return { gdVisible: true, diff --git a/src/components/panel/topicSearch/SewersSearch.vue b/src/components/panel/topicSearch/SewersSearch.vue index 79f5f03..faf0832 100644 --- a/src/components/panel/topicSearch/SewersSearch.vue +++ b/src/components/panel/topicSearch/SewersSearch.vue @@ -1,6 +1,6 @@ <template> <div class="sewers-search" v-if="gdVisible"> - <div class="search-title">{{title}}</div> + <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"> @@ -30,7 +30,7 @@ <!-- <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-buttom class="el-icon-search" @click="handleSearch"></el-buttom> + <el-button class="el-icon-search" @click="handleSearch"></el-button> </div> <!-- </el-form-item>--> <!-- <el-form-item>--> @@ -40,46 +40,15 @@ </el-form> </div> <el-scrollbar style="height:380.44px;" > - <div class="B-TMD-table-list" v-for="(item,index) in list" :key="index"> - <div class="B-TMD-table-list-title"> - <div class="B-TMD-table-list-head"> - <div class="B-TMD-table-list-title-y" - :class="['B-TMD-table-list-title-y-nam', { 'warning': item.vehicleStatus==='910003' }, { 'offline': item.vehicleStatus==='910001' }]"> - <!-- <span>杩愬崟鍙凤細</span>--> - <span id="waybillNumber" class="" - :title="item.properties.pipename"> - <span class="location-btn" @click="handleLocation(item)">{{ item.properties.pipename }}</span> - </span> - </div> - <!-- <div class="B-TMD-table-list-title-c">--> - <!-- {{ labelList[0] }}锛�--> - <!-- <span id="plateNumber_p">--> - <!-- <span id="plateNumber_n"><a href="#">{{ item.properties.item.p1 }}</a></span>--> - <!-- </span>--> - <!-- </div>--> - </div> - <!-- <div class="B-TMD-table-icons" style="float:right">--> - <!-- <ul>--> - <!-- <li class="B-TMD-table-list-title-y-adress"--> - <!-- @click="handleLocation(item)"></li>--> - <!-- <li :class="[{'B-TMD-table-list-title-y-car': item.vehicleStatus ==='910002', 'B-TMD-table-list-title-y-car-offline': item.vehicleStatus ==='910001','B-TMD-table-list-title-y-car-warning': item.vehicleStatus==='910003' }]"></li>--> - <!-- </ul>--> - <!-- </div>--> - </div> - <div class="B-TMD-table-list-content"> - - <div v-for="itm in labelList" :key="itm.label"> + <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 id="b_twe_loan" :title="item.properties[itm.key] ">{{ item.properties[itm.key] }}</span> - </div> - <!-- <div><span>鏀惰揣浼佷笟锛�</span> <span--> - <!-- id="b_twe_loan1" :title="item.recvWarehouseName">{{ item.recvWarehouseName }}</span>--> - <!-- </div>--> + <span :title="item.properties[itm.key] ">{{ item.properties[itm.key] }}</span> + </p> </div> - <!-- <div class="B-TMD-table-list-bottom">--> - <!-- <div class="B-TMD-table-list-bottom-name">--> - <!-- 璐х墿鍚嶇О锛�<span :title="item.materialName">{{ item.materialName }}</span></div>--> - <!-- </div>--> </div> </el-scrollbar> <el-card class="footer-page" v-if="total > 10"> diff --git a/src/components/panel/topicSearch/SoilGroundWaterSearch.vue b/src/components/panel/topicSearch/SoilGroundWaterSearch.vue index e508dfe..7b74153 100644 --- a/src/components/panel/topicSearch/SoilGroundWaterSearch.vue +++ b/src/components/panel/topicSearch/SoilGroundWaterSearch.vue @@ -1,6 +1,6 @@ <template> <div class="sewers-search" v-if="gdVisible"> - <div class="search-title">{{title}}</div> + <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"> @@ -44,7 +44,7 @@ <!-- <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-buttom class="el-icon-search" @click="handleSearch"></el-buttom> + <el-button class="el-icon-search" @click="handleSearch"></el-button> </div> <!-- </el-form-item>--> @@ -157,7 +157,8 @@ { name: '涓�绾ч闄�', value: '2', color: 'sandybrown' }, { name: '浜岀骇椋庨櫓', value: '3', color: 'yellow' }, { name: '涓夌骇椋庨櫓', value: '4', color: 'green' } - ] + ], + areaTypeOptions: [] } }, props: ['title'], diff --git a/src/components/panel/topicSearch/SolidWasteSearch.vue b/src/components/panel/topicSearch/SolidWasteSearch.vue index eb42e35..ea1c17d 100644 --- a/src/components/panel/topicSearch/SolidWasteSearch.vue +++ b/src/components/panel/topicSearch/SolidWasteSearch.vue @@ -1,6 +1,6 @@ <template> <div class="sewers-search" v-if="judgeVisible"> - <div class="search-title">{{title}}</div> + <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 v-for="(item,index) in solidWasteTypeOptions" :key="index" :label="item.label+'锛�'" size="mini" @@ -26,7 +26,7 @@ <div class="rightButtonSearch"> <el-input v-model="form.keyword" size="mini" placeholder="鍦ㄦ杈撳叆鍏抽敭瀛楁悳绱�"></el-input> - <el-buttom class="el-icon-search" @click="handleSearch"></el-buttom> + <el-button class="el-icon-search" @click="handleSearch"></el-button> </div> </el-form> </div> diff --git a/src/components/panel/topicSearch/WaterWasteSearch.vue b/src/components/panel/topicSearch/WaterWasteSearch.vue index 5aa4d31..11992d8 100644 --- a/src/components/panel/topicSearch/WaterWasteSearch.vue +++ b/src/components/panel/topicSearch/WaterWasteSearch.vue @@ -1,6 +1,6 @@ <template> <div class="sewers-search" v-if="judgeVisible"> - <div class="search-title">{{title}}</div> + <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 v-for="(item,index) in solidWasteTypeOptions" :key="index" :label="item.label+'锛�'" size="mini" @@ -20,7 +20,7 @@ </el-radio-group> <div class="rightButtonSearch"> <el-input v-model="form.keyword" size="mini" placeholder="鍦ㄦ杈撳叆鍏抽敭瀛楁悳绱�"></el-input> - <el-buttom class="el-icon-search" @click="handleSearch"></el-buttom> + <el-button class="el-icon-search" @click="handleSearch"></el-button> </div> </el-form> </div> diff --git a/src/components/plugin/proj4leaflet.js b/src/components/plugin/proj4leaflet.js new file mode 100644 index 0000000..91ce411 --- /dev/null +++ b/src/components/plugin/proj4leaflet.js @@ -0,0 +1,273 @@ +/* eslint-disable */ +(function (factory) { + var L, proj4; + if (typeof define === 'function' && define.amd) { + // AMD + define(['leaflet', 'proj4'], factory); + } else if (typeof module === 'object' && typeof module.exports === "object") { + // Node/CommonJS + L = require('leaflet'); + proj4 = require('proj4'); + module.exports = factory(L, proj4); + } else { + // Browser globals + if (typeof window.L === 'undefined' || typeof window.proj4 === 'undefined') + throw 'Leaflet and proj4 must be loaded first'; + factory(window.L, window.proj4); + } +}(function (L, proj4) { + if (proj4.__esModule && proj4.default) { + // If proj4 was bundled as an ES6 module, unwrap it to get + // to the actual main proj4 object. + // See discussion in https://github.com/kartena/Proj4Leaflet/pull/147 + proj4 = proj4.default; + } + + L.Proj = {}; + + L.Proj._isProj4Obj = function(a) { + return (typeof a.inverse !== 'undefined' && + typeof a.forward !== 'undefined'); + }; + + L.Proj.Projection = L.Class.extend({ + initialize: function(code, def, bounds) { + var isP4 = L.Proj._isProj4Obj(code); + this._proj = isP4 ? code : this._projFromCodeDef(code, def); + this.bounds = isP4 ? def : bounds; + }, + + project: function (latlng) { + var point = this._proj.forward([latlng.lng, latlng.lat]); + return new L.Point(point[0], point[1]); + }, + + unproject: function (point, unbounded) { + var point2 = this._proj.inverse([point.x, point.y]); + return new L.LatLng(point2[1], point2[0], unbounded); + }, + + _projFromCodeDef: function(code, def) { + if (def) { + proj4.defs(code, def); + } else if (proj4.defs[code] === undefined) { + var urn = code.split(':'); + if (urn.length > 3) { + code = urn[urn.length - 3] + ':' + urn[urn.length - 1]; + } + if (proj4.defs[code] === undefined) { + throw 'No projection definition for code ' + code; + } + } + + return proj4(code); + } + }); + + L.Proj.CRS = L.Class.extend({ + includes: L.CRS, + + options: { + transformation: new L.Transformation(1, 0, -1, 0) + }, + + initialize: function(a, b, c) { + var code, + proj, + def, + options; + + if (L.Proj._isProj4Obj(a)) { + proj = a; + code = proj.srsCode; + options = b || {}; + + this.projection = new L.Proj.Projection(proj, options.bounds); + } else { + code = a; + def = b; + options = c || {}; + this.projection = new L.Proj.Projection(code, def, options.bounds); + } + + L.Util.setOptions(this, options); + this.code = code; + this.transformation = this.options.transformation; + + if (this.options.origin) { + this.transformation = + new L.Transformation(1, -this.options.origin[0], + -1, this.options.origin[1]); + } + + if (this.options.scales) { + this._scales = this.options.scales; + } else if (this.options.resolutions) { + this._scales = []; + for (var i = this.options.resolutions.length - 1; i >= 0; i--) { + if (this.options.resolutions[i]) { + this._scales[i] = 1 / this.options.resolutions[i]; + } + } + } + + this.infinite = !this.options.bounds; + + }, + + scale: function(zoom) { + var iZoom = Math.floor(zoom), + baseScale, + nextScale, + scaleDiff, + zDiff; + if (zoom === iZoom) { + return this._scales[zoom]; + } else { + // Non-integer zoom, interpolate + baseScale = this._scales[iZoom]; + nextScale = this._scales[iZoom + 1]; + scaleDiff = nextScale - baseScale; + zDiff = (zoom - iZoom); + return baseScale + scaleDiff * zDiff; + } + }, + + zoom: function(scale) { + // Find closest number in this._scales, down + var downScale = this._closestElement(this._scales, scale), + downZoom = this._scales.indexOf(downScale), + nextScale, + nextZoom, + scaleDiff; + // Check if scale is downScale => return array index + if (scale === downScale) { + return downZoom; + } + if (downScale === undefined) { + return -Infinity; + } + // Interpolate + nextZoom = downZoom + 1; + nextScale = this._scales[nextZoom]; + if (nextScale === undefined) { + return Infinity; + } + scaleDiff = nextScale - downScale; + return (scale - downScale) / scaleDiff + downZoom; + }, + + distance: L.CRS.Earth.distance, + + R: L.CRS.Earth.R, + + /* Get the closest lowest element in an array */ + _closestElement: function(array, element) { + var low; + for (var i = array.length; i--;) { + if (array[i] <= element && (low === undefined || low < array[i])) { + low = array[i]; + } + } + return low; + } + }); + + L.Proj.GeoJSON = L.GeoJSON.extend({ + initialize: function(geojson, options) { + this._callLevel = 0; + L.GeoJSON.prototype.initialize.call(this, geojson, options); + }, + + addData: function(geojson) { + var crs; + + if (geojson) { + if (geojson.crs && geojson.crs.type === 'name') { + crs = new L.Proj.CRS(geojson.crs.properties.name); + } else if (geojson.crs && geojson.crs.type) { + crs = new L.Proj.CRS(geojson.crs.type + ':' + geojson.crs.properties.code); + } + + if (crs !== undefined) { + this.options.coordsToLatLng = function(coords) { + var point = L.point(coords[0], coords[1]); + return crs.projection.unproject(point); + }; + } + } + + // Base class' addData might call us recursively, but + // CRS shouldn't be cleared in that case, since CRS applies + // to the whole GeoJSON, inluding sub-features. + this._callLevel++; + try { + L.GeoJSON.prototype.addData.call(this, geojson); + } finally { + this._callLevel--; + if (this._callLevel === 0) { + delete this.options.coordsToLatLng; + } + } + } + }); + + L.Proj.geoJson = function(geojson, options) { + return new L.Proj.GeoJSON(geojson, options); + }; + + L.Proj.ImageOverlay = L.ImageOverlay.extend({ + initialize: function (url, bounds, options) { + L.ImageOverlay.prototype.initialize.call(this, url, null, options); + this._projectedBounds = bounds; + }, + + // Danger ahead: Overriding internal methods in Leaflet. + // Decided to do this rather than making a copy of L.ImageOverlay + // and doing very tiny modifications to it. + // Future will tell if this was wise or not. + _animateZoom: function (event) { + var scale = this._map.getZoomScale(event.zoom); + var northWest = L.point(this._projectedBounds.min.x, this._projectedBounds.max.y); + var offset = this._projectedToNewLayerPoint(northWest, event.zoom, event.center); + + L.DomUtil.setTransform(this._image, offset, scale); + }, + + _reset: function () { + var zoom = this._map.getZoom(); + var pixelOrigin = this._map.getPixelOrigin(); + var bounds = L.bounds( + this._transform(this._projectedBounds.min, zoom)._subtract(pixelOrigin), + this._transform(this._projectedBounds.max, zoom)._subtract(pixelOrigin) + ); + var size = bounds.getSize(); + + L.DomUtil.setPosition(this._image, bounds.min); + this._image.style.width = size.x + 'px'; + this._image.style.height = size.y + 'px'; + }, + + _projectedToNewLayerPoint: function (point, zoom, center) { + var viewHalf = this._map.getSize()._divideBy(2); + var newTopLeft = this._map.project(center, zoom)._subtract(viewHalf)._round(); + var topLeft = newTopLeft.add(this._map._getMapPanePos()); + + return this._transform(point, zoom)._subtract(topLeft); + }, + + _transform: function (point, zoom) { + var crs = this._map.options.crs; + var transformation = crs.transformation; + var scale = crs.scale(zoom); + + return transformation.transform(point, scale); + } + }); + + L.Proj.imageOverlay = function (url, bounds, options) { + return new L.Proj.ImageOverlay(url, bounds, options); + }; + + return L.Proj; +})); diff --git a/src/components/table/components/SolidWaste.vue b/src/components/table/components/SolidWaste.vue index c90311a..89be52e 100644 --- a/src/components/table/components/SolidWaste.vue +++ b/src/components/table/components/SolidWaste.vue @@ -1,111 +1,201 @@ <template> - <div class="Solid-Waste"> - <el-table - class="tableBox" - :data="tableData" - :header-cell-style="tableHeaderColor" - :cell-style="rowClass" - @cell-click="handle" - > - <el-table-column - width="30px" - label="" - > - <template> - <i class="el-icon-caret-right"></i> - <span style="margin-left: 10px"></span> - </template> - </el-table-column> - <el-table-column - label="搴忓彿" - width="60px" - type="index"> - </el-table-column> - <el-table-column - prop="UserName" - label="浼佷笟鍚嶇О" - width="120px"> - <template slot-scope="scope"> - <div v-if="scope.row.UserName==='闆嗗洟鍚嶇О'" style="color: #00ffff">{{scope.row.UserName}}</div> - <div v-else-if="scope.row.UserName==='澶╂触鐭冲寲'" style="color: #00ffff">{{scope.row.UserName}}</div> - <div v-else >{{scope.row.UserName}}</div> - </template> - </el-table-column> - <el-table-column label="浜х敓閲� 锛堝惃锛�"> - <el-table-column - prop="AddOutPut" - label="涓�鑸浐搴�" - width="100px"> - </el-table-column> - <el-table-column - prop="MonthOutPut" - label="鍗遍櫓搴熺墿" - width="100px"> - </el-table-column> - </el-table-column> - <el-table-column label="璐瓨鐘舵�侊紙涓級"> - <el-table-column - prop="normal" - label="姝e父" - width="100px"> - <template slot-scope="{row,$index}"> - <u v-if="$index!=1" >{{row.normal}}</u> - <el-popover v-else - placement="bottom-end" - width="200" - trigger="click" - title="鐩戞祴鐐规帓鏀炬槑缁�" - > - <ChemicalWastewater></ChemicalWastewater> - <u slot="reference" style="color: #00ffff">{{row.normal}}</u> - </el-popover> - </template> - </el-table-column> - <el-table-column - prop="warning" - label="棰勮" - width="100px"> - </el-table-column> - </el-table-column> - </el-table> - </div> + <div class="waste-water"> + <el-table + class="tableBox" + :data="tableData" + style="width: 100%" + :header-cell-style="tableHeaderColor" + :cell-style="rowClass" + @cell-click="handle" + > + <el-table-column + width="30px" + label="" + > + <template slot-scope="{row,$index}"> + <!-- <i class="el-icon-caret-right" v-if="$index ===1"></i>--> + <el-popover + placement="bottom" + trigger="click" + :disabled="!isShowIcon" + popper-class="popovers" + > + <ChemicalWastewater v-show="$index ===1"></ChemicalWastewater> + <i class="el-icon-caret-right" :class="{active: isActive === $index}" slot="reference" @click="doIcon($index)"></i> + <!-- <i class="el-icon-caret-bottom" slot="reference" v-else @click="doIcon($index)"></i>--> + </el-popover> + </template> + </el-table-column> + <el-table-column + label="搴忓彿" + width="45px" + type="index"> + </el-table-column> + <el-table-column + prop="UserName" + label="浼佷笟鍚嶇О" + width="120px"> + <template slot-scope="scope"> + <div v-if="scope.row.UserName==='闆嗗洟鍚嶇О'" style="color: #00ffff">{{scope.row.UserName}}</div> + <div v-else-if="scope.row.UserName==='澶╂触鐭冲寲'" style="color: #00ffff">{{scope.row.UserName}}</div> + <div v-else >{{scope.row.UserName}}</div> + </template> + </el-table-column> + <el-table-column + prop="WasteWaters" + label="澶栨帓搴熸按閲忥紙m鲁锛�" + width="100px"> + </el-table-column> + <el-table-column label="COD (t)"> + <el-table-column + prop="AddOutPut" + label="绱浜х敓閲�" + width="70px"> + </el-table-column> + <el-table-column + prop="MonthOutPut" + label="褰撴湀鐢熶骇閲�" + width="70px"> + </el-table-column> + </el-table-column> + <el-table-column label="姘ㄦ爱 (t)"> + <el-table-column + prop="NH4NPut" + label="绱浜х敓閲�" + width="70px"> + </el-table-column> + <el-table-column + prop="NH4NMonth" + label="褰撴湀鐢熶骇閲�" + width="70px"> + </el-table-column> + </el-table-column> + <el-table-column label="鎺掓斁鍙f娴嬬粺璁$姸鎬�"> + <el-table-column + prop="normal" + label="姝e父" + width="60px"> + <template slot-scope="{row,$index}"> + <u v-if="$index!=2" >{{row.normal}}</u> + <el-popover v-else + placement="bottom-end" + width="200" + trigger="click" + popper-class="popovers" + title="鐩戞祴鐐规槑缁嗚〃" + > + <refinery></refinery> + <u slot="reference" style="color: #00ffff">{{row.normal}}</u> + <!-- <i class="el-icon-caret-bottom" v-else-if="isShowIcon&&scope.row.index===1"></i>--> + <!-- <i v-if="isShowIcon" class="el-icon-caret-bottom" slot="reference" @click="isbtn"></i>--> + <!-- <i v-else class="el-icon-caret-right" slot="reference" @click="isbtn"></i>--> + </el-popover> + </template> + </el-table-column> + <el-table-column + prop="overProof" + label="瓒呮爣" + width="60px"> + </el-table-column> + <el-table-column + prop="Abnormal" + label="寮傚父" + width="60px"> + </el-table-column> + <el-table-column + prop="StopProduction" + label="鍋滀骇" + width="60px"> + </el-table-column> + <el-table-column + prop="deficiency" + label="缂哄け" + width="60px"> + <template slot-scope="{row,$index}"> + <u v-if="$index!=1" >{{row.deficiency}}</u> + <el-popover v-else + placement="bottom-end" + width="200" + trigger="click" + title="澶╂触鐭冲寲鐩戞祴鐐圭己澶辨姤璀︽槑缁�" + popper-class="popovers" + > + <MissingAlarm></MissingAlarm> + <u slot="reference" style="color: #00ffff">{{row.deficiency}}</u> + </el-popover> + </template> + </el-table-column> + </el-table-column> + </el-table> + <!-- <ChemicalWastewater v-show="isShowIcon"></ChemicalWastewater>--> + <!-- </el-col>--> + <!-- </el-row>--> + </div> </template> <script> -import ChemicalWastewater from '@components/table/components/componented/ChemicalWastewater' +import ChemicalWastewater from './componented/ChemicalWastewater' +import Refinery from '@components/table/components/componented/refinery' +import MissingAlarm from '@components/table/components/componented/MissingAlarm' export default { name: 'SolidWaste', components: { + MissingAlarm, + Refinery, ChemicalWastewater }, data () { return { + isActive: '', + isShowIcon: false, tableData: [{ UserName: '闆嗗洟鍚嶇О', - AddOutPut: '580', - MonthOutPut: '250', - normal: '10', - warning: '9' + WasteWaters: '', + AddOutPut: '', + MonthOutPut: '', + NH4NPut: '', + NH4NMonth: '', + normal: '', + overProof: '', + Abnormal: '', + StopProduction: '', + deficiency: '' }, { UserName: '澶╂触鐭冲寲', WasteWaters: '116.6', AddOutPut: '58.3', MonthOutPut: '13.1', - warning: '13.1', - normal: '21' + NH4NPut: '58.3', + NH4NMonth: '13.1', + normal: '21', + overProof: '2', + Abnormal: '2', + StopProduction: '2', + deficiency: '2' }, { UserName: 'xxxx鐐煎寲3', WasteWaters: '116.6', MonthOutPut: '13.1', - warning: '13.1', - normal: '21' + NH4NPut: '58.3', + NH4NMonth: '13.1', + normal: '21', + overProof: '2', + Abnormal: '2', + StopProduction: '2', + deficiency: '2' }, { UserName: 'xxxx4', WasteWaters: '116.6', AddOutPut: '58.3', MonthOutPut: '13.1', - warning: '13.1', - normal: '21' + NH4NPut: '58.3', + NH4NMonth: '13.1', + normal: '21', + overProof: '2', + Abnormal: '2', + StopProduction: '2', + deficiency: '2' + }] } }, @@ -120,14 +210,35 @@ // 鑾峰彇鐐瑰嚮鐨勮〃鏍� handle (row, column, event, cell) { console.log(row.UserName) + }, + doIcon (index) { + if (index !== 1) { + this.isShowIcon = false + this.isActive = '' + return + } + this.isShowIcon = !this.isShowIcon + if (index === this.isActive) { + this.isActive = '' + return + } + this.isActive = index } } } </script> <style scoped> -.Solid-Waste{ - width: 100%; - height: 100%; +.popovers{ + width: auto !important; + background-color: gray !important; } +.popovers.el-popover{ + padding:0; +} +.active { + /*color: red;*/ + transform:rotate(90deg); +} + </style> diff --git a/src/components/table/summarySheets.vue b/src/components/table/summarySheets.vue index 4ab8d7a..6592090 100644 --- a/src/components/table/summarySheets.vue +++ b/src/components/table/summarySheets.vue @@ -1,33 +1,41 @@ <template> - <div class="summary-sheets"> - <el-tooltip :popper-class="'map-tooltip'" effect="dark" content="缁熻琛�" placement="left"> - <div :class='["iconBtn",summaryVisible ? "active-button" : ""]' @click="closeBtn"> - <img src="@assets/images/map-pages/icon/toolbox/table.png" alt="" class="icon"> - <!--<span class="icon-name">缁熻琛�</span>--> - </div> - </el-tooltip> - <Dialog ref="summarySheets" title="浼佷笟鎸囨爣鍒嗙被缁熻"> - <tab-handover></tab-handover> - </Dialog > + <div class="summary-sheets"> + <el-tooltip :popper-class="'map-tooltip'" effect="dark" content="缁熻琛�" placement="left"> + <div :class='["iconBtn",summaryVisible ? "active-button" : ""]' @click="closeBtn"> + <img src="@assets/images/map-pages/icon/toolbox/table.png" alt="" class="icon"> + <!--<span class="icon-name">缁熻琛�</span>--> + </div> + </el-tooltip> + <!-- <Dialog ref="summarySheets" title="浼佷笟鎸囨爣鍒嗙被缁熻">--> + <!-- <tab-handover></tab-handover>--> + <!-- </Dialog >--> + <div class="dialog" v-drag v-show="dialogShow"> + <tab-handover></tab-handover> </div> + </div> </template> <script> import tabHandover from '@components/table/components/tabHandover' -import Dialog from '@views/popup/Dialog' +// import Dialog from '@views/popup/Dialog' + +import '@/components/BaseNav/SolidWaste/directive/dir' + export default { name: 'summary-sheet.vue', components: { - tabHandover, - Dialog + tabHandover + // Dialog }, data () { return { - summaryVisible: false + summaryVisible: false, + dialogShow: false } }, methods: { closeBtn () { + this.dialogShow = !this.dialogShow // const summary = document.getElementById('summary') // summary.style.display = 'none' this.$refs.summarySheets.show() @@ -46,19 +54,28 @@ </script> <style scoped lang="less"> - .summary-sheets { - position: absolute; - top: 0.42979rem; - left: 0.14583rem; - /*width: 850px;*/ - /*height: 265px;*/ - z-index:500; +.summary-sheets { + position: absolute; + top: 0.42979rem; + left: 0.14583rem; + /*width: 850px;*/ + /*height: 265px;*/ + z-index: 500; - /*color: #fff;*/ - .el-icon-c-scale-to-original { - width: 30px; - height: 30px; - font-size: 30px; - } - } + .dialog { + //width: 800px; + //height: 300px; + position: absolute; + top: 15%; + left: 3rem; + } + + /*color: #fff;*/ + + .el-icon-c-scale-to-original { + width: 30px; + height: 30px; + font-size: 30px; + } +} </style> diff --git a/src/router/index.js b/src/router/index.js index ac9cb58..b95bcd3 100644 --- a/src/router/index.js +++ b/src/router/index.js @@ -35,9 +35,11 @@ console.log(homeRouterName) next() } else if (!token) { - next({ - name: LOGIN_PAGE_ROUTE_NAME // 璺宠浆鍒扮櫥褰曢〉 - }) + // next({ + // name: LOGIN_PAGE_ROUTE_NAME // 璺宠浆鍒扮櫥褰曢〉 + // }) + console.log(LOGIN_PAGE_ROUTE_NAME) + next() } else { next() } diff --git a/src/styles/theme-dark/el-ui/tabs.less b/src/styles/theme-dark/el-ui/tabs.less index 3ca346b..17808d8 100644 --- a/src/styles/theme-dark/el-ui/tabs.less +++ b/src/styles/theme-dark/el-ui/tabs.less @@ -1,7 +1,7 @@ .el-tabs{} .el-tabs__header{ - border-bottom: 1px solid #26defd; + border-bottom: 1px solid @background-color-split !important; padding: 0; position: relative; margin: 0 0 15px; @@ -125,7 +125,9 @@ overflow: hidden; position: relative; } - +.el-tabs--card > .el-tabs__header{ + border-bottom: 1px solid @background-color-split; +} .el-tabs--card > .el-tabs__header .el-tabs__active-bar { display: none; } diff --git a/src/views/Temp.vue b/src/views/Temp.vue index 4e3accf..130740e 100644 --- a/src/views/Temp.vue +++ b/src/views/Temp.vue @@ -35,7 +35,11 @@ // // 鍏叡灞曠ず鏁版嵁 import PublicBounced from '@components/BaseNav/PublicBounced/PublicBounced' import LayerFactory from '@components/LayerController/service/LayerFactory' - +const esri = require('esri-leaflet') +// const proj4 = require('proj4') +const proj4 = require('proj4') +window.proj4 = proj4 +const Proj = require('../components/plugin/proj4leaflet') export default { name: 'Temp', components: { @@ -82,6 +86,35 @@ }, init () { const mapcontainer = this.$refs.rootmap + const CRS_4490 = new Proj.CRS('EPSG:4490', '+proj=longlat +ellps=GRS80 +no_defs', { + resolutions: [ + 1.40625, + 0.703125, + 0.3515625, + 0.17578125, + 0.087890625, + 0.0439453125, + 0.02197265625, + 0.010986328125, + 0.0054931640625, + 0.00274658203125, + 0.001373291015625, + 6.866455078125E-4, + 3.4332275390625E-4, + 1.71661376953125E-4, + 8.58306884765625E-5, + 4.291534423828125E-5, + 2.1457672119140625E-5, + 1.0728836059570312E-5, + 5.364418029785156E-6, + 2.682209064925356E-6, + 1.3411045324626732E-6 + ], + origin: [-180, 90] + }) + console.log(mapcontainer) + console.log(CRS_4490) + debugger this.map = Sgis.initMap(mapcontainer) this.$refs.toolBox.map = this.map @@ -94,7 +127,7 @@ window.layerFactory = layerFactory this.basemapHelper = Sgis.initBasemapsHelper(this.map) // 鍒濆鍖栧熀纭�搴曞浘鍔╂墜 - this.basemapHelper.initBasemap(this.config, true) // 绗簩涓弬鏁帮紝琛ㄧず鏄惁鍐呯綉搴曞浘 + this.basemapHelper.initBasemap(this.config, false) // 绗簩涓弬鏁帮紝琛ㄧず鏄惁鍐呯綉搴曞浘 // this.vectorLayerHelper = Sgis.initVectorLayersHelper(this.map) // 鍒濆鍖栧姩鎬佽绱犲浘灞傚姪鎵� // this.vectorLayerHelper.initVectorLayers(this.config) @@ -106,6 +139,15 @@ // this.setBasemapHelper(this.basemapHelper) // this.setServiceLayerHelper(this.serviceLayerHelper) // this.setVectorLayerHelper(this.vectorLayerHelper) + this.loadArcgisImg() + }, + loadArcgisImg () { + // const url = 'http://10.246.132.249:8080/OneMapServer/rest/services/base-map-image-enterprise/MapServer/tile/{z}/{y}/{x}' + const url = 'http://10.246.132.249:8080/OneMapServer/rest/services/base-map-image-enterprise/MapServer' + // const arcgisTileLayer = this.L.tileLayer(url, { + const arcgisTileLayer = esri.tiledMapLayer({ url: url }) + // const arcgisTileLayer = esri.dynamicMapLayer({ url: url }) + arcgisTileLayer.addTo(this.map) }, onLayerClick () { this.$refs.popup.setShow() -- Gitblit v1.8.0