From 8f327155ec6a3d5ad1f1ff4e170ed85747439373 Mon Sep 17 00:00:00 2001
From: chenyabin <Chenab123!>
Date: 星期四, 15 四月 2021 17:49:45 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/develop' into develop

---
 src/conf/layers/LayerPipeLines.js                                             |   18 
 src/components/BaseNav/WasteGas/DayData.vue                                   |  771 ++++++
 src/conf/layers/LayerAirQuality.js                                            |    7 
 src/components/BaseNav/WasteWater/PublicVideo.vue                             |   80 
 src/conf/layers/LayerWasteSolid.js                                            |    7 
 .eslintrc.js                                                                  |    4 
 src/conf/Constants.js                                                         |    4 
 src/conf/layers/LayerEnvRisk.js                                               |   14 
 src/components/BaseNav/WasteGas/Detail.vue                                    |   90 
 src/components/layer/src/helper/helper.js                                     |  160 +
 src/conf/layers/LayerFsss.js                                                  |    1 
 src/conf/layers/LayerPollutionSources.js                                      |    6 
 src/conf/layers/LayerWasteGas.js                                              |   22 
 src/components/BaseNav/PublicBounced/PublicBounced.vue                        |    4 
 src/components/BaseNav/WasteWater/PublicTabs.vue                              |  127 +
 src/components/layer/src/page.vue                                             |   73 
 src/components/panel/topicSearch/SolidWasteSearch.vue                         |    1 
 src/components/layer/index.js                                                 |    9 
 src/components/LayerController/logic/PipeLineAnimal.js                        |   82 
 src/components/table/components/tabHandover.vue                               |    4 
 src/main.js                                                                   |    2 
 src/components/BaseNav/WasteWater/HourData.vue                                |  699 +++++
 src/components/LayerController/logic/WasteSolid.js                            |    0 
 src/components/layer/src/iframe.vue                                           |  126 +
 src/components/BaseNav/WasteGas/PublicTabs.vue                                |  127 +
 src/components/panel/topicSearch/GasWasteSearch.vue                           |   20 
 src/components/layer/src/layer.vue                                            |   46 
 src/components/BaseNav/PublicBounced/common/echarts/EChartsTable.vue          |    4 
 src/conf/layers/LayerArea.js                                                  |    6 
 src/components/BaseNav/WasteGas/HourData.vue                                  |  623 +++++
 src/components/BaseNav/WasteWater/DayData.vue                                 |  712 +++++
 src/components/BaseNav/WasteGas/PublicVideo.vue                               |   80 
 src/components/BaseNav/WasteGas/RealTimeEcharts.vue                           | 1116 +++++++++
 src/components/BaseNav/WasteWater/Detail.vue                                  |  311 ++
 src/components/BaseNav/PublicBounced/common/echarts/EChartsHourWasteWater.vue |   29 
 src/components/BaseNav/PublicBounced/common/echarts/EChartsDateWasteWater.vue |   27 
 src/components/BaseNav/WasteSolid/WasteSolidIndex.vue                         |  120 
 src/components/BaseNav/WasteSolid/PublicTabs.vue                              |   61 
 src/conf/layers/LayerWasteWater.js                                            |   17 
 src/conf/LayerTopic.js                                                        |    2 
 src/components/BaseNav/WasteGas/Index.vue                                     |  160 +
 src/components/LayerController/service/LayerFactory.js                        |   81 
 src/components/table/components/WasteSolid.vue                                |    2 
 /dev/null                                                                     |  180 -
 src/components/LayerController/service/EventLayerService.js                   |   25 
 src/components/BaseNav/WasteWater/RealTimeEcharts.vue                         |  942 +++++++
 src/conf/layers/LayerSoilGroundWater.js                                       |   27 
 src/components/panel/topicSearch/SewersSearch.vue                             |   16 
 src/components/layer/src/layer.js                                             |  195 +
 49 files changed, 6,839 insertions(+), 401 deletions(-)

diff --git a/.eslintrc.js b/.eslintrc.js
index 60ec4b5..e1f5352 100644
--- a/.eslintrc.js
+++ b/.eslintrc.js
@@ -13,7 +13,9 @@
   },
   rules: {
     'no-console': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
-    'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off'
+    'no-debugger': process.env.NODE_ENV === 'production' ? 'warn' : 'off',
+    'new-cap': 'off'
+    //'camelcase': 'error'
   },
   overrides: [
     {
diff --git a/src/components/BaseNav/PublicBounced/PublicBounced.vue b/src/components/BaseNav/PublicBounced/PublicBounced.vue
index 40c6d5a..eb88010 100644
--- a/src/components/BaseNav/PublicBounced/PublicBounced.vue
+++ b/src/components/BaseNav/PublicBounced/PublicBounced.vue
@@ -76,13 +76,13 @@
       this.displayContentTable = dataDetailed[0]
     },
     setGasData (data, dataDetails, GasHourData, ManualData, value) {
-      // console.log(this.$refs)
+      // console.log(data, dataDetails, GasHourData, ManualData, value)
       this.setWasteGasdata = data
+      this.displayContentTitle = data.Name
       this.getWasteGasDetails = dataDetails
       this.getQueryOnlineMonData = GasHourData
       this.ManualData = ManualData
       // console.log(this.getQueryOnlineMonData)
-      this.displayContentTitle = data.Name
       this.flag = true
       this.value = value
     },
diff --git a/src/components/BaseNav/PublicBounced/common/echarts/EChartsDateWasteWater.vue b/src/components/BaseNav/PublicBounced/common/echarts/EChartsDateWasteWater.vue
index 325d981..abb6f38 100644
--- a/src/components/BaseNav/PublicBounced/common/echarts/EChartsDateWasteWater.vue
+++ b/src/components/BaseNav/PublicBounced/common/echarts/EChartsDateWasteWater.vue
@@ -27,16 +27,6 @@
             </span>
           </div>
         </div>
-<!--        <div>-->
-<!--          閲囨牱鐐规暟:-->
-<!--          <el-select v-model="formInline.region">-->
-<!--            <el-option label="0" value="0"></el-option>-->
-<!--            <el-option label="25" value="25"></el-option>-->
-<!--            <el-option label="50" value="50"></el-option>-->
-<!--            <el-option label="75" value="75"></el-option>-->
-<!--            <el-option label="100" value="100"></el-option>-->
-<!--          </el-select>-->
-<!--        </div>-->
         <div class="detailbtn"  @click="onSubmit">鏌ヨ</div>
         <div class="detailbtn" @click="dialogVisible = true" >鏄庣粏琛�</div>
       </div>
@@ -75,8 +65,6 @@
       myChar: null,
       value: '',
       formInline: {
-        user: '',
-        region: '',
         timeStart: '2021-03-15 00:00:00',
         timeEnd: '2021-04-13 00:00:00'
       },
@@ -287,12 +275,12 @@
                   var seriesName = params[i].seriesName
                   // 鍊�
                   var value = params[i].value
-                  var valueFliter
-                  if (value === 'NaN') {
-                    valueFliter = ''
-                  } else {
-                    // valueFliter = formatter(value)
-                  }
+                  // var valueFliter
+                  // if (value === 'NaN') {
+                  //   valueFliter = ''
+                  // } else {
+                  //   // valueFliter = formatter(value)
+                  // }
                   var maker = params[i].marker
                   if (seriesName === 'COD') {
                     maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#fff21c;"></span>'
@@ -305,7 +293,7 @@
                   } else {
                     maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#9ACD32;"></span>'
                   }
-                  s += maker + seriesName + ':' + valueFliter + '<br />'
+                  s += maker + seriesName + ':' + value + '<br />'
                 }
                 return s
               }
@@ -661,6 +649,7 @@
       padding: 0;
       border-color:#00fff6;
       text-align: center;
+      z-index: 9999;
       //padding-left:20px ;
       //padding: 0!important;
     }
diff --git a/src/components/BaseNav/PublicBounced/common/echarts/EChartsHourWasteWater.vue b/src/components/BaseNav/PublicBounced/common/echarts/EChartsHourWasteWater.vue
index 9baaa67..aa69cf4 100644
--- a/src/components/BaseNav/PublicBounced/common/echarts/EChartsHourWasteWater.vue
+++ b/src/components/BaseNav/PublicBounced/common/echarts/EChartsHourWasteWater.vue
@@ -27,16 +27,6 @@
                       </span>
                     </div>
                 </div>
-<!--                <div>-->
-<!--                    閲囨牱鐐规暟:-->
-<!--                    <el-select v-model="formInline.region">-->
-<!--                        <el-option label="0" value="0"></el-option>-->
-<!--                        <el-option label="25" value="25"></el-option>-->
-<!--                        <el-option label="50" value="50"></el-option>-->
-<!--                        <el-option label="75" value="75"></el-option>-->
-<!--                        <el-option label="100" value="100"></el-option>-->
-<!--                    </el-select>-->
-<!--                </div>-->
                 <div class="detailbtn"  @click="onSubmit">鏌ヨ</div>
                 <div class="detailbtn" @click="dialogVisible = true" >鏄庣粏琛�</div>
              </div>
@@ -161,9 +151,9 @@
       this.myChart.clear()
       var dataUnit = ''
       if (datatype === 1) {
-        dataUnit = '娴侀噺(m鲁/d)'
+        dataUnit = '搴熸按娴侀噺(m鲁/d)'
       } else {
-        dataUnit = '娴侀噺(m鲁/h)'
+        dataUnit = '搴熸按娴侀噺(m鲁/h)'
       }
 
       var serLists = []
@@ -294,12 +284,12 @@
             var seriesName = params[i].seriesName
             // 鍊�
             var value = params[i].value
-            var valueFliter
-            if (value === 'NaN') {
-              valueFliter = ''
-            } else {
-              // valueFliter = formatter(value)
-            }
+            // var valueFliter
+            // if (value === 'NaN') {
+            //   valueFliter = ''
+            // } else {
+            //   // valueFliter = formatter(value)
+            // }
             var maker = params[i].marker
             if (seriesName === 'COD') {
               maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#fff21c;"></span>'
@@ -312,7 +302,7 @@
             } else {
               maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#9ACD32;"></span>'
             }
-            s += maker + seriesName + ':' + valueFliter + '<br />'
+            s += maker + seriesName + ':' + value + '<br />'
           }
           return s
         }
@@ -650,6 +640,7 @@
             padding: 0;
             border-color:#00fff6;
             text-align: center;
+            z-index: 9999;
             //padding-left:20px ;
             //padding: 0!important;
         }
diff --git a/src/components/BaseNav/PublicBounced/common/echarts/EChartsTable.vue b/src/components/BaseNav/PublicBounced/common/echarts/EChartsTable.vue
index 241625a..649ac41 100644
--- a/src/components/BaseNav/PublicBounced/common/echarts/EChartsTable.vue
+++ b/src/components/BaseNav/PublicBounced/common/echarts/EChartsTable.vue
@@ -86,5 +86,7 @@
 </script>
 
 <style scoped>
-
+.el-table--border::after, .el-table--group::after, .el-table::before{
+  background: none;
+}
 </style>
diff --git a/src/components/BaseNav/WasteGas/DayData.vue b/src/components/BaseNav/WasteGas/DayData.vue
new file mode 100644
index 0000000..88c0c2e
--- /dev/null
+++ b/src/components/BaseNav/WasteGas/DayData.vue
@@ -0,0 +1,771 @@
+<!--  鏃ユ暟鎹�  -->
+<template>
+  <div id="Tab">
+    <div class="animation">
+      <div class="infomation">
+        <span class="grid-content">姘哀鍖栫墿 :<i style="color: #e8ee0b">29.93</i>  鏍囧噯 : 100</span>
+        <span class="grid-content">浜屾哀鍖栫~ : <i style="color: #e8ee0b">17.34</i> 鏍囧噯 : 50</span>
+        <span class="grid-content">鐑熷皹 : <i style="color: #e8ee0b">6.93</i> 鏍囧噯 : 30</span>
+        <span class="grid-content">搴熸皵娴侀噺 : <i style="color: #e8ee0b">120343.18</i></span>
+      </div>
+    </div>
+    <div class="form-echrts">
+      <div class="from-search">
+        <div class="pickerMon">
+          <div class="pickerData">
+            <span> 寮�濮嬫椂闂�:</span>
+            <span class="pickerTable">
+              <el-date-picker  type="datetime"   v-model="formInline.timeStart"></el-date-picker>
+            </span>
+          </div>
+          <div class="pickerData">
+            <span >缁撴潫鏃堕棿:</span>
+            <span class="pickerTable">
+              <el-date-picker type="datetime"  v-model="formInline.timeEnd"></el-date-picker>
+            </span>
+          </div>
+        </div>
+<!--        <div>-->
+<!--          閲囨牱鐐规暟:-->
+<!--          <el-select v-model="formInline.region" placeholder="50">-->
+<!--            <el-option label="0" value="0"></el-option>-->
+<!--            <el-option label="25" value="25"></el-option>-->
+<!--            <el-option label="50" value="50"></el-option>-->
+<!--            <el-option label="75" value="75"></el-option>-->
+<!--            <el-option label="100" value="100"></el-option>-->
+<!--          </el-select>-->
+<!--        </div>-->
+        <div class="detailbtn hover-bottom"  @click="onSubmit">鏌ヨ</div>
+        <div class="detailbtn hover-bottom" @click="dialogVisible = true" >鏄庣粏琛�</div>
+      </div>
+      <div style="width:5rem;height:1.5rem;" id="echarts" ref="main">
+      </div>
+    </div>
+    <!-- 鏄庣粏寮规 -->
+    <el-dialog :visible.sync="dialogVisible"
+               :append-to-body="true"
+               :title="this.$attrs.value==='feiqi'?this.$attrs.getWasteGasDetails[0].OnLineMonEmissPointName:this.$attrs.getWasteWaterMonitoringDetails[0].OnLineMonEmissPointName"
+               width="68%"
+               center
+               v-dialogDrag
+    >
+      <div class="el-dialog-div" style="height: 500px">
+        <public-detailed-list v-bind="$attrs"></public-detailed-list>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import PublicDetailedList from '@components/BaseNav/PublicBounced/common/echarts/PublicDetailedList'
+import dayjs from 'dayjs'
+
+export default {
+  name: 'DayData',
+  components: {
+    PublicDetailedList
+  },
+  data () {
+    return {
+      watchData: [],
+      dialogVisible: false,
+      myChar: null,
+      value: '',
+      formInline: {
+        region: '',
+        timeStart: '',
+        timeEnd: ''
+      },
+      info: this.series,
+      JsonDayCharts: {
+        id: 'mychartsDay',
+        title: '鍔犵儹鐐夌儫姘�',
+        legend: [
+          {
+            icon: 'image://../assets/imgs/legend/NOX.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            textStyle: {
+              color: '#CCC'
+            },
+            name: '姘哀鍖栫墿'
+          },
+          {
+            icon: 'image://../assets/imgs/legend/SO2.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '浜屾哀鍖栫~',
+            textStyle: {
+              color: '#CCC'
+            }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/YanChen.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '鐑熷皹',
+            textStyle: { color: '#ccc' }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/WenDu.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '娓╁害',
+            textStyle: { color: '#ccc' }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/VOCs.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '搴熸皵娴侀噺',
+            textStyle: { color: '#ccc' }
+          }
+        ],
+        xdata: ['1鏃�', '2鏃�', '3鏃�', '4鏃�', '5鏃�', '6鏃�', '7鏃�', '8鏃�', '9鏃�', '10鏃�', '11鏃�', '12鏃�', '13鏃�', '14鏃�', '15鏃�', '16鏃�', '17鏃�', '18鏃�', '19鏃�', '20鏃�', '21鏃�', '22鏃�', '23鏃�', '24鏃�', '25鏃�', '26鏃�', '27鏃�', '28鏃�', '29鏃�', '30鏃�', '31鏃�'],
+        ydatas: [
+          { name: '姘哀鍖栫墿', data: ['40.01', '44.38', '44.71', '40.43', '42.79', '46.00', '52.66', '48.75', '45.75', '49.24', '54.22', '52.25', '53.34', '65.72', '60.01', '54.20', '48.37', '45.56', '42.58', '40.96', '45.14', '49.31', '54.21', '57.89', '51.18', '60.21', '57.76', '60.33', '48.34', '45.66', '53.38'], zdcbcolor: 'red', zxcolor: '#00B0F0', bzz: 100 },
+          { name: '浜屾哀鍖栫~', data: ['9.22', '8.07', '8.69', '9.16', '6.25', '5.78', '15.91', '3232992.75', '11.34', '13.63', '14.13', '11.47', '8.48', '9.46', '7.85', '5.91', '4.64', '4.77', '6.99', '5.82', '5.59', '5.30', '6.62', '9.00', '13.35', '2.68', '1.89', '0.70', '3.68', '6.25', '5.14'], zdcbcolor: 'red', zxcolor: '#fff21c', bzz: 50 },
+          {
+            name: '搴熸皵娴侀噺',
+            data: ['2827518.25', '2763525.75', '2776435.50', '2742003.50', '2856001.75', '2890287.00', '2832898.25', '2803715.50', '2513925.75', '2753303.50', '2749836.00', '2786188.50', '2738838.00', '2733660.25', '2815521.25', '2830217.25', '2798918.00', '2803543.50', '2770175.25', '2823321.25', '2856329.25', '2801588.00', '2798103.50', '2766343.00', '2750489.50', '2697786.25', '2796775.50', '2808028.50', '2813561.75', '2757129.25', '2720755.50'],
+            zdcbcolor: 'red',
+            zxcolor: '#9ACD32',
+            bzz: null
+          },
+          { name: '鐑熷皹', data: ['3.88', '3.48', '3.85', '3.99', '3.99', '4.48', '3.96', '3.36', '2.79', '4.65', '4.70', '5.08', '4.55', '4.90', '4.43', '3.10', '2.64', '2.84', '2.63', '2.69', '2.56', '2.32', '2.51', '3.29', '3.40', '3.06', '2.94', '2.90', '2.80', '3.07', '4.55'], zdcbcolor: 'red', zxcolor: '#f48183', bzz: 30 }
+        ],
+        yname: ' 娴撳害(mg/m鲁)',
+        // id:'mychartDay',
+        datatype: 1
+      }
+    }
+  },
+  mounted () {
+    this.formInline.timeEnd = dayjs().format('YYYY-MM-DD HH:mm:ss')
+    this.formInline.timeStart = dayjs().subtract(1, 'month').format('YYYY-MM-DD HH:mm:ss')
+    this.onSubmit()
+    // this.CreateChart(this.JsonDayCharts.id, this.JsonDayCharts.title, this.JsonDayCharts.legend, this.JsonDayCharts.xdata, this.JsonDayCharts.ydatas, this.JsonDayCharts.yname, this.JsonDayCharts.id, this.JsonDayCharts.datatype)
+  },
+  updated () {
+    this.onSubmit()
+  },
+  methods: {
+    onSubmit () {
+      console.log('submit!')
+      this.CreateCharts(this.JsonDayCharts.id, this.JsonDayCharts.title, this.JsonDayCharts.legend, this.JsonDayCharts.xdata, this.JsonDayCharts.ydatas, this.JsonDayCharts.yname, this.JsonDayCharts.id, this.JsonDayCharts.datatype)
+    },
+
+    CreateCharts: function (id, title, legend, xdata, ydatas, yname, jcdID, datatype) {
+      this.mychartDay = this.$echarts.init(this.$refs.main)
+      this.mychartDay.clear()
+      var dataUnit = ''
+      if (datatype === 1) {
+        dataUnit = '搴熸皵姘旈噺(m鲁/d)'
+      } else {
+        dataUnit = '搴熸皵姘旈噺(m鲁/h)'
+      }
+
+      var serLists = []
+      for (var j = 0; j < ydatas.length; j++) {
+        var len = ydatas[j].data.length
+        for (var k = 0; k < len; k++) {
+          var it = ydatas[j].data[k]
+          var it2 = parseFloat(it).toFixed(2)
+          ydatas[j].data[k] = it2
+        }
+      }
+
+      for (var i = 0; i < ydatas.length; i++) {
+        // var zdcbcolor = ydatas[i].zdcbcolor
+        var bzz = ydatas[i].bzz
+        var obj
+        if (bzz == null) {
+          obj = {
+            name: ydatas[i].name,
+            symbol: 'circle', // 鎶樼偣褰㈢姸
+            symbolSize: 10, // 澶у皬
+            smooth: false, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            yAxisIndex: 1,
+            itemStyle: {
+              normal: {
+                color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
+                //   var biaozhuiz
+                //   for (var i = 0; i < exhbzzList.length; i++) {
+                //     if (exhbzzList[i].name == c.seriesName) {
+                //       biaozhuiz = exhbzzList[i].bzhui
+                //     }
+                //   }
+                //   if (c.value > 999999999999) {
+                //     return zdcbcolor
+                //   } else {
+                //     return '#33c95f'
+                //   }
+                },
+                lineStyle: { // 鎶樼嚎鐨勯鑹�
+                  color: ydatas[i].zxcolor,
+                  width: 5
+                },
+                borderColor: ydatas[i].zxcolor, // 鎶樼偣杈规鐨勯鑹�
+                label: { // 鏄剧ず鍊�
+                  show: false
+                }
+              }
+            },
+            type: 'line',
+            data: ydatas[i].data
+          }
+        } else {
+          obj = {
+            name: ydatas[i].name,
+            symbol: 'circle', // 鎶樼偣褰㈢姸
+            symbolSize: 10, // 澶у皬
+            smooth: false, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            itemStyle: {
+              normal: {
+                color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
+                //   var biaozhuiz
+                //   for (var i = 0; i < exhbzzList.length; i++) {
+                //     if (exhbzzList[i].name == c.seriesName) {
+                //       biaozhuiz = exhbzzList[i].bzhui
+                //     }
+                //   }
+                //   if (c.value > biaozhuiz) {
+                //     return zdcbcolor
+                //   } else if (c.value > biaozhuiz * 0.9) {
+                //     return '#FFA500'
+                //   } else {
+                //     return '#33c95f'
+                //   }
+                },
+                lineStyle: { // 鎶樼嚎鐨勯鑹�
+                  color: ydatas[i].zxcolor,
+                  width: 5
+                },
+                borderColor: ydatas[i].zxcolor, // 鎶樼偣杈规鐨勯鑹�
+                label: { // 鏄剧ず鍊�
+                  show: false
+                }
+              }
+            },
+            type: 'line',
+            data: ydatas[i].data,
+            markLine: { // 骞冲潎鍊� 锛� 鍜� 鎸囨爣涓婇檺
+              symbol: 'none',
+              data: [
+                /* {
+                 type: 'average',
+                 name: '鏃ュ钩鍧囧��',
+                 label: {
+                     normal: {
+                         position: 'end',  //鏄剧ず浣嶇疆
+                         formatter:  ydatas[i].name+'\n鏃ュ钩鍧囧��'+'{c}' //鏄剧ず鏍峰紡
+                     }
+                 },
+                 lineStyle:{   // 棰滆壊
+                     color: 'yellow',
+                     type:'solid'
+                 }
+             }, */ {
+                  label: {
+                    normal: {
+                      position: 'end',
+                      formatter: '' // ydatas[i].name+'鏍囧噯鍊�'//+'{c}'
+                    }
+                  },
+                  name: '鏍囧噯鍊�',
+                  yAxis: bzz,
+                  lineStyle: {
+                    color: ydatas[i].zxcolor,
+                    type: 'dashed',
+                    width: 2
+                  }
+                }
+              ]
+            }
+          }
+        }
+        serLists.push(obj)
+      }
+
+      var option = {
+        tooltip: { // 鎻愮ず妗�
+          trigger: 'axis',
+          axisPointer: {
+            type: 'cross',
+            label: {
+              color: '#1a4245'
+            }
+          },
+          formatter: function (params) {
+            var s = params[0].name + '<br/>'
+            for (var i = 0; i < params.length; i++) {
+              // const name = params[i].name
+              // 鍥捐〃title鍚嶇О
+              var seriesName = params[i].seriesName
+              // 鍊�
+              var value = params[i].value
+              // var valueFliter
+              // if (value === 'NaN') {
+              //   valueFliter = ''
+              // } else {
+              //   valueFliter = this.formatter(value)
+              // }
+              var maker = params[i].marker
+              if (seriesName === '浜屾哀鍖栫~') {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#fff21c;"></span>'
+              } else if (seriesName === '姘哀鍖栫墿') {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#00B0F0;"></span>'
+              } else if (seriesName === '鐑熷皹') {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#f48183;"></span>'
+              } else if (seriesName === '娓╁害') {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#F206FF;"></span>'
+              } else {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#4ec99c;"></span>'
+              }
+              s += maker + seriesName + ':' + value + '<br />'
+            }
+            return s
+          }
+        },
+        toolbox: { // 鎵撳嵃绛夊伐鍏�
+          show: false,
+          feature: {
+            saveAsImage: {}
+          }
+        },
+        grid: { // 缃戞牸
+          top: '20%',
+          left: '12%',
+          bottom: '15%'
+          // containLabel: true
+        },
+        legend: { // 鍥句緥
+          data: legend
+        },
+        dataZoom: [{
+          type: 'inside',
+          start: 0,
+          end: 100
+        }, {
+          start: 0,
+          end: 100,
+          show: false,
+          handleIcon: 'M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4v1.3h1.3v-1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7V23h6.6V24.4z M13.3,19.6H6.7v-1.4h6.6V19.6z',
+          handleSize: '80%',
+          handleStyle: {
+            color: '#fff',
+            shadowBlur: 3,
+            shadowColor: 'rgba(0, 0, 0, 0.6)',
+            shadowOffsetX: 2,
+            shadowOffsetY: 2
+          }
+        }],
+        xAxis: { // x 杞磋缃�
+          type: 'category',
+          boundaryGap: false,
+          axisLabel: { // x杞村叏閮ㄦ樉绀�
+            rotate: 20,
+            interval: 0,
+            textStyle: {
+              color: '#fff'
+            }
+          },
+          splitLine: { // 缃戞牸鍨傜洿绾夸负 铏氱嚎
+            show: true,
+            lineStyle: {
+              type: 'dashed'
+            }
+          },
+          axisTick: { // x 杞村埢搴︽樉绀�
+            show: false
+          },
+          axisLine: {
+            lineStyle: {
+              color: '#FFFFFF',
+              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+            }
+          },
+          data: xdata
+        },
+        yAxis: [{
+          type: 'value',
+          name: yname,
+          // max: function (value) {
+          //   var max_val_list = [] // 鎵�鏈夋樉绀烘姌绾跨殑鏍囧噯鍊�
+          //   if (exhbzzList && exhbzzList.length > 0) {
+          //     if (value.max != '-Infinity') { // 鑾峰彇鎵�鏈夌洃娴嬫寚鏍囩殑max鍊� 2020/12/31
+          //       valMax = parseInt(value.max + 5)
+          //     }
+          //     $.each(exhbzzList, function (index, item) {
+          //       if (item.bzhui != null) {
+          //         max_val_list.push(item.bzhui)
+          //       }
+          //     })
+          //   }
+          //   max_val_list = max_val_list.sort(function (a, b) { return a - b }) // 鎺掑簭
+          //   var ma = value.max > max_val_list[max_val_list.length - 1] ? value.max + 5 : max_val_list[max_val_list.length - 1]
+          //   return parseInt(ma)
+          // },
+          axisLabel: {
+            formatter: '{value}',
+            textStyle: {
+              color: '#fff'
+            }
+          },
+          axisPointer: {
+            snap: true
+          },
+          splitLine: {
+            show: false
+          }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+          axisLine: {
+            lineStyle: {
+              color: '#FFFFFF',
+              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+            }
+          }
+        }, {
+          type: 'value',
+          name: dataUnit,
+          max: function (value) {
+            var ma = value.max > 120 ? value.max : 120
+            return parseInt(ma)
+          },
+          axisLabel: {
+            formatter: '{value}',
+            textStyle: {
+              color: '#fff'
+            }
+          },
+          axisPointer: {
+            snap: true
+          },
+          splitLine: {
+            show: false
+          }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+          axisLine: {
+            lineStyle: {
+              color: '#FFFFFF',
+              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+            }
+          }
+        }],
+        series: serLists
+      }
+      this.mychartDay.setOption(option)
+
+      // this.mychartDay.on('legendselectchanged', function (params) {
+      //   var StdVal = null
+      //   var op = { yAxis: {} }
+      //   var max_val_list = [] // 鎵�鏈夋樉绀烘姌绾跨殑鏍囧噯鍊�
+      //   if (exhbzzList && exhbzzList.length > 0) {
+      //     max_val_list.push(valMax) // 灏嗙洃娴嬫寚鏍囩殑max鍊间篃鏀惧叆鏁扮粍 2020/12/31
+      //     $.each(exhbzzList, function (index, item) {
+      //       params.selected[item.name] ? max_val_list.push(item.bzhui) : ''
+      //       if (item.name == params.name) {
+      //         item.name == 'VOCs' ? StdVal = 20 : StdVal = item.bzhui
+      //       }
+      //     })
+      //   }
+      //   max_val_list = max_val_list.sort(function (a, b) { return a - b }) // 鎺掑簭
+      //   op.yAxis.max = function (value) {
+      //     var ma = value.max < StdVal ? StdVal : Math.ceil(value.max)
+      //     max_val_list ? ma = max_val_list[max_val_list.length - 1] : ''// 閫夋嫨鏈�澶у��
+      //     return ma
+      //   }
+      //   this.mychartDay.setOption(op)
+      // })
+
+      /**
+   * 瑙e喅mychartDay.on('click',function(){...})浜嬩欢閲嶅瑙﹀彂鐨勯棶棰�
+   * Date: 20200720
+   */
+      this.mychartDay.off('click')
+
+      /**
+   *  鍥炬爣鐐瑰嚮浜嬩欢
+   *  20190426 add
+   * */
+      // this.mychartDay.on('click', function (params) {
+      //   // 鑾峰彇褰撳墠鏃堕棿锛屽皬鏃�
+      //   var nowHours = new Date().Format('hh')
+      //   // 鐐瑰嚮鎶樼嚎鍥炬姌鐐瑰搴旂殑鏃堕棿
+      //   // 闇�瑕佷紶鐨勬椂闂翠负
+      //   var _date = null
+      //   if (params.name.indexOf('鏃�') !== -1) {
+      //     var hours = params.name.substring(0, params.name.indexOf('鏃�'))
+      //     if (parseInt(hours) < parseInt(nowHours)) {
+      //       _date = new Date().Format('yyyy-MM-dd') + ' ' + hours + ':00:00'
+      //     } else {
+      //       var currentDate = new Date()
+      //       // 24灏忔椂涔嬪墠鏃堕棿
+      //       var stringDate = new Date(currentDate.getTime() - 24 * 60 * 60 * 1000).Format('yyyy-MM-dd')
+      //       _date = stringDate + ' ' + hours + ':00:00'
+      //     }
+      //   } else if (params.name.indexOf('鏃�') !== -1) {
+      //     var day = params.name.substring(0, params.name.indexOf('鏃�') - 1)
+      //     _date = new Date().Format('yyyy-MM') + '-' + day.trim()
+      //   }
+
+      // todo 璋冩帴鍙� 鏌ュ嚟璇�
+      // if (params.color != 'red') {
+      //   var poltMtrlId
+      //   var monItemId = 28
+      //   for (var i = 0; i < wrwIDS.length; i++) {
+      //     if (params.seriesName == wrwIDS[i].name) {
+      //       poltMtrlId = wrwIDS[i].id
+      //     }
+      //   }
+      //   getCBMX(jcdID, poltMtrlId, monItemId, _date, function (res) {
+      //     createDivByMouse(res, params.event)
+      //   })
+      // }
+      // createDivByMouse("s",params.event);
+      // })
+    },
+    drawChart: function () {
+      window.onresize = function () {
+        var h1 = document.documentElement.clientHeight// 鑾峰彇灞忓箷鐨勯珮搴�
+        if (h1 > 700) {
+          this.mychartDay.getDom().style.height = 3 + 'rem'
+          this.mychartDay.getDom().style.width = 6 + 'rem'
+        } else {
+          this.mychartDay.getDom().style.height = 3 + 'rem'
+          this.mychartDay.getDom().style.width = 6 + 'rem'
+        }
+        this.mychartDay.resize()
+      }
+    }
+    // initOptions: function (dateDate, series) {
+    //   var options = {
+    //     title: {
+    //       // text: '鎶樼嚎鍥惧爢鍙�'
+    //     },
+    //     color: ['#446cdc', '#c4c916', '#c1187e'],
+    //     tooltip: {
+    //       trigger: 'axis',
+    //       axisPointer: {
+    //         type: 'cross',
+    //         label: {
+    //           color: '#1a4245'
+    //         }
+    //       }
+    //     },
+    //     legend: {
+    //       x: '200px',
+    //       y: '30px',
+    //       data: [{
+    //         name: 'COD',
+    //         textStyle: {
+    //           color: '#00d0f9'
+    //         }
+    //       },
+    //       {
+    //         name: '姘ㄦ爱',
+    //         textStyle: {
+    //           color: '#00d0f9'
+    //         }
+    //       },
+    //       {
+    //         name: '搴熸按娴侀噺',
+    //         textStyle: {
+    //           color: '#00d0f9'
+    //         }
+    //       }]
+    //     },
+    //     grid: {
+    //       left: '3%',
+    //       right: '3%',
+    //       bottom: '3%',
+    //       containLabel: true
+    //     },
+    //     toolbox: {},
+    //     // 鍥炬爣缂╂斁璁剧疆
+    //     dataZoom: [{
+    //       type: 'inside',
+    //       start: 0,
+    //       end: 100
+    //     }, {
+    //       start: 0,
+    //       end: 100,
+    //       show: false,
+    //       handleSize: '80%',
+    //       handleStyle: {
+    //         color: '#fff',
+    //         shadowBlur: 3,
+    //         shadowColor: 'rgba(0, 0, 0, 0.6)',
+    //         shadowOffsetX: 2,
+    //         shadowOffsetY: 2
+    //       }
+    //     }],
+    //     // x杞寸殑璁剧疆
+    //     xAxis: {
+    //       type: 'category',
+    //       boundaryGap: false,
+    //       data: dateDate,
+    //       axisLabel: { // x杞村叏閮ㄦ樉绀�
+    //         rotate: 20,
+    //         interval: 0,
+    //         textStyle: {
+    //           color: '#fff',
+    //           fontSize: 10
+    //         }
+    //       },
+    //       splitLine: { // 缃戞牸鍨傜洿绾夸负铏氱嚎
+    //         show: true,
+    //         lineStyle: {
+    //           type: 'dashed'
+    //         }
+    //       },
+    //       axisTick: { // x 杞村埢搴︽樉绀�
+    //         show: false
+    //       },
+    //       axisLine: {
+    //         lineStyle: {
+    //           color: '#FFFFFF',
+    //           width: 1 // 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+    //         }
+    //       }
+    //     },
+    //     // Y 杞寸殑璁剧疆
+    //     yAxis: [{
+    //       type: 'value',
+    //       position: 'left', // 澶� Y 杞翠娇鐢�
+    //       name: '娴撳害(mg/m鲁)',
+    //       axisLabel: {
+    //         formatter: '{value}',
+    //         textStyle: {
+    //           color: '#fff' // 鍧愭爣鐨勫瓧浣撻鑹�
+    //         }
+    //       },
+    //       axisPointer: {
+    //         snap: true // 鑷姩鍚搁檮鏈�杩戠殑鐐�
+    //       },
+    //       splitLine: {
+    //         show: false // y杞� 缃戞牸绾夸笉鏄剧ず
+    //       },
+    //       axisLine: {
+    //         lineStyle: {
+    //           color: '#ffffff', // 鍧愭爣杞寸殑棰滆壊
+    //           width: 1
+    //         }
+    //       }
+    //     },
+    //     {
+    //       type: 'value',
+    //       position: 'right', // 澶� Y 杞翠娇鐢�
+    //       name: '娴侀噺(m鲁/h鲁)',
+    //       axisLabel: {
+    //         formatter: '{value}',
+    //         textStyle: {
+    //           color: '#fff' // 鍧愭爣鐨勫瓧浣撻鑹�
+    //         }
+    //       },
+    //       axisPointer: {
+    //         snap: true // 鑷姩鍚搁檮鏈�杩戠殑鐐�
+    //       },
+    //       splitLine: {
+    //         show: false // y杞� 缃戞牸绾夸笉鏄剧ず
+    //       },
+    //       axisLine: {
+    //         lineStyle: {
+    //           color: '#ffffff', // 鍧愭爣杞寸殑棰滆壊
+    //           width: 1
+    //         }
+    //       }
+    //     }],
+    //     series: series
+    //   }
+    //   return options
+    // }
+  }
+}
+</script>
+
+<style scoped lang="less">
+
+.animation {
+  .infomation {
+    padding: 0.02rem 0.04rem;
+    .grid-content {
+      font-size: 0.08rem;
+      background-color: #2e4967;
+      text-align: center;
+      border-radius: 0.01rem;
+      height: 0.15rem;
+      line-height: 0.15rem;
+      margin-right: 0.04rem;
+      padding:0 0.04rem
+    }
+  }
+}
+    .form-echrts {
+        width: 100%;
+        border-top: 1px solid #396d83;
+        //margin: 10px 10px 10px 10px;
+        .from-search{
+          display: flex;
+          padding:0.02rem;
+          >div{margin-left: 10px}
+            .pickerMon{
+              display: flex;
+              >div:first-child {
+                margin-right: 10px;
+              }
+                .pickerData{
+                    flex: 1;
+                    display: flex;
+                      >span{line-height: 22px}
+                    .pickerTable {
+                      margin-left: 3px;
+                    }
+                }
+            }
+            /deep/.el-date-editor--datetime{
+                width: 100%;
+            }
+            /deep/.el-input__inner{
+                position: relative;
+                width:1rem;
+                background-color: #2e4967;
+                color: #fff;
+                font-size: 0.08rem;
+                height: 0.15rem;
+                padding: 0;
+                border:none;
+                text-align: center;
+              z-index: 9999;
+                //padding-left:20px ;
+                //padding: 0!important;
+            }
+          /deep/.el-input__icon{
+            display: block;
+            width:1rem;
+            height: 0.15rem;
+            line-height: 0.15rem;
+            cursor: pointer;
+            font-size: 0;
+          }
+
+          input::-webkit-calendar-picker-indicator {
+            opacity: 100;
+          }
+            .detailbtn{
+                background-color:#2e4967;
+                text-align: center;
+                padding: 0 7px;
+                height: 0.15rem;
+                line-height: 0.15rem;
+                border-radius: 4px;
+                margin-right: 6px;
+            }
+        }
+        .el-dialog-div {
+            overflow: auto;
+        }
+        #echarts {
+            margin: 0;
+            padding: 0;
+        }
+    }
+</style>
diff --git a/src/components/BaseNav/WasteGas/Detail.vue b/src/components/BaseNav/WasteGas/Detail.vue
new file mode 100644
index 0000000..8bee0af
--- /dev/null
+++ b/src/components/BaseNav/WasteGas/Detail.vue
@@ -0,0 +1,90 @@
+<template>
+  <el-table
+      :data="tableData"
+      style="width: 100%;height: 100%">
+    <el-table-column
+        prop="LabMonTime"
+        label="妫�娴嬫椂闂�">
+    </el-table-column>
+    <el-table-column
+        label="姘哀鍖栫墿">
+      <el-table-column
+          prop="NOMonTime"
+          label="鐩戞祴鍊�">
+      </el-table-column>
+      <el-table-column
+          prop="NOEndTime"
+          label="鏍囧噯鍊�">
+      </el-table-column>
+    </el-table-column>
+    <el-table-column
+        label="浜屾哀鍖栫~">
+      <el-table-column
+          prop="SOMontime"
+          label="鐩戞祴鍊�">
+      </el-table-column>
+      <el-table-column
+          prop="SoEndTime"
+          label="鏍囧噯鍊�">
+      </el-table-column>
+    </el-table-column>
+    <el-table-column
+        label="鐑熷皹">
+      <el-table-column
+          prop="MonItemId"
+          label="鐩戞祴鍊�">
+      </el-table-column>
+      <el-table-column
+          prop="EndMonTime"
+          label="鏍囧噯鍊�">
+      </el-table-column>
+    </el-table-column>
+    <el-table-column
+        label="闈炵敳鐑锋�荤儍">
+      <el-table-column
+          prop="MonItemId"
+          label="鐩戞祴鍊�">
+      </el-table-column>
+      <el-table-column
+          prop="MonItemId"
+          label="鏍囧噯鍊�">
+      </el-table-column>
+    </el-table-column>
+  </el-table>
+</template>
+
+<script>
+export default {
+  name: 'Detail',
+  data () {
+    return {
+      tableData: [{
+        LabMonTime: '2021-02-05 09:54',
+        MonItemId: '---',
+        EndMonTime: '30',
+        NOMonTime: '44',
+        NOEndTime: '100',
+        SOMontime: '9',
+        SoEndTime: '50'
+      }, {
+        LabMonTime: '2021-01-14 10:15',
+        MonItemId: '---',
+        EndMonTime: '30',
+        NOMonTime: '70',
+        NOEndTime: '100',
+        SOMontime: '---',
+        SoEndTime: '50'
+      }]
+    }
+  },
+  created () {
+    // this.tableData = [...this.$attrs.ManualData]
+    // console.log(this.tableData)
+  }
+}
+
+</script>
+
+<style scoped>
+
+</style>
diff --git a/src/components/BaseNav/WasteGas/HourData.vue b/src/components/BaseNav/WasteGas/HourData.vue
new file mode 100644
index 0000000..14a2b5b
--- /dev/null
+++ b/src/components/BaseNav/WasteGas/HourData.vue
@@ -0,0 +1,623 @@
+<!--  灏忔椂鏁版嵁  -->
+<template>
+    <div id="Tab">
+        <div class="infomation">
+          <div>
+            <span class="grid-content">姘哀鍖栫墿 :<i style="color: #e8ee0b">29.93</i>  鏍囧噯 : 100</span>
+            <span class="grid-content">浜屾哀鍖栫~ : <i style="color: #e8ee0b">17.34</i> 鏍囧噯 : 50</span>
+            <span class="grid-content">鐑熷皹 : <i style="color: #e8ee0b">6.93</i> 鏍囧噯 : 30</span>
+            <span class="grid-content">搴熸皵娴侀噺 : <i style="color: #e8ee0b">120343.18</i></span>
+          </div>
+        </div>
+        <div class="form-echrts">
+            <div class="from-search">
+                <div class="pickerMon">
+                    <div class="pickerData">
+                        <span> 寮�濮嬫椂闂�:</span>
+                        <span class="pickerTable">
+                          <el-date-picker  type="datetime"  v-model="formInline.timeStart" @click="pickerBtn"></el-date-picker>
+                        </span>
+                    </div>
+                    <div class="pickerData">
+                        <span >缁撴潫鏃堕棿:</span>
+                        <span class="pickerTable">
+                            <el-date-picker  type="datetime" v-model="formInline.timeEnd" ></el-date-picker>
+                        </span>
+                    </div>
+                </div>
+                <div class="detailbtn"  @click="onSubmit">鏌ヨ</div>
+                <div class="detailbtn" @click="dialogVisible = true" >鏄庣粏琛�</div>
+             </div>
+            <div style="width:5rem;height:1.5rem;" id="echarts" ref="main"></div>
+        </div>
+        <!-- 鏄庣粏寮规 -->
+        <el-dialog :visible.sync="dialogVisible"
+                   :append-to-body="true"
+                   width="68%"
+                   center
+                   v-dialogDrag
+        >
+            <div class="el-dialog-div" style="height: 500px">
+                <public-detailed-list v-bind="$attrs"></public-detailed-list>
+            </div>
+        </el-dialog>
+    </div>
+</template>
+
+<script>
+import PublicDetailedList from '@components/BaseNav/PublicBounced/common/echarts/PublicDetailedList'
+import dayjs from 'dayjs'
+export default {
+  name: 'HourData',
+  components: {
+    PublicDetailedList
+  },
+  data () {
+    return {
+      watchData: [],
+      dialogVisible: false,
+      myChar: null,
+      value: '',
+      formInline: {
+        timeStart: null,
+        timeEnd: null
+      },
+      myChart: null,
+      JsonCtarts: {
+        id: 'mychart',
+        title: '鍔犵儹鐐夌儫姘�',
+        legend: [
+          {
+            icon: 'image://../assets/imgs/legend/NOX.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            textStyle: {
+              color: '#CCC'
+            },
+            name: '姘哀鍖栫墿'
+          },
+          {
+            icon: 'image://../assets/imgs/legend/SO2.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '浜屾哀鍖栫~',
+            textStyle: {
+              color: '#CCC'
+            }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/YanChen.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '鐑熷皹',
+            textStyle: { color: '#ccc' }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/WenDu.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '娓╁害',
+            textStyle: { color: '#ccc' }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/VOCs.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '搴熸皵娴侀噺',
+            textStyle: { color: '#ccc' }
+          }
+        ],
+        xdata: ['0鏃�', '1鏃�', '2鏃�', '3鏃�', '4鏃�', '5鏃�', '6鏃�', '7鏃�', '8鏃�', '9鏃�', '10鏃�', '11鏃�', '12鏃�', '13鏃�', '14鏃�', '15鏃�', '16鏃�'],
+        ydatas: [
+          { name: '姘哀鍖栫墿', data: ['34.44', '36.91', '37.65', '37.16', '38.03', '38.23', '37.21', '37.67', '37.97', '37.58', '36.61', '37.76', '37.27', '37.24', '35.86', '36.61', '37.21'], zdcbcolor: 'red', zxcolor: '#00B0F0', bzz: 50 },
+          { name: '浜屾哀鍖栫~', data: ['4.98', '4.57', '4.19', '3.14', '3.80', '3.62', '3.33', '2.80', '3.13', '2.54', '3.08', '2.48', '1.97', '1.76', '0.82', '1.01', '1.5'], zdcbcolor: 'red', zxcolor: '#fff21c', bzz: 35 },
+          { name: '搴熸皵娴侀噺', data: ['381907.22', '376474.19', '378572.31', '379369.44', '385225.72', '388657.56', '330667.31', '26560.98', '0.00', '0.00', '49567.43', '357837.31', '376972.66', '379693.50', '379982.22', '379693.50', '379982.22'], zdcbcolor: 'red', zxcolor: '#9ACD32', bzz: null },
+          { name: '鐑熷皹', data: ['4.02', '4.17', '4.31', '4.00', '4.45', '4.40', '4.40', '4.25', '4.26', '4.18', '4.58', '4.21', '3.96', '3.83', '3.78', '3.83', '3.78'], zdcbcolor: 'red', zxcolor: '#f48183', bzz: 10 },
+          { name: '娓╁害', data: ['46.55', '46.70', '46.47', '46.56', '46.57', '46.58', '46.56', '46.58', '46.69', '46.47', '46.58', '46.60', '46.54', '46.55', '46.60', '46.55', '46.60'], zdcbcolor: 'red', zxcolor: '#F206FF', bzz: null }
+        ],
+        yname: ' 娴撳害(mg/m鲁)',
+        // id:'mychart',
+        datatype: 2
+      }
+    }
+  },
+  created () {
+  },
+  mounted () {
+    this.formInline.timeEnd = dayjs().format('YYYY-MM-DD HH:mm:ss')
+    this.formInline.timeStart = dayjs().subtract(12, 'hour').format('YYYY-MM-DD HH:mm:ss')
+    this.onSubmit()
+  },
+  methods: {
+    pickerBtn () {
+      this.formInline.timeEnd = ''
+      this.formInline.timeStart = ''
+      console.log(1)
+    },
+    onSubmit () {
+      this.CreateChart()
+    },
+    CreateChart () {
+      // var id = this.JsonCtarts.id
+      // var title = this.JsonCtarts.title
+      var legend = this.JsonCtarts.legend
+      var xdata = this.JsonCtarts.xdata
+      var ydatas = this.JsonCtarts.ydatas
+      var yname = this.JsonCtarts.yname
+      // var jcdId = this.JsonCtarts.jcdID
+      var datatype = this.JsonCtarts.datatype
+
+      this.myChart = this.$echarts.init(this.$refs.main)
+      this.myChart.clear()
+      var dataUnit = ''
+      if (datatype === 1) {
+        dataUnit = '搴熸皵姘旈噺(m鲁/d)'
+      } else {
+        dataUnit = '搴熸皵姘旈噺(m鲁/h)'
+      }
+
+      var serLists = []
+      for (var j = 0; j < ydatas.length; j++) {
+        var len = ydatas[j].data.length
+        for (var k = 0; k < len; k++) {
+          var it = ydatas[j].data[k]
+          var it2 = parseFloat(it).toFixed(2)
+          ydatas[j].data[k] = it2
+        }
+      }
+
+      for (var i = 0; i < ydatas.length; i++) {
+      //  var zdcbcolor = ydatas[i].zdcbcolor
+        var bzz = ydatas[i].bzz
+        var obj
+        if (bzz == null) {
+          obj = {
+            name: ydatas[i].name,
+            symbol: 'circle', // 鎶樼偣褰㈢姸
+            symbolSize: 10, // 澶у皬
+            smooth: false, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            yAxisIndex: 1,
+            itemStyle: {
+              normal: {
+                color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
+                  /* var biaozhuiz
+                  for (var i = 0; i < exhbzzList.length; i++) {
+                    if (exhbzzList[i].name == c.seriesName) {
+                      biaozhuiz = exhbzzList[i].bzhui
+                    }
+                  }
+                  if (c.value > 999999999999) {
+                    return zdcbcolor
+                  } else {
+                    return '#33c95f'
+                  } */
+                },
+                lineStyle: { // 鎶樼嚎鐨勯鑹�
+                  color: ydatas[i].zxcolor,
+                  width: 5
+                },
+                borderColor: ydatas[i].zxcolor, // 鎶樼偣杈规鐨勯鑹�
+                label: { // 鏄剧ず鍊�
+                  show: false
+                }
+              }
+            },
+            type: 'line',
+            data: ydatas[i].data
+          }
+        } else {
+          obj = {
+            name: ydatas[i].name,
+            symbol: 'circle', // 鎶樼偣褰㈢姸
+            symbolSize: 10, // 澶у皬
+            smooth: false, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            itemStyle: {
+              normal: {
+                color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
+                /*  var biaozhuiz
+                  for (var i = 0; i < exhbzzList.length; i++) {
+                    if (exhbzzList[i].name == c.seriesName) {
+                      biaozhuiz = exhbzzList[i].bzhui
+                    }
+                  }
+                  if (c.value > biaozhuiz) {
+                    return zdcbcolor
+                  } else if (c.value > biaozhuiz * 0.9) {
+                    return '#FFA500'
+                  } else {
+                    return '#33c95f'
+                  }
+                  */
+                },
+                lineStyle: { // 鎶樼嚎鐨勯鑹�
+                  color: ydatas[i].zxcolor,
+                  width: 5
+                },
+                borderColor: ydatas[i].zxcolor, // 鎶樼偣杈规鐨勯鑹�
+                label: { // 鏄剧ず鍊�
+                  show: false
+                }
+              }
+            },
+            type: 'line',
+            data: ydatas[i].data,
+            markLine: { // 骞冲潎鍊� 锛� 鍜� 鎸囨爣涓婇檺
+              symbol: 'none',
+              data: [
+                /* {
+                     type: 'average',
+                     name: '鏃ュ钩鍧囧��',
+                     label: {
+                         normal: {
+                             position: 'end',  //鏄剧ず浣嶇疆
+                             formatter:  ydatas[i].name+'\n鏃ュ钩鍧囧��'+'{c}' //鏄剧ず鏍峰紡
+                         }
+                     },
+                     lineStyle:{   // 棰滆壊
+                         color: 'yellow',
+                         type:'solid'
+                     }
+                 }, */ {
+                  label: {
+                    normal: {
+                      position: 'end',
+                      formatter: '' // ydatas[i].name+'鏍囧噯鍊�'//+'{c}'
+                    }
+                  },
+                  name: '鏍囧噯鍊�',
+                  yAxis: bzz,
+                  lineStyle: {
+                    color: ydatas[i].zxcolor,
+                    type: 'dashed',
+                    width: 2
+                  }
+                }
+              ]
+            }
+          }
+        }
+        serLists.push(obj)
+      }
+
+      var option = {
+        tooltip: { // 鎻愮ず妗�
+          trigger: 'axis',
+          axisPointer: {
+            type: 'cross',
+            label: {
+              color: '#1a4245'
+            }
+          },
+          formatter: function (params) {
+            var s = params[0].name + '<br/>'
+            for (var i = 0; i < params.length; i++) {
+              // const name = params[i].name
+              // 鍥捐〃title鍚嶇О
+              var seriesName = params[i].seriesName
+              // 鍊�
+              var value = params[i].value
+              // var valueFliter
+              // if (value === 'NaN') {
+              //   valueFliter = ''
+              // } else {
+              //   valueFliter = this.formatter(value)
+              // }
+              var maker = params[i].marker
+              if (seriesName === '浜屾哀鍖栫~') {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#fff21c;"></span>'
+              } else if (seriesName === '姘哀鍖栫墿') {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#00B0F0;"></span>'
+              } else if (seriesName === '鐑熷皹') {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#f48183;"></span>'
+              } else if (seriesName === '娓╁害') {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#F206FF;"></span>'
+              } else {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#4ec99c;"></span>'
+              }
+              s += maker + seriesName + ':' + value + '<br />'
+            }
+            return s
+          }
+        },
+        toolbox: { // 鎵撳嵃绛夊伐鍏�
+          show: false,
+          feature: {
+            saveAsImage: {}
+          }
+        },
+        grid: { // 缃戞牸
+          top: '20%',
+          left: '6%',
+          bottom: '15%'
+          // containLabel: true
+        },
+        legend: { // 鍥句緥
+          data: legend
+        },
+        dataZoom: [{
+          type: 'inside',
+          start: 0,
+          end: 100
+        }, {
+          start: 0,
+          end: 100,
+          show: false,
+          handleIcon: 'M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4v1.3h1.3v-1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7V23h6.6V24.4z M13.3,19.6H6.7v-1.4h6.6V19.6z',
+          handleSize: '80%',
+          handleStyle: {
+            color: '#fff',
+            shadowBlur: 3,
+            shadowColor: 'rgba(0, 0, 0, 0.6)',
+            shadowOffsetX: 2,
+            shadowOffsetY: 2
+          }
+        }],
+        xAxis: { // x 杞磋缃�
+          type: 'category',
+          boundaryGap: false,
+          axisLabel: { // x杞村叏閮ㄦ樉绀�
+            rotate: 20,
+            interval: 0,
+            textStyle: {
+              color: '#fff'
+            }
+          },
+          splitLine: { // 缃戞牸鍨傜洿绾夸负 铏氱嚎
+            show: true,
+            lineStyle: {
+              type: 'dashed'
+            }
+          },
+          axisTick: { // x 杞村埢搴︽樉绀�
+            show: false
+          },
+          axisLine: {
+            lineStyle: {
+              color: '#FFFFFF',
+              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+            }
+          },
+          data: xdata
+        },
+        yAxis: [{
+          type: 'value',
+          name: yname,
+          /* max: function (value) {
+            var max_val_list = [] // 鎵�鏈夋樉绀烘姌绾跨殑鏍囧噯鍊�
+            // if(exhbzzList && exhbzzList.length>0){
+            //   if (value.max != "-Infinity") {  // 鑾峰彇鎵�鏈夌洃娴嬫寚鏍囩殑max鍊� 2020/12/31
+            //     valMax = parseInt(value.max + 5);
+            //   }
+            //   $.each(exhbzzList, function (index, item) {
+            //     if (item.bzhui != null) {
+            //       max_val_list.push(item.bzhui);
+            //     }
+            //   });
+            // }
+            max_val_list = max_val_list.sort(function (a, b) { return a - b }) // 鎺掑簭
+            var ma = value.max > max_val_list[max_val_list.length - 1] ? value.max + 5 : max_val_list[max_val_list.length - 1]
+            return parseInt(ma)
+          }, */
+          axisLabel: {
+            formatter: '{value}',
+            textStyle: {
+              color: '#fff'
+            }
+          },
+          axisPointer: {
+            snap: true
+          },
+          splitLine: {
+            show: false
+          }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+          axisLine: {
+            lineStyle: {
+              color: '#FFFFFF',
+              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+            }
+          }
+        }, {
+          type: 'value',
+          name: dataUnit,
+          max: function (value) {
+            var ma = value.max > 120 ? value.max : 120
+            return parseInt(ma)
+          },
+          axisLabel: {
+            formatter: '{value}',
+            textStyle: {
+              color: '#fff'
+            }
+          },
+          axisPointer: {
+            snap: true
+          },
+          splitLine: {
+            show: false
+          }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+          axisLine: {
+            lineStyle: {
+              color: '#FFFFFF',
+              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+            }
+          }
+        }],
+        series: serLists
+      }
+      // console.log(option)
+      this.myChart.setOption(option)
+      /*
+      this.myChart.on('legendselectchanged', function (params) {
+        var StdVal = null
+        var op = { yAxis: {} }
+        const max_val_list = [] // 鎵�鏈夋樉绀烘姌绾跨殑鏍囧噯鍊�
+        if (exhbzzList && exhbzzList.length > 0) {
+          max_val_list.push(valMax) // 灏嗙洃娴嬫寚鏍囩殑max鍊间篃鏀惧叆鏁扮粍 2020/12/31
+          $.each(exhbzzList, function (index, item) {
+            params.selected[item.name] ? max_val_list.push(item.bzhui) : ''
+            if (item.name == params.name) {
+              item.name == 'VOCs' ? StdVal = 20 : StdVal = item.bzhui
+            }
+          })
+        }
+        max_val_list = max_val_list.sort(function (a, b) { return a - b }) // 鎺掑簭
+        op.yAxis.max = function (value) {
+          var ma = value.max < StdVal ? StdVal : Math.ceil(value.max)
+          max_val_list ? ma = max_val_list[max_val_list.length - 1] : ''// 閫夋嫨鏈�澶у��
+          return ma
+        }
+        this.myChart.setOption(op)
+      })
+        */
+
+      /**
+       * 瑙e喅myChart.on('click',function(){...})浜嬩欢閲嶅瑙﹀彂鐨勯棶棰�
+       * Date: 20200720
+       */
+      this.myChart.off('click')
+
+      /**
+       *  鍥炬爣鐐瑰嚮浜嬩欢
+       *  20190426 add
+       * */
+      /* this.myChart.on('click', function (params) {
+        // 鑾峰彇褰撳墠鏃堕棿锛屽皬鏃�
+        var nowHours = new Date().Format('hh')
+        // 鐐瑰嚮鎶樼嚎鍥炬姌鐐瑰搴旂殑鏃堕棿
+        // 闇�瑕佷紶鐨勬椂闂翠负
+        const dates = null
+        if (params.name.indexOf('鏃�') !== -1) {
+          var hours = params.name.substring(0, params.name.indexOf('鏃�'))
+          if (parseInt(hours) < parseInt(nowHours)) {
+            dates = new Date().Format('yyyy-MM-dd') + ' ' + hours + ':00:00'
+          } else {
+            var currentDate = new Date()
+            // 24灏忔椂涔嬪墠鏃堕棿
+            var stringDate = new Date(currentDate.getTime() - 24 * 60 * 60 * 1000).Format('yyyy-MM-dd')
+            dates = stringDate + ' ' + hours + ':00:00'
+          }
+        } else if (params.name.indexOf('鏃�') !== -1) {
+          var day = params.name.substring(0, params.name.indexOf('鏃�') - 1)
+          dates = new Date().Format('yyyy-MM') + '-' + day.trim()
+        }
+
+        // todo 璋冩帴鍙� 鏌ュ嚟璇�
+         if (params.color != 'red') {
+          var poltMtrlId
+          var monItemId = 28
+          for (var i = 0; i < wrwIDS.length; i++) {
+            if (params.seriesName == wrwIDS[i].name) {
+              poltMtrlId = wrwIDS[i].id
+            }
+          }
+          getCBMX(jcdID, poltMtrlId, monItemId, _date, function (res) {
+            createDivByMouse(res, params.event)
+          })
+        }
+        // createDivByMouse("s",params.event);
+      }) */
+    }
+    // drawChart: function () {
+    //   window.onresize = function () {
+    //     var h1 = document.documentElement.clientHeight// 鑾峰彇灞忓箷鐨勯珮搴�
+    //     if (h1 > 700) {
+    //       this.myChart.getDom().style.height = 3 + 'rem'
+    //       this.myChart.getDom().style.width = 6 + 'rem'
+    //     } else {
+    //       this.myChart.getDom().style.height = 3 + 'rem'
+    //       this.myChart.getDom().style.width = 6 + 'rem'
+    //     }
+    //     this.myChart.resize()
+    //   }
+    // }
+  }
+
+}
+</script>
+
+<style scoped lang="less">
+    .animation {
+        .infomation {
+            padding: 0.02rem 0.04rem;
+            .grid-content {
+                font-size: 0.08rem;
+                background-color: #2e4967;
+                text-align: center;
+                border-radius: 0.01rem;
+                height: 0.15rem;
+                line-height: 0.15rem;
+                margin-right: 0.04rem;
+                padding:0 0.04rem
+            }
+        }
+    }
+    .form-echrts {
+        width: 100%;
+        border-top: 1px solid #396d83;
+        //margin: 10px 10px 10px 10px;
+        .from-search{
+            display: flex;
+            padding:0.02rem;
+            >div{margin-left: 10px}
+            .pickerMon{
+                display: flex;
+                >div:first-child {
+                    margin-right: 10px;
+                }
+                .pickerData{
+                    flex: 1;
+                    display: flex;
+                    >span{line-height: 22px}
+                    .pickerTable {
+                        margin-left: 3px;
+                    }
+                }
+            }
+            /deep/.el-date-editor--datetime{
+                width: 100%;
+            }
+            /deep/.el-input__inner{
+                position: relative;
+                width:1rem;
+                background-color: #2e4967;
+                color: #fff;
+                font-size: 0.08rem;
+                height: 0.15rem;
+                padding: 0;
+                border:none;
+              z-index: 9999;
+                text-align: center;
+                //padding-left:20px ;
+                //padding: 0!important;
+            }
+            /deep/.el-input__icon{
+                display: block;
+                width:1rem;
+                height: 0.15rem;
+                line-height: 0.15rem;
+                cursor: pointer;
+                font-size: 0;
+            }
+
+            input::-webkit-calendar-picker-indicator {
+                opacity: 100;
+            }
+            .detailbtn{
+                background-color:#2e4967;
+                text-align: center;
+                padding: 0 7px;
+                height: 0.15rem;
+                line-height: 0.15rem;
+                border-radius: 4px;
+                margin-right: 6px;
+            }
+        }
+        .el-dialog-div {
+            overflow: auto;
+        }
+        #echarts {
+            margin: 0;
+            padding: 0;
+        }
+    }
+</style>
diff --git a/src/components/BaseNav/WasteGas/Index.vue b/src/components/BaseNav/WasteGas/Index.vue
new file mode 100644
index 0000000..1db65ea
--- /dev/null
+++ b/src/components/BaseNav/WasteGas/Index.vue
@@ -0,0 +1,160 @@
+<template>
+  <div class="win">
+    <div class="border_corner border_corner_left_top"></div>
+    <div class="border_corner border_corner_right_top"></div>
+    <div class="border_corner border_corner_left_bottom"></div>
+    <div class="border_corner border_corner_right_bottom"></div>
+    <ul class="tab" v-show="this.$attrs.value !== 'feiqi'">
+      <li :class="active==0?'hover':''" @click='tabTaggle("EChartsRealWasteWater",0)'>瀹炴椂鏁版嵁</li>
+      <li :class="active==1?'hover':''" @click='tabTaggle("EChartsHourWasteWater",1)'>灏忔椂鏁版嵁</li>
+      <li :class="active==2?'hover':''" @click='tabTaggle("EChartsDateWasteWater",2)'>鏃ユ暟鎹�</li>
+      <li :class="active==3?'hover':''" @click='tabTaggle("EChartsWasteWaterTable",3)'>浜哄伐鏁版嵁</li>
+    </ul>
+    <div class="legend" >
+      <span >姝e父</span>
+      <i style=" background: #4ec99c;"></i>
+      <span >棰勮</span>
+      <i style=" background: red;"></i>
+      <span >瓒呮爣</span>
+      <i style=" background: orange;"></i>
+    </div>
+    <component :is="currentTab" v-bind="$attrs" ref="Echats"></component>
+  </div>
+</template>
+
+<script>
+import ECharts from './echarts/Echarts'
+import EChartsHour from './echarts/EChartsHour'
+import EChartsDate from './echarts/EChartsDate'
+import EChartsTable from './echarts/EChartsTable'
+
+import EChartsRealWasteWater from './echarts/EChartsRealWasteWater'
+import EChartsHourWasteWater from './echarts/EChartsHourWasteWater'
+import EChartsDateWasteWater from './echarts/EChartsDateWasteWater'
+import EChartsWasteWaterTable from './echarts/EChartsWasteWaterTable'
+
+export default {
+  name: 'WasteGasIndex',
+  components: {
+    EChartsHour,
+    EChartsDate,
+    ECharts,
+    EChartsTable,
+    EChartsRealWasteWater,
+    EChartsHourWasteWater,
+    EChartsDateWasteWater,
+    EChartsWasteWaterTable
+  },
+  data () {
+    return {
+      currentTab: this.current(),
+      active: '0'
+    }
+  },
+  // updated () {
+  //   this.$refs.Echats.DrawEXHRealTimeDateChart()
+  // },
+  methods: {
+    tabTaggle (taggleMenu, num) {
+      this.currentTab = taggleMenu
+      this.active = num
+    },
+    current (currentTab) {
+      if (this.$attrs.value === 'feishui') {
+        currentTab = 'EChartsRealWasteWater'
+      } else {
+        currentTab = 'ECharts'
+      }
+      return currentTab
+    }
+  }
+}
+
+</script>
+
+<style scoped lang="less">
+.win {
+  position: relative;
+  background:@background-color;
+  border: 0.8px solid #396d83;
+}
+
+.border_corner {
+  z-index: 999;
+  position: absolute;
+  width: 10px;
+  height: 10px;
+  background: rgba(0, 0, 0, 0);
+  border: 1.5px solid #47d5ea;
+}
+
+.border_corner_left_top {
+  top: 0;
+  left: 0;
+  border-right: none;
+  border-bottom: none;
+}
+
+.border_corner_right_top {
+  top: 0;
+  right: 0;
+  border-left: none;
+  border-bottom: none;
+}
+
+.border_corner_left_bottom {
+  bottom: 0;
+  left: 0;
+  border-right: none;
+  border-top: none;
+}
+
+.border_corner_right_bottom {
+  bottom: 0;
+  right: 0;
+  border-left: none;
+  border-top: none;
+}
+
+.tab {
+  display: flex;
+  border-bottom: 1px solid #396d83;
+  padding:0.02rem 0.04rem;
+}
+
+.tab li {
+  background-color: #243a55;
+  line-height:0.15rem;
+  height: 0.15rem;
+  text-align: center;
+  border-radius: 5px;
+  margin-right: 0.04rem;
+  padding:0 0.04rem;
+}
+.tab li.hover,
+.tab li:hover {
+  background-color: #0e639e;
+  color: #fff;
+  cursor: pointer;
+}
+.legend{
+  position: absolute;
+  top:0.05rem;
+  right: 0;
+  display: flex;
+  justify-items: center;
+}
+.legend i {
+  display: block;
+  width: 0.2rem;
+  height: 0.09rem;
+  margin:0 0.1rem 0 0.05rem;
+  border-radius: 0.02rem;
+}
+.legend span{
+  line-height: 0.09rem;
+  height: 0.09rem;
+  font-size: 0.06rem;
+}
+
+</style>
diff --git a/src/components/BaseNav/WasteGas/PublicTabs.vue b/src/components/BaseNav/WasteGas/PublicTabs.vue
new file mode 100644
index 0000000..a0df48a
--- /dev/null
+++ b/src/components/BaseNav/WasteGas/PublicTabs.vue
@@ -0,0 +1,127 @@
+<template>
+  <div class="win">
+    <div class="border_corner border_corner_left_top"></div>
+    <div class="border_corner border_corner_right_top"></div>
+    <div class="border_corner border_corner_left_bottom"></div>
+    <div class="border_corner border_corner_right_bottom"></div>
+    <div class="main">
+      <div class="main-matter">
+        <div>
+          <ul>
+            <!--            <li>鍦烘墍鍚嶇О:{{ setSolidWaste.StoragePlaceName }}</li>-->
+            <!--            <li>璐瓨鑳藉姏:{{ setSolidWaste.StorageQty }}(鍚�)</li>-->
+            <!--            <li>鍓╀綑璐瓨鑳藉姏:{{ setSolidWaste.SurplusFloorArea }}(鍚�)</li>-->
+            <!--            <li>鍗犲湴闈㈢Н(銕�):{{ setSolidWaste.DesignFloorArea }}(銕�)</li>-->
+            <!--            <li>鏈�杩戣串瀛樻棩鏈�:{{ setSolidWaste.StorageDate }}</li>-->
+            <!--            <li class="lastli"></li>-->
+            <li v-for="(item,index) in tabList" :key="index"></li>
+          </ul>
+        </div>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'GasTable',
+  props: ['setSolidWaste', 'value', 'setWasteGasdata', 'setWasteWaterdata'],
+  data () {
+    return {
+      tabList: []
+    }
+  },
+  methods: {
+    // async getTabsData () {
+    //   // 鍩烘湰淇℃伅 鍜� 璇︾粏淇℃伅 灞曠ず鏁版嵁鎵�闇�鍙傛暟
+    //   const dataValue = {
+    //     StoragePlaceId: e.layer.options.totransferData.StoragePlaceId
+    //   }
+    //   // 鍩烘湰淇℃伅 tabs
+    //   const resultBasic = await mapApi.getSolidWasteBaseInfo(dataValue)
+    // }
+  }
+}
+</script>
+
+<style scoped lang="less">
+
+.win {
+  position: relative;
+  margin-bottom: 0.04rem;
+  background-color: @background-color;
+}
+
+.main {
+
+  .main-matter {
+    font-size: 0.06rem;
+    font-weight: normal;
+    padding: 0.04rem 0;
+    border: 1px solid #396d83;
+
+    ul {
+      //width: 100%;
+      //height: 100%;
+      display: flex;
+      align-items: center;
+      justify-content: space-around;
+      flex-wrap: wrap;
+      margin-bottom: -0.04rem;
+
+      li {
+        margin-bottom: 0.04rem;
+        text-align: center;
+        min-width: 31%;
+        background-color: #243a55;
+        color: #00d0f9;
+        border-radius: 0.02rem;
+        font-size: 0.08rem;
+        line-height: 0.09rem;
+        padding: 0.03rem .5%;
+      }
+
+      .lastli {
+        visibility: hidden
+      }
+    }
+  }
+}
+
+.border_corner {
+  z-index: 999;
+  position: absolute;
+  width: 10px;
+  height: 10px;
+  background: rgba(0, 0, 0, 0);
+  border: 1px solid #47d5ea;
+}
+
+.border_corner_left_top {
+  top: 0;
+  left: 0;
+  border-right: none;
+  border-bottom: none;
+}
+
+.border_corner_right_top {
+  top: 0;
+  right: 0;
+  border-left: none;
+  border-bottom: none;
+}
+
+.border_corner_left_bottom {
+  bottom: 0;
+  left: 0;
+  border-right: none;
+  border-top: none;
+}
+
+.border_corner_right_bottom {
+  bottom: 0;
+  right: 0;
+  border-left: none;
+  border-top: none;
+}
+</style>
diff --git a/src/components/BaseNav/WasteGas/PublicVideo.vue b/src/components/BaseNav/WasteGas/PublicVideo.vue
new file mode 100644
index 0000000..f87c2bb
--- /dev/null
+++ b/src/components/BaseNav/WasteGas/PublicVideo.vue
@@ -0,0 +1,80 @@
+<template>
+  <div class="win">
+    <!-- 鍥涗釜瑙掔殑杈规鏁堟灉 -->
+    <div class="border_corner border_corner_left_top"></div>
+    <div class="border_corner border_corner_right_top"></div>
+    <div class="border_corner border_corner_left_bottom"></div>
+    <div class="border_corner border_corner_right_bottom"></div>
+    <div class="main">
+      <!--      <div class="main-video">-->
+      <video controls>
+        <source src="movie.mp4" type="video/mp4">
+        <source src="movie.ogg" type="video/ogg">
+      </video>
+      <!--      </div>-->
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'GasVideo'
+}
+</script>
+
+<style scoped lang="less">
+.win {
+  position: relative;
+  background-color: rgba(33, 41, 69, 0.9);
+  //height: 2rem;
+
+}
+
+.main {
+  border: 1px solid #396d83;
+  width: 2.5rem;
+  height: 2.5rem;
+  video {
+    width: 100%;
+    height: 100%;
+    outline: none;
+  }
+}
+
+.border_corner {
+  z-index: 999;
+  position: absolute;
+  width: 14px;
+  height: 14px;
+  background: rgba(0, 0, 0, 0);
+  border: 1px solid #47d5ea;
+}
+
+.border_corner_left_top {
+  top: 0;
+  left: 0;
+  border-right: none;
+  border-bottom: none;
+}
+
+.border_corner_right_top {
+  top: 0;
+  right: 0;
+  border-left: none;
+  border-bottom: none;
+}
+
+.border_corner_left_bottom {
+  bottom: 0;
+  left: 0;
+  border-right: none;
+  border-top: none;
+}
+
+.border_corner_right_bottom {
+  bottom: 0;
+  right: 0;
+  border-left: none;
+  border-top: none;
+}
+</style>
diff --git a/src/components/BaseNav/WasteGas/RealTimeEcharts.vue b/src/components/BaseNav/WasteGas/RealTimeEcharts.vue
new file mode 100644
index 0000000..4bd9760
--- /dev/null
+++ b/src/components/BaseNav/WasteGas/RealTimeEcharts.vue
@@ -0,0 +1,1116 @@
+<template>
+  <div id="Tab">
+    <div class="animation">
+      <div class="infomation">
+        <span class="grid-content">姘哀鍖栫墿 :<i  style="color: #e8ee0b">29.93</i>  鏍囧噯 : 100</span>
+        <span class="grid-content">浜屾哀鍖栫~ : <i  style="color: #e8ee0b">17.34</i> 鏍囧噯 : 50</span>
+        <span class="grid-content">鐑熷皹 : <i  style="color: #e8ee0b">6.93</i> 鏍囧噯 : 30</span>
+        <span class="grid-content">搴熸皵娴侀噺 : <i  style="color: #e8ee0b">5.23</i></span>
+      </div>
+    </div>
+    <div class="form-echrts">
+      <div class="from-search">
+        <div class="pickerMon">
+          <div class="pickerData">
+            <span> 寮�濮嬫椂闂�:</span>
+            <span class="pickerTable">
+              <el-date-picker  type="datetime"  v-model="formInline.timeStart"></el-date-picker>
+            </span>
+          </div>
+          <div class="pickerData">
+            <span >缁撴潫鏃堕棿:</span>
+            <span class="pickerTable">
+              <el-date-picker type="datetime"  v-model="formInline.timeEnd"></el-date-picker>
+            </span>
+          </div>
+        </div>
+        <div>
+          閲囨牱鐐规暟:
+          <el-select v-model="formInline.region" placeholder="50">
+            <el-option label="0" value="0"></el-option>
+            <el-option label="25" value="25"></el-option>
+            <el-option label="50" value="50"></el-option>
+            <el-option label="75" value="75"></el-option>
+            <el-option label="100" value="100"></el-option>
+          </el-select>
+        </div>
+        <div class="detailbtn"  @click="onSubmit">鏌ヨ</div>
+      </div>
+        <div  style="width:5rem;height:1.5rem;" ref="echarts"> </div>
+      </div>
+    </div>
+</template>
+
+<script>
+
+// import mapApi from '@/api/mapApi'
+import 'dayjs/locale/es'
+import dayjs from 'dayjs'
+
+export default {
+  name: 'RealTimeECharts',
+  data () {
+    return {
+      days: dayjs(new Date()).format('YYYYMMDDHHmmss'),
+      watchData: [],
+      dialogVisible: false,
+      myChar: null,
+      value: '',
+      formInline: {
+        region: '',
+        timeStart: '',
+        timeEnd: ''
+      },
+      RealTimeChart: null,
+      JsonTimeCtarts: {
+        id: 'mychart_ss ',
+        title: '鐑熷皹',
+        legend: [
+          {
+            name: '姘哀鍖栫墿',
+            icon: 'image://../assets/imgs/legend/NOX.png',
+            textStyle: { color: '#ccc' },
+            itemWidth: 20,
+            itemHeight: 5
+          },
+          {
+            icon: 'image://../assets/imgs/legend/SO2.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '浜屾哀鍖栫~',
+            textStyle: {
+              color: '#CCC'
+            }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/YanChen.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '鐑熷皹',
+            textStyle: { color: '#ccc' }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/VOCs.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '搴熸皵娴侀噺',
+            textStyle: { color: '#ccc' }
+          }
+        ],
+        ydatas: [
+          {
+            name: '姘哀鍖栫墿',
+            data: [{
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:18:19', 39.51431]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:18:34', 38.76508]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:18:49', 37.57471]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:19:04', 36.3796]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:19:19', 36.10718]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:19:34', 35.81126]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:19:49', 35.9184]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:20:04', 36.08839]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:20:19', 36.3718]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:20:34', 36.8966]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:20:49', 37.3998]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:21:04', 37.11937]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:21:19', 36.12424]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:21:34', 34.99567]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:21:49', 34.48063]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:22:04', 34.62222]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:22:19', 34.84583]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:22:34', 35.80923]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:22:49', 35.93465]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:23:04', 35.78891]
+            },
+            {
+              name: '姘哀鍖栫墿',
+              value: ['2021/04/13 09:23:19', 35.54268]
+            }],
+            zdcbcolor: 'red',
+            zxcolor: '#00B0F0',
+            bzz: 50
+          },
+          {
+            name: '浜屾哀鍖栫~',
+            data: [{
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:18:19', 5.112573]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:18:34', 4.578955]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:18:49', 4.869465]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:19:04', 5.270735]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:19:19', 5.355475]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:19:34', 5.242907]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:19:49', 5.230558]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:20:04', 5.262951]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:20:19', 5.268744]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:20:34', 5.159671]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:20:49', 4.955352]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:21:04', 5.110546]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:21:19', 5.235723]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:21:34', 5.443502]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:21:49', 5.708939]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:22:04', 5.882327]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:22:19', 6.017494]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:22:34', 5.410021]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:22:49', 5.379694]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:23:04', 5.551433]
+            },
+            {
+              name: '浜屾哀鍖栫~',
+              value: ['2021/04/13 09:23:19', 5.819743]
+            }],
+            zdcbcolor: 'red',
+            zxcolor: '#fff21c',
+            bzz: 50
+          },
+          {
+            name: '搴熸皵娴侀噺',
+            data: [{
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:18:19', 5.012617]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:18:34', 4.992213]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:18:49', 5.026886]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:19:04', 5.052861]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:19:19', 5.038826]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:19:34', 5.062339]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:19:49', 5.071915]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:20:04', 5.053693]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:20:19', 5.03562]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:20:34', 5.043983]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:20:49', 5.059231]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:21:04', 5.042176]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:21:19', 5.028253]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:21:34', 5.024891]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:21:49', 5.01542]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:22:04', 5.025787]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:22:19', 5.038269]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:22:34', 5.01441]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:22:49', 5.010105]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:23:04', 5.012341]
+            },
+            {
+              name: '搴熸皵娴侀噺',
+              value: ['2021/04/13 09:23:19', 4.996146]
+            }],
+            zdcbcolor: 'red',
+            zxcolor: '#9ACD32',
+            bzz: null
+          },
+          {
+            name: '鐑熷皹',
+            data: [{
+              name: '鐑熷皹',
+              value: [['2021/04/13 09:18:19', 0.8297127]]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:18:34', 0.8347292]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:18:49', 0.9218481]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:19:04', 0.913429]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:19:19', 0.9026684]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:19:34', 0.8060119]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:19:49', 0.781314]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:20:04', 0.8958074]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:20:19', 0.9093901]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:20:34', 0.8743498]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:20:49', 0.9024854]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:21:04', 0.9456897]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:21:19', 0.9747347]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:21:34', 0.9200308]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:21:49', 0.8987293]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:22:04', 0.8613345]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:22:19', 0.8747463]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:22:34', 0.8883187]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:22:49', 0.881333]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:23:04', 0.9142911]
+            },
+            {
+              name: '鐑熷皹',
+              value: ['2021/04/13 09:23:19', 0.9569058]
+            }],
+            zdcbcolor: 'red',
+            zxcolor: '#f48183',
+            bzz: 10
+          }],
+        yname: ' 娴撳害(mg/m鲁)'
+      },
+      JSONTimeData: {
+        id: 21,
+        unionTagCodeList: ['TJIP45.rl3AT25035', 'TJIP45.rl3AT25033', 'TJIP45.rl3FT35032', 'TJIP45.rl3AT25034']
+        // BBZMAPPING: {
+        //   姘哀鍖栫墿: 50,
+        //   浜屾哀鍖栫~: 50,
+        //   搴熸皵娴侀噺: null,
+        //   鐑熷皹: 10
+        // }
+      },
+      res: [{ UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 36.02153, ReadTime: '2021/04/14 03:59:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 35.7473, ReadTime: '2021/04/14 03:59:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 35.56014, ReadTime: '2021/04/14 04:00:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 35.59335, ReadTime: '2021/04/14 04:00:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 34.49617, ReadTime: '2021/04/14 04:00:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 34.33835, ReadTime: '2021/04/14 04:00:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 34.93116, ReadTime: '2021/04/14 04:01:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 35.831, ReadTime: '2021/04/14 04:01:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 36.67476, ReadTime: '2021/04/14 04:01:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 38.04687, ReadTime: '2021/04/14 04:01:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 37.78848, ReadTime: '2021/04/14 04:02:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 38.03456, ReadTime: '2021/04/14 04:02:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 37.81089, ReadTime: '2021/04/14 04:02:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 39.28693, ReadTime: '2021/04/14 04:02:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 39.79956, ReadTime: '2021/04/14 04:03:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 40.11547, ReadTime: '2021/04/14 04:03:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 40.72007, ReadTime: '2021/04/14 04:03:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 43.11903, ReadTime: '2021/04/14 04:03:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 44.28426, ReadTime: '2021/04/14 04:04:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 45.07601, ReadTime: '2021/04/14 04:04:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 43.81406, ReadTime: '2021/04/14 04:04:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.312585, ReadTime: '2021/04/14 03:59:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.507234, ReadTime: '2021/04/14 03:59:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.383248, ReadTime: '2021/04/14 04:00:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.385284, ReadTime: '2021/04/14 04:00:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.719143, ReadTime: '2021/04/14 04:00:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.730373, ReadTime: '2021/04/14 04:00:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.602137, ReadTime: '2021/04/14 04:01:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.459584, ReadTime: '2021/04/14 04:01:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.313675, ReadTime: '2021/04/14 04:01:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.305554, ReadTime: '2021/04/14 04:01:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.911544, ReadTime: '2021/04/14 04:02:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.744454, ReadTime: '2021/04/14 04:02:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 2.267665, ReadTime: '2021/04/14 04:02:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.606314, ReadTime: '2021/04/14 04:02:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.599967, ReadTime: '2021/04/14 04:03:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.939136, ReadTime: '2021/04/14 04:03:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 2.03244, ReadTime: '2021/04/14 04:03:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 2.183742, ReadTime: '2021/04/14 04:03:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 2.323384, ReadTime: '2021/04/14 04:04:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 2.403428, ReadTime: '2021/04/14 04:04:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 2.347282, ReadTime: '2021/04/14 04:04:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.018858, ReadTime: '2021/04/14 03:59:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.020605, ReadTime: '2021/04/14 03:59:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.047671, ReadTime: '2021/04/14 04:00:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.020306, ReadTime: '2021/04/14 04:00:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.054744, ReadTime: '2021/04/14 04:00:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.027292, ReadTime: '2021/04/14 04:00:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.026794, ReadTime: '2021/04/14 04:01:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.03381, ReadTime: '2021/04/14 04:01:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.041131, ReadTime: '2021/04/14 04:01:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.02754, ReadTime: '2021/04/14 04:01:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 4.998859, ReadTime: '2021/04/14 04:02:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.014368, ReadTime: '2021/04/14 04:02:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.019042, ReadTime: '2021/04/14 04:02:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.046045, ReadTime: '2021/04/14 04:02:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.024141, ReadTime: '2021/04/14 04:03:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.016951, ReadTime: '2021/04/14 04:03:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.01229, ReadTime: '2021/04/14 04:03:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.00666, ReadTime: '2021/04/14 04:03:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.005168, ReadTime: '2021/04/14 04:04:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 4.99309, ReadTime: '2021/04/14 04:04:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 4.983859, ReadTime: '2021/04/14 04:04:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.128864, ReadTime: '2021/04/14 03:59:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.096089, ReadTime: '2021/04/14 03:59:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.13711, ReadTime: '2021/04/14 04:00:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.191255, ReadTime: '2021/04/14 04:00:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.159299, ReadTime: '2021/04/14 04:00:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.089755, ReadTime: '2021/04/14 04:00:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.098142, ReadTime: '2021/04/14 04:01:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.084317, ReadTime: '2021/04/14 04:01:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.040828, ReadTime: '2021/04/14 04:01:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.066903, ReadTime: '2021/04/14 04:01:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.12027, ReadTime: '2021/04/14 04:02:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.075927, ReadTime: '2021/04/14 04:02:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.062984, ReadTime: '2021/04/14 04:02:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.190477, ReadTime: '2021/04/14 04:02:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.192902, ReadTime: '2021/04/14 04:03:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.061741, ReadTime: '2021/04/14 04:03:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 0.991724, ReadTime: '2021/04/14 04:03:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.006655, ReadTime: '2021/04/14 04:03:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.044971, ReadTime: '2021/04/14 04:04:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.077099, ReadTime: '2021/04/14 04:04:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.131417, ReadTime: '2021/04/14 04:04:30', ErrorMessage: null }],
+      startTime: '',
+      endTime: '',
+      step: ''
+    }
+  },
+  updated () {
+    this.DrawEXHRealTimeDateChart()
+  },
+  mounted () {
+    this.formInline.timeEnd = dayjs().format('YYYY-MM-DD HH:mm:ss')
+    this.formInline.timeStart = dayjs().subtract(1, 'minute').format('YYYY-MM-DD HH:mm:ss')
+    // this.IntervalEXHRealTimeDate(this.JSONTimeData.id, this.JSONTimeData.unionTagCodeList, this.JSONTimeData.BBZMAPPING)
+  },
+  methods: {
+    onSubmit () {
+      this.DrawEXHRealTimeDateChart()
+    },
+    /**
+     * RTDB 鏍煎紡杞崲
+     * @param res
+     * @returns {[]}
+     */
+    // getRtdbFormat (res) {
+    //   var data = res.collection.items
+    //   var dataArray = []
+    //   for (var i = 0; i < data.length; i++) {
+    //     var dataFormat = {
+    //       UnionTagCode: data[i].data[0].value,
+    //       TagValue: parseFloat(data[i].data[1].value),
+    //       ReadTime: data[i].data[3].value,
+    //       ErrorMessage: data[i].data[5].value
+    //     }
+    //     dataArray.push(dataFormat)
+    //   }
+    //   return dataArray
+    // },
+    // 1.鍧愭爣杞村疄鐜�,鐢诲疄鏃舵暟鎹�
+    DrawEXHRealTimeDateChart () {
+      // var id = this.JsonTimeCtarts.id
+      // var title = this.JsonTimeCtarts.title
+      var legend = this.JsonTimeCtarts.legend
+      var ydatas = this.JsonTimeCtarts.ydatas
+      var yname = this.JsonTimeCtarts.yname
+      this.RealTimeChart = this.$echarts.init(this.$refs.echarts)
+      // this.myChart.clear()
+      var serLists = []
+      for (var i = 0; i < ydatas.length; i++) {
+        // var zdcbcolor = ydatas[i].zdcbcolor
+        var bz = ydatas[i].bzz
+        var obj
+        if (bz) {
+          obj = {
+            name: ydatas[i].name,
+            // symbol:'circle', // 鎶樼偣褰㈢姸
+            // symbolSize: 10,   //澶у皬
+            smooth: true, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            itemStyle: {
+              normal: {
+                color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
+                  // var biaozhuiz
+                  // for (var i = 0; i < exhbzzList.length; i++) {
+                  //   if (exhbzzList[i].name == c.seriesName) {
+                  //     biaozhuiz = exhbzzList[i].bzhui
+                  //   }
+                  // }
+                  // if (c.value[1] > biaozhuiz) {
+                  //   return zdcbcolor
+                  // } else if (c.value[1] > biaozhuiz * 0.9) {
+                  //   return '#FFA500'
+                  // } else {
+                  //   return '#33c95f'
+                  // }
+                },
+                lineStyle: { // 鎶樼嚎鐨勯鑹�
+                  color: ydatas[i].zxcolor,
+                  width: 2
+                },
+                // borderColor:'black',  //鎶樼偣杈规鐨勯鑹�
+                label: { // 鏄剧ず鍊�
+                  show: false
+                }
+              }
+            },
+            type: 'line',
+            data: ydatas[i].data,
+            markLine: { // 骞冲潎鍊� 锛� 鍜� 鎸囨爣涓婇檺
+              symbol: 'none',
+              data: [{
+                label: {
+                  normal: {
+                    position: 'end',
+                    formatter: ''// ydatas[i].name+'鏍囧噯鍊�' //+'{c}'
+                  }
+                },
+                name: '鏍囧噯鍊�',
+                yAxis: bz,
+                lineStyle: {
+                  color: ydatas[i].zxcolor,
+                  type: 'dashed',
+                  width: 2
+                }
+              }]
+            }
+          }
+        } else {
+          obj = {
+            name: ydatas[i].name,
+            // symbol:'circle', // 鎶樼偣褰㈢姸
+            // symbolSize: 10,   //澶у皬
+            smooth: true, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            itemStyle: {
+              normal: {
+                color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
+                  return '#33c95f'
+                },
+                lineStyle: { // 鎶樼嚎鐨勯鑹�
+                  color: ydatas[i].zxcolor,
+                  width: 2
+                },
+                // borderColor:'black',  //鎶樼偣杈规鐨勯鑹�
+                label: { // 鏄剧ず鍊�
+                  show: false
+                }
+              }
+            },
+            type: 'line',
+            data: ydatas[i].data
+          }
+        }
+        if (ydatas[i].name === '搴熸皵娴侀噺' || ydatas[i].name === '搴熸皵') {
+          obj.yAxisIndex = 1
+        }
+        serLists.push(obj)
+      }
+      var option = {
+        /*  title: {
+          text: title,
+      }, */
+        tooltip: { // 鎻愮ず妗�
+          trigger: 'axis',
+          axisPointer: {
+            type: 'cross',
+            label: {
+              color: '#1a4245'
+            }
+          },
+          formatter: function (params) {
+            var s = params[0].name + '<br />'
+            for (var i = 0; i < params.length; i++) {
+              // var name = params[i].name
+              // 鍥捐〃title鍚嶇О
+              var seriesName = params[i].seriesName
+              // 鍊�
+              var value = params[i].value[1]
+              // var valueFliter = this.formatter(value)
+              var maker = params[i].marker
+              if (seriesName === '浜屾哀鍖栫~') {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#fff21c;"></span>'
+              } else if (seriesName === '姘哀鍖栫墿') {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#00B0F0;"></span>'
+              } else if (seriesName === '鐑熷皹') {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#f48183;"></span>'
+              } else if (seriesName === '娓╁害') {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#F206FF;"></span>'
+              } else {
+                maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#4ec99c;"></span>'
+              }
+              s += maker + seriesName + ':' + value + '<br />'
+            }
+            return s
+          }
+        },
+        toolbox: { // 鎵撳嵃绛夊伐鍏�
+          show: false,
+          feature: {
+            saveAsImage: {}
+          }
+        },
+        grid: { // 缃戞牸
+          top: '20%'
+        },
+        legend: {
+          data: legend
+        },
+        dataZoom: [{
+          type: 'inside',
+          start: 0,
+          end: 100
+        }, {
+          start: 0,
+          end: 100,
+          show: false,
+          handleIcon: 'M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4v1.3h1.3v-1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7V23h6.6V24.4z M13.3,19.6H6.7v-1.4h6.6V19.6z',
+          handleSize: '80%',
+          handleStyle: {
+            color: '#fff',
+            shadowBlur: 3,
+            shadowColor: 'rgba(0, 0, 0, 0.6)',
+            shadowOffsetX: 2,
+            shadowOffsetY: 2
+          }
+        }],
+        xAxis: { // x 杞磋缃�
+          type: 'time',
+          boundaryGap: false,
+          axisLabel: { // x杞村叏閮ㄦ樉绀�
+            // rotate: 20,
+            margin: 6,
+            interval: 0,
+            textStyle: {
+              color: '#fff'
+            }
+          },
+          splitLine: { // 缃戞牸鍨傜洿绾夸负 铏氱嚎
+            show: true,
+            lineStyle: {
+              type: 'dashed'
+            }
+          },
+          axisTick: { // x 杞村埢搴︽樉绀�
+            show: false
+          },
+          axisLine: {
+            lineStyle: {
+              color: '#FFFFFF',
+              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+            }
+          }
+          // data: xdata
+        },
+        yAxis: [{
+          type: 'value',
+          name: yname,
+          max: function (value) {
+            var ma = value.max > 100 ? value.max : 100
+            return parseInt(ma)
+          },
+          axisLabel: {
+            formatter: '{value}',
+            textStyle: {
+              color: '#fff'
+            }
+          },
+          axisPointer: {
+            snap: true
+          },
+          splitLine: {
+            show: false
+          }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+          axisLine: {
+            lineStyle: {
+              color: '#FFFFFF',
+              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+            }
+          }
+        }, { // 娴侀噺杞�
+          type: 'value',
+          name: '搴熸皵娴侀噺(m3/h)',
+          axisLabel: {
+            formatter: '{value}',
+            textStyle: {
+              color: '#fff'
+            }
+          },
+          axisPointer: {
+            snap: true
+          },
+          splitLine: {
+            show: false
+          }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+          axisLine: {
+            lineStyle: {
+              color: '#FFFFFF',
+              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+            }
+          }
+        }],
+        series: serLists
+      }
+      console.log(option)
+      this.RealTimeChart.setOption(option)
+
+      // this.RealTimeChart.on('legendselectchanged', function (params) {
+      //   var StdVal = null
+      //   var op = { yAxis: {} }
+      //   var max_val_list = [] // 鎵�鏈夋樉绀烘姌绾跨殑鏍囧噯鍊�
+      //   if (exhbzzList && exhbzzList.length > 0) {
+      //     $.each(exhbzzList, function (index, item) {
+      //       params.selected[item.name] ? max_val_list.push(item.bzhui) : ''
+      //       if (item.name === params.name) {
+      //         item.name === 'VOCs' ? StdVal = 20 : StdVal = item.bzhui
+      //       }
+      //     })
+      //   }
+      //   max_val_list = max_val_list.sort(function (a, b) { return a - b }) // 鎺掑簭
+      //   op.yAxis.max = function (value) {
+      //     var ma = value.max < StdVal ? StdVal : Math.ceil(value.max)
+      //     max_val_list ? ma = max_val_list[max_val_list.length - 1] : ''// 閫夋嫨鏈�澶у��
+      //     return ma
+      //   }
+      //   RealTimeChart.setOption(op)
+      // })
+      // RealTimeChart.on('click', function (params) {
+      //   var nowDate = new Date().Format()
+      // })
+    },
+    getRtdb15s (unionTagCodeList, startTime, endTime, step, res) {
+      if (this.res.length > 0) {
+        // 澶勭悊鏁版嵁寮�濮�
+        var d = res
+        var nameList = [] // 瀛樻斁鍥句緥
+
+        var data // 鏁版嵁绫诲瀷// var data={name:'',value:[now1.getFullYear(), now1.getMonth() + 1, now1.getDate().join('/'),value]}
+        var datalist // 瀛樻斁data鐨勬暟缁�
+        // var bzh = []
+        for (var i = 0; i < d.length; i++) {
+          if (d[i].ErrorMessage != null) {
+            continue
+          }
+          // var name = CFG.DATA_REALTIME_TAGCODETABLE[d[i].UnionTagCode].TagName
+
+          if (nameList.length === 0) {
+            nameList.push(name)
+
+            var newdate = new Date(this.res.ReadTime)
+            data = {
+              name: name,
+              value: [newdate, this.res.TagValue]
+            }
+
+            datalist = {
+              name: name,
+              data: [data]
+            }
+
+            this.EXHRealTimeDataList.push(datalist)
+          } else if (nameList.indexOf(name) < 0) {
+            nameList.push(name)
+
+            // var newdate = new Date(d[i].ReadTime)
+
+            data = {
+              name: name,
+              value: [newdate, d[i].TagValue]
+            }
+            datalist = {
+              name: name,
+              data: [data]
+            }
+            this.EXHRealTimeDataList.push(datalist)
+          } else if (i === d.length - 1) {
+            if (nameList.indexOf(name) < 0) {
+              nameList.push(name)
+
+              // var newdate = new Date(d[i].ReadTime)
+
+              data = {
+                name: name,
+                value: [newdate, d[i].TagValue]
+              }
+              datalist = {
+                name: name,
+                data: [data]
+              }
+              // EXHRealTimeDataList.push(datalist)
+            } else {
+              // var newdate = new Date(d[i].ReadTime)
+              data = {
+                name: name,
+                value: [newdate, d[i].TagValue]
+              }
+              for (var k = 0; k < this.EXHRealTimeDataList.length; k++) {
+                if (this.EXHRealTimeDataList[k].name === name) {
+                  this.EXHRealTimeDataList[k].data.push(data)
+                }
+              }
+            }
+          } else {
+            const newdate = new Date(d[i].ReadTime)
+            data = {
+              name: name,
+              value: [newdate, d[i].TagValue]
+            }
+            for (let k = 0; k < this.EXHRealTimeDataList.length; k++) {
+              if (this.EXHRealTimeDataList[k].name === name) {
+                this.EXHRealTimeDataList[k].data.push(data)
+              }
+            }
+          }
+        }
+
+        // var divid = 'mychart_ss'
+        // var title = name
+        var lengList = []
+        var objTemp
+
+        for (var l = 0; l < nameList.length; l++) {
+          var obj
+          var iconurl
+          if (nameList[l] === '浜屾哀鍖栫~') {
+            iconurl = 'image://../assets/imgs/legend/SO2.png'
+          } else if (nameList[l] === '姘哀鍖栫墿') {
+            iconurl = 'image://../assets/imgs/legend/NOX.png'
+          } else if (nameList[l] === '鐑熷皹') {
+            iconurl = 'image://../assets/imgs/legend/YanChen.png'
+          } else if (nameList[l] === '闈炵敳鐑锋�荤儍') {
+            iconurl = 'image://../assets/imgs/legend/grn.png'
+          } else if (nameList[l] === '娓╁害') {
+            iconurl = 'image://../assets/imgs/legend/WenDu.png'
+          } else {
+            iconurl = 'image://../assets/imgs/legend/VOCs.png'
+          }
+
+          if (nameList[l] === '搴熸皵' || nameList[l] === '搴熸皵娴侀噺') { // 灏嗗簾姘旀祦閲忔帓鍒版暟缁勬渶鍚�
+            objTemp = {
+              name: nameList[l],
+              icon: iconurl,
+              textStyle: {
+                color: '#ccc'
+              },
+              itemWidth: 20,
+              itemHeight: 5
+            }
+          } else {
+            obj = {
+              name: nameList[l],
+              icon: iconurl,
+              textStyle: {
+                color: '#ccc'
+              },
+              itemWidth: 20,
+              itemHeight: 5
+            }
+            lengList.push(obj)
+          }
+        }
+        lengList.push(objTemp)
+
+        this.DrawEXHRealTimeDateChart(this.JsonTimeCtarts.id, this.JsonTimeCtarts.title, this.JsonTimeCtarts.legend, this.JsonTimeCtarts.ydatas, this.JsonTimeCtarts.yname)
+      }
+    },
+    // 閽╁瓙璋冪敤瀹炴椂
+    IntervalEXHRealTimeDate (id, unionTagCodeList, BBZMAPPING) {
+      // 瀹氭椂鍣ㄥ嚱鏁�
+      this.interValHander = setInterval(function () {
+        // $('.RealTime').empty()
+        this.startTime = dayjs().subtract(5, 'minute').format('YYYY-MM-DD HH:mm:ss')
+        this.endTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+        this.step = '15'
+        // this.getRtdb15s(this.unionTagCodeList, this.startTime, this.endTime, this.step, this.res)
+        // PreQueryTime=endTime;
+        this.DrawEXHRealTimeDateChart(this.JsonTimeCtarts.id, this.JsonTimeCtarts.title, this.JsonTimeCtarts.legend, this.JsonTimeCtarts.ydatas, this.JsonTimeCtarts.yname)
+        this.IntervalEXHRealTimeDate(this.JSONTimeData.id, this.JSONTimeData.unionTagCodeList, this.BBZMAPPING)
+      }, 15000)
+    }
+  }
+}
+</script>
+
+<style scoped lang="less">
+.grid-content {
+  font-size: 8px;
+  background-color: #2e4967;
+  text-align: center;
+  border-radius: 2px;
+  margin-right: 10px;
+  padding:0 10px
+  >i{
+    color: #ffffff;
+  }
+}
+.animation {
+  //width: 600px;
+  //height: 0.06rem;
+  .infomation {
+    padding: 5px 10px;
+  }
+}
+.form-echrts {
+  width: 100%;
+  border-top: 1px solid #396d83;
+  //margin: 10px 10px 10px 10px;
+  .from-search{
+    display: flex;
+    padding:5px;
+    >div{margin-left: 10px}
+    .pickerMon{
+      display: flex;
+      >div:first-child {
+        margin-right: 10px;
+      }
+      .pickerData{
+        flex: 1;
+        display: flex;
+        >span{line-height: 22px}
+        .pickerTable {
+          margin-left: 3px;
+        }
+      }
+    }
+    /deep/.el-date-editor--datetime{
+      width: 100%;
+    }
+    /deep/.el-input__inner{
+      position: relative;
+      width:140px;
+      background-color: #2e4967;
+      color: #fff;
+      font-size: 12px;
+      height: 24px;
+      padding: 0;
+      border-color:#00fff6;
+      text-align: center;
+      z-index: 9999;
+      //padding-left:20px ;
+      //padding: 0!important;
+    }
+    /deep/.el-input__icon{
+      display: block;
+      width: 140px;
+      height: 22px;
+      line-height: 22px;
+      cursor: pointer;
+      font-size: 0;
+    }
+    .echatsInput{
+      color: #00ffff;
+      background-color: #2e4967;
+      border: none;
+      border-radius: 6px;
+      width: 80px;
+      height: 22px;
+    }
+    input::-webkit-calendar-picker-indicator {
+      opacity: 100;
+    }
+    .detailbtn{
+      background-color:#2e4967;
+      text-align: center;
+      padding: 0 7px;
+      line-height: 20px;
+      border-radius: 4px;
+      margin-right: 6px;
+    }
+  }
+  .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/WasteSolid/PublicTabs.vue b/src/components/BaseNav/WasteSolid/PublicTabs.vue
index ba844dd..a0df48a 100644
--- a/src/components/BaseNav/WasteSolid/PublicTabs.vue
+++ b/src/components/BaseNav/WasteSolid/PublicTabs.vue
@@ -1,41 +1,20 @@
 <template>
-  <!-- 妗� -->
   <div class="win">
-    <!-- 鍥涗釜瑙掔殑杈规鏁堟灉 -->
     <div class="border_corner border_corner_left_top"></div>
     <div class="border_corner border_corner_right_top"></div>
     <div class="border_corner border_corner_left_bottom"></div>
     <div class="border_corner border_corner_right_bottom"></div>
     <div class="main">
       <div class="main-matter">
-        <div v-if="value === 'feiqi'">
+        <div>
           <ul>
-            <li>鐩戞祴鐐瑰悕绉�:{{ setWasteGasdata.Name }}</li>
-            <li>鐢熶骇鍗曚綅:{{ setWasteGasdata.porltName }}</li>
-            <li>鎺掓斁绫诲瀷鍚嶇О:{{ setWasteGasdata.MonTypeName }}</li>
-            <li>鎺掓斁鍘诲悜:{{ setWasteGasdata.EmissDirecti }}</li>
-            <li>鎺у埗绾у埆鍚嶇О:{{ setWasteGasdata.ContrLevelShowName }}</li>
-            <li>鍐�/澶栨帓鍙�:{{ setWasteGasdata.OrOutPortName }}</li>
-          </ul>
-        </div>
-        <div v-if="value === 'gufei'">
-          <ul>
-            <li>鍦烘墍鍚嶇О:{{ setSolidWaste.StoragePlaceName }}</li>
-            <li>璐瓨鑳藉姏:{{ setSolidWaste.StorageQty }}(鍚�)</li>
-            <li>鍓╀綑璐瓨鑳藉姏:{{ setSolidWaste.SurplusFloorArea }}(鍚�)</li>
-            <li>鍗犲湴闈㈢Н(銕�):{{ setSolidWaste.DesignFloorArea }}(銕�)</li>
-            <li>鏈�杩戣串瀛樻棩鏈�:{{ setSolidWaste.StorageDate }}</li>
-            <li class="lastli"></li>
-          </ul>
-        </div>
-        <div v-else-if="value === 'feishui'">
-          <ul>
-            <li>鐩戞祴鐐瑰悕绉�:{{ setWasteWaterdata.Name }}</li>
-            <li>鐢熶骇鍗曚綅:{{ setWasteWaterdata.porltName }}</li>
-            <li>鎺掓斁绫诲瀷鍚嶇О:{{ setWasteWaterdata.MonTypeName }}</li>
-            <li>鎺掓斁鍘诲悜:{{ setWasteWaterdata.EmissDirecti }}</li>
-            <li>鎺у埗绾у埆鍚嶇О:{{ setWasteWaterdata.ContrLevelShowName }}</li>
-            <li>鍐�/澶栨帓鍙�:{{ setWasteWaterdata.OrOutPortName }}</li>
+            <!--            <li>鍦烘墍鍚嶇О:{{ setSolidWaste.StoragePlaceName }}</li>-->
+            <!--            <li>璐瓨鑳藉姏:{{ setSolidWaste.StorageQty }}(鍚�)</li>-->
+            <!--            <li>鍓╀綑璐瓨鑳藉姏:{{ setSolidWaste.SurplusFloorArea }}(鍚�)</li>-->
+            <!--            <li>鍗犲湴闈㈢Н(銕�):{{ setSolidWaste.DesignFloorArea }}(銕�)</li>-->
+            <!--            <li>鏈�杩戣串瀛樻棩鏈�:{{ setSolidWaste.StorageDate }}</li>-->
+            <!--            <li class="lastli"></li>-->
+            <li v-for="(item,index) in tabList" :key="index"></li>
           </ul>
         </div>
       </div>
@@ -46,7 +25,22 @@
 <script>
 export default {
   name: 'GasTable',
-  props: ['setSolidWaste', 'value', 'setWasteGasdata', 'setWasteWaterdata']
+  props: ['setSolidWaste', 'value', 'setWasteGasdata', 'setWasteWaterdata'],
+  data () {
+    return {
+      tabList: []
+    }
+  },
+  methods: {
+    // async getTabsData () {
+    //   // 鍩烘湰淇℃伅 鍜� 璇︾粏淇℃伅 灞曠ず鏁版嵁鎵�闇�鍙傛暟
+    //   const dataValue = {
+    //     StoragePlaceId: e.layer.options.totransferData.StoragePlaceId
+    //   }
+    //   // 鍩烘湰淇℃伅 tabs
+    //   const resultBasic = await mapApi.getSolidWasteBaseInfo(dataValue)
+    // }
+  }
 }
 </script>
 
@@ -56,19 +50,16 @@
   position: relative;
   margin-bottom: 0.04rem;
   background-color: @background-color;
-  //width: 6rem;
-  //height: 0.5rem;
 }
 
 .main {
-  //width: 100%;
-  //height: 100%;
 
   .main-matter {
     font-size: 0.06rem;
     font-weight: normal;
     padding: 0.04rem 0;
     border: 1px solid #396d83;
+
     ul {
       //width: 100%;
       //height: 100%;
@@ -77,6 +68,7 @@
       justify-content: space-around;
       flex-wrap: wrap;
       margin-bottom: -0.04rem;
+
       li {
         margin-bottom: 0.04rem;
         text-align: center;
@@ -88,6 +80,7 @@
         line-height: 0.09rem;
         padding: 0.03rem .5%;
       }
+
       .lastli {
         visibility: hidden
       }
diff --git a/src/components/BaseNav/WasteSolid/SolidWaste.js b/src/components/BaseNav/WasteSolid/SolidWaste.js
deleted file mode 100644
index 5ce22d5..0000000
--- a/src/components/BaseNav/WasteSolid/SolidWaste.js
+++ /dev/null
@@ -1,180 +0,0 @@
-import { QueryStoragePlaceListByCompanyAndName } from '@/api/request'
-// 灞曠ず鍥剧墖
-
-import defaultImg from '../../../../public/assets/images/map/solidwaste/voc.png'
-import setting from '../../../../public/assets/images/map/solidwaste/gf_green.png'
-
-// 搴曞浘涓氬姟灞曠ず鐐�
-class AddSolidWasteHelper {
-  constructor (options) {
-    this.map = options.map
-    this.L = window.L
-    this.SolidWasteLayerGroup = this.L.layerGroup().addTo(this.map)
-    this.SolidWastePopup = null
-    this.L.sgis = this.L.sgis || this.L
-    this.solidWasteMarkersLabels = []
-    this.pulseHeighLightMarker = null
-  }
-
-  // 璇锋眰鏁版嵁 data 涓哄弬鏁帮紝 璇锋眰鍚庡彴鏁版嵁鏃� 鎼哄甫data鍙傛暟
-  requestData (data) {
-    QueryStoragePlaceListByCompanyAndName(data).then(res => {
-      // console.log(res)
-      this.DrawTheSolidWasteContent(res.Result.DataInfo)
-    }).catch(err => {
-      console.log(err)
-    })
-  }
-
-  // 鏍规嵁鑾峰彇鏁版嵁 鐢诲嚭 鍐呭
-  DrawTheSolidWasteContent (data) {
-    // 鍥炬爣鏍峰紡鎵╁睍
-    var SolidWasteIcon = this.SolidWasteIcon()
-
-    // //鍔犺浇鏁版嵁鍓嶅鏋滃瓨鍦ㄥ浘灞傜粍 閭d箞娓呴櫎鎺�
-    if (this.SolidWasteLayerGroup) {
-      this.SolidWasteLayerGroup.clearLayers()
-    }
-    for (let i = 0; i < data.length; i++) {
-      // 缁忕含搴� 浣嶇疆
-      const positionX = data[i].Latitude
-      const positionY = data[i].Longitude
-
-      // 鍒ゆ柇 缁忕含搴︿綅缃俊鎭槸鍚﹀瓨鍦�
-      if (positionX != null && positionY != null) {
-        // 鐢ㄤ簬 鍒ゆ柇 => 鍒ゆ柇鏄惁灞曠ず鑴夊啿鏁堟灉 => temp(涓存椂)
-        const determineValueOne = data[i].LongDayWarning
-        var determineValueTwo = data[i].StorageQty
-        const positionArea = [positionX, positionY]
-
-        // 鍥炬爣灞曠ず
-        var iconUrl = this.SolidWasteIconUrl(determineValueOne, determineValueTwo, positionArea)
-        var Icon = new SolidWasteIcon({ iconUrl: iconUrl })
-        // var url = Icon.options.iconUrl
-
-        const marker = this.L.marker([positionX, positionY], { icon: Icon })
-        // 鍒掕繃鍑虹幇 灞曠ず鏁版嵁
-        marker.bindTooltip(data[i].Name, {
-          permanent: true,
-          offset: [0, -16],
-          direction: 'top',
-          className: ''
-        })
-        // 鐐瑰嚮 浜嬩欢
-        marker.on('click', (e) => {
-          try {
-            console.log(e.target.getLatLng())
-            this.setPanTo(e.target.getLatLng(), 200)
-            this.EffectOfPulse(e.target.getLatLng())
-            this.SolidWastePopup.setData(data[i], 'gufei')
-            return this.SolidWastePopup.$el
-          } catch (error) {
-            console.log(error)
-          }
-        })
-        // 璁剧疆鍐呭娣诲姞鍒板浘灞�
-        this.SolidWasteLayerGroup.addLayer(marker)
-      }
-    }
-  }
-
-  // panTo
-  setPanTo (pos, value) {
-    var position = pos
-    position = this.map.latLngToLayerPoint(position)
-    position.y += value
-    position = this.map.layerPointToLatLng(position)
-    // this.map.setView(position)
-    this.map.flyTo(position)
-    // this.map.panTo(position)
-  }
-
-  // 鍥哄簾鐐瑰嚮杩涜鐨� 鍐呭鐨勮缃�
-  SetSolidWasteContent (config, containerPopup) {
-    this.SolidWastePopup = containerPopup
-  }
-
-  // 鍥炬爣鏍峰紡鎵╁睍 => 鍏夊湀 鍥炬爣鑴夊啿
-  SolidWasteIcon () {
-    return this.L.Icon.extend({
-      options: {
-        iconSize: [50, 50],
-        iconAnchor: [25, 25]
-      }
-    })
-  }
-
-  // 鏍规嵁绫诲瀷杩斿洖鍥剧墖鍔犺浇url
-  SolidWasteIconUrl (determineValueOne, determineValueTwo, position) {
-    var EffectOfChange
-    if (determineValueOne === 1 || determineValueTwo === 1) {
-      EffectOfChange = defaultImg
-      this.EffectOfPulse(position, this.solidWasteMarkersLabels, this.SolidWasteLayerGroup)
-    } else {
-      EffectOfChange = setting
-    }
-    return EffectOfChange
-  }
-
-  // 鑴夊啿鏁堟灉璁剧疆瀹炵幇
-  EffectOfPulse (position, markers, layerGroup) {
-    // 鍖哄垎鐩存帴鎵ц 鍜屽垽鏂墽琛岀殑涓嶅悓鍖哄埆
-    // var differentColor = ''
-    // if (markers) {
-    //   differentColor = '#ff0000'
-    // } else {
-    //   differentColor = '#98FB98'
-    // }
-    // // 鍧愭爣鏁版嵁锛氭姤璀︿紶杩涙潵鐨勬槸鏁扮粍 / 鐐瑰嚮浼犺繘鏉ョ殑鏄痮bject
-    // var FinalPosition = position instanceof Array ? {
-    //   lat: position[0],
-    //   lng: position[1]
-    // } : position
-    // // 鎻掍欢 鏁堟灉瀹炵幇
-    // var pulsingIcon = this.L.icon.pulse({
-    //   iconSize: [20, 20],
-    //   color: differentColor,
-    //   fillColor: ''
-    // })
-    // if (markers) {
-    //   // markers.push(this.L.marker(FinalPosition, { icon: pulsingIcon }))
-    //   // this.L.layerGroup(markers).addLayer(layerGroup)
-    // } else {
-    //   var picGroupMarker = new this.L.FeatureGroup()
-    //   this.L.marker(FinalPosition, { icon: pulsingIcon }).addTo(picGroupMarker)
-    //   this.pulseHeighLightMarker = picGroupMarker.addTo(this.SolidWasteLayerGroup)
-    //   this.PulseCountSetting()
-    // }
-  }
-
-  // 瀵瑰浘鏍囪剦鍐� 杩涜set璁剧疆  // 楂樹寒鍥惧眰
-  PulseCountSetting () {
-    var HeightLightTime = 5
-    var PulseNumber = 5
-    const pulseinterver = setInterval((e) => {
-      if (PulseNumber > 0) {
-        PulseNumber--
-      } else {
-        this.pulseClear(pulseinterver)
-        PulseNumber = HeightLightTime
-      }
-    }, 1000)
-  }
-
-  // 娓呴櫎 鍥惧眰
-  pulseClear (pulseinterver) {
-    clearInterval(pulseinterver)
-    pulseinterver = null
-
-    if (this.SolidWasteLayerGroup) {
-      // this.SolidWasteLayerGroup.clearLayers()
-    } else {
-      this.SolidWasteLayerGroup = this.L.layerGroup().addTo(this.map)
-    }
-    if ((this.pulseHeighLightMarker)) {
-      this.pulseHeighLightMarker.remove()
-    }
-  }
-}
-
-export default AddSolidWasteHelper
diff --git a/src/components/BaseNav/WasteSolid/WasteSolidIndex.vue b/src/components/BaseNav/WasteSolid/WasteSolidIndex.vue
new file mode 100644
index 0000000..51c40ef
--- /dev/null
+++ b/src/components/BaseNav/WasteSolid/WasteSolidIndex.vue
@@ -0,0 +1,120 @@
+<template>
+  <div class="public-bounced map-background" v-drag v-show="flag">
+    <div class="public-bounced-title panel-title" ref="publicBounced">
+      <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 :setSolidWaste="displayContentTab"></public-tabs>
+        <div class="public-bounced-content-left-bottom">
+          <public-table :displayContentTable="displayContentTable"></public-table>
+        </div>
+      </div>
+      <div class="public-bounced-content-right">
+        <public-video></public-video>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+
+import '@/utils/dragBoxes'
+import PublicTabs from '@components/BaseNav/WasteSolid/PublicTabs'
+import PublicTable from '@components/BaseNav/WasteSolid/PublicTable'
+import PublicVideo from '@components/BaseNav/WasteSolid/PublicVideo'
+
+export default {
+  name: 'WasteSolidIndex',
+  components: {
+    PublicTabs,
+    PublicTable,
+    PublicVideo
+  },
+  data () {
+    return {
+      displayContentTitle: '',
+      displayContentTab: '',
+      displayContentTable: '',
+      flag: false
+    }
+  },
+  methods: {
+    closePopup () {
+      this.flag = false
+    },
+    // async reauestData () {
+    //   const dataValue = {
+    //     StoragePlaceId: 0
+    //   }
+    //   // console.log(e.layer.options.totransferData.Name)
+    //   // 寮规鏍囬
+    //   const title = e.layer.options.totransferData.Name
+    //   // 鍩烘湰淇℃伅 tabs
+    //   const resultBasic = await mapApi.getSolidWasteBaseInfo(dataValue)
+    //   // 璇︾粏淇℃伅灞曠ず table
+    //   const resultDetailed = await mapApi.getSolidWasteDetail(dataValue)
+    // },
+    // 鍥哄簾鐩稿叧淇℃伅璁剧疆
+    setData (title, dataBasic, dataDetailed, value) {
+      this.flag = true
+      this.value = value
+      this.displayContentTitle = title
+      this.displayContentTab = dataBasic[0]
+      this.displayContentTable = dataDetailed[0]
+    }
+  }
+}
+</script>
+
+<style lang="less" scoped>
+.public-bounced {
+  z-index: 2000;
+  position: absolute;
+  top: 35%;
+  left: 20%;
+
+  .public-bounced-title {
+    cursor: move;
+    height: 0.1rem;
+    padding: 10px 0;
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+
+    span {
+      color: #f4f7ff;
+      margin: 0 15px;
+      font-size: 14px;
+    }
+
+    i {
+      color: #C0C4CC;
+      margin: 0 15px;
+      font-size: 22px;
+      cursor: pointer;
+    }
+
+    i:hover {
+      color: #00fff6;
+    }
+  }
+
+  .public-bounced-content {
+    padding: 0.1rem;
+    display: flex;
+    //align-items: center;
+    //justify-content: space-around;
+
+    .public-bounced-content-left {
+      //width: 4.8rem;
+    }
+
+    .public-bounced-content-right {
+      //width: 3rem;
+      margin-left: 0.1rem;
+    }
+  }
+}
+</style>
diff --git a/src/components/BaseNav/WasteWater/DayData.vue b/src/components/BaseNav/WasteWater/DayData.vue
new file mode 100644
index 0000000..2fe50e2
--- /dev/null
+++ b/src/components/BaseNav/WasteWater/DayData.vue
@@ -0,0 +1,712 @@
+<!--  鏃ユ暟鎹�  -->
+<template>
+  <div id="Tab">
+    <div class="animation">
+      <div class="infomation">
+        <span class="grid-content">COD :<i style="color: #e8ee0b">8.115</i>  鏍囧噯 : <i style="color: #fff">20</i></span>
+        <span class="grid-content">姘ㄦ爱 : <i style="color: #e8ee0b">0.31</i> 鏍囧噯 : <i style="color: #fff">5</i></span>
+        <span class="grid-content">pH : <i style="color: #e8ee0b">7.673</i> 鏍囧噯 : <i style="color: #fff">9</i></span>
+        <span class="grid-content">搴熸按娴侀噺 : <i style="color: #e8ee0b">5191.693848</i></span>
+      </div>
+    </div>
+    <div class="form-echrts">
+      <div class="from-search">
+        <div class="pickerMon">
+          <div class="pickerData">
+            <span> 寮�濮嬫椂闂�:</span>
+            <span class="pickerTable">
+             <el-date-picker  type="datetime"   v-model="formInline.timeStart">
+             </el-date-picker>
+            </span>
+          </div>
+          <div class="pickerData">
+            <span >缁撴潫鏃堕棿:</span>
+            <span class="pickerTable">
+              <el-date-picker type="datetime" v-model="formInline.timeEnd">
+              </el-date-picker>
+            </span>
+          </div>
+        </div>
+<!--        <div>-->
+<!--          閲囨牱鐐规暟:-->
+<!--          <el-select v-model="formInline.region">-->
+<!--            <el-option label="0" value="0"></el-option>-->
+<!--            <el-option label="25" value="25"></el-option>-->
+<!--            <el-option label="50" value="50"></el-option>-->
+<!--            <el-option label="75" value="75"></el-option>-->
+<!--            <el-option label="100" value="100"></el-option>-->
+<!--          </el-select>-->
+<!--        </div>-->
+        <div class="detailbtn"  @click="onSubmit">鏌ヨ</div>
+        <div class="detailbtn" @click="dialogVisible = true" >鏄庣粏琛�</div>
+      </div>
+      <div class="boxChart">
+        <div style="width:5rem;height:1.5rem" id="popChart" ref="main">
+        </div>
+      </div>
+    </div>
+    <!-- 鏄庣粏寮规 -->
+    <el-dialog :visible.sync="dialogVisible"
+               :append-to-body="true"
+               :title="this.$attrs.value==='feiqi'?this.$attrs.getWasteGasDetails[0].OnLineMonEmissPointName:this.$attrs.getWasteWaterMonitoringDetails[0].OnLineMonEmissPointName"
+               width="68%"
+               center
+               v-dialogDrag
+    >
+      <div class="el-dialog-div" style="height: 260px">
+        <public-detailed-list v-bind="$attrs"></public-detailed-list>
+      </div>
+    </el-dialog>
+  </div>
+</template>
+
+<script>
+import PublicDetailedList from '@components/BaseNav/PublicBounced/common/echarts/PublicDetailedList'
+
+export default {
+  name: 'DayData',
+  components: {
+    PublicDetailedList
+  },
+  data () {
+    return {
+      watchData: [],
+      dialogVisible: false,
+      myChar: null,
+      value: '',
+      formInline: {
+        user: '',
+        region: '',
+        timeStart: '2021-03-15 00:00:00',
+        timeEnd: '2021-04-13 00:00:00'
+      },
+      JsonDateWater: {
+        datatype: 1,
+        id: 'mychart1eff',
+        jcdID: '1020',
+        legend: [
+          {
+            name: 'COD',
+            icon: 'image://../assets/imgs/legend/SO2.png',
+            textStyle: { color: '#CCC' },
+            itemWidth: 20,
+            itemHeight: 5
+          },
+          {
+            name: '姘ㄦ爱',
+            icon: 'image://../assets/imgs/legend/NOX.png',
+            textStyle: { color: '#CCC' },
+            itemWidth: 20,
+            itemHeight: 5
+          },
+          {
+            name: 'pH',
+            icon: 'image://../assets/imgs/legend/WenDu.png',
+            textStyle: { color: '#CCC' },
+            itemWidth: 20,
+            itemHeight: 5
+          },
+          {
+            name: '搴熸按娴侀噺',
+            icon: 'image://../assets/imgs/legend/VOCs.png',
+            textStyle: { color: '#CCC' },
+            itemWidth: 20,
+            itemHeight: 5
+          }
+        ],
+        xdata: ['15鏃�', '16鏃�', '17鏃�', '18鏃�', '19鏃�', '20鏃�', '21鏃�', '22鏃�', '23鏃�', '24鏃�', '25鏃�', '26鏃�', '27鏃�', '28鏃�', '29鏃�', '30鏃�', '31鏃�', '1 鏃�', '2 鏃�', '3 鏃�', '4 鏃�', '5 鏃�', '6 鏃�', '7 鏃�', '8 鏃�', '9 鏃�', '10鏃�', '11鏃�', '12鏃�', '13鏃�'],
+        ydatas: [
+          {
+            name: 'COD',
+            data: [18.271, 18.806, 18.615, 20.938, 18.933001, 18.789, 17.612, 17.319, 18.403999, 17.724001, 17.450001, 17.299, 17.906, 17.761, 16.913, 17.087, 16.094, 13.851, 15.783, 15.785, 15.503, 17.163, 15.008, 12.056, 14.812, 15.243, 15.562, 13.034, 11.11, 10.746],
+            zdcbcolor: 'red',
+            zxcolor: '#fff21c',
+            bzz: 25
+          },
+          {
+            name: '姘ㄦ爱',
+            data: [0.1, 0.169, 0.125, 0.266, 0.126, 0.156, 0.174, 0.161, 0.224, 0.178, 0.166, 0.152, 0.146, 0.138, 0.125, 0.171, 0.145, 0.147, 0.123, 0.117, 0.109, 0.106, 0.159, 0.121, 0.133, 0.181, 0.208, 0.115, 0.108, 0.162],
+            zdcbcolor: 'red',
+            zxcolor: '#00B0F0',
+            bzz: 5
+          },
+          {
+            name: 'pH',
+            data: [7.461, 7.486, 7.495, 7.498, 7.512, 7.526, 7.535, 7.555, 7.585, 7.585, 7.512, 7.365, 7.334, 7.349, 7.367, 7.397, 7.399, 7.384, 7.424, 7.466, 7.496, 7.527, 7.599, 7.612, 7.613, 7.614, 7.618, 7.644, 7.661, 7.673],
+            zdcbcolor: 'red',
+            zxcolor: '#F206FF',
+            bzz: 9
+          },
+          {
+            name: '搴熸按娴侀噺',
+            data: [49.395836, 49.337986, 48.906597, 51.755833, 48.786461, 48.124866, 47.832222, 70.607361, 77.931816, 63.092083, 70.620911, 63.302162, 66.679314, 66.482918, 81.546745, 95.860214, 87.731102, 53.503544, 63.230419, 70.389374, 63.531391, 63.028618, 63.168613, 63.55653, 63.631458, 51.364937, 28.757296, 31.669098, 26.574379, 30.628475],
+            zdcbcolor: 'red',
+            zxcolor: '#9ACD32',
+            bzz: null
+          }
+        ],
+        yname: '娴撳害(mg/l)'
+      }
+    }
+  },
+  mounted () {
+    this.onSubmit()
+  },
+  methods: {
+    onSubmit () {
+      this.effChartShow(this.JsonDateWater.id, this.JsonDateWater.title, this.JsonDateWater.legend, this.JsonDateWater.xdata, this.JsonDateWater.ydatas, this.JsonDateWater.yname, this.JsonDateWater.id, this.JsonDateWater.datatype)
+    },
+    effChartShow: function (id, title, legend, xdata, ydatas, yname, jcdID, datatype) {
+      this.myChart = this.$echarts.init(this.$refs.main)
+      this.myChart.clear()
+      var dataUnit = ''
+      if (datatype === 1) {
+        dataUnit = '娴侀噺(m鲁/d)'
+      } else {
+        dataUnit = '娴侀噺(m鲁/h)'
+      }
+
+      var serLists = []
+      for (var i = 0; i < ydatas.length; i++) {
+        // var zdcbcolor = ydatas[i].zdcbcolor
+        var bz = ydatas[i].bzz
+        var obj
+        if (bz) {
+          obj = {
+            name: ydatas[i].name,
+            symbol: 'circle', // 鎶樼偣褰㈢姸
+            symbolSize: 10, // 澶у皬
+            smooth: false, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            itemStyle: {
+              normal: {
+                color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
+                  /* var biaozhuiz
+                  for (var i = 0; i < bzzList.length; i++) {
+                    if (bzzList[i].name == c.seriesName) {
+                      biaozhuiz = bzzList[i].bzhui
+                    }
+                  }
+                  if (c.value > biaozhuiz) {
+                    return zdcbcolor
+                  } else if (c.value > biaozhuiz * 0.9) {
+                    return '#FFA500'
+                  } else {
+                    return '#33c95f'
+                  } */
+                },
+                lineStyle: { // 鎶樼嚎鐨勯鑹�
+                  color: ydatas[i].zxcolor,
+                  width: 4
+                },
+                borderColor: 'black', // 鎶樼偣杈规鐨勯鑹�
+                label: { // 鏄剧ず鍊�
+                  show: false
+                }
+              }
+
+            },
+            type: 'line',
+            data: ydatas[i].data,
+            markLine: { // 骞冲潎鍊� 锛� 鍜� 鎸囨爣涓婇檺
+              symbol: 'none',
+              data: [{
+                label: {
+                  normal: {
+                    position: 'end',
+                    formatter: ''// ydatas[i].name+'鏍囧噯鍊�' //+'{c}'
+                  }
+                },
+                name: '鏍囧噯鍊�',
+                yAxis: bz,
+                lineStyle: {
+                  color: ydatas[i].zxcolor,
+                  type: 'dashed',
+                  width: 2
+                }
+              }
+              ]
+            }
+          }
+        } else {
+          obj = {
+            name: ydatas[i].name,
+            symbol: 'circle', // 鎶樼偣褰㈢姸
+            symbolSize: 10, // 澶у皬
+            smooth: false, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            yAxisIndex: 1,
+            itemStyle: {
+              normal: {
+                color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
+                  /* var biaozhuiz
+                  for (var i = 0; i < bzzList.length; i++) {
+                    if (bzzList[i].name == c.seriesName) {
+                      biaozhuiz = bzzList[i].bzhui
+                    }
+                  }
+                  if (c.value > 9999999) {
+                    return zdcbcolor
+                  } else {
+                    return '#33c95f'
+                  } */
+                },
+                lineStyle: { // 鎶樼嚎鐨勯鑹�
+                  color: ydatas[i].zxcolor,
+                  width: 4
+                },
+                borderColor: 'black', // 鎶樼偣杈规鐨勯鑹�
+                label: { // 鏄剧ず鍊�
+                  show: false
+                }
+              }
+
+            },
+            type: 'line',
+            data: ydatas[i].data
+          }
+        }
+        serLists.push(obj)
+      }
+      var option =
+          {
+            /*  title: {
+              text: title,
+          }, */
+            tooltip: { // 鎻愮ず妗�
+              trigger: 'axis',
+              axisPointer: {
+                type: 'cross',
+                label: {
+                  color: '#1a4245'
+                }
+              },
+              formatter: function (params) {
+                var s = params[0].name + '<br />'
+                for (var i = 0; i < params.length; i++) {
+                  // var name = params[i].name
+                  // 鍥捐〃title鍚嶇О
+                  var seriesName = params[i].seriesName
+                  // 鍊�
+                  var value = params[i].value
+                  var valueFliter
+                  if (value === 'NaN') {
+                    valueFliter = ''
+                  } else {
+                    // valueFliter = formatter(value)
+                  }
+                  var maker = params[i].marker
+                  if (seriesName === 'COD') {
+                    maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#fff21c;"></span>'
+                  } else if (seriesName === '姘ㄦ爱') {
+                    maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#00B0F0;"></span>'
+                  } else if (seriesName === '鎬荤7') {
+                    maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#f48183;"></span>'
+                  } else if (seriesName === '鎬绘爱') {
+                    maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#d9f2f4;"></span>'
+                  } else {
+                    maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#9ACD32;"></span>'
+                  }
+                  s += maker + seriesName + ':' + valueFliter + '<br />'
+                }
+                return s
+              }
+            },
+            toolbox: { // 鎵撳嵃绛夊伐鍏�
+              show: false,
+              feature: {
+                saveAsImage: {}
+              }
+            },
+            grid: { // 缃戞牸
+              top: '20%',
+              left: '7%',
+              bottom: '11%',
+              right: '5%'
+            },
+            legend: {
+              data: legend
+            },
+            dataZoom: [{
+              type: 'inside',
+              start: 0,
+              end: 100
+            }, {
+              start: 0,
+              end: 100,
+              show: false,
+              handleIcon: 'M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4v1.3h1.3v-1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7V23h6.6V24.4z M13.3,19.6H6.7v-1.4h6.6V19.6z',
+              handleSize: '80%',
+              handleStyle: {
+                color: '#fff',
+                shadowBlur: 3,
+                shadowColor: 'rgba(0, 0, 0, 0.6)',
+                shadowOffsetX: 2,
+                shadowOffsetY: 2
+              }
+            }],
+            xAxis: { // x 杞磋缃�
+              type: 'category',
+              boundaryGap: false,
+              nameTextStyle: {
+                fontSize: 10
+              },
+              axisLabel: { // x杞村叏閮ㄦ樉绀�
+                rotate: 20,
+                interval: 0,
+                textStyle: {
+                  color: '#fff',
+                  fontSize: 10
+                }
+              },
+              splitLine: { // 缃戞牸鍨傜洿绾夸负 铏氱嚎
+                show: true,
+                lineStyle: {
+                  type: 'dashed'
+                }
+              },
+              axisTick: { // x 杞村埢搴︽樉绀�
+                show: false
+              },
+              axisLine: {
+                lineStyle: {
+                  color: '#FFFFFF',
+                  width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+                }
+              },
+              data: xdata
+            },
+            yAxis: [{
+              type: 'value',
+              name: yname,
+              /* max: function (value) {
+                var max_val_list = [] // 鎵�鏈夋樉绀烘姌绾跨殑鏍囧噯鍊�
+                if (bzzList && bzzList.length > 0) {
+                  $.each(bzzList, function (index, item) {
+                    max_val_list.push(item.bzhui)
+                  })
+                }
+                max_val_list = max_val_list.sort(function (a, b) {
+                  return a - b
+                }) // 鎺掑簭
+                var ma = value.max > max_val_list[max_val_list.length - 1] ? value.max + 5 : max_val_list[max_val_list.length - 1]
+                return parseInt(ma)
+              }, */
+              axisLabel: {
+                formatter: '{value}',
+                textStyle: {
+                  color: '#fff'
+                }
+              },
+              axisPointer: {
+                snap: true
+              },
+              splitLine: {
+                show: false
+              }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+              axisLine: {
+                lineStyle: {
+                  color: '#FFFFFF',
+                  width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+                }
+              }
+            }, {
+              type: 'value',
+              name: dataUnit,
+              axisLabel: {
+                formatter: '{value}',
+                textStyle: {
+                  color: '#fff'
+                }
+              },
+              axisPointer: {
+                snap: true
+              },
+              splitLine: {
+                show: false
+              }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+              // inverse: true,
+              // nameLocation: 'start',
+              // max:500,
+              axisLine: {
+                lineStyle: {
+                  color: '#FFFFFF',
+                  width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+                }
+              }
+            }],
+            series: serLists
+          }
+      this.myChart.setOption(option)
+
+      /* myChart.on('legendselectchanged', function (params) {
+        // console.log(params);
+        var StdVal = null
+        var op = { yAxis: {} }
+        if (params.selected.COD) {
+          if (bzzList && bzzList.length > 0) {
+            for (let i = 0; i < bzzList.length; i++) {
+              if (bzzList[i].name == 'COD') {
+                StdVal = bzzList[i].bzhui
+              }
+            }
+          }
+
+          op.yAxis.max = function (value) {
+            var ma
+            if (value.max < StdVal) {
+              ma = StdVal
+            } else {
+              ma = Math.ceil(value.max)
+            }
+            return ma
+          }
+        } else if (params.selected['鎬绘爱']) {
+          if (bzzList && bzzList.length > 0) {
+            for (let i = 0; i < bzzList.length; i++) {
+              if (bzzList[i].name == '鎬绘爱') {
+                StdVal = bzzList[i].bzhui
+              }
+            }
+          }
+          op.yAxis.max = function (value) {
+            var ma
+            if (value.max < StdVal) {
+              ma = StdVal
+            } else {
+              ma = Math.ceil(value.max)
+            }
+            return ma
+          }
+        } else if (params.selected['姘ㄦ爱']) {
+          if (bzzList && bzzList.length > 0) {
+            for (let i = 0; i < bzzList.length; i++) {
+              if (bzzList[i].name == '姘ㄦ爱') {
+                StdVal = bzzList[i].bzhui
+              }
+            }
+          }
+          op.yAxis.max = function (value) {
+            var ma
+            if (value.max < StdVal) {
+              ma = StdVal
+            } else {
+              ma = Math.ceil(value.max)
+            }
+            return ma
+          }
+        } else if (params.selected['鎬荤7']) {
+          if (bzzList && bzzList.length > 0) {
+            for (let i = 0; i < bzzList.length; i++) {
+              if (bzzList[i].name == '鎬荤7') {
+                StdVal = bzzList[i].bzhui
+              }
+            }
+          }
+          op.yAxis.max = function (value) {
+            var ma
+            if (value.max < StdVal) {
+              ma = StdVal
+            } else {
+              ma = Math.ceil(value.max)
+            }
+            return ma
+          }
+        }
+
+        myChart.setOption(op)
+      }) */
+
+      /**
+   * 瑙e喅myChart.on('click',function(){...})浜嬩欢閲嶅瑙﹀彂鐨勯棶棰�
+   * Date: 20200720
+   */
+      this.myChart.off('click')
+
+      /**
+   *  鍥炬爣鐐瑰嚮浜嬩欢
+   *  20190426 add
+   * */
+      /* myChart.on('click', function (params) {
+        // console.log('[鐩戞祴鐐筰d=%s]',jcdID)
+
+        // 鑾峰彇褰撳墠鏃堕棿锛屽皬鏃�
+        var nowHours = new Date().Format('hh')
+        // console.log('[褰撳墠灏忔椂鏄細%s]',nowHours);
+
+        // 鐐瑰嚮鎶樼嚎鍥炬姌鐐瑰搴旂殑鏃堕棿
+        // 闇�瑕佷紶鐨勬椂闂翠负
+        var _date = null
+        if (params.name.indexOf('鏃�') != -1) {
+          var hours = params.name.substring(0, params.name.indexOf('鏃�'))
+          // console.log('[鍧愭爣杞村搴旂殑鏃堕棿涓�%s]',hours);
+
+          if (parseInt(hours) < parseInt(nowHours)) {
+            _date = new Date().Format('yyyy-MM-dd') + ' ' + hours + ':00:00'
+          } else {
+            var currentDate = new Date()
+            // 24灏忔椂涔嬪墠鏃堕棿
+            var stringDate = new Date(currentDate.getTime() - 24 * 60 * 60 * 1000).Format('yyyy-MM-dd')
+
+            _date = stringDate + ' ' + hours + ':00:00'
+          }
+
+          // console.log('[闇�瑕佷紶閫掔殑鏃堕棿涓猴細%s]',_date);
+        } else if (params.name.indexOf('鏃�') != -1) {
+          var day = params.name.substring(0, params.name.indexOf('鏃�') - 1)
+          _date = new Date().Format('yyyy-MM') + '-' + day.trim()
+        }
+
+        // todo 璋冩帴鍙� 鏌ュ嚟璇�
+
+        if (params.color != 'red') {
+          var poltMtrlId
+          var monItemId = 28
+          for (var i = 0; i < wrwIDS.length; i++) {
+            if (params.seriesName == wrwIDS[i].name) {
+              poltMtrlId = wrwIDS[i].id
+            }
+          }
+
+          getCBMX(jcdID, poltMtrlId, monItemId, _date, function (res) {
+            createDivByMouse(res, params.event)
+          })
+        }
+        // createDivByMouse("s",params.event);
+      }) */
+    },
+    drawChart: function () {
+      window.onresize = function () {
+        var h1 = document.documentElement.clientHeight// 鑾峰彇灞忓箷鐨勯珮搴�
+        if (h1 > 700) {
+          this.myChart.getDom().style.height = 3 + 'rem'
+          this.myChart.getDom().style.width = 6 + 'rem'
+        } else {
+          this.myChart.getDom().style.height = 3 + 'rem'
+          this.myChart.getDom().style.width = 6 + 'rem'
+        }
+        this.myChart.resize()
+      }
+    }
+  }
+}
+</script>
+
+<style scoped lang="less">
+//.animation{
+//  padding: 0 1rem;
+//  overflow: hidden;
+//  //width: 1rem;
+//  .infomation{
+//    display: flex;
+//    //margin: 0 1rem;
+//    overflow: hidden;
+//    animation: move 1s linear 0s infinite;
+//    @keyframes move {
+//      0% {
+//      }
+//      100% {
+//        transform: translateX(-10%);
+//      }
+//    }
+//    /* 榧犳爣缁忚繃marquee 灏卞仠姝㈠姩鐢� */
+//    &:hover {
+//      //z-index: 9999999;
+//      animation-play-state: paused;
+//    }
+//  }
+//}
+.grid-content{
+  font-size: 8px;
+  background-color: #2e4967;
+  text-align: center;
+  border-radius: 2px;
+  margin-right: 10px;
+  padding:0 10px
+}
+.infomation {
+  padding: 5px 10px;
+}
+
+.form-echrts {
+  width: 100%;
+  border-top: 1px solid #396d83;
+  //margin: 10px 10px 10px 10px;
+  .from-search{
+    display: flex;
+    padding:5px;
+    >div{margin-left: 10px}
+    .pickerMon{
+      display: flex;
+      >div:first-child {
+        margin-right: 10px;
+      }
+      .pickerData{
+        flex: 1;
+        display: flex;
+        >span{line-height: 22px}
+        .pickerTable {
+          margin-left: 3px;
+        }
+      }
+    }
+    /deep/.el-date-editor--datetime{
+      width: 100%;
+    }
+    /deep/.el-input__inner{
+      position: relative;
+      width:140px;
+      background-color: #2e4967;
+      color: #ffffff;
+      font-size: 12px;
+      height: 24px;
+      padding: 0;
+      border-color:#00fff6;
+      text-align: center;
+      //padding-left:20px ;
+      //padding: 0!important;
+    }
+    /deep/.el-input__icon{
+      display: block;
+      width: 140px;
+      height: 22px;
+      line-height: 22px;
+      cursor: pointer;
+      font-size: 0;
+    }
+    .echatsInput{
+      color: #00ffff;
+      background-color: #2e4967;
+      border: none;
+      border-radius: 6px;
+      width: 80px;
+      height: 22px;
+      text-align: center;
+    }
+    input::-webkit-calendar-picker-indicator {
+      opacity: 100;
+    }
+    .detailbtn{
+      background-color:#2e4967;
+      text-align: center;
+      padding: 0 7px;
+      line-height: 24px;
+      border-radius: 4px;
+      margin-right: 6px;
+    }
+    .detailbtn:hover{
+      box-shadow: 0 0 0.03rem #fff700 !important;
+      color:#fff700 !important;
+      cursor: pointer;
+    }
+  }
+  .el-dialog-div {
+    //height: 50vh!important;
+    overflow: auto;
+    //overflow: hidden;
+  }
+
+  #popChart {
+    margin: 0;
+    padding: 0;
+  }
+}
+</style>
diff --git a/src/components/BaseNav/WasteWater/Detail.vue b/src/components/BaseNav/WasteWater/Detail.vue
new file mode 100644
index 0000000..1374053
--- /dev/null
+++ b/src/components/BaseNav/WasteWater/Detail.vue
@@ -0,0 +1,311 @@
+<template>
+<!--  <el-table :data="tableData" style="width:730px" height="200px">-->
+<!--    <el-table-column v-for="(item, index) in tableLabel" :key="index" :prop="item.prop"-->
+<!--                     :label="item.label">-->
+<!--       <el-table-column v-for="(item1, index1) in item.label" :key="index1" :prop="item1.prop" :label="item1.label">-->
+<!--      </el-table-column>-->
+<!--    </el-table-column>-->
+<!--  </el-table>-->
+  <div style="width: 5.9rem">
+  <el-table
+      :data="tableData"
+      max-height="255px"
+      style="width: 100%;height: 100%">
+    <el-table-column
+        prop="date"
+        width="130"
+        label="妫�娴嬫椂闂�">
+    </el-table-column>
+    <el-table-column
+        label="BOD5">
+      <el-table-column
+          prop="codWatch"
+          label="鐩戞祴鍊�">
+      </el-table-column>
+      <el-table-column
+          prop="codTime"
+          label="鏍囧噯鍊�">
+      </el-table-column>
+    </el-table-column>
+    <el-table-column
+        label="COD">
+      <el-table-column
+          prop="phWatch"
+          label="鐩戞祴鍊�">
+      </el-table-column>
+      <el-table-column
+          prop="codTime"
+          label="鏍囧噯鍊�">
+      </el-table-column>
+    </el-table-column>
+    <el-table-column
+        label="PH">
+      <el-table-column
+          prop="bod5Watch"
+          label="鐩戞祴鍊�">
+      </el-table-column>
+      <el-table-column
+          prop="bod5Time"
+          label="鏍囧噯鍊�">
+      </el-table-column>
+    </el-table-column>
+    <el-table-column
+        label="姘ㄦ爱">
+      <el-table-column
+          prop="adWatch"
+          label="鐩戞祴鍊�">
+      </el-table-column>
+      <el-table-column
+          prop="adTime"
+          label="鏍囧噯鍊�">
+      </el-table-column>
+    </el-table-column>
+    <el-table-column
+            label="鎸ュ彂閰�">
+      <el-table-column
+              prop="adWatch"
+              label="鐩戞祴鍊�">
+      </el-table-column>
+      <el-table-column
+              prop="adTime"
+              label="鏍囧噯鍊�">
+      </el-table-column>
+    </el-table-column>
+    <el-table-column
+            label="姘熺瀛�">
+      <el-table-column
+              prop="adWatch"
+              label="鐩戞祴鍊�">
+      </el-table-column>
+      <el-table-column
+              prop="adTime"
+              label="鏍囧噯鍊�">
+      </el-table-column>
+    </el-table-column>
+    <el-table-column
+            label="纭寲鐗�">
+      <el-table-column
+              prop="adWatch"
+              label="鐩戞祴鍊�">
+      </el-table-column>
+      <el-table-column
+              prop="adTime"
+              label="鏍囧噯鍊�">
+      </el-table-column>
+    </el-table-column>
+    <el-table-column
+            label="鐭虫补绫�">
+      <el-table-column
+              prop="adWatch"
+              label="鐩戞祴鍊�">
+      </el-table-column>
+      <el-table-column
+              prop="adTime"
+              label="鏍囧噯鍊�">
+      </el-table-column>
+    </el-table-column>
+    <el-table-column
+            label="鎮诞鐗�">
+      <el-table-column
+              prop="adWatch"
+              label="鐩戞祴鍊�">
+      </el-table-column>
+      <el-table-column
+              prop="adTime"
+              label="鏍囧噯鍊�">
+      </el-table-column>
+    </el-table-column>
+  </el-table>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'Detail',
+  data () {
+    return {
+      tableData: [{
+        date: '2016-05-03 12:00:00',
+        codWatch: '7.23',
+        codTime: '-',
+        phWatch: '0.43',
+        phTime: '9.21',
+        bod5Watch: '7.12',
+        bod5Time: '-',
+        adWatch: '0.23',
+        adTime: '-'
+      },
+      {
+        date: '2016-05-03 12:00:15',
+        codWatch: '-',
+        codTime: '5.32',
+        phWatch: '-',
+        phTime: '0.23',
+        bod5Watch: '1',
+        bod5Time: '9.88',
+        adWatch: '1.76',
+        adTime: '-'
+      },
+      {
+        date: '2016-05-03 12:00:30',
+        codWatch: '-',
+        codTime: '0.92',
+        phWatch: '-',
+        phTime: '8.71',
+        bod5Watch: '0.72',
+        bod5Time: '-',
+        adWatch: '6.23',
+        adTime: '0.86'
+      },
+      {
+        date: '2016-05-03 12:01:15',
+        codWatch: '10.22',
+        codTime: '-',
+        phWatch: '-',
+        phTime: '0.92',
+        bod5Watch: '0.82',
+        bod5Time: '-',
+        adWatch: '23.82',
+        adTime: '-'
+      },
+      {
+        date: '2016-05-03 12:01:30',
+        codWatch: '0.31',
+        codTime: '-',
+        phWatch: '-',
+        phTime: '6.12',
+        bod5Watch: '0.31',
+        bod5Time: '-',
+        adWatch: '0.21',
+        adTime: '-'
+      },
+      {
+        date: '2016-05-03 12:02:15',
+        codWatch: '9.22',
+        codTime: '-',
+        phWatch: '-',
+        phTime: '-',
+        bod5Watch: '-',
+        bod5Time: '0.72',
+        adWatch: '-',
+        adTime: '17.23'
+      },
+      {
+        date: '2016-05-03 12:02:30',
+        codWatch: '-',
+        codTime: '-',
+        phWatch: '0.83',
+        phTime: '-',
+        bod5Watch: '23.22',
+        bod5Time: '-',
+        adWatch: '-',
+        adTime: '-'
+      },
+      {
+        date: '2016-05-03 12:03:15',
+        codWatch: '8.74',
+        codTime: '-',
+        phWatch: '-',
+        phTime: '13.22',
+        bod5Watch: '-',
+        bod5Time: '0.23',
+        adWatch: '-',
+        adTime: '-'
+      },
+      {
+        date: '2016-05-03 12:03:30',
+        codWatch: '0.82',
+        codTime: '-',
+        phWatch: '-',
+        phTime: '-',
+        bod5Watch: '-',
+        bod5Time: '32.42',
+        adWatch: '-',
+        adTime: '0.88'
+      },
+      {
+        date: '2016-05-03 12:04:15',
+        codWatch: '-',
+        codTime: '-',
+        phWatch: '0.71',
+        phTime: '-',
+        bod5Watch: '-',
+        bod5Time: '15.83',
+        adWatch: '-',
+        adTime: '24.82'
+      },
+      {
+        date: '2016-05-03 12:04:30',
+        codWatch: '-',
+        codTime: '19.65',
+        phWatch: '29.22',
+        phTime: '-',
+        bod5Watch: '0.98',
+        bod5Time: '-',
+        adWatch: '-',
+        adTime: '-'
+      },
+      {
+        date: '2016-05-03 12:05:15',
+        codWatch: '19.32',
+        codTime: '-',
+        phWatch: '-',
+        phTime: '-',
+        bod5Watch: '-',
+        bod5Time: '12.21',
+        adWatch: '-',
+        adTime: '-'
+      },
+      {
+        date: '2016-05-03 12:05:30',
+        codWatch: '10.53',
+        codTime: '-',
+        phWatch: '-',
+        phTime: '-',
+        bod5Watch: '-',
+        bod5Time: '23.71',
+        adWatch: '-',
+        adTime: '10.55'
+      },
+      {
+        date: '2016-05-03 12:06:15',
+        codWatch: '31.63',
+        codTime: '-',
+        phWatch: '-',
+        phTime: '-',
+        bod5Watch: '-',
+        bod5Time: '0.56',
+        adWatch: '-',
+        adTime: '-'
+      },
+      {
+        date: '2016-05-03 12:06:30',
+        codWatch: '19.53',
+        codTime: '-',
+        phWatch: '-',
+        phTime: '-',
+        bod5Watch: '-',
+        bod5Time: '0.28',
+        adWatch: '-',
+        adTime: '0.75'
+      }]
+    }
+  },
+  created () {
+    // this.$nextTick(() => {
+    //   this.$attrs.ManualData.forEach(item => {
+    //     this.tableData = [...item]
+    //   })
+    //   this.tableData.LabMonTime = 100
+    //   console.log(this.tableData)
+    // })
+  }
+}
+
+</script>
+
+<style scoped>
+.el-table--border::after, .el-table--group::after, .el-table::before{
+  background: none;
+}
+</style>
diff --git a/src/components/BaseNav/WasteWater/HourData.vue b/src/components/BaseNav/WasteWater/HourData.vue
new file mode 100644
index 0000000..9baaa67
--- /dev/null
+++ b/src/components/BaseNav/WasteWater/HourData.vue
@@ -0,0 +1,699 @@
+<!--  灏忔椂鏁版嵁  -->
+<template>
+    <div id="Tab">
+        <div class="infomation">
+          <div>
+            <span class="grid-content">COD : <i style="color: #e8ee0b">6.039</i>  鏍囧噯 : <i style="color: #fff">12</i></span>
+            <span class="grid-content">姘ㄦ爱 : <i style="color: #e8ee0b">0.38</i> 鏍囧噯 : <i style="color: #fff">5</i></span>
+              <span class="grid-content">pH : <i style="color: #e8ee0b">7.674</i> 鏍囧噯 : <i style="color: #fff">9</i></span>
+            <span class="grid-content">搴熸按娴侀噺 : <i style="color: #e8ee0b">254.643997</i></span>
+          </div>
+        </div>
+        <div class="form-echrts">
+            <div class="from-search">
+                <div class="pickerMon">
+                    <div class="pickerData">
+                        <span> 寮�濮嬫椂闂�:</span>
+                        <span class="pickerTable">
+                          <el-date-picker type="datetime" v-model="formInline.timeStart">
+                      </el-date-picker>
+                      </span>
+                    </div>
+                    <div class="pickerData">
+                        <span >缁撴潫鏃堕棿:</span>
+                        <span class="pickerTable">
+                        <el-date-picker type="datetime" v-model="formInline.timeEnd">
+                      </el-date-picker>
+                      </span>
+                    </div>
+                </div>
+<!--                <div>-->
+<!--                    閲囨牱鐐规暟:-->
+<!--                    <el-select v-model="formInline.region">-->
+<!--                        <el-option label="0" value="0"></el-option>-->
+<!--                        <el-option label="25" value="25"></el-option>-->
+<!--                        <el-option label="50" value="50"></el-option>-->
+<!--                        <el-option label="75" value="75"></el-option>-->
+<!--                        <el-option label="100" value="100"></el-option>-->
+<!--                    </el-select>-->
+<!--                </div>-->
+                <div class="detailbtn"  @click="onSubmit">鏌ヨ</div>
+                <div class="detailbtn" @click="dialogVisible = true" >鏄庣粏琛�</div>
+             </div>
+            <div class="boxChart">
+                <div style="width: 5rem;height:1.5rem;" id="echarts" ref="main"></div>
+            </div>
+        </div>
+        <!-- 鏄庣粏寮规 -->
+        <el-dialog :visible.sync="dialogVisible"
+                   :append-to-body="true"
+                   :title="this.$attrs.value==='feiqi'?this.$attrs.getWasteGasDetails[0].OnLineMonEmissPointName:this.$attrs.getWasteWaterMonitoringDetails[0].OnLineMonEmissPointName"
+                   width="68%"
+                   center
+                   v-dialogDrag
+        >
+            <div class="el-dialog-div" style="height: 500px">
+                <public-detailed-list v-bind="$attrs"></public-detailed-list>
+            </div>
+        </el-dialog>
+    </div>
+</template>
+
+<script>
+import PublicDetailedList from '@components/BaseNav/PublicBounced/common/echarts/PublicDetailedList'
+// import dayjs from 'dayjs'
+
+export default {
+  name: 'ECharts',
+  components: {
+    PublicDetailedList
+  },
+  data () {
+    return {
+      watchData: [],
+      dialogVisible: false,
+      myChar: null,
+      value: '',
+      formInline: {
+        region: '',
+        timeStart: '2021-04-12 10:00:00',
+        timeEnd: '2021-04-13 09:00:00'
+      },
+      myChart: null,
+      JsonHourWater: {
+        id: 'mycharteff',
+        title: '',
+        jcdID: '1020',
+        legend: [
+          {
+            icon: 'image://../assets/imgs/legend/SO2.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: 'COD',
+            testStyle: {
+              color: '#ccc'
+            }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/NOX.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '姘ㄦ爱',
+            testStyle: {
+              color: '#ccc'
+            }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/WenDu.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: 'pH',
+            testStyle: {
+              color: '#ccc'
+            }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/VOCs.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '搴熸按娴侀噺',
+            testStyle: {
+              color: '#ccc'
+            }
+          }
+        ],
+        xdata: ['10鏃�', '11鏃�', '12鏃�', '13鏃�', '14鏃�', '15鏃�', '16鏃�', '17鏃�', '18鏃�', '19鏃�', '20鏃�', '21鏃�', '22鏃�', '23鏃�', '0鏃�', '1鏃�', '2鏃�', '3鏃�', '4鏃�', '5鏃�', '6鏃�', '7鏃�', '8鏃�', '9鏃�'],
+        ydatas: [
+          { name: 'COD', data: [11.197, 11.5, 11.33, 11.2, 11.54, 11.8, 11.195, 10.7, 10.645, 10.6, 10.875, 11.1, 10.715, 10.4, 10.95, 11.4, 11.193, 11, 11.267, 11.5, 10.725, 10, 10.8, 11.5], zdcbcolor: 'red', zxcolor: '#fff21c', bzz: 12 },
+          { name: '姘ㄦ爱', data: [0.186, 0.179, 0.165, 0.159, 0.149, 0.146, 0.141, 0.136, 0.128, 0.13, 0.133, 0.133, 0.134, 0.13, 0.122, 0.124, 0.128, 0.139, 0.16, 0.147, 0.123, 0.127, 0.134, 0.128], zdcbcolor: 'red', zxcolor: '#00B0F0', bzz: 5 },
+          { name: '搴熸按娴侀噺', data: [35.15667, 35.445004, 32.91, 31.478336, 33.038334, 33.46167, 33.348335, 33.515003, 33.735001, 31.503336, 31.411667, 32.880001, 33.100002, 31.870001, 30.841667, 31.873335, 32.658333, 32.178337, 30.656668, 30.65667, 32.241669, 32.521667, 31.225002, 30.476669], zdcbcolor: 'red', zxcolor: '#9ACD32', bzz: null },
+          { name: 'pH', data: [7.666, 7.669, 7.67, 7.672, 7.677, 7.682, 7.685, 7.688, 7.689, 7.689, 7.688, 7.689, 7.69, 7.69, 7.69, 7.69, 7.691, 7.69, 7.685, 7.681, 7.681, 7.678, 7.674, 7.674], zdcbcolor: 'red', zxcolor: '#F206FF', bzz: 9 }
+        ],
+        yname: '娴撳害(mg/l)',
+        datatype: 2
+      }
+    }
+  },
+  mounted () {
+    this.onSubmit()
+    // this.formInline.timeEnd = dayjs().format('YYYY-MM-DD HH:mm:ss')
+    // this.formInline.timeStart = dayjs().subtract(12, 'hour').format('YYYY-MM-DD HH:mm:ss')
+    // this.onSubmit()
+  },
+  updated () {
+    this.onSubmit()
+  },
+  methods: {
+    onSubmit () {
+      this.effChartShow()
+    },
+    effChartShow: function () {
+      // var id = this.JsonHourWater.id
+      // var title = this.JsonHourWater.title
+      var legend = this.JsonHourWater.legend
+      var xdata = this.JsonHourWater.xdata
+      var ydatas = this.JsonHourWater.ydatas
+      var yname = this.JsonHourWater.yname
+      // var jcdId = this.JsonHourWater.jcdID
+      var datatype = this.JsonHourWater.datatype
+
+      this.myChart = this.$echarts.init(this.$refs.main)
+      this.myChart.clear()
+      var dataUnit = ''
+      if (datatype === 1) {
+        dataUnit = '娴侀噺(m鲁/d)'
+      } else {
+        dataUnit = '娴侀噺(m鲁/h)'
+      }
+
+      var serLists = []
+      for (var j = 0; j < ydatas.length; j++) {
+        var len = ydatas[j].data.length
+        for (var k = 0; k < len; k++) {
+          var it = ydatas[j].data[k]
+          var it2 = parseFloat(it).toFixed(2)
+          ydatas[j].data[k] = it2
+        }
+      }
+
+      for (var i = 0; i < ydatas.length; i++) {
+        // var zdcbcolor = ydatas[i].zdcbcolor
+        var bz = ydatas[i].bzz
+        var obj
+        if (bz) {
+          obj = {
+            name: ydatas[i].name,
+            symbol: 'circle', // 鎶樼偣褰㈢姸
+            symbolSize: 10, // 澶у皬
+            smooth: false, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            itemStyle: {
+              normal: {
+                color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
+                  /* var biaozhuiz
+                  for (var i = 0; i < bzzList.length; i++) {
+                    if (bzzList[i].name == c.seriesName) {
+                      biaozhuiz = bzzList[i].bzhui
+                    }
+                  }
+                  if (c.value > biaozhuiz) {
+                    return zdcbcolor
+                  } else if (c.value > biaozhuiz * 0.9) {
+                    return '#FFA500'
+                  } else {
+                    return '#33c95f'
+                  } */
+                },
+                lineStyle: { // 鎶樼嚎鐨勯鑹�
+                  color: ydatas[i].zxcolor,
+                  width: 5
+                },
+                borderColor: 'black', // 鎶樼偣杈规鐨勯鑹�
+                label: { // 鏄剧ず鍊�
+                  show: false
+                }
+              }
+            },
+            type: 'line',
+            data: ydatas[i].data,
+            markLine: { // 骞冲潎鍊�  鍜� 鎸囨爣涓婇檺
+              symbol: 'none',
+              data: [{
+                label: {
+                  normal: {
+                    position: 'end',
+                    formatter: '' // ydatas[i].name+'鏍囧噯鍊�' //+'{c}'
+                  }
+                },
+                name: '鏍囧噯鍊�',
+                yAxis: bz,
+                lineStyle: {
+                  color: ydatas[i].zxcolor,
+                  type: 'dashed',
+                  width: 2
+                }
+              }
+              ]
+            }
+          }
+        } else {
+          obj = {
+            name: ydatas[i].name,
+            symbol: 'circle', // 鎶樼偣褰㈢姸
+            symbolSize: 10, // 澶у皬
+            smooth: false, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            yAxisIndex: 1,
+            itemStyle: {
+              normal: {
+                color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
+                  /* var biaozhuiz
+                  for (var i = 0; i < bzzList.length; i++) {
+                    if (bzzList[i].name == c.seriesName) {
+                      biaozhuiz = bzzList[i].bzhui
+                    }
+                  }
+                  if (c.value > 9999999) {
+                    return zdcbcolor
+                  } else {
+                    return '#33c95f'
+                  } */
+                },
+                lineStyle: { // 鎶樼嚎鐨勯鑹�
+                  color: ydatas[i].zxcolor,
+                  width: 4
+                },
+                borderColor: 'black', // 鎶樼偣杈规鐨勯鑹�
+                label: { // 鏄剧ず鍊�
+                  show: false
+                }
+              }
+            },
+            type: 'line',
+            data: ydatas[i].data
+          }
+        }
+        serLists.push(obj)
+      }
+      var option =
+    {
+      /*  title: {
+        text: title,
+    }, */
+      tooltip: { // 鎻愮ず妗�
+        trigger: 'axis',
+        axisPointer: {
+          type: 'cross',
+          label: {
+            color: '#1a4245'
+          }
+        },
+        formatter: function (params) {
+          var s = params[0].name + '<br />'
+          for (var i = 0; i < params.length; i++) {
+            // var name = params[i].name
+            // 鍥捐〃title鍚嶇О
+            var seriesName = params[i].seriesName
+            // 鍊�
+            var value = params[i].value
+            var valueFliter
+            if (value === 'NaN') {
+              valueFliter = ''
+            } else {
+              // valueFliter = formatter(value)
+            }
+            var maker = params[i].marker
+            if (seriesName === 'COD') {
+              maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#fff21c;"></span>'
+            } else if (seriesName === '姘ㄦ爱') {
+              maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#00B0F0;"></span>'
+            } else if (seriesName === '鎬荤7') {
+              maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#f48183;"></span>'
+            } else if (seriesName === '鎬绘爱') {
+              maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#d9f2f4;"></span>'
+            } else {
+              maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:#9ACD32;"></span>'
+            }
+            s += maker + seriesName + ':' + valueFliter + '<br />'
+          }
+          return s
+        }
+      },
+      toolbox: { // 鎵撳嵃绛夊伐鍏�
+        show: false,
+        feature: {
+          saveAsImage: {}
+        }
+      },
+      grid: { // 缃戞牸
+        top: '20%',
+        left: '7%',
+        bottom: '10%',
+        right: '5%'
+      },
+      legend: {
+        data: legend,
+        textStyle: {
+          color: '#fff'
+        }
+      },
+      dataZoom: [{
+        type: 'inside',
+        start: 0,
+        end: 100
+      }, {
+        start: 0,
+        end: 100,
+        show: false,
+        handleIcon: 'M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4v1.3h1.3v-1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7V23h6.6V24.4z M13.3,19.6H6.7v-1.4h6.6V19.6z',
+        handleSize: '80%',
+        handleStyle: {
+          color: '#fff',
+          shadowBlur: 3,
+          shadowColor: 'rgba(0, 0, 0, 0.6)',
+          shadowOffsetX: 2,
+          shadowOffsetY: 2
+        }
+      }],
+      xAxis: { // x 杞磋缃�
+        type: 'category',
+        boundaryGap: false,
+        axisLabel: { // x杞村叏閮ㄦ樉绀�
+          rotate: 20,
+          interval: 0,
+          textStyle: {
+            color: '#fff',
+            fontSize: 10
+          }
+        },
+        splitLine: { // 缃戞牸鍨傜洿绾夸负 铏氱嚎
+          show: true,
+          lineStyle: {
+            type: 'dashed'
+          }
+        },
+        axisTick: { // x 杞村埢搴︽樉绀�
+          show: false
+        },
+        axisLine: {
+          lineStyle: {
+            color: '#FFFFFF',
+            width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+          }
+        },
+        data: xdata
+      },
+      yAxis: [{
+        type: 'value',
+        name: yname,
+        /* max: function (value) {
+          var max_val_list = [] // 鎵�鏈夋樉绀烘姌绾跨殑鏍囧噯鍊�
+          if (bzzList && bzzList.length > 0) {
+            $.each(bzzList, function (index, item) {
+              max_val_list.push(item.bzhui)
+            })
+          }
+          max_val_list = max_val_list.sort(function (a, b) {
+            return a - b
+          }) // 鎺掑簭
+          var ma = value.max > max_val_list[max_val_list.length - 1] ? value.max + 5 : max_val_list[max_val_list.length - 1]
+          return parseInt(ma)
+        }, */
+        axisLabel: {
+          formatter: '{value}',
+          textStyle: {
+            color: '#fff'
+          }
+        },
+        axisPointer: {
+          snap: true
+        },
+        splitLine: {
+          show: false
+        }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+        axisLine: {
+          lineStyle: {
+            color: '#FFFFFF',
+            width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+          }
+        }
+      }, {
+        type: 'value',
+        name: dataUnit,
+        axisLabel: {
+          formatter: '{value}',
+          textStyle: {
+            color: '#fff'
+          }
+        },
+        axisPointer: {
+          snap: true
+        },
+        splitLine: {
+          show: false
+        }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+        // inverse: true,
+        // nameLocation: 'start',
+        // max:500,
+        axisLine: {
+          lineStyle: {
+            color: '#FFFFFF',
+            width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+          }
+        }
+      }],
+      series: serLists
+    }
+      this.myChart.setOption(option)
+      /*
+      myChart.on('legendselectchanged', function (params) {
+        // console.log(params);
+        var StdVal = null
+        var op = { yAxis: {} }
+        if (params.selected.COD) {
+          if (bzzList && bzzList.length > 0) {
+            for (let i = 0; i < bzzList.length; i++) {
+              if (bzzList[i].name == 'COD') {
+                StdVal = bzzList[i].bzhui
+              }
+            }
+          }
+
+          op.yAxis.max = function (value) {
+            var ma
+            if (value.max < StdVal) {
+              ma = StdVal
+            } else {
+              ma = Math.ceil(value.max)
+            }
+            return ma
+          }
+        } else if (params.selected['鎬绘爱']) {
+          if (bzzList && bzzList.length > 0) {
+            for (let i = 0; i < bzzList.length; i++) {
+              if (bzzList[i].name == '鎬绘爱') {
+                StdVal = bzzList[i].bzhui
+              }
+            }
+          }
+          op.yAxis.max = function (value) {
+            var ma
+            if (value.max < StdVal) {
+              ma = StdVal
+            } else {
+              ma = Math.ceil(value.max)
+            }
+            return ma
+          }
+        } else if (params.selected['姘ㄦ爱']) {
+          if (bzzList && bzzList.length > 0) {
+            for (let i = 0; i < bzzList.length; i++) {
+              if (bzzList[i].name == '姘ㄦ爱') {
+                StdVal = bzzList[i].bzhui
+              }
+            }
+          }
+          op.yAxis.max = function (value) {
+            var ma
+            if (value.max < StdVal) {
+              ma = StdVal
+            } else {
+              ma = Math.ceil(value.max)
+            }
+            return ma
+          }
+        } else if (params.selected['鎬荤7']) {
+          if (bzzList && bzzList.length > 0) {
+            for (let i = 0; i < bzzList.length; i++) {
+              if (bzzList[i].name == '鎬荤7') {
+                StdVal = bzzList[i].bzhui
+              }
+            }
+          }
+          op.yAxis.max = function (value) {
+            var ma
+            if (value.max < StdVal) {
+              ma = StdVal
+            } else {
+              ma = Math.ceil(value.max)
+            }
+            return ma
+          }
+        }
+        myChart.setOption(op)
+      })
+      */
+
+      /**
+   * 瑙e喅myChart.on('click',function(){...})浜嬩欢閲嶅瑙﹀彂鐨勯棶棰�
+   * Date: 20200720
+   */
+      this.myChart.off('click')
+
+      /**
+   *  鍥炬爣鐐瑰嚮浜嬩欢
+   *  20190426 add
+   * */
+      /* myChart.on('click', function (params) {
+        // console.log('[鐩戞祴鐐筰d=%s]',jcdID)
+
+        // 鑾峰彇褰撳墠鏃堕棿锛屽皬鏃�
+        var nowHours = new Date().Format('hh')
+        // console.log('[褰撳墠灏忔椂鏄細%s]',nowHours);
+
+        // 鐐瑰嚮鎶樼嚎鍥炬姌鐐瑰搴旂殑鏃堕棿
+        // 闇�瑕佷紶鐨勬椂闂翠负
+        var _date = null
+        if (params.name.indexOf('鏃�') != -1) {
+          var hours = params.name.substring(0, params.name.indexOf('鏃�'))
+          // console.log('[鍧愭爣杞村搴旂殑鏃堕棿涓�%s]',hours);
+
+          if (parseInt(hours) < parseInt(nowHours)) {
+            _date = new Date().Format('yyyy-MM-dd') + ' ' + hours + ':00:00'
+          } else {
+            var currentDate = new Date()
+            // 24灏忔椂涔嬪墠鏃堕棿
+            var stringDate = new Date(currentDate.getTime() - 24 * 60 * 60 * 1000).Format('yyyy-MM-dd')
+
+            _date = stringDate + ' ' + hours + ':00:00'
+          }
+
+          // console.log('[闇�瑕佷紶閫掔殑鏃堕棿涓猴細%s]',_date);
+        } else if (params.name.indexOf('鏃�') != -1) {
+          var day = params.name.substring(0, params.name.indexOf('鏃�') - 1)
+          _date = new Date().Format('yyyy-MM') + '-' + day.trim()
+        }
+
+        // todo 璋冩帴鍙� 鏌ュ嚟璇�
+
+        if (params.color != 'red') {
+          var poltMtrlId
+          var monItemId = 28
+          for (var i = 0; i < wrwIDS.length; i++) {
+            if (params.seriesName == wrwIDS[i].name) {
+              poltMtrlId = wrwIDS[i].id
+            }
+          }
+
+          getCBMX(jcdID, poltMtrlId, monItemId, _date, function (res) {
+            createDivByMouse(res, params.event)
+          })
+        }
+        // createDivByMouse("s",params.event);
+      }) */
+    }
+    // drawChart: function () {
+    //   window.onresize = function () {
+    //     var h1 = document.documentElement.clientHeight// 鑾峰彇灞忓箷鐨勯珮搴�
+    //     if (h1 > 700) {
+    //       this.myChart.getDom().style.height = 3 + 'rem'
+    //       this.myChart.getDom().style.width = 6 + 'rem'
+    //     } else {
+    //       this.myChart.getDom().style.height = 3 + 'rem'
+    //       this.myChart.getDom().style.width = 6 + 'rem'
+    //     }
+    //     this.myChart.resize()
+    //   }
+    // }
+
+  }
+
+}
+</script>
+
+<style scoped lang="less">
+.grid-content{
+    font-size: 8px;
+    background-color: #2e4967;
+    text-align: center;
+    border-radius: 2px;
+    margin-right: 10px;
+    padding:0 10px
+  //>i{
+  //    color: #f00;
+  //  }
+}
+.infomation {
+  padding: 5px 10px;
+}
+
+.form-echrts {
+    width: 100%;
+    border-top: 1px solid #396d83;
+    //margin: 10px 10px 10px 10px;
+    .from-search{
+        display: flex;
+        padding:5px;
+        >div{margin-left: 10px}
+        .pickerMon{
+            display: flex;
+            >div:first-child {
+                margin-right: 10px;
+            }
+            .pickerData{
+                flex: 1;
+                display: flex;
+                >span{line-height: 22px}
+                .pickerTable {
+                    margin-left: 3px;
+                }
+            }
+        }
+        /deep/.el-date-editor--datetime{
+            width: 100%;
+        }
+        /deep/.el-input__inner{
+            position: relative;
+            width:140px;
+            background-color: #2e4967;
+            color: #ffffff;
+            font-size: 12px;
+            height: 24px;
+            padding: 0;
+            border-color:#00fff6;
+            text-align: center;
+            //padding-left:20px ;
+            //padding: 0!important;
+        }
+        /deep/.el-input__icon{
+            display: block;
+            width: 140px;
+            height: 22px;
+            line-height: 22px;
+            cursor: pointer;
+            font-size: 0;
+        }
+        .echatsInput{
+            color: #00ffff;
+            background-color: #2e4967;
+            border: none;
+            border-radius: 6px;
+            width: 80px;
+            height: 22px;
+            text-align: center;
+        }
+        input::-webkit-calendar-picker-indicator {
+            opacity: 100;
+        }
+        .detailbtn{
+            background-color:#2e4967;
+            text-align: center;
+            padding: 0 7px;
+            line-height: 24px;
+            border-radius: 4px;
+            margin-right: 6px;
+        }
+        .detailbtn:hover{
+            box-shadow: 0 0 0.03rem #fff700 !important;
+            color:#fff700 !important;
+            cursor: pointer;
+        }
+    }
+    .el-dialog-div {
+        overflow: auto;
+    }
+
+    #echarts {
+        margin: 0;
+        padding: 0;
+    }
+}
+</style>
diff --git a/src/components/BaseNav/WasteWater/PublicTabs.vue b/src/components/BaseNav/WasteWater/PublicTabs.vue
new file mode 100644
index 0000000..a0df48a
--- /dev/null
+++ b/src/components/BaseNav/WasteWater/PublicTabs.vue
@@ -0,0 +1,127 @@
+<template>
+  <div class="win">
+    <div class="border_corner border_corner_left_top"></div>
+    <div class="border_corner border_corner_right_top"></div>
+    <div class="border_corner border_corner_left_bottom"></div>
+    <div class="border_corner border_corner_right_bottom"></div>
+    <div class="main">
+      <div class="main-matter">
+        <div>
+          <ul>
+            <!--            <li>鍦烘墍鍚嶇О:{{ setSolidWaste.StoragePlaceName }}</li>-->
+            <!--            <li>璐瓨鑳藉姏:{{ setSolidWaste.StorageQty }}(鍚�)</li>-->
+            <!--            <li>鍓╀綑璐瓨鑳藉姏:{{ setSolidWaste.SurplusFloorArea }}(鍚�)</li>-->
+            <!--            <li>鍗犲湴闈㈢Н(銕�):{{ setSolidWaste.DesignFloorArea }}(銕�)</li>-->
+            <!--            <li>鏈�杩戣串瀛樻棩鏈�:{{ setSolidWaste.StorageDate }}</li>-->
+            <!--            <li class="lastli"></li>-->
+            <li v-for="(item,index) in tabList" :key="index"></li>
+          </ul>
+        </div>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'GasTable',
+  props: ['setSolidWaste', 'value', 'setWasteGasdata', 'setWasteWaterdata'],
+  data () {
+    return {
+      tabList: []
+    }
+  },
+  methods: {
+    // async getTabsData () {
+    //   // 鍩烘湰淇℃伅 鍜� 璇︾粏淇℃伅 灞曠ず鏁版嵁鎵�闇�鍙傛暟
+    //   const dataValue = {
+    //     StoragePlaceId: e.layer.options.totransferData.StoragePlaceId
+    //   }
+    //   // 鍩烘湰淇℃伅 tabs
+    //   const resultBasic = await mapApi.getSolidWasteBaseInfo(dataValue)
+    // }
+  }
+}
+</script>
+
+<style scoped lang="less">
+
+.win {
+  position: relative;
+  margin-bottom: 0.04rem;
+  background-color: @background-color;
+}
+
+.main {
+
+  .main-matter {
+    font-size: 0.06rem;
+    font-weight: normal;
+    padding: 0.04rem 0;
+    border: 1px solid #396d83;
+
+    ul {
+      //width: 100%;
+      //height: 100%;
+      display: flex;
+      align-items: center;
+      justify-content: space-around;
+      flex-wrap: wrap;
+      margin-bottom: -0.04rem;
+
+      li {
+        margin-bottom: 0.04rem;
+        text-align: center;
+        min-width: 31%;
+        background-color: #243a55;
+        color: #00d0f9;
+        border-radius: 0.02rem;
+        font-size: 0.08rem;
+        line-height: 0.09rem;
+        padding: 0.03rem .5%;
+      }
+
+      .lastli {
+        visibility: hidden
+      }
+    }
+  }
+}
+
+.border_corner {
+  z-index: 999;
+  position: absolute;
+  width: 10px;
+  height: 10px;
+  background: rgba(0, 0, 0, 0);
+  border: 1px solid #47d5ea;
+}
+
+.border_corner_left_top {
+  top: 0;
+  left: 0;
+  border-right: none;
+  border-bottom: none;
+}
+
+.border_corner_right_top {
+  top: 0;
+  right: 0;
+  border-left: none;
+  border-bottom: none;
+}
+
+.border_corner_left_bottom {
+  bottom: 0;
+  left: 0;
+  border-right: none;
+  border-top: none;
+}
+
+.border_corner_right_bottom {
+  bottom: 0;
+  right: 0;
+  border-left: none;
+  border-top: none;
+}
+</style>
diff --git a/src/components/BaseNav/WasteWater/PublicVideo.vue b/src/components/BaseNav/WasteWater/PublicVideo.vue
new file mode 100644
index 0000000..f87c2bb
--- /dev/null
+++ b/src/components/BaseNav/WasteWater/PublicVideo.vue
@@ -0,0 +1,80 @@
+<template>
+  <div class="win">
+    <!-- 鍥涗釜瑙掔殑杈规鏁堟灉 -->
+    <div class="border_corner border_corner_left_top"></div>
+    <div class="border_corner border_corner_right_top"></div>
+    <div class="border_corner border_corner_left_bottom"></div>
+    <div class="border_corner border_corner_right_bottom"></div>
+    <div class="main">
+      <!--      <div class="main-video">-->
+      <video controls>
+        <source src="movie.mp4" type="video/mp4">
+        <source src="movie.ogg" type="video/ogg">
+      </video>
+      <!--      </div>-->
+    </div>
+  </div>
+</template>
+
+<script>
+export default {
+  name: 'GasVideo'
+}
+</script>
+
+<style scoped lang="less">
+.win {
+  position: relative;
+  background-color: rgba(33, 41, 69, 0.9);
+  //height: 2rem;
+
+}
+
+.main {
+  border: 1px solid #396d83;
+  width: 2.5rem;
+  height: 2.5rem;
+  video {
+    width: 100%;
+    height: 100%;
+    outline: none;
+  }
+}
+
+.border_corner {
+  z-index: 999;
+  position: absolute;
+  width: 14px;
+  height: 14px;
+  background: rgba(0, 0, 0, 0);
+  border: 1px solid #47d5ea;
+}
+
+.border_corner_left_top {
+  top: 0;
+  left: 0;
+  border-right: none;
+  border-bottom: none;
+}
+
+.border_corner_right_top {
+  top: 0;
+  right: 0;
+  border-left: none;
+  border-bottom: none;
+}
+
+.border_corner_left_bottom {
+  bottom: 0;
+  left: 0;
+  border-right: none;
+  border-top: none;
+}
+
+.border_corner_right_bottom {
+  bottom: 0;
+  right: 0;
+  border-left: none;
+  border-top: none;
+}
+</style>
diff --git a/src/components/BaseNav/WasteWater/RealTimeEcharts.vue b/src/components/BaseNav/WasteWater/RealTimeEcharts.vue
new file mode 100644
index 0000000..d5fa28d
--- /dev/null
+++ b/src/components/BaseNav/WasteWater/RealTimeEcharts.vue
@@ -0,0 +1,942 @@
+<!--  搴熸按瀹炴椂鏁版嵁  -->
+<template>
+  <div id="Tab">
+    <div class="animation">
+      <div class="infomation">
+        <span class="grid-content">COD : <i style="color: #e8ee0b">11.24385</i> 鏍囧噯 : <i style="color: #fff">50</i></span>
+        <span class="grid-content">姘哀 :<i style="color: #e8ee0b">0.1889014</i>  鏍囧噯 : <i style="color: #fff">30</i></span>
+        <span class="grid-content">鎬荤7 : <i style="color: #e8ee0b">0.03812287</i> 鏍囧噯 : <i style="color: #fff">5</i></span>
+        <span class="grid-content">搴熸按娴侀噺 : <i style="color: #e8ee0b">32.16287</i></span>
+      </div>
+    </div>
+    <div class="form-echrts">
+      <div class="from-search">
+        <div class="pickerMon">
+          <div class="pickerData">
+            <span> 寮�濮嬫椂闂�:</span>
+            <span class="pickerTable">
+              <el-date-picker type="datetime" v-model="formInline.timeStart">
+              </el-date-picker>
+            </span>
+          </div>
+          <div class="pickerData">
+            <span >缁撴潫鏃堕棿:</span>
+            <span class="pickerTable">
+              <el-date-picker type="datetime" v-model="formInline.timeEnd">
+              </el-date-picker>
+            </span>
+          </div>
+        </div>
+        <div>
+          閲囨牱鐐规暟:
+          <el-select v-model="formInline.region" placeholder="50">
+            <el-option label="0" value="0"></el-option>
+            <el-option label="25" value="25"></el-option>
+            <el-option label="50" value="50"></el-option>
+            <el-option label="75" value="75"></el-option>
+            <el-option label="100" value="100"></el-option>
+          </el-select>
+        </div>
+        <div class="detailbtn"  @click="onSubmit">鏌ヨ</div>
+      </div>
+      <div class="boxChart">
+        <div style="width: 5rem;height: 1.5rem;" id="popChart" ref="main"></div>
+      </div>
+    </div>
+  </div>
+</template>
+
+<script>
+import 'dayjs/locale/es'
+import dayjs from 'dayjs'
+
+export default {
+  name: 'RealTimeEcharts',
+  data () {
+    return {
+      value1: '',
+      value2: '',
+      watchData: [],
+      dialogVisible: false,
+      myChar: null,
+      RealTimeChart: null,
+      value: '',
+      days: dayjs(new Date()).format('YYYYMMDDHHmmss'),
+      formInline: {
+        region: '',
+        timeStart: '2021-04-13 12:47:18',
+        timeEnd: '2021-04-13 12:52:18'
+      },
+      JsonRealWasteWater: {
+        id: 'mycharteff_second ',
+        title: 'COD',
+        legend: [
+          {
+            icon: 'image://../assets/imgs/legend/NOX.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '姘ㄦ爱',
+            textStyle: { color: '#ccc' }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/YanChen.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '鎬荤7',
+            textStyle: { color: '#ccc' }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/SO2.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '鎬绘爱',
+            textStyle: { color: '#ccc' }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/NOX.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: 'COD',
+            textStyle: { color: '#ccc' }
+          },
+          {
+            icon: 'image://../assets/imgs/legend/VOCs.png',
+            itemHeight: 5,
+            itemWidth: 20,
+            name: '搴熸按娴侀噺',
+            textStyle: { color: '#ccc' }
+          }
+        ],
+        ydatas: [
+          {
+            name: '姘哀',
+            data: [{ name: '姘哀', value: ['2021/04/13 12:47:18', 0.1900156] },
+              { name: '姘哀', value: ['2021/04/13 12:47:33', 0.1902795] },
+              { name: '姘哀', value: ['2021/04/13 12:47:48', 0.1892689] },
+              { name: '姘哀', value: ['2021/04/13 12:48:03', 0.1882582] },
+              { name: '姘哀', value: ['2021/04/13 12:48:18', 0.1882284] },
+              { name: '姘哀', value: ['2021/04/13 12:48:33', 0.1886617] },
+              { name: '姘哀', value: ['2021/04/13 12:48:48', 0.1873395] },
+              { name: '姘哀', value: ['2021/04/13 12:49:03', 0.1866319] },
+              { name: '姘哀', value: ['2021/04/13 12:49:18', 0.1895212] },
+              { name: '姘哀', value: ['2021/04/13 12:49:33', 0.1898232] },
+              { name: '姘哀', value: ['2021/04/13 12:49:48', 0.1880916] },
+              { name: '姘哀', value: ['2021/04/13 12:50:03', 0.1883546] },
+              { name: '姘哀', value: ['2021/04/13 12:50:18', 0.1907846] },
+              { name: '姘哀', value: ['2021/04/13 12:50:33', 0.1887416] },
+              { name: '姘哀', value: ['2021/04/13 12:50:48', 0.1873472] },
+              { name: '姘哀', value: ['2021/04/13 12:51:03', 0.1886214] },
+              { name: '姘哀', value: ['2021/04/13 12:51:18', 0.1891896] },
+              { name: '姘哀', value: ['2021/04/13 12:51:33', 0.1891176] },
+              { name: '姘哀', value: ['2021/04/13 12:51:48', 0.1890455] },
+              { name: '姘哀', value: ['2021/04/13 12:52:03', 0.1889734] },
+              { name: '姘哀', value: ['2021/04/13 12:52:18', 0.1889014] }],
+            zdcbcolor: 'red',
+            zxcolor: '#00B0F0',
+            bzz: 3
+          },
+          {
+            name: '鎬荤7',
+            data: [{ name: '鎬荤7', value: ['2021/04/13 12:47:18', 0.03813388] },
+              { name: '鎬荤7', value: ['2021/04/13 12:47:33', 0.03813333] },
+              { name: '鎬荤7', value: ['2021/04/13 12:47:48', 0.03813278] },
+              { name: '鎬荤7', value: ['2021/04/13 12:48:03', 0.03813223] },
+              { name: '鎬荤7', value: ['2021/04/13 12:48:18', 0.03813168] },
+              { name: '鎬荤7', value: ['2021/04/13 12:48:33', 0.03813113] },
+              { name: '鎬荤7', value: ['2021/04/13 12:48:48', 0.03813057] },
+              { name: '鎬荤7', value: ['2021/04/13 12:49:03', 0.03813003] },
+              { name: '鎬荤7', value: ['2021/04/13 12:49:18', 0.03812947] },
+              { name: '鎬荤7', value: ['2021/04/13 12:49:33', 0.03812892] },
+              { name: '鎬荤7', value: ['2021/04/13 12:49:48', 0.03812837] },
+              { name: '鎬荤7', value: ['2021/04/13 12:50:03', 0.03812782] },
+              { name: '鎬荤7', value: ['2021/04/13 12:50:18', 0.03812727] },
+              { name: '鎬荤7', value: ['2021/04/13 12:50:33', 0.03812672] },
+              { name: '鎬荤7', value: ['2021/04/13 12:50:48', 0.03812617] },
+              { name: '鎬荤7', value: ['2021/04/13 12:51:03', 0.03812562] },
+              { name: '鎬荤7', value: ['2021/04/13 12:51:18', 0.03812507] },
+              { name: '鎬荤7', value: ['2021/04/13 12:51:33', 0.03812452] },
+              { name: '鎬荤7', value: ['2021/04/13 12:51:48', 0.03812397] },
+              { name: '鎬荤7', value: ['2021/04/13 12:52:03', 0.03812342] },
+              { name: '鎬荤7', value: ['2021/04/13 12:52:18', 0.03812287] }],
+            zdcbcolor: 'red',
+            zxcolor: '#f48183',
+            bzz: 0.3
+          },
+          {
+            name: '鎬绘爱',
+            data: [{ name: '鎬绘爱', value: ['2021/04/13 12:47:18', 2.779342] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:47:33', 2.779337] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:47:48', 2.779331] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:48:03', 2.779823] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:48:18', 2.779321] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:48:33', 2.779344] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:48:48', 2.779452] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:49:03', 2.779224] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:49:18', 2.779133] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:49:33', 2.779445] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:49:48', 2.779743] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:50:03', 2.779332] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:50:18', 2.779562] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:50:33', 2.779560] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:50:48', 2.779534] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:51:03', 2.779412] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:51:18', 2.779673] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:51:33', 2.779452] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:51:48', 2.779397] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:52:03', 2.779342] },
+              { name: '鎬绘爱', value: ['2021/04/13 12:52:18', 2.779287] }],
+            zdcbcolor: 'red',
+            zxcolor: '#e0ffff',
+            bzz: 15
+          },
+          {
+            name: '搴熸按娴侀噺',
+            data: [{ name: '搴熸按娴侀噺', value: ['2021/04/13 12:47:18', 31.63029] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:47:33', 31.9791] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:47:48', 31.92095] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:48:03', 32.05784] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:48:18', 32.01669] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:48:33', 32.39344] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:48:48', 32.66452] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:49:03', 32.45224] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:49:18', 32.42133] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:49:33', 32.88445] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:49:48', 32.36743] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:50:03', 32.83332] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:50:18', 32.15562] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:50:33', 32.61560] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:50:48', 32.89534] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:51:03', 32.72412] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:51:18', 32.48673] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:51:33', 32.03452] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:51:48', 32.93397] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:52:03', 32.84342] },
+              { name: '搴熸按娴侀噺', value: ['2021/04/13 12:52:18', 32.16287] }],
+            zdcbcolor: 'red',
+            zxcolor: '#9ACD32',
+            bzz: null
+          },
+          {
+            name: 'COD',
+            data: [{ name: 'COD', value: ['2021/04/13 12:47:18', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:47:33', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:47:48', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:48:03', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:48:18', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:48:33', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:48:48', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:49:03', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:49:18', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:49:33', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:49:48', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:50:03', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:50:18', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:50:33', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:50:48', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:51:03', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:51:18', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:51:33', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:51:48', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:52:03', 11.24385] },
+              { name: 'COD', value: ['2021/04/13 12:52:18', 11.24385] }],
+            zdcbcolor: 'red',
+            zxcolor: '#fff21c',
+            bzz: 35
+          }
+        ],
+        yname: ' 娴撳害(mg/l)'
+      },
+      JSONTimeData: {
+        id: 21,
+        unionTagCodeList: ['TJIP45.rl3AT25035', 'TJIP45.rl3AT25033', 'TJIP45.rl3FT35032', 'TJIP45.rl3AT25034']
+      },
+      res: [{ UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 36.02153, ReadTime: '2021/04/14 03:59:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 35.7473, ReadTime: '2021/04/14 03:59:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 35.56014, ReadTime: '2021/04/14 04:00:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 35.59335, ReadTime: '2021/04/14 04:00:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 34.49617, ReadTime: '2021/04/14 04:00:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 34.33835, ReadTime: '2021/04/14 04:00:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 34.93116, ReadTime: '2021/04/14 04:01:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 35.831, ReadTime: '2021/04/14 04:01:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 36.67476, ReadTime: '2021/04/14 04:01:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 38.04687, ReadTime: '2021/04/14 04:01:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 37.78848, ReadTime: '2021/04/14 04:02:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 38.03456, ReadTime: '2021/04/14 04:02:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 37.81089, ReadTime: '2021/04/14 04:02:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 39.28693, ReadTime: '2021/04/14 04:02:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 39.79956, ReadTime: '2021/04/14 04:03:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 40.11547, ReadTime: '2021/04/14 04:03:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 40.72007, ReadTime: '2021/04/14 04:03:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 43.11903, ReadTime: '2021/04/14 04:03:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 44.28426, ReadTime: '2021/04/14 04:04:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 45.07601, ReadTime: '2021/04/14 04:04:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25035', TagValue: 43.81406, ReadTime: '2021/04/14 04:04:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.312585, ReadTime: '2021/04/14 03:59:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.507234, ReadTime: '2021/04/14 03:59:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.383248, ReadTime: '2021/04/14 04:00:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.385284, ReadTime: '2021/04/14 04:00:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.719143, ReadTime: '2021/04/14 04:00:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.730373, ReadTime: '2021/04/14 04:00:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.602137, ReadTime: '2021/04/14 04:01:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.459584, ReadTime: '2021/04/14 04:01:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.313675, ReadTime: '2021/04/14 04:01:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.305554, ReadTime: '2021/04/14 04:01:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.911544, ReadTime: '2021/04/14 04:02:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.744454, ReadTime: '2021/04/14 04:02:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 2.267665, ReadTime: '2021/04/14 04:02:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.606314, ReadTime: '2021/04/14 04:02:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.599967, ReadTime: '2021/04/14 04:03:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 1.939136, ReadTime: '2021/04/14 04:03:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 2.03244, ReadTime: '2021/04/14 04:03:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 2.183742, ReadTime: '2021/04/14 04:03:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 2.323384, ReadTime: '2021/04/14 04:04:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 2.403428, ReadTime: '2021/04/14 04:04:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25033', TagValue: 2.347282, ReadTime: '2021/04/14 04:04:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.018858, ReadTime: '2021/04/14 03:59:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.020605, ReadTime: '2021/04/14 03:59:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.047671, ReadTime: '2021/04/14 04:00:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.020306, ReadTime: '2021/04/14 04:00:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.054744, ReadTime: '2021/04/14 04:00:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.027292, ReadTime: '2021/04/14 04:00:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.026794, ReadTime: '2021/04/14 04:01:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.03381, ReadTime: '2021/04/14 04:01:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.041131, ReadTime: '2021/04/14 04:01:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.02754, ReadTime: '2021/04/14 04:01:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 4.998859, ReadTime: '2021/04/14 04:02:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.014368, ReadTime: '2021/04/14 04:02:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.019042, ReadTime: '2021/04/14 04:02:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.046045, ReadTime: '2021/04/14 04:02:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.024141, ReadTime: '2021/04/14 04:03:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.016951, ReadTime: '2021/04/14 04:03:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.01229, ReadTime: '2021/04/14 04:03:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.00666, ReadTime: '2021/04/14 04:03:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 5.005168, ReadTime: '2021/04/14 04:04:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 4.99309, ReadTime: '2021/04/14 04:04:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3FT35032', TagValue: 4.983859, ReadTime: '2021/04/14 04:04:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.128864, ReadTime: '2021/04/14 03:59:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.096089, ReadTime: '2021/04/14 03:59:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.13711, ReadTime: '2021/04/14 04:00:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.191255, ReadTime: '2021/04/14 04:00:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.159299, ReadTime: '2021/04/14 04:00:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.089755, ReadTime: '2021/04/14 04:00:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.098142, ReadTime: '2021/04/14 04:01:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.084317, ReadTime: '2021/04/14 04:01:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.040828, ReadTime: '2021/04/14 04:01:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.066903, ReadTime: '2021/04/14 04:01:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.12027, ReadTime: '2021/04/14 04:02:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.075927, ReadTime: '2021/04/14 04:02:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.062984, ReadTime: '2021/04/14 04:02:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.190477, ReadTime: '2021/04/14 04:02:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.192902, ReadTime: '2021/04/14 04:03:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.061741, ReadTime: '2021/04/14 04:03:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 0.991724, ReadTime: '2021/04/14 04:03:30', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.006655, ReadTime: '2021/04/14 04:03:45', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.044971, ReadTime: '2021/04/14 04:04:00', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.077099, ReadTime: '2021/04/14 04:04:15', ErrorMessage: null },
+        { UnionTagCode: 'TJIP45.rl3AT25034', TagValue: 1.131417, ReadTime: '2021/04/14 04:04:30', ErrorMessage: null }],
+      startTime: '',
+      endTime: '',
+      step: ''
+    }
+  },
+  mounted () {
+    this.formInline.timeEnd = dayjs().format('YYYY-MM-DD HH:mm:ss')
+    this.formInline.timeStart = dayjs().subtract(1, 'minute').format('YYYY-MM-DD HH:mm:ss')
+    // console.log(this.formInline.timeStart)
+    // console.log(this.JsonRealWasteWater.ydatas[0].data[0].value[0])
+  },
+  updated () {
+    this.DrawRealTimeDateChart()
+  },
+  methods: {
+    onSubmit () {
+      this.DrawRealTimeDateChart()
+    },
+    // 鐢诲簾姘存姌绾垮浘--瀹炴椂鏁版嵁
+    DrawRealTimeDateChart () {
+      var legend = this.JsonRealWasteWater.legend
+      var ydatas = this.JsonRealWasteWater.ydatas
+      var yname = this.JsonRealWasteWater.yname
+      this.RealTimeChart = this.$echarts.init(this.$refs.main)
+      var serLists = []
+      for (var i = 0; i < ydatas.length; i++) {
+        // var zdcbcolor = ydatas[i].zdcbcolor
+        var bz = ydatas[i].bzz
+        var obj
+        if (bz) {
+          obj = {
+            name: ydatas[i].name,
+            // symbol:'circle', // 鎶樼偣褰㈢姸
+            // symbolSize: 3,   //澶у皬
+            smooth: true, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            itemStyle: {
+              normal: {
+                color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
+                  // var biaozhuiz
+                  // for (var i = 0; i < bzzList.length; i++) {
+                  //   if (bzzList[i].name == c.seriesName) {
+                  //     biaozhuiz = bzzList[i].bzhui
+                  //   }
+                  // }
+                  // if (c.value[1] > biaozhuiz) {
+                  //   return zdcbcolor
+                  // } else if (c.value[1] > biaozhuiz * 0.9) {
+                  //   return '#FFA500'
+                  // }
+                  // {
+                  //   return '#33c95f'
+                  // }
+                },
+                lineStyle: { // 鎶樼嚎鐨勯鑹�
+                  color: ydatas[i].zxcolor,
+                  width: 2
+                },
+                // borderColor:'black',  //鎶樼偣杈规鐨勯鑹�
+                label: { // 鏄剧ず鍊�
+                  show: false
+                }
+              }
+
+            },
+            type: 'line',
+            data: ydatas[i].data,
+            markLine: { // 骞冲潎鍊� 锛� 鍜� 鎸囨爣涓婇檺
+              symbol: 'none',
+              data: [{
+                label: {
+                  normal: {
+                    position: 'end',
+                    formatter: ''// ydatas[i].name+'鏍囧噯鍊�' //+'{c}'
+                  }
+                },
+                name: '鏍囧噯鍊�',
+                yAxis: bz,
+                lineStyle: {
+                  color: ydatas[i].zxcolor,
+                  type: 'dashed',
+                  width: 2
+                }
+              }
+              ]
+            }
+          }
+        } else {
+          obj = {
+            name: ydatas[i].name,
+            // symbol:'circle', // 鎶樼偣褰㈢姸
+            // symbolSize: 3,   //澶у皬
+            smooth: true, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            yAxisIndex: 1,
+            itemStyle: {
+              normal: {
+                color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
+                  return '#33c95f'
+                },
+                lineStyle: { // 鎶樼嚎鐨勯鑹�
+                  color: ydatas[i].zxcolor,
+                  width: 2
+                },
+                // borderColor:'black',  //鎶樼偣杈规鐨勯鑹�
+                label: { // 鏄剧ず鍊�
+                  show: false
+                }
+              }
+
+            },
+            type: 'line',
+            data: ydatas[i].data
+          }
+        }
+
+        if (ydatas[i].name === '搴熸皵娴侀噺' || ydatas[i].name === '搴熸皵') {
+          obj.yAxisIndex = 1
+        }
+        serLists.push(obj)
+      }
+
+      var option = {
+        /*  title: {
+          text: title,
+      }, */
+        tooltip: { // 鎻愮ず妗�
+          trigger: 'axis',
+          axisPointer: {
+            type: 'cross',
+            label: {
+              color: '#1a4245'
+            }
+          },
+          formatter: function (params) {
+            var s = params[0].name + '<br />'
+            for (var i = 0; i < params.length; i++) {
+              // var name = params[i].name
+              // 鍥捐〃title鍚嶇О
+              var seriesName = params[i].seriesName
+              // 鍊�
+              var value = params[i].value[1]
+              // var valueFliter = this.formatter(value)
+              var maker = params[i].marker
+              var colo = ''
+              switch (seriesName) {
+                case 'COD':
+                  colo = '#fff21c'
+                  break
+                case '姘ㄦ爱':
+                  colo = '#00B0F0'
+                  break
+                case '鎬荤7':
+                  colo = '#f48183'
+                  break
+                case '鎬绘爱':
+                  colo = '#e0ffff'
+                  break
+                default:
+                  colo = '#9ACD32'
+                  break
+              }
+              maker = '<span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:' + colo + ';"></span>'
+              s += maker + seriesName + ':' + value + '<br />'
+            }
+            return s
+          }
+        },
+        toolbox: { // 鎵撳嵃绛夊伐鍏�
+          show: false,
+          feature: {
+            saveAsImage: {}
+          }
+        },
+        grid: { // 缃戞牸
+          top: '20%',
+          left: '7%',
+          bottom: '15%',
+          right: '5%'
+        },
+        legend: {
+          data: legend
+        },
+        dataZoom: [{
+          type: 'inside',
+          start: 0,
+          end: 100
+        }, {
+          start: 0,
+          end: 100,
+          show: false,
+          handleIcon: 'M10.7,11.9v-1.3H9.3v1.3c-4.9,0.3-8.8,4.4-8.8,9.4c0,5,3.9,9.1,8.8,9.4v1.3h1.3v-1.3c4.9-0.3,8.8-4.4,8.8-9.4C19.5,16.3,15.6,12.2,10.7,11.9z M13.3,24.4H6.7V23h6.6V24.4z M13.3,19.6H6.7v-1.4h6.6V19.6z',
+          handleSize: '80%',
+          handleStyle: {
+            color: '#fff',
+            shadowBlur: 3,
+            shadowColor: 'rgba(0, 0, 0, 0.6)',
+            shadowOffsetX: 2,
+            shadowOffsetY: 2
+          }
+        }],
+        xAxis: { // x 杞磋缃�
+          type: 'time',
+          boundaryGap: false,
+          axisLabel: { // x杞村叏閮ㄦ樉绀�
+            // rotate: 30,
+            margin: 6,
+            interval: 0,
+            textStyle: {
+              color: '#fff'
+            }
+          },
+          splitLine: { // 缃戞牸鍨傜洿绾夸负 铏氱嚎
+            show: true,
+            lineStyle: {
+              type: 'dashed'
+            }
+          },
+          axisTick: { // x 杞村埢搴︽樉绀�
+            show: false
+          },
+          axisLine: {
+            lineStyle: {
+              color: '#FFFFFF',
+              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+            }
+          }
+          // data: xdata
+        },
+        yAxis: [{
+          type: 'value',
+          name: yname,
+          max: function (value) {
+            return parseInt(value.max + 30)
+          },
+          axisLabel: {
+            formatter: '{value}',
+            textStyle: {
+              color: '#fff'
+            }
+          },
+          axisPointer: {
+            snap: true
+          },
+          splitLine: {
+            show: false
+          }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+          axisLine: {
+            lineStyle: {
+              color: '#FFFFFF',
+              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+            }
+          }
+        }, {
+          type: 'value',
+          name: '娴侀噺(m鲁/d)',
+          axisLabel: {
+            formatter: '{value}',
+            textStyle: {
+              color: '#fff'
+            }
+          },
+          axisPointer: {
+            snap: true
+          },
+          splitLine: {
+            show: false
+          }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+          // inverse: true,
+          // nameLocation: 'start',
+          // max:500,
+          axisLine: {
+            lineStyle: {
+              color: '#FFFFFF',
+              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+            }
+          }
+        }],
+        series: serLists
+      }
+      this.RealTimeChart.setOption(option)
+      /* RealTimeChart.on('legendselectchanged', function (params) {
+        // console.log(params);
+        var StdVal = null
+        var op = { yAxis: {} }
+        if (params.selected.COD) {
+          if (bzzList && bzzList.length > 0) {
+            for (let i = 0; i < bzzList.length; i++) {
+              if (bzzList[i].name == 'COD') {
+                StdVal = bzzList[i].bzhui
+              }
+            }
+          }
+
+          op.yAxis.max = function (value) {
+            var ma
+            if (value.max < StdVal) {
+              ma = StdVal
+            } else {
+              ma = Math.ceil(value.max)
+            }
+            return ma
+          }
+        } else if (params.selected['鎬绘爱']) {
+          if (bzzList && bzzList.length > 0) {
+            for (let i = 0; i < bzzList.length; i++) {
+              if (bzzList[i].name == '鎬绘爱') {
+                StdVal = bzzList[i].bzhui
+              }
+            }
+          }
+          op.yAxis.max = function (value) {
+            var ma
+            if (value.max < StdVal) {
+              ma = StdVal
+            } else {
+              ma = Math.ceil(value.max)
+            }
+            return ma
+          }
+        } else if (params.selected['姘ㄦ爱']) {
+          if (bzzList && bzzList.length > 0) {
+            for (let i = 0; i < bzzList.length; i++) {
+              if (bzzList[i].name == '姘ㄦ爱') {
+                StdVal = bzzList[i].bzhui
+              }
+            }
+          }
+          op.yAxis.max = function (value) {
+            var ma
+            if (value.max < StdVal) {
+              ma = StdVal
+            } else {
+              ma = Math.ceil(value.max)
+            }
+            return ma
+          }
+        } else if (params.selected['鎬荤7']) {
+          if (bzzList && bzzList.length > 0) {
+            for (let i = 0; i < bzzList.length; i++) {
+              if (bzzList[i].name == '鎬荤7') {
+                StdVal = bzzList[i].bzhui
+              }
+            }
+          }
+          op.yAxis.max = function (value) {
+            var ma
+            if (value.max < StdVal) {
+              ma = StdVal
+            } else {
+              ma = Math.ceil(value.max)
+            }
+            return ma
+          }
+        }
+        RealTimeChart.setOption(op)
+      }) */
+    },
+    getRtdb15s (unionTagCodeList, startTime, endTime, step, res) {
+      if (res.length > 0) {
+        // 澶勭悊鏁版嵁寮�濮�
+        var d = res
+        var nameList = [] // 瀛樻斁鍥句緥
+
+        var data // 鏁版嵁绫诲瀷// var data={name:'',value:[now1.getFullYear(), now1.getMonth() + 1, now1.getDate().join('/'),value]}
+        var datalist // 瀛樻斁data鐨勬暟缁�
+        // var bzh = []
+        for (var i = 0; i < d.length; i++) {
+          if (d[i].ErrorMessage != null) {
+            continue
+          }
+
+          // var name = CFG.DATA_REALTIME_TAGCODETABLE[d[i].UnionTagCode].TagName
+
+          if (nameList.length === 0) {
+            nameList.push(name)
+            var newdate = new Date(d[i].ReadTime)
+            data = {
+              name: name,
+              value: [newdate, d[i].TagValue]
+            }
+
+            datalist = {
+              name: name,
+              data: [data]
+            }
+
+            this.RealTimeDataList.push(datalist)
+          } else if (nameList.indexOf(name) < 0) {
+            nameList.push(name)
+            // bzh.push(d[i].StdValue);
+
+            // var newdate = new Date(d[i].ReadTime)
+
+            data = {
+              name: name,
+              value: [newdate, d[i].TagValue]
+            }
+            datalist = {
+              name: name,
+              data: [data]
+            }
+            this.RealTimeDataList.push(datalist)
+          } else if (i === d.length - 1) {
+            if (nameList.indexOf(name) < 0) {
+              nameList.push(name)
+              // bzh.push(d[i].StdValue);
+
+              // var newdate = new Date(d[i].ReadTime)
+
+              data = {
+                name: name,
+                value: [newdate, d[i].TagValue]
+              }
+              datalist = {
+                name: name,
+                data: [data]
+              }
+              // RealTimeDataList.push(datalist)
+            } else {
+              // var newdate = new Date(d[i].ReadTime)
+              data = {
+                name: name,
+                value: [newdate, d[i].TagValue]
+              }
+              for (var k = 0; k < this.RealTimeDataList.length; k++) {
+                if (this.RealTimeDataList[k].name === name) {
+                  this.RealTimeDataList[k].data.push(data)
+                }
+              }
+            }
+          } else {
+            const newdate = new Date(d[i].ReadTime)
+            data = {
+              name: name,
+              value: [newdate, d[i].TagValue]
+            }
+            for (let k = 0; k < this.RealTimeDataList.length; k++) {
+              if (this.RealTimeDataList[k].name === name) {
+                this.RealTimeDataList[k].data.push(data)
+              }
+            }
+          }
+        }
+
+        // var divid = 'mycharteff_second'
+        // var title = name
+        var lengList = []
+        var objTemp
+
+        for (var l = 0; l < nameList.length; l++) {
+          var obj
+          var iconurl
+          if (nameList[l] === 'COD') {
+            iconurl = 'image://../assets/imgs/legend/SO2.png'
+          } else if (nameList[l] === '姘ㄦ爱') {
+            iconurl = 'image://../assets/imgs/legend/NOX.png'
+          } else if (nameList[l] === '鎬荤7') {
+            iconurl = 'image://../assets/imgs/legend/YanChen.png'
+          } else if (nameList[l] === '鎬绘爱') {
+            iconurl = 'image://../assets/imgs/legend/zongdan.png'
+          } else {
+            iconurl = 'image://../assets/imgs/legend/VOCs.png'
+          }
+
+          if (nameList[l] === '搴熸按' || nameList[l] === '搴熸按娴侀噺') { // 灏嗗簾姘存祦閲忔帓鍒版暟缁勬渶鍚�
+            objTemp = {
+              name: nameList[l],
+              icon: iconurl,
+              textStyle: {
+                color: '#ccc'
+              },
+              itemWidth: 20,
+              itemHeight: 5
+            }
+          } else {
+            obj = {
+              name: nameList[l],
+              icon: iconurl,
+              textStyle: {
+                color: '#ccc'
+              },
+              itemWidth: 20,
+              itemHeight: 5
+            }
+            lengList.push(obj)
+          }
+        }
+        lengList.push(objTemp)
+
+        this.DrawRealTimeDateChart(this.JsonRealWasteWater.id, this.JsonRealWasteWater.title, this.JsonRealWasteWater.legend, this.JsonRealWasteWater.ydatas, this.JsonRealWasteWater.yname)
+      }
+    },
+    // 瀹炴椂鏁版嵁璋冪敤閽╁瓙鍑芥暟
+    IntervalRealTimeDate (id, unionTagCodeList, BBZMAPPING) {
+      // 瀹氭椂鍣ㄥ嚱鏁�
+      this.interValHander = setInterval(function () {
+        // $('.RealTime').empty()
+        this.startTime = dayjs().subtract(5, 'minute').format('YYYY-MM-DD HH:mm:ss')
+        this.endTime = dayjs().format('YYYY-MM-DD HH:mm:ss')
+        this.step = '15'
+        // this.getRtdb15s(this.unionTagCodeList, this.startTime, this.endTime, this.step, this.res)
+        // PreQueryTime=endTime;
+        this.DrawRealTimeDateChart(this.JsonRealWasteWater.id, this.JsonRealWasteWater.title, this.JsonRealWasteWater.legend, this.JsonRealWasteWater.ydatas, this.JsonRealWasteWater.yname)
+        this.IntervalRealTimeDate(this.JSONTimeData.id, this.JSONTimeData.unionTagCodeList, this.BBZMAPPING)
+      }, 15000)
+    }
+  }
+}
+</script>
+
+<style scoped lang="less">
+.grid-content{
+  font-size: 8px;
+  background-color: #2e4967;
+  text-align: center;
+  border-radius: 2px;
+  margin-right: 10px;
+  padding:0 10px
+}
+.infomation {
+  padding: 5px 10px;
+}
+
+.form-echrts {
+  width: 100%;
+  border-top: 1px solid #396d83;
+  //margin: 10px 10px 10px 10px;
+  .from-search{
+    display: flex;
+    padding:5px;
+    >div{margin-left: 10px}
+    .pickerMon{
+      display: flex;
+      >div:first-child {
+        margin-right: 10px;
+      }
+      .pickerData{
+        flex: 1;
+        display: flex;
+        >span{line-height: 22px}
+        .pickerTable {
+          margin-left: 3px;
+        }
+      }
+    }
+    /deep/.el-date-editor--datetime{
+      width: 100%;
+    }
+    /deep/.el-input__inner{
+      position: relative;
+      width:140px;
+      background-color: #2e4967;
+      color: #ffffff;
+      font-size: 12px;
+      height: 24px;
+      padding: 0;
+      border-color:#00fff6;
+      text-align: center;
+      //padding-left:20px ;
+      //padding: 0!important;
+    }
+    /deep/.el-input__icon{
+      display: block;
+      width: 140px;
+      height: 22px;
+      line-height: 22px;
+      cursor: pointer;
+      font-size: 0;
+    }
+    .echatsInput{
+      color: #00ffff;
+      background-color: #2e4967;
+      border: none;
+      border-radius: 6px;
+      width: 80px;
+      height: 22px;
+      text-align: center;
+    }
+    input::-webkit-calendar-picker-indicator {
+      opacity: 100;
+    }
+    .detailbtn{
+      background-color:#2e4967;
+      text-align: center;
+      padding: 0 7px;
+      line-height: 24px;
+      border-radius: 4px;
+      margin-right: 6px;
+    }
+    .detailbtn:hover{
+      box-shadow: 0 0 0.03rem #fff700 !important;
+      color:#fff700 !important;
+      cursor: pointer;
+    }
+  }
+  .el-dialog-div {
+    //height: 50vh!important;
+    overflow: auto;
+    //overflow: hidden;
+  }
+
+  #echarts {
+    margin: 0;
+    padding: 0;
+  }
+}
+</style>
diff --git a/src/components/LayerController/logic/PipeLineAnimal.js b/src/components/LayerController/logic/PipeLineAnimal.js
index 585147b..f712d96 100644
--- a/src/components/LayerController/logic/PipeLineAnimal.js
+++ b/src/components/LayerController/logic/PipeLineAnimal.js
@@ -1,28 +1,78 @@
+
 /**
  *  绠$嚎鍔ㄧ敾鎺у埗閫昏緫
  */
-const layerPipeLines = require('../../../conf/layers/LayerPipeLines').LayerPipeLines
+const LayerPipeLines = require('../../../conf/layers/LayerPipeLines').LayerPipeLines
+const STYLES = require('../../../conf/Constants').STYLES
 
 module.exports = function () {
-  this.init = (layer, L) => {
-    console.log('sssssss')
-    const layers = layerPipeLines.layers
+  this.init = () => {
+    const layers = LayerPipeLines.layers
     for (var i = 0; i < layers.length; i++) {
       const config = layers[i]
       const code = config.code
+      // window.layerFactory.show(config)
       const layer = window.layerFactory.layers[code]
-      layer.setStyle({
-        FILL: true,
-        WEIGHT: 3,
-        FILL_COLOR: '#73b2ff',
-        COLOR: '#73b2ff',
-        FILL_OPACITY: 0.2,
-        OPACITY: 1,
-        DASH_ARRAY: '4,4',
-        DASH_SPPED: -5,
-        ICON_SIZE: [10, 10]
-      })
-      console.log(layer)
+      if (layer) {
+        if (layer.eachLayer) {
+          layer.eachLayer(function (layer) {
+            layer.setStyle({
+              fill: STYLES.FILL,
+              weight: STYLES.WEIGHT,
+              fillColor: STYLES.FILL_COLOR,
+              color: STYLES.COLOR,
+              fillOpacity: STYLES.FILL_OPACITY,
+              opacity: STYLES.OPACITY,
+              dashArray: STYLES.DASH_ARRAY,
+              dashSpeed: STYLES.DASH_SPPED
+            })
+          })
+          // 閲嶆柊娣诲姞鍒板湴鍥句笂锛屽姩鐢绘墠鏈夋晥鏋�
+          window.map.removeLayer(layer)
+          window.layerFactory.show(config)
+        }
+      }
+    }
+    /* window.$layer.iframe({
+      content: {
+        content: publicBounced,
+        parent: this,
+        data: {
+          info: this.info,
+          fn: () => {
+            alert(1)
+          }
+        }
+      },
+      area: ['901px', '101px'],
+      title: '杩欐槸涓�涓爣棰樿繖鏄竴涓爣棰樿繖鏄竴涓爣棰樿繖鏄竴涓爣棰�',
+      maxmin: true,
+      shade: false,
+      shadeClose: false,
+      scrollbar: false,
+      resize: true,
+      btn: ['a', 'b'],
+      cancel: () => {
+        alert(2110)
+      }
+    }) */
+  }
+
+  this.destory = () => {
+    console.log('destory!!!')
+    const layers = LayerPipeLines.layers
+    for (var i = 0; i < layers.length; i++) {
+      const config = layers[i]
+      const code = config.code
+      // window.layerFactory.show(config)
+      const layer = window.layerFactory.layers[code]
+      if (layer) {
+        if (layer.eachLayer) {
+          layer.eachLayer(function (layer) {
+            layer.resetStyle()
+          })
+        }
+      }
     }
   }
 }
diff --git a/src/components/LayerController/logic/SolidWaste.js b/src/components/LayerController/logic/WasteSolid.js
similarity index 100%
rename from src/components/LayerController/logic/SolidWaste.js
rename to src/components/LayerController/logic/WasteSolid.js
diff --git a/src/components/LayerController/service/EventLayerService.js b/src/components/LayerController/service/EventLayerService.js
new file mode 100644
index 0000000..a8916df
--- /dev/null
+++ b/src/components/LayerController/service/EventLayerService.js
@@ -0,0 +1,25 @@
+import { logicMapper } from '../../../conf/Constants'
+
+class EventLayerService {
+  constructor (config) {
+    this.L = window.L
+    this.map = window.map
+    this.config = config
+  }
+
+  init () {
+    // 寮曞叆 鍏宠仈鐨刯s锛屽湪constant.js涓牴鎹甤onfig閰嶇疆鐨刬d寰楀埌澶勭悊js
+    const id = this.config.code
+    const checked = this.config.checked
+    const file = logicMapper[id]
+    if (!file) {
+      console.log('鎵句笉鍒伴�昏緫澶勭悊js!!!' + id)
+    } else {
+      var BusiLayer = require('../logic/' + file)
+      var busiLayer = new BusiLayer()
+      checked ? busiLayer.init(this.config) : busiLayer.destory(this.config)
+    }
+  }
+}
+
+export default EventLayerService
diff --git a/src/components/LayerController/service/LayerFactory.js b/src/components/LayerController/service/LayerFactory.js
index ae561e5..d475fb6 100644
--- a/src/components/LayerController/service/LayerFactory.js
+++ b/src/components/LayerController/service/LayerFactory.js
@@ -1,6 +1,7 @@
 import WfsLayerService from './WfsLayerService'
 import BusiLayerService from './BusiLayerService'
 import WmsLayerService from './WmsLayerService'
+import EventLayerService from './EventLayerService'
 
 class LayerFactory {
   constructor (options) {
@@ -27,9 +28,9 @@
   }
 
   /**
-   * 鎺у埗鏄剧ず鐨勭骇鍒�
-   * @param layerConfig
-   */
+     * 鎺у埗鏄剧ず鐨勭骇鍒�
+     * @param layerConfig
+     */
   initEvent (layerConfig) {
     this.map.on('zoomend ', (e) => this.toggleZoomByLayer(layerConfig))
   }
@@ -67,30 +68,35 @@
     var wfs = config.wfs
     var wms = config.wms
     var url = config.url
+    var checked = config.checked
     // 鍒ゆ柇鏄惁宸茬粡鍔犺浇杩囷紝鍔犺浇杩囧氨 鐩存帴寰楀埌瀵硅薄璋冪敤 鏄剧ず鍑芥暟
     var layer = this.layers[code]
-    if (!layer) {
-      layer = this.L.featureGroup({}).addTo(this.map)
+    // todo if鏄笉鏄お澶氫簡
+    if (checked) {
+      if ((wfs || wms || url)) {
+        if (layer) {
+          this.show(code)
+        } else {
+          layer = this.L.featureGroup({}).addTo(this.map)
+          this.layers[code] = layer
+        }
+      }
       // 2. 鍒ゆ柇绫诲瀷
       if (wfs) {
         // 3. 瀹炰緥鍖栧叿浣搒ervice
         var wfsLayerService = new WfsLayerService(config)
         wfsLayerService.init(layer)
         this.setZIndex(layer)
-      }
-      if (wms) {
+      } else if (wms) {
         var wmsLayerService = new WmsLayerService(config)
         wmsLayerService.init(layer)
-      }
-      // 璇锋眰涓氬姟鏁版嵁鎺ュ彛
-      if (url) {
+      } else if (url) {
         var busiLayerService = new BusiLayerService(config)
         busiLayerService.init(layer)
       }
-      layer ? (this.layers[code] = layer) : console.log('LayerFactory锛歯ewLayer is null锛宲lease check !!!')
-    } else {
-      this.show(code)
     }
+    var eventLayerService = new EventLayerService(config)
+    eventLayerService.init()
   }
 
   show (config) {
@@ -106,6 +112,7 @@
   hide (config) {
     var layer = this.layers[config.code]
     layer && this.map.removeLayer(layer)
+    this.load(config)
   }
 
   toggle (code) {
@@ -130,25 +137,25 @@
       })
     }
     /* for (var k in this.layers) {
-      var layerGroup = this.layers[k]
-      layerGroup.eachLayer(function (layer) {
-        console.log(layer)
-        console.log(layer.getAttribution())
-      })
-      var layers = layerGroup.getLayers()
-      if (layers) {
-        for (var m = 0; m < layers.length; m++) {
-          var layer = layers[m]
-          console.log(layer)
-          console.log(layer.getLayerId(val.id))
-          /!* var feature = layer.feature
-          if (feature.id === layerId) {
-            this.map.flyToBounds(bound)
-            return layer
-          } *!/
-        }
-      }
-    } */
+          var layerGroup = this.layers[k]
+          layerGroup.eachLayer(function (layer) {
+            console.log(layer)
+            console.log(layer.getAttribution())
+          })
+          var layers = layerGroup.getLayers()
+          if (layers) {
+            for (var m = 0; m < layers.length; m++) {
+              var layer = layers[m]
+              console.log(layer)
+              console.log(layer.getLayerId(val.id))
+              /!* var feature = layer.feature
+              if (feature.id === layerId) {
+                this.map.flyToBounds(bound)
+                return layer
+              } *!/
+            }
+          }
+        } */
     return null
   }
 
@@ -164,11 +171,11 @@
   }
 
   /**
-   * todo 杩欓噷鏃犳晥锛岃矊浼兼槸鍥犱负geojson鍔犺浇鍒板湴鍥句篃鏄釜layergroup
-   *
-   * 璁剧疆index,绾垮湪鏈�涓嬮潰锛岀偣鍦ㄤ笂闈�
-   * @param layerGroup 鍥惧眰缁�
-   */
+     * todo 杩欓噷鏃犳晥锛岃矊浼兼槸鍥犱负geojson鍔犺浇鍒板湴鍥句篃鏄釜layergroup
+     *
+     * 璁剧疆index,绾垮湪鏈�涓嬮潰锛岀偣鍦ㄤ笂闈�
+     * @param layerGroup 鍥惧眰缁�
+     */
   setZIndex (layer) {
     if (Array.isArray(layer)) {
       for (var i = 0; i < layer.length; i++) {
diff --git a/src/components/layer/index.js b/src/components/layer/index.js
new file mode 100644
index 0000000..7599395
--- /dev/null
+++ b/src/components/layer/index.js
@@ -0,0 +1,9 @@
+import layer from './src/layer.js'
+
+// 涓虹粍浠舵彁渚� install 瀹夎鏂规硶锛屼緵鎸夐渶寮曞叆
+layer.install = function (Vue) {
+  Vue.component('layer', layer)
+}
+
+// 榛樿瀵煎嚭缁勪欢
+export default layer
diff --git a/src/components/layer/src/helper/helper.js b/src/components/layer/src/helper/helper.js
new file mode 100644
index 0000000..82e75f7
--- /dev/null
+++ b/src/components/layer/src/helper/helper.js
@@ -0,0 +1,160 @@
+export default class helper {
+  /**
+   * 鐐瑰嚮mask鍏抽棴寮圭獥
+   * @param  {[type]} event [description]
+   * @param  {[type]} layer [description]
+   * @return {[type]}       [description]
+   */
+  static clickMaskCloseAll (event, layer, id) {
+    const mask = event.target.getAttribute('class')
+    if (mask && (mask.indexOf('notify-mask') > -1 || mask.indexOf('icon-remove') > -1)) {
+      layer.close(id)
+    }
+  }
+
+  /**
+   * 榛樿鐨剏es鎸夐挳鎿嶄綔
+   * @param  {[type]} event [description]
+   * @return {[type]}       [description]
+   */
+  static btnyes (event, options, formValue) {
+    if (typeof (options.yes) === 'function') {
+      if (options.type === 6) {
+        options.yes(formValue, options.id)
+      } else {
+        options.yes(options.id)
+      }
+    } else {
+      options.layer.close(options.id)
+    }
+  }
+
+  /**
+   * 榛樿鍙栨秷鎸夐挳鎿嶄綔
+   * @param  {[type]} event [description]
+   * @return {[type]}       [description]
+   */
+  static async btncancel (event, options) {
+    if (typeof (options.cancel) === 'function') {
+      await options.cancel(options.id)
+    } else {
+      options.layer.close(options.id)
+    }
+  }
+
+  /**
+   * 闅愯棌婊氬姩鏉�
+   */
+  static hiddenScrollBar (options) {
+    if (!options.scrollbar) {
+      const htmlDom = document.getElementsByTagName('html')[0]
+      const htmlClass = [...htmlDom.classList]
+      if (htmlClass.indexOf('vl-html-scrollbar-hidden') > -1) {
+        return
+      }
+
+      const htmlWidth = htmlDom.offsetWidth
+      // 闅愯棌婊氬姩鏉�
+      // htmlDom.style.overflowY = "hidden";
+      htmlDom.classList.add('vl-html-scrollbar-hidden')
+      const htmlWidthH = htmlDom.offsetWidth
+      htmlDom.style.marginRight = htmlWidthH - htmlWidth + 'px'
+    }
+  }
+
+  /**
+   * 榧犳爣鎷栧姩寮圭獥
+   * @param  {[type]} event   [description]
+   * @param  {[type]} options [description]
+   * @return {[type]}         [description]
+   */
+  static moveStart (event, options) {
+    options.offset = options.offset === 'auto' ? [] : options.offset
+    if (options.offset.length === 0) {
+      options.offset.push(document.getElementById(options.id + '').offsetLeft)
+      options.offset.push(document.getElementById(options.id + '').offsetTop)
+      options.offset.push(0)
+    }
+    if (options.offset.length === 2) {
+      options.offset.push(0)
+    }
+    options.offset[0] = (document.getElementById(options.id + '').offsetLeft)
+    options.offset[1] = (document.getElementById(options.id + '').offsetTop)
+  }
+
+  /**
+   * 鎷栧姩寮圭獥
+   * @param  {[type]} event  [description]
+   * @param  {[type]} ismove [description]
+   * @return {[type]}        [description]
+   */
+  static move (event, options, ismove) {
+    if (ismove) {
+      const o = document.getElementById(options.id + '_alert')
+      o.style.left = options.offset[0] + (event.clientX - this.moveLeft) + 'px'
+      o.style.top = options.offset[1] + (event.clientY - this.moveTop) + 'px'
+    }
+  }
+
+  /**
+   * [sleep description]
+   * @param  {[type]} ms [description]
+   * @return {[type]}    [description]
+   */
+  static sleep (ms) {
+    return new Promise(resolve => setTimeout(resolve, ms))
+  }
+
+  /**
+   *  娣卞害鎷疯礉
+   * @param {*} source
+   */
+  static deepClone (target) {
+    const copyedObjs = [] // 姝ゆ暟缁勮В鍐充簡寰幆寮曠敤鍜岀浉鍚屽紩鐢ㄧ殑闂锛屽畠瀛樻斁宸茬粡閫掑綊鍒扮殑鐩爣瀵硅薄
+    function _deepCopy (target) {
+      if ((typeof target !== 'object') || !target) {
+        return target
+      }
+      for (let i = 0; i < copyedObjs.length; i++) {
+        if (copyedObjs[i].target === target) {
+          return copyedObjs[i].copyTarget
+        }
+      }
+      let obj = {}
+      if (Array.isArray(target)) {
+        obj = [] // 澶勭悊target鏄暟缁勭殑鎯呭喌
+      }
+      copyedObjs.push({
+        target: target,
+        copyTarget: obj
+      })
+      Object.keys(target).forEach(key => {
+        if (obj[key]) {
+          return
+        }
+        obj[key] = _deepCopy(target[key])
+      })
+      return obj
+    }
+    return _deepCopy(target)
+  }
+
+  /**
+   *  鍙栧伓鏁�
+   * @param {*} str
+   */
+  static evenNumber (str = '') {
+    const result = str.match(/\d+/g)
+    if (result) {
+      const n = parseInt(result[0])
+      if (n % 2 === 0) {
+        return str
+      } else {
+        str = str.replace(n, n + 1)
+        return str
+      }
+    } else {
+      return str
+    }
+  }
+}
diff --git a/src/components/layer/src/iframe.vue b/src/components/layer/src/iframe.vue
new file mode 100644
index 0000000..4b9d07f
--- /dev/null
+++ b/src/components/layer/src/iframe.vue
@@ -0,0 +1,126 @@
+<template>
+  <div class="public-bounced map-background" v-drag>
+    <div class="public-bounced-title panel-title" ref="publicBounced">
+      <span>{{options.title}}</span>
+      <i class="el-icon-circle-close" @click="close"></i>
+    </div>
+    <div class="public-bounced-content" :id="id">
+      {{options.content}}
+    </div>
+  </div>
+</template>
+
+<script>
+import helper from './helper/helper.js'
+
+export default {
+  data () {
+    return {
+      cls: {
+        'vl-notify-iframe': true
+      },
+      id: 'vlip' + new Date().getTime()
+    }
+  },
+  props: {
+    options: {
+      type: Object,
+      default: function () {
+        return {}
+      }
+    }
+  },
+  computed: {
+    contentStyle () {
+      return {
+        height: 'calc(100% - 50px)', // parseInt(this.options.area[1]) - 50 + "px",
+        minHeight: '20px',
+        overflow: 'auto'
+      }
+    }
+  },
+  async mounted () {
+    this.getContent()
+    helper.hiddenScrollBar(this.options)
+  },
+  methods: {
+    close () {
+
+    },
+    async getContent () {
+      await helper.sleep(10)
+      const propsData = helper.deepClone(this.options.content.data) || {}
+      propsData.layerid = this.options.id
+      propsData.lydata = this.options.content.data
+      propsData.lyoption = this.options
+      console.log(this.options.content.content)
+      const instance = new this.options.content.content({
+        // 鍏蜂綋鍙傛暟淇℃伅锛岃鍙傝�僾ue婧愮爜
+        parent: this.options.content.parent,
+        propsData: propsData
+      })
+      instance.vm = instance.$mount()
+      document.getElementById(this.id).appendChild(instance.vm.$el)
+      this.options.layer.instancesVue[this.options.id].iframe = instance.vm
+    },
+
+    btnyes (event) {
+      helper.btnyes(event, this.options)
+    },
+    btncancel (event) {
+      helper.btncancel(event, this.options)
+    }
+  }
+}
+</script>
+
+<style lang="less" scoped>
+  .public-bounced {
+    z-index: 2000;
+    position: absolute;
+    top: 35%;
+    left: 20%;
+
+  .public-bounced-title {
+    cursor: move;
+    height: 0.1rem;
+    padding: 10px 0;
+    display: flex;
+    align-items: center;
+    justify-content: space-between;
+
+  span {
+    color: #f4f7ff;
+    margin: 0 15px;
+    font-size: 14px;
+  }
+
+  i {
+    color: #C0C4CC;
+    margin: 0 15px;
+    font-size: 22px;
+    cursor: pointer;
+  }
+
+  i:hover {
+    color: #00fff6;
+  }
+  }
+
+  .public-bounced-content {
+    padding: 0.1rem;
+    display: flex;
+  //align-items: center;
+  //justify-content: space-around;
+
+  .public-bounced-content-left {
+  //width: 4.8rem;
+  }
+
+  .public-bounced-content-right {
+  //width: 3rem;
+    margin-left: 0.1rem;
+  }
+  }
+  }
+</style>
diff --git a/src/components/layer/src/layer.js b/src/components/layer/src/layer.js
new file mode 100644
index 0000000..b42ef27
--- /dev/null
+++ b/src/components/layer/src/layer.js
@@ -0,0 +1,195 @@
+import layerVue from './layer.vue'
+const Notification = function (Vue, globalOption = {
+  msgtime: 1.5 // msg娑堝け鏃堕棿
+}) {
+  const NotificationConstructor = Vue.extend(layerVue)
+  const self = {}
+  const defOptions = {
+    type: 0, // 0锛堜俊鎭锛岄粯璁わ級1锛堥〉闈㈠眰锛�2锛坕frame灞傦級3锛堝姞杞藉眰锛�4锛坱ips灞傦級,5msg,6prompt
+    title: '淇℃伅',
+    content: '',
+    area: 'auto',
+    offset: 'auto',
+    icon: -1,
+    btn: '纭畾',
+    time: 0,
+    maxmin: false, // 鏈�澶ф渶灏忓寲
+    shade: true,
+    yes: '',
+    cancel: '',
+    tips: [0, {}], // 鏀寔涓婂彸涓嬪乏鍥涗釜鏂瑰悜锛岄�氳繃1-4杩涜鏂瑰悜璁惧畾,鍙互璁惧畾tips: [1, '#c00']
+    tipsMore: false, // 鏄惁鍏佽澶氫釜tips
+    shadeClose: true,
+    scrollbar: true, // 鏄惁鍏佽娴忚鍣ㄥ嚭鐜版粴鍔ㄦ潯:榛樿鏄厑璁�
+    resize: false // 鏄惁鍏佽鎷変几锛岄粯璁ゆ槸涓嶅厑璁�
+  }
+  self.instances = {}
+  self.instancesVue = []
+  self.iframeMinList = []
+  let seed = 0
+
+  /**
+   * [function description]
+   * @method function
+   * @param  {[type]} options [description]
+   * @return {[type]}         [description]
+   */
+  self.open = function (options) {
+    options = mergeJson(options, defOptions)
+    const id = `notification_${new Date().getTime()}_${seed++}`
+    options.id = id
+    options.layer = self
+    const instance = new NotificationConstructor({
+      data: options
+    })
+    if (options.type === 1) {
+      options.content.content = Vue.extend(options.content.content)
+    }
+    instance.id = id
+    instance.vm = instance.$mount()
+    self.instances[id] = {
+      inst: instance,
+      type: options.type
+    }
+    document.body.appendChild(instance.vm.$el)
+    self.instancesVue[id] = {
+      mask: '',
+      main: instance.vm,
+      iframe: ''
+    }
+    return id
+  }
+  /**
+   * [description]
+   * @param  {[type]} options [description]
+   * @return {[type]}         [description]
+   */
+  self.iframe = function (opt) {
+    let option = {
+      type: 1,
+      content: opt.content,
+      area: opt.area
+    }
+    option = mergeJson(option, opt)
+    console.log(option)
+    return self.open(option)
+  }
+  /**
+   * 鍏抽棴涓�涓脊绐�
+   * @param  {[type]} id [description]
+   * @return {[type]}    [description]
+   */
+  self.close = function (id) {
+    const oElm = document.getElementById(id)
+    if (oElm) {
+      document.body.removeChild(oElm)
+      delete self.instances[id]
+      self.instancesVue[id].main.$destroy()
+      if (self.instancesVue[id].iframe !== '') {
+        const minindex = parseInt(self.instancesVue[id].main.$el.getAttribute('minindex') || -2)
+        if (minindex > -1) {
+          self.iframeMinList[minindex] = -1
+        }
+        self.instancesVue[id].iframe.$destroy()
+      }
+      // 鍙栨秷闅愯棌婊氬姩鏉�
+      if (!self.instancesVue[id].main.scrollbar) {
+        let scrollbarCount = 0
+        for (const key in self.instancesVue) {
+          if (!self.instancesVue[key].main.scrollbar) {
+            scrollbarCount++
+          }
+        }
+        if (scrollbarCount === 1) {
+          const htmlDom = document.getElementsByTagName('html')[0]
+          htmlDom.style.marginRight = 'auto'
+          htmlDom.classList.remove('vl-html-scrollbar-hidden')
+        }
+      }
+      // 鎺у埗閬僵,鍒犻櫎鎺夊綋鍓嶇殑閬僵
+      if (self.instancesVue[id].main.shade) {
+        const layerMask = document.getElementById(id + '_mask')
+        const maskId = id + '_mask'
+        document.body.removeChild(layerMask)
+        if (self.instancesVue[maskId]) {
+          self.instancesVue[maskId].mask.$destroy()
+        }
+      }
+      delete self.instancesVue[id]
+    } else {
+      setTimeout(function () {
+        const oElm = document.getElementById(id)
+        if (oElm) {
+          document.body.removeChild(oElm)
+          delete self.instances[id]
+          self.instancesVue[id].main.$destroy()
+          if (self.instancesVue[id].iframe !== '') {
+            self.instancesVue[id].iframe.$destroy()
+          }
+        }
+      }, 200)
+    }
+  }
+  /**
+   * 鍏抽棴涓�涓脊绐�
+   * @param  {[type]} id [description]
+   * @return {[type]}    [description]
+   */
+  self.closeAll = function (type = -1) {
+    const types = {
+      page: 0,
+      iframe: 1
+    }
+    if (type === -1) {
+      for (const k in self.instances) {
+        self.close(k)
+      }
+    } else {
+      const targetType = types[type]
+      for (const k in self.instances) {
+        if (self.instances[k].type === targetType) {
+          self.close(k)
+        }
+      }
+    }
+  }
+  /**
+   * 鎵嬪姩鏈�澶у寲
+   */
+  self.full = function (id = '') {
+    document.querySelector('#' + id + ' .lv-icon-max').click()
+  }
+  /**
+   * 鎵嬪姩鏈�灏忓寲
+   */
+  self.min = function (id = '') {
+    document.querySelector('#' + id + ' .lv-icon-mini').click()
+  }
+  /**
+   * 鎵嬪姩鏈�灏忓寲
+   */
+  self.restore = function (id = '') {
+    document.querySelector('#' + id + ' .lv-icon-huanyuan').click()
+  }
+
+  /**
+   * 鍚堝苟json
+   * @method mergeJson
+   * @param  {[type]}  optons [description]
+   * @param  {[type]}  def    [description]
+   * @return {[type]}         [description]
+   */
+  function mergeJson (options, def) {
+    for (const key in def) {
+      if (options[key] === undefined) {
+        options[key] = def[key]
+      }
+    }
+    return options
+  }
+
+  return self
+}
+
+// module.exports = Notification;
+export default Notification
diff --git a/src/components/layer/src/layer.vue b/src/components/layer/src/layer.vue
new file mode 100644
index 0000000..1ef2000
--- /dev/null
+++ b/src/components/layer/src/layer.vue
@@ -0,0 +1,46 @@
+<template lang="html">
+    <component :options="this.$data" :is="getActiveName"></component>
+</template>
+
+<script>
+import pzpage from './page.vue'
+import pziframe from './iframe.vue'
+
+export default {
+  data () {
+    return {
+      id: '',
+      type: 0, // 0锛坅lert榛樿锛�1锛堥〉闈㈠眰锛�2锛坕frame灞傦級3锛坙oading锛�4锛坱ips灞傦級,5(msg),6(prompt)
+      title: '淇℃伅',
+      content: '',
+      area: 'auto',
+      offset: 'auto',
+      icon: -1,
+      btn: '纭畾',
+      time: 0,
+      shade: true,
+      yes: '',
+      cancel: ''
+    }
+  },
+  computed: {
+    getActiveName () {
+      const comps = [
+        'pzpage',
+        'pziframe'
+      ]
+      return comps[this.$data.type]
+    }
+  },
+  mounted () {},
+  methods: {},
+  watch: {},
+  components: {
+    pzpage,
+    pziframe
+  }
+}
+</script>
+
+<style lang="less">
+</style>
diff --git a/src/components/layer/src/page.vue b/src/components/layer/src/page.vue
new file mode 100644
index 0000000..153f993
--- /dev/null
+++ b/src/components/layer/src/page.vue
@@ -0,0 +1,73 @@
+<template lang="html">
+    <div class="public-bounced map-background" v-drag v-show="flag">
+        <div class="public-bounced-title panel-title" ref="publicBounced">
+            <span>{{options.title}}</span>
+            <i class="el-icon-circle-close" @click="closePopup"></i>
+        </div>
+        <div class="public-bounced-content">
+            {{options.content}}
+        </div>
+    </div>
+</template>
+
+<script>
+export default {
+  data () {
+    return {
+      moveLeft: 0, // 宸︾Щ鐨勮窛绂�
+      moveTop: 0, // 涓婄Щ鐨勮窛绂�
+      ismove: false
+    }
+  },
+  props: {
+    options: {
+      type: Object,
+      default: function () {
+        return {}
+      }
+    }
+  },
+  computed: {},
+  mounted () { },
+  methods: {
+    close: function (event) {
+      const mask = event.target.getAttribute('class')
+      if (mask && mask.indexOf('notify-mask') > -1) {
+        this.options.layer.close(this.options.id)
+      }
+    },
+    moveStart: function (event) {
+      this.options.offset = this.options.offset === 'auto' ? [] : this.options.offset
+      if (this.options.offset.length === 0) {
+        this.options.offset.push(document.getElementById(this.options.id + '_alert').offsetLeft)
+        this.options.offset.push(document.getElementById(this.options.id + '_alert').offsetTop)
+        this.options.offset.push(0)
+      }
+      if (this.options.offset.length === 2) {
+        this.options.offset.push(0)
+      }
+      this.options.offset[0] = (document.getElementById(this.options.id + '_alert').offsetLeft)
+      this.options.offset[1] = (document.getElementById(this.options.id + '_alert').offsetTop)
+      this.moveLeft = event.clientX
+      this.moveTop = event.clientY
+      this.ismove = true
+    },
+    move: function (event) {
+      if (this.ismove) {
+        const o = document.getElementById(this.options.id + '_alert')
+        o.style.left = this.options.offset[0] + (event.clientX - this.moveLeft) + 'px'
+        o.style.top = this.options.offset[1] + (event.clientY - this.moveTop) + 'px'
+      }
+    },
+    moveEnd: function () {
+      this.ismove = false
+    }
+  },
+  watch: {
+
+  },
+  components: {
+
+  }
+}
+</script>
diff --git a/src/components/panel/topicSearch/GasWasteSearch.vue b/src/components/panel/topicSearch/GasWasteSearch.vue
index 039db27..b4d485f 100644
--- a/src/components/panel/topicSearch/GasWasteSearch.vue
+++ b/src/components/panel/topicSearch/GasWasteSearch.vue
@@ -67,8 +67,8 @@
       <div class="environmental-risk-list" v-for="(item,index) in list" :key="index" @click="handleLocation(item)"><!--  -->
         <img src="../../../../public/assets/images/map/exhaust/fq_green2.png" alt="" class="state"/>
         <div>
-          <h3>###鐐煎寲閮�</h3>
-          <p>鎵�灞為儴闂細<span>鐐煎寲閮�</span></p>
+          <h3>{{ item.Name }}</h3>
+          <p>鎵�灞為儴闂細<span>{{ item.porltName }}</span></p>
           <p>椋庨櫓绾у埆锛�<span>涓夌骇</span></p>
         </div>
       </div>
@@ -104,7 +104,10 @@
   name: 'GasWasteSearch',
   data () {
     return {
+      layer: window.map,
+      L: window.L,
       gdVisible: true,
+      instance: null,
       list: [],
       total: 0,
       inareaTypeOptions: [],
@@ -161,12 +164,13 @@
       const res = await mapApi.getWasteGas(param)
       // console.log(res)
       this.list = res.Result.DataInfo
+      console.log(this.list)
     },
     // 寮圭獥灞曠ず
     async handleLocation (val) {
       console.log(val)
       const pos = [val.Latitude, val.Longitude]
-      window.map.flyTo(pos, 13)
+      window.map.flyTo(pos, 15)
       const positionX = val.Latitude
       const positionY = val.Longitude
 
@@ -175,7 +179,6 @@
       var iconUrl = this.differentTypes(ContrLevel)
 
       const marker = this.L.marker([positionX, positionY], {
-        // totransferData: this.searchDataDisplay[i],
         icon: this.L.icon({
           iconUrl: iconUrl,
           iconSize: [30, 30],
@@ -188,7 +191,7 @@
           StoragePlaceId: val.StoragePlaceId
         }
         // 寮规鏍囬
-        const title = val.Name
+        const title = val
         console.log(title)
         // 鍩烘湰淇℃伅 tabs
         const result = await mapApi.getWasteGas(dataValue)
@@ -215,19 +218,20 @@
         // document.body.removeChild(instance.$el)
         // 閫氳繃鏂规硶 鍚戠粦瀹氬脊妗嗕紶閫掓暟鎹�
         this.instance.setGasData(title, result.Result.DataInfo, Mondata.Result.DataInfo, ManualData.Result.DataInfo, 'feiqi')
+        // console.log(title, result.Result.DataInfo, Mondata.Result.DataInfo, ManualData.Result.DataInfo)
         // this.setPanTo(pos, 250)
-      }, 1000)
+      }, 100)
       console.log(t1)
     },
     // 涓嶅悓绫诲瀷鍥剧墖鍔犺浇
     differentTypes (ContrLevel) {
-      var effectOfChange
+      // effectOfChange
       /*
        if (ContrLevel === 1) {
          effectOfChange = ImgBlue
        } else if (ContrLevel === 2) {
       */
-      effectOfChange = ImagGreen
+      const effectOfChange = ImagGreen
       // } else if (ContrLevel === 3) {
       //   effectOfChange = ImagBright
       // } else {
diff --git a/src/components/panel/topicSearch/SewersSearch.vue b/src/components/panel/topicSearch/SewersSearch.vue
index 712dc17..04ef126 100644
--- a/src/components/panel/topicSearch/SewersSearch.vue
+++ b/src/components/panel/topicSearch/SewersSearch.vue
@@ -36,13 +36,11 @@
         </div>
         <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">
-                {{ 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>-->
+            <img class="state" :src="getImgSrc()" />
+            <div>
+              <h3 @click="handleLocation(item)">{{ item.properties.pipename }}</h3>
+              <p>鎵�灞炰紒涓氾細<span>{{ item.properties.orgcode }}</span>
+              <p>璁炬柦绫诲瀷锛�<span>{{ item.properties.teetype }}</span></p>
             </div>
           </div>
         </el-scrollbar>
@@ -110,6 +108,10 @@
   },
   props: ['title'],
   methods: {
+    getImgSrc () {
+      const icon = this.form.dataType.icon
+      return icon ? 'assets/images/map/' + icon : ''
+    },
     handleClick (tab, event) {
       console.log(tab, event)
     },
diff --git a/src/components/panel/topicSearch/SolidWasteSearch.vue b/src/components/panel/topicSearch/SolidWasteSearch.vue
index 5da507e..09d9660 100644
--- a/src/components/panel/topicSearch/SolidWasteSearch.vue
+++ b/src/components/panel/topicSearch/SolidWasteSearch.vue
@@ -195,6 +195,7 @@
         }
         // 寮规鏍囬
         const title = val.Name
+        debugger
         // 鍩烘湰淇℃伅 tabs
         const resultBasic = await mapApi.getSolidWasteBaseInfo(dataValue)
         // 璇︾粏淇℃伅灞曠ず table
diff --git a/src/components/table/components/SolidWaste.vue b/src/components/table/components/WasteSolid.vue
similarity index 99%
rename from src/components/table/components/SolidWaste.vue
rename to src/components/table/components/WasteSolid.vue
index 8d635dd..ee4dbb4 100644
--- a/src/components/table/components/SolidWaste.vue
+++ b/src/components/table/components/WasteSolid.vue
@@ -95,7 +95,7 @@
 import MissingAlarm from '@components/table/components/componented/MissingAlarm'
 
 export default {
-  name: 'SolidWaste',
+  name: 'WasteSolid',
   components: {
     MissingAlarm,
     Refinery,
diff --git a/src/components/table/components/tabHandover.vue b/src/components/table/components/tabHandover.vue
index 311d7b6..e451864 100644
--- a/src/components/table/components/tabHandover.vue
+++ b/src/components/table/components/tabHandover.vue
@@ -1,6 +1,6 @@
 <template>
   <div>
-    <el-tabs  v-model="activeName" @tab-click="handleClick">
+    <el-tabs v-model="activeName" @tab-click="handleClick">
       <!-- <el-tab-pane label="搴熸按" name="first">
         <waste-water></waste-water>
       </el-tab-pane>
@@ -24,7 +24,7 @@
 <script>
 import WasteWater from '@components/table/components/WasteWater'
 // import WasteGas from '@components/table/components/WasteGas'
-import SolidWaste from '@components/table/components/SolidWaste'
+import SolidWaste from '@components/table/components/WasteSolid'
 import AirQuality from '@components/table/components/AirQuality'
 
 import { TopicList } from '../../../conf/Topic'
diff --git a/src/conf/Constants.js b/src/conf/Constants.js
index d4c087e..2b25457 100644
--- a/src/conf/Constants.js
+++ b/src/conf/Constants.js
@@ -4,12 +4,12 @@
   POLYGON: 'polygon'
 }
 
-export const PIPELINE_WFS = 'http://xearth.cn:8088/server/ogcserver/PipeLine2/wfs'
+export const PIPELINE_WFS = 'http://xearth.cn:8088/server/ogcserver/PipeLine/wfs'
 
 export const logicMapper = {
   wasteGasPfk: 'WasteGas.js',
   wasteWaterPfk: 'WasteWater.js',
-  wasteSolidCcd: 'SolidWaste.js',
+  wasteSolidCcd: 'WasteSolid.js',
   sewersAreaGs: 'Company.js',
   pipesegment: 'PipeLineAnimal.js'
 }
diff --git a/src/conf/LayerTopic.js b/src/conf/LayerTopic.js
index da1a49e..4cf11c4 100644
--- a/src/conf/LayerTopic.js
+++ b/src/conf/LayerTopic.js
@@ -15,7 +15,7 @@
 export const LayerTopic = {
   code: 'sewersTopic',
   name: '涓撻鍥惧眰',
-  checked: true,
+  checked: false,
   isShow: true,
   layers: [LayerPollutionSources, LayerWasteWater, LayerWasteGas, LayerWasteSolid, LayerAirQuality, LayerEnvRisk, LayerSoilGroundWater, LayerPipeLines, LayerVideo, LayerArea]
 }
diff --git a/src/conf/layers/LayerAirQuality.js b/src/conf/layers/LayerAirQuality.js
index 5c0de19..ba96008 100644
--- a/src/conf/layers/LayerAirQuality.js
+++ b/src/conf/layers/LayerAirQuality.js
@@ -6,15 +6,14 @@
 export const LayerAirQuality = {
   code: 'sewersAirQuality',
   name: '绌烘皵璐ㄩ噺',
-  checked: true,
+  checked: false,
   layers: [
     {
       code: 'airQualityStation',
       name: '鐩戞祴绔�',
       sname: '鐩戞祴绔�', // 琛ㄥ悕
-      checked: true, // 榛樿閫変腑鐘舵��
-      url: WFS_URL + '?TYPENAME=鍏徃',
-      minZoom: 10
+      checked: false, // 榛樿閫変腑鐘舵��
+      url: WFS_URL + '?TYPENAME=鍏徃'
     }
   ]
 }
diff --git a/src/conf/layers/LayerArea.js b/src/conf/layers/LayerArea.js
index ffdbf98..0ec2ae6 100644
--- a/src/conf/layers/LayerArea.js
+++ b/src/conf/layers/LayerArea.js
@@ -6,7 +6,7 @@
 export const LayerArea = {
   code: 'sewersArea',
   name: '鍖哄煙淇℃伅',
-  checked: true,
+  checked: false,
   layers: [
     {
       code: 'sewersAreaGs',
@@ -19,14 +19,14 @@
       code: 'sewersAreaMt',
       name: '鐮佸ご',
       sname: '鐮佸ご',
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false, // 榛樿閫変腑鐘舵��
       wfs: WFS_URL + '?TYPENAME=鐮佸ご'
     },
     {
       code: 'sewersAreaZz',
       name: '瑁呯疆鍖�',
       sname: '瑁呯疆鍖�',
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false, // 榛樿閫変腑鐘舵��
       wfs: WFS_URL + '?TYPENAME=瑁呯疆鍖�'
     }
   ]
diff --git a/src/conf/layers/LayerEnvRisk.js b/src/conf/layers/LayerEnvRisk.js
index b1dfafe..def8c62 100644
--- a/src/conf/layers/LayerEnvRisk.js
+++ b/src/conf/layers/LayerEnvRisk.js
@@ -6,31 +6,29 @@
 export const LayerEnvRisk = {
   code: 'sewersEnvRisk',
   name: '鐜椋庨櫓',
-  checked: true,
+  checked: false,
   layers: [
     {
       code: 'envRiskChart',
       name: '椋庨櫓缁熻鍥�',
       sname: '椋庨櫓缁熻鍥�', // 琛ㄥ悕
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false, // 榛樿閫変腑鐘舵��
       url: WFS_URL + '?TYPENAME=鍏徃',
-      minZoom: 10,
       color: ''
     },
     {
       code: 'envRiskMaterial',
       name: '鐗╄祫搴�',
       sname: '鐗╄祫搴�',
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false, // 榛樿閫変腑鐘舵��
       wfs: WFS_URL + '?TYPENAME=鐮佸ご',
-      minZoom: 10,
       color: ''
     },
     {
       code: 'envRiskMajor',
       name: '閲嶅ぇ椋庨櫓',
       sname: '閲嶅ぇ椋庨櫓',
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false, // 榛樿閫変腑鐘舵��
       wfs: WFS_URL + '?TYPENAME=瑁呯疆鍖�',
       minZoom: 10,
       color: 'red'
@@ -39,7 +37,7 @@
       code: 'envRiskFirst',
       name: '涓�绾ч闄�',
       sname: '涓�绾ч闄�',
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false, // 榛樿閫変腑鐘舵��
       wfs: WFS_URL + '?TYPENAME=瑁呯疆鍖�',
       minZoom: 10,
       color: 'sandybrown'
@@ -48,7 +46,7 @@
       code: 'envRiskSecond',
       name: '浜岀骇椋庨櫓',
       sname: '浜岀骇椋庨櫓',
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false, // 榛樿閫変腑鐘舵��
       wfs: WFS_URL + '?TYPENAME=瑁呯疆鍖�',
       minZoom: 10,
       color: 'yellow'
diff --git a/src/conf/layers/LayerFsss.js b/src/conf/layers/LayerFsss.js
index 4fb6a1d..85df78c 100644
--- a/src/conf/layers/LayerFsss.js
+++ b/src/conf/layers/LayerFsss.js
@@ -54,7 +54,6 @@
       code: 'pipesegment',
       name: '娴佸悜',
       sname: 'ywslx',
-      url: 'pipesegment',
       checked: false
     },
     {
diff --git a/src/conf/layers/LayerPipeLines.js b/src/conf/layers/LayerPipeLines.js
index 6e3f5b1..d579631 100644
--- a/src/conf/layers/LayerPipeLines.js
+++ b/src/conf/layers/LayerPipeLines.js
@@ -10,14 +10,14 @@
 export const LayerPipeLines = {
   code: 'sewersPipeLines',
   name: '绠$嚎',
-  checked: true,
+  checked: false,
   childLayer: [LayerFsss, LayerHbss],
   layers: [
     {
       code: 'rainline',
       name: '闆ㄦ按绾�',
       sname: '闆ㄦ按绾�',
-      checked: true,
+      checked: false,
       wfs: WFS_URL + '?TYPENAME=绠$綉',
       minZoom: 10
     },
@@ -25,7 +25,7 @@
       code: 'accidentline',
       name: '浜嬫晠姘寸嚎',
       sname: '浜嬫晠姘�',
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false,
       wfs: WFS_URL + '?TYPENAME=浜嬫晠姘�',
       minZoom: 10
     },
@@ -33,7 +33,7 @@
       code: 'oilline',
       name: '鍚补姹℃按绾�',
       sname: '鍚补姹℃按',
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false,
       wfs: WFS_URL + '?TYPENAME=鍚补姹℃按',
       minZoom: 10
     },
@@ -41,7 +41,7 @@
       code: 'saltline',
       name: '鍚洂姹℃按绾�',
       sname: '鍚洂姹℃按',
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false,
       wfs: WFS_URL + '?TYPENAME=鍚洂姹℃按',
       minZoom: 10
     },
@@ -49,7 +49,7 @@
       code: 'alkaliline',
       name: '鍚⒈姹℃按绾�',
       sname: '鍚⒈姹℃按',
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false,
       wfs: WFS_URL + '?TYPENAME=鍚⒈姹℃按',
       minZoom: 10
     },
@@ -57,7 +57,7 @@
       code: 'lifeline',
       name: '鐢熸椿姹℃按',
       sname: '鐢熸椿姹℃按',
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false,
       wfs: WFS_URL + '?TYPENAME=鐢熸椿姹℃按',
       minZoom: 10
     },
@@ -65,7 +65,7 @@
       code: 'purifyline',
       name: '鍑�鍖栨按绾�',
       sname: '鍑�鍖栨按',
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false,
       wfs: WFS_URL + '?TYPENAME=鍑�鍖栨按',
       minZoom: 10
     },
@@ -73,7 +73,7 @@
       code: 'loopline',
       name: '寰幆姘寸嚎',
       sname: '寰幆姘�',
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false,
       wfs: WFS_URL + '?TYPENAME=寰幆姘�',
       minZoom: 10
     }
diff --git a/src/conf/layers/LayerPollutionSources.js b/src/conf/layers/LayerPollutionSources.js
index 324b69e..369016c 100644
--- a/src/conf/layers/LayerPollutionSources.js
+++ b/src/conf/layers/LayerPollutionSources.js
@@ -5,13 +5,13 @@
 export const LayerPollutionSources = {
   code: 'pollutionSources',
   name: '姹℃煋婧�',
-  checked: true,
+  checked: false,
   layers: [
     {
       code: 'pollutionSourcesSczz',
       name: '鐢熶骇瑁呯疆',
       sname: '鐢熶骇瑁呯疆', // 琛ㄥ悕
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false, // 榛樿閫変腑鐘舵��
       url: 'http://www.baidu.com', // 璇锋眰涓氬姟鏁版嵁鎺ュ彛
       minZoom: 10 // 鍦ㄦ寚瀹氱骇鍒樉绀�
     },
@@ -19,7 +19,7 @@
       code: 'pollutionSourcesZlss',
       name: '娌荤悊璁炬柦',
       sname: '娌荤悊璁炬柦', // 琛ㄥ悕
-      checked: true, // 榛樿閫変腑鐘舵��
+      checked: false, // 榛樿閫変腑鐘舵��
       url: 'http://www.baidu.com', // 璇锋眰涓氬姟鏁版嵁鎺ュ彛
       minZoom: 10 // 鍦ㄦ寚瀹氱骇鍒樉绀�
     }]
diff --git a/src/conf/layers/LayerSoilGroundWater.js b/src/conf/layers/LayerSoilGroundWater.js
index 471d241..b042c48 100644
--- a/src/conf/layers/LayerSoilGroundWater.js
+++ b/src/conf/layers/LayerSoilGroundWater.js
@@ -6,47 +6,42 @@
 export const LayerSoilGroundWater = {
   code: 'sewersSoilGroundWater',
   name: '鍦熷¥鍙婂湴涓嬫按',
-  checked: true,
+  checked: false,
   layers: [
     {
       code: 'soil',
       name: '鍦熷¥',
       sname: '鍦熷¥', // 琛ㄥ悕
-      checked: true, // 榛樿閫変腑鐘舵��
-      url: WFS_URL + '?TYPENAME=鍏徃',
-      minZoom: 10
+      checked: false, // 榛樿閫変腑鐘舵��
+      url: WFS_URL + '?TYPENAME=鍏徃'
     },
     {
       code: 'groundWater',
       name: '鍦颁笅姘�',
       sname: '鍦颁笅姘�',
-      checked: true, // 榛樿閫変腑鐘舵��
-      wfs: WFS_URL + '?TYPENAME=鐮佸ご',
-      minZoom: 10
+      checked: false, // 榛樿閫変腑鐘舵��
+      wfs: WFS_URL + '?TYPENAME=鐮佸ご'
     },
     {
       code: 'firstRiskBlock',
       name: '涓�绾ч闄╁湴鍧�',
       sname: '涓�绾ч闄╁湴鍧�',
-      checked: true, // 榛樿閫変腑鐘舵��
-      wfs: WFS_URL + '?TYPENAME=瑁呯疆鍖�',
-      minZoom: 10
+      checked: false, // 榛樿閫変腑鐘舵��
+      wfs: WFS_URL + '?TYPENAME=瑁呯疆鍖�'
     },
     {
       code: 'secondRiskBlock',
       name: '浜岀骇椋庨櫓鍦板潡',
       sname: '浜岀骇椋庨櫓鍦板潡',
-      checked: true, // 榛樿閫変腑鐘舵��
-      wfs: WFS_URL + '?TYPENAME=瑁呯疆鍖�',
-      minZoom: 10
+      checked: false, // 榛樿閫変腑鐘舵��
+      wfs: WFS_URL + '?TYPENAME=瑁呯疆鍖�'
     },
     {
       code: 'threeRiskBlock',
       name: '涓夌骇椋庨櫓鍦板潡',
       sname: '涓夌骇椋庨櫓鍦板潡',
-      checked: true, // 榛樿閫変腑鐘舵��
-      wfs: WFS_URL + '?TYPENAME=瑁呯疆鍖�',
-      minZoom: 10
+      checked: false, // 榛樿閫変腑鐘舵��
+      wfs: WFS_URL + '?TYPENAME=瑁呯疆鍖�'
     }
   ]
 }
diff --git a/src/conf/layers/LayerWasteGas.js b/src/conf/layers/LayerWasteGas.js
index a516977..6156087 100644
--- a/src/conf/layers/LayerWasteGas.js
+++ b/src/conf/layers/LayerWasteGas.js
@@ -5,39 +5,35 @@
 export const LayerWasteGas = {
   code: 'wasteGas',
   name: '搴熸皵',
-  checked: true,
+  checked: false,
   layers: [
     {
       code: 'wasteGasPfk',
       name: '鎺掓斁鍙�',
       sname: '鎺掓斁鍙�', // 琛ㄥ悕
-      checked: true, // 榛樿閫変腑鐘舵��
-      url: 'http://www.baidu.com', // 璇锋眰涓氬姟鏁版嵁鎺ュ彛
-      minZoom: 10 // 鍦ㄦ寚瀹氱骇鍒樉绀�
+      checked: false,
+      url: 'http://www.baidu.com'
     },
     {
       code: 'wasteGasKrq',
       name: '鍙噧姘�',
       sname: '鍙噧姘�',
-      checked: true, // 榛樿閫変腑鐘舵��
-      url: '',
-      minZoom: 10
+      checked: false,
+      url: ''
     },
     {
       code: 'wasteGasYhq',
       name: '鏈夊姘�',
       sname: '鏈夊姘�',
-      checked: true, // 榛樿閫変腑鐘舵��
-      url: '',
-      minZoom: 10
+      checked: false,
+      url: ''
     },
     {
       code: 'wasteGasVocs',
       name: 'VOCs',
       sname: 'VOCs',
-      checked: true, // 榛樿閫変腑鐘舵��
-      url: '',
-      minZoom: 10
+      checked: false,
+      url: ''
     }
   ]
 }
diff --git a/src/conf/layers/LayerWasteSolid.js b/src/conf/layers/LayerWasteSolid.js
index f75e58e..ca2129b 100644
--- a/src/conf/layers/LayerWasteSolid.js
+++ b/src/conf/layers/LayerWasteSolid.js
@@ -6,15 +6,14 @@
 export const LayerWasteSolid = {
   code: 'wasteSolid',
   name: '鍥哄簾',
-  checked: true,
+  checked: false,
   layers: [
     {
       code: 'wasteSolidCcd',
       name: '璐瓨鐐�',
       sname: '璐瓨鐐�',
-      checked: true, // 榛樿閫変腑鐘舵��
-      url: 'http://www.baidu2.com',
-      minZoom: 10
+      checked: false,
+      url: 'http://www.baidu2.com'
     }
   ]
 }
diff --git a/src/conf/layers/LayerWasteWater.js b/src/conf/layers/LayerWasteWater.js
index 13ffea0..b3ed821 100644
--- a/src/conf/layers/LayerWasteWater.js
+++ b/src/conf/layers/LayerWasteWater.js
@@ -5,31 +5,28 @@
 export const LayerWasteWater = {
   code: 'wasteWater',
   name: '搴熸按',
-  checked: true,
+  checked: false,
   layers: [
     {
       code: 'wasteWaterPfk',
       name: '鎺掓斁鍙�',
       sname: '鎺掓斁鍙�', // 琛ㄥ悕
-      checked: true, // 榛樿閫変腑鐘舵��
-      url: 'http://www.baidu.com', // 璇锋眰涓氬姟鏁版嵁鎺ュ彛
-      minZoom: 10 // 鍦ㄦ寚瀹氱骇鍒樉绀�
+      checked: false, // 榛樿閫変腑鐘舵��
+      url: 'http://www.baidu.com'
     },
     {
       code: 'wasteWaterJcd',
       name: '娴侀噺',
       sname: '娴侀噺',
-      checked: true, // 榛樿閫変腑鐘舵��
-      url: 'http://www.baidu2.com',
-      minZoom: 10
+      checked: false, // 榛樿閫変腑鐘舵��
+      url: 'http://www.baidu2.com'
     },
     {
       code: 'wasteWaterfk',
       name: '娑蹭綅',
       sname: '娑蹭綅',
-      checked: true, // 榛樿閫変腑鐘舵��
-      url: '',
-      minZoom: 10
+      checked: false, // 榛樿閫変腑鐘舵��
+      url: ''
     }
   ]
 }
diff --git a/src/main.js b/src/main.js
index 2d3203a..be81e98 100644
--- a/src/main.js
+++ b/src/main.js
@@ -18,6 +18,7 @@
 import '@components/plugin/leaflet-measure-path/leaflet-measure-path.css'
 import '@components/plugin/leaflet-measure-path/leaflet-measure-path'
 import '@components/plugin/PathDrag'
+import layer from './components/layer'
 const appConfig = require('@/app.config')
 Vue.config.productionTip = false
 
@@ -27,6 +28,7 @@
 Vue.prototype.$config = appConfig
 Vue.prototype.$echarts = echarts // 鎸傝浇echarts
 window.Vue = Vue
+window.$layer = layer(Vue)
 // 娉ㄥ唽鎸囦护7
 // registerDirectives(Vue)
 

--
Gitblit v1.8.0