From 52afe2d58776967da3a03b00d7f635fc6fd7d1a8 Mon Sep 17 00:00:00 2001
From: chenzeping <ChenZeping02609@163.com>
Date: 星期一, 26 四月 2021 15:42:21 +0800
Subject: [PATCH] 标准值颜色标准

---
 src/components/BaseNav/WasteWater/WasteWaterRealChart.vue |  280 ++++++++++++++++++++++++++-----------------------------
 1 files changed, 133 insertions(+), 147 deletions(-)

diff --git a/src/components/BaseNav/WasteWater/WasteWaterRealChart.vue b/src/components/BaseNav/WasteWater/WasteWaterRealChart.vue
index cf1c44f..8d6654b 100644
--- a/src/components/BaseNav/WasteWater/WasteWaterRealChart.vue
+++ b/src/components/BaseNav/WasteWater/WasteWaterRealChart.vue
@@ -18,8 +18,8 @@
           type="datetime">
       </el-date-picker>
       <span class="demonstration">閲囨牱鐐规暟锛�</span>
-      <el-select v-model="region" placeholder="璇烽�夋嫨" style="width: 80px">
-        <el-option v-for="(item,index) in regionList" :key="index" :label="item" :value="item"></el-option>
+      <el-select v-model="formData.region" placeholder="璇烽�夋嫨" style="width: 80px">
+        <el-option v-for="(item,index) in formData.regionList" :key="index" :label="item" :value="item"></el-option>
       </el-select>
       <el-button @click="querySearch()">鏌ヨ</el-button>
       <!--      <el-button>鏄庣粏琛�</el-button>-->
@@ -45,7 +45,6 @@
   },
   data () {
     return {
-      a: '',
       // tab鏍忎紶閫掓帴鏀舵暟鎹�
       dataStandard: [
         {
@@ -88,19 +87,22 @@
             val: null
           }
         }],
+      // 琛ㄥ崟鏁版嵁缁戝畾鍊�
       formData: {
+        region: '25',
+        regionList: [25, 50, 75, 100],
         startTime: dayjs().subtract(3, 'minute').format('YYYY-MM-DD HH:mm:ss'),
         endTime: dayjs().format('YYYY-MM-DD HH:mm:ss')
       },
-      region: '25',
-      regionList: [25, 50, 75, 100],
-      datatype: 1,
+      // 鏁版嵁鍒嗙被澶勭悊瀛樺偍鍒楄〃
       RealTimeDataList: [],
-      bzz: null,
-      bzzList: [],
+      // 鐢ㄤ簬澶勭悊鏍囧噯鍊�
+      standardValues: null,
+      // 鏍囧噯鍊煎垪琛�
+      standardValuesList: [],
+      // 鐢ㄤ簬鍥捐〃灞曠ず璁剧疆鏁扮粍
       nameList: [],
-      // legend绫诲埆鍥捐〃灞曠ず璁剧疆鏁扮粍
-      lengList: [],
+      legendList: [],
       ydatas: []
     }
   },
@@ -122,29 +124,31 @@
         $endTime: this.formData.endTime,
         $step: 15
       }
-      // console.log(data)
       const result = (await mapApi.getDataItems(data)).data
       // 鏁版嵁鎸夌被鍒垎缁�
       this.pointsSet(result)
       // 鍥炬爣瀛樺偍澶勭悊
       this.legendSet()
-      // ydata鏁版嵁
+      // y杞磀ata鏁版嵁
       this.yDataSet()
       // 鏍规嵁宸叉湁鏁版嵁缁樺埗鍥捐〃
       this.drawRealTimeDateChart()
     },
     // 鎺ュ彛鏁版嵁鎸夌収 鏁版嵁鍐呭垎绫诲埆璁剧疆
     pointsSet (d) {
-      let data = []
-      let datalist = []
+      // 鏁扮粍鏁版嵁缃┖
       this.nameList = []
       this.RealTimeDataList = []
+
+      let data = []
+      let datalist = []
+
       for (let i = 0; i < d.length; i++) {
-        // this.RealTimeDataList = []
         // 鍒ゆ柇鏄惁缁х画鎵ц
         if (d[i].ErrorMessage != null) {
           continue
         }
+
         // temp 涓存椂鏁版嵁鍒ゆ柇鏂规硶
         const tempList = [
           {
@@ -155,13 +159,12 @@
             'TJIP45.lscl2tb552AISA11202A': '搴熸按娴侀噺'
           }
         ]
-        // 鎸囨爣
+        // 鎸囨爣 涓存椂鐢ㄤ簬鏁版嵁澶勭悊
         const name = tempList[0][d[i].UnionTagCode]
-        // 鍒ゆ柇甯傚眬绫诲瀷杩涜鍒嗙粍
+
+        // 鍒ゆ柇甯傚眬绫诲瀷杩涜鍒嗙粍 =>鏁扮粍涓虹┖鏃�
         if (this.nameList.length === 0) {
-          // 鏁扮粍涓虹┖鏃�
           this.nameList.push(name)
-          // todo 鐢╠ayjs
           const newDate = new Date(d[i].ReadTime)
           data = {
             name: name,
@@ -171,7 +174,6 @@
             name: name,
             data: [data]
           }
-          // console.log('1111111')
           this.RealTimeDataList.push(datalist)
         } else if (this.nameList.indexOf(name) < 0) {
           // 娌℃湁鎸囨爣鏃�
@@ -185,7 +187,6 @@
             name: name,
             data: [data]
           }
-          // console.log('222222222')
           this.RealTimeDataList.push(datalist)
         } else if (i === d.length - 1) {
           // 寰幆鍒版渶鍚�
@@ -200,7 +201,6 @@
               name: name,
               data: [data]
             }
-            // console.log('3333333')
             this.RealTimeDataList.push(datalist)
           } else {
             const newDate = new Date(d[i].ReadTime)
@@ -208,7 +208,6 @@
               name: name,
               value: [newDate, d[i].TagValue]
             }
-            // console.log('444444')
             for (let k = 0; k < this.RealTimeDataList.length; k++) {
               if (this.RealTimeDataList[k].name === name) {
                 this.RealTimeDataList[k].data.push(data)
@@ -228,11 +227,10 @@
           }
         }
       }
-      // console.log(this.RealTimeDataList)
     },
     // legend绫诲埆鍥捐〃灞曠ず璁剧疆鏁扮粍
     legendSet () {
-      this.lengList = []
+      this.legendList = []
       let objTemp
       for (let l = 0; l < this.nameList.length; l++) {
         let obj
@@ -268,34 +266,34 @@
             itemWidth: 20,
             itemHeight: 5
           }
-          this.lengList.push(obj)
+          this.legendList.push(obj)
         }
       }
-      this.lengList.push(objTemp)
+      this.legendList.push(objTemp)
     },
     // yDataSet 鏁版嵁澶勭悊
     yDataSet () {
-      this.bzzList = []
+      // 鏁扮粍娣诲姞鏁版嵁 缃┖
+      this.standardValuesList = []
       this.ydatas = []
       for (let j = 0; j < this.nameList.length; j++) {
-        let zdcbcolor, zxcolor
+        let pointColor, lineColor
         if (this.nameList[j] === 'COD') {
-          zdcbcolor = 'red'
-          zxcolor = '#ffff00'
+          pointColor = 'red'
+          lineColor = '#ffff00'
         } else if (this.nameList[j] === '姘ㄦ爱') {
-          zdcbcolor = 'red'
-          zxcolor = '#00B0F0'
+          pointColor = 'red'
+          lineColor = '#00B0F0'
         } else if (this.nameList[j] === '鎬荤7') {
-          zdcbcolor = 'red'
-          zxcolor = '#f48183'
+          pointColor = 'red'
+          lineColor = '#f48183'
         } else if (this.nameList[j] === '鎬绘爱') {
-          zdcbcolor = 'red'
-          zxcolor = '#e0ffff'
+          pointColor = 'red'
+          lineColor = '#e0ffff'
         } else if (this.nameList[j] === '搴熸按娴侀噺') {
-          zdcbcolor = 'red'
-          zxcolor = '#9ACD32'
+          pointColor = 'red'
+          lineColor = '#9ACD32'
         }
-        let ydata
 
         // 涓存椂鏁版嵁
         const BBZMAPPING = {
@@ -308,26 +306,20 @@
         for (let m = 0; m < this.RealTimeDataList.length; m++) {
           let stdValue = null
           if (this.RealTimeDataList[m].name === this.nameList[j]) {
-            for (const p in BBZMAPPING) {
-              // console.log('p' + p)
-              this.a = p
-              stdValue = BBZMAPPING[this.RealTimeDataList[m].name]
-            }
-            // console.log(stdValue)
-            this.bzz = {
+            stdValue = BBZMAPPING[this.RealTimeDataList[m].name]
+            this.standardValues = {
               name: this.nameList[j],
-              bzhui: stdValue
+              standardValue: stdValue
             }
-            ydata = {
+            const yData = {
               name: this.nameList[j],
               data: this.RealTimeDataList[m].data,
-              zdcbcolor: zdcbcolor,
-              zxcolor: zxcolor,
-              bzz: stdValue
+              pointColor: pointColor,
+              lineColor: lineColor,
+              standardValue: stdValue
             }
-            // console.log(stdValue)
-            this.bzzList.push(this.bzz)
-            this.ydatas.push(ydata)
+            this.standardValuesList.push(this.standardValues)
+            this.ydatas.push(yData)
           }
         }
       }
@@ -337,53 +329,58 @@
       this.myChart = this.$echarts.init(this.$refs.echarts)
       this.myChart.clear()
 
-      const legend = this.lengList
-      const yname = '娴撳害(mg/m鲁)'
-      const bzzList = this.bzzList
+      // y杞翠晶杈规爣棰榥eme
+      const ySideName = '娴撳害(mg/m鲁)'
+      // 鏍囧噯鍊煎垪琛�
+      const standardValuesList = this.standardValuesList
 
+      // 搴旂敤浜庢暟鎹粨鏋滃垽鏂爣鍑嗗��
+      let standardValue
+
+      // series鏁版嵁瀛樺偍
       const serLists = []
 
       for (let i = 0; i < this.ydatas.length; i++) {
-        const zdcbcolor = this.ydatas[i].zdcbcolor
-        const bz = this.ydatas[i].bzz
-        // console.log(bz)
-        let obj
+        // 搴旂敤浜庢暟鎹鐞�
+        const pointColor = this.ydatas[i].pointColor
+        // 鏁版嵁鏍囧噯鍊�
+        const bz = this.ydatas[i].standardValue
+        let seriesObj
+
         if (bz) {
-          obj = {
+          seriesObj = {
             name: this.ydatas[i].name,
-            // symbol:'circle', // 鎶樼偣褰㈢姸
-            // symbolSize: 3,   //澶у皬
-            smooth: true, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            smooth: true,
+            type: 'line',
+            data: this.ydatas[i].data,
+            // borderColor: this.ydatas[i].pointColor,
+            borderColor: '#fff',
             itemStyle: {
               normal: {
-                color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
-                  let biaozhuiz
-                  for (let i = 0; i < bzzList.length; i++) {
-                    if (bzzList[i].name === c.seriesName) {
-                      biaozhuiz = bzzList[i].bzhui
+                color: function (c) {
+                  for (let i = 0; i < standardValuesList.length; i++) {
+                    if (standardValuesList[i].name === c.seriesName) {
+                      standardValue = standardValuesList[i].standardValue
                     }
                   }
-                  if (c.value[1] > biaozhuiz) {
-                    return zdcbcolor
-                  } else if (c.value[1] > biaozhuiz * 0.9) {
+                  if (c.value[1] > standardValue) {
+                    return pointColor
+                  } else if (c.value[1] > standardValue * 0.7) {
                     return '#FFA500'
                   } else {
                     return '#33c95f'
                   }
                 },
-                lineStyle: { // 鎶樼嚎鐨勯鑹�
-                  color: this.ydatas[i].zxcolor,
+                lineStyle: {
+                  color: this.ydatas[i].lineColor,
                   width: 2
                 },
-                // borderColor:'black',  //鎶樼偣杈规鐨勯鑹�
                 label: { // 鏄剧ず鍊�
                   show: false
                 }
               }
             },
-            type: 'line',
-            data: this.ydatas[i].data,
-            markLine: { // 骞冲潎鍊� 锛� 鍜� 鎸囨爣涓婇檺
+            markLine: {
               symbol: 'none',
               data: [{
                 label: {
@@ -396,16 +393,15 @@
                 yAxis: bz,
                 lineStyle: {
                   normal: {
-                    color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
-                      let biaozhuiz
-                      for (let i = 0; i < bzzList.length; i++) {
-                        if (bzzList[i].name === c.seriesName) {
-                          biaozhuiz = bzzList[i].bzhui
+                    color: function (c) {
+                      for (let i = 0; i < standardValuesList.length; i++) {
+                        if (standardValuesList[i].name === c.seriesName) {
+                          standardValue = standardValuesList[i].standardValue
                         }
                       }
-                      if (c.value[1] > biaozhuiz) {
-                        return zdcbcolor
-                      } else if (c.value[1] > biaozhuiz * 0.9) {
+                      if (c.value[1] > standardValue) {
+                        return pointColor
+                      } else if (c.value[1] > standardValue * 0.7) {
                         return '#FFA500'
                       } else {
                         return '#33c95f'
@@ -413,62 +409,55 @@
                     }
                   }
                 }
-              }
-              ]
+              }]
             }
           }
         } else {
-          obj = {
+          seriesObj = {
             name: this.ydatas[i].name,
-            symbol: 'circle', // 鎶樼偣褰㈢姸
-            symbolSize: 10, // 澶у皬
-            smooth: false, // 鐩寸嚎 锛宼rue 涓烘洸绾�
+            symbol: 'circle',
+            symbolSize: 10,
+            smooth: false,
             yAxisIndex: 1,
-            // itemStyle: {
-            //   normal: {
-            //     color: function (c) { // 鏍规嵁value 鏄剧ず涓嶅悓鐨勬姌鐐归鑹�
-            //       for (let i = 0; i < this.bzzList.length; i++) {
-            //         let biaozhuizs
-            //         if (this.bzzList[i].name === c.seriesName) {
-            //           biaozhuizs = this.bzzList[i].bzhui
-            //         }
-            //         console.log(biaozhuizs)
-            //       }
-            //       if (c.value[1] > 9) {
-            //         return zdcbcolor
-            //       } else {
-            //         return '#33c95f'
-            //       }
-            //     },
-            //     lineStyle: { // 鎶樼嚎鐨勯鑹�
-            //       color: this.ydatas[i].zxcolor,
-            //       width: 5
-            //     },
-            //     borderColor: 'black', // 鎶樼偣杈规鐨勯鑹�
-            //     label: { // 鏄剧ず鍊�
-            //       show: false
-            //     }
-            //   }
-            // },
+            // borderColor:'black',
             type: 'line',
-            data: this.ydatas[i].data
+            data: this.ydatas[i].data,
+            itemStyle: {
+              normal: {
+                color: function (c) {
+                  for (let i = 0; i < standardValuesList.length; i++) {
+                    if (standardValuesList[i].name === c.seriesName) {
+                      standardValue = standardValuesList[i].standardValue
+                    }
+                  }
+                  if (c.value[1] > standardValue) {
+                    return pointColor
+                  } else if (c.value[1] > standardValue * 0.9) {
+                    return '#FFA500'
+                  } else {
+                    return '#33c95f'
+                  }
+                },
+                lineStyle: { // 鎶樼嚎鐨勯鑹�
+                  color: this.ydatas[i].lineColor,
+                  width: 2
+                },
+                label: { // 鏄剧ず鍊�
+                  show: false
+                }
+              }
+            }
           }
         }
-        if (this.ydatas[i].name === '搴熸皵娴侀噺' || this.ydatas[i].name === '搴熸皵') {
-          obj.yAxisIndex = 1
+        if (this.ydatas[i].name === '搴熸按娴侀噺' || this.ydatas[i].name === '搴熸按') {
+          seriesObj.yAxisIndex = 1
         }
-        serLists.push(obj)
+        serLists.push(seriesObj)
       }
-      // console.log(serLists)
-      let dataUnit = ''
-      if (this.datatype === 1) {
-        dataUnit = '娴侀噺(m鲁/d)'
-      } else {
-        dataUnit = '娴侀噺(m鲁/h)'
-      }
+      const dataUnit = '娴侀噺(m鲁/h)'
       // echarts鍥捐〃option鏁版嵁
       const options = {
-        tooltip: { // 鎻愮ず妗�
+        tooltip: {
           trigger: 'axis',
           axisPointer: {
             type: 'cross',
@@ -479,8 +468,6 @@
           formatter: function (params) {
             let s = params[0].name + '<br />'
             for (let i = 0; i < params.length; i++) {
-              // let name = params[i].name
-              // 鍥捐〃title鍚嶇О
               const seriesName = params[i].seriesName
               // 鍊�
               const value = params[i].value[1]
@@ -516,18 +503,18 @@
             return s
           }
         },
-        toolbox: { // 鎵撳嵃绛夊伐鍏�
+        toolbox: {
           show: false,
           feature: {
             saveAsImage: {}
           }
         },
-        grid: { // 缃戞牸
+        grid: {
           top: '20%',
           left: '15%'
         },
         legend: {
-          data: legend
+          data: this.legendList
         },
         dataZoom: [{
           type: 'inside',
@@ -547,10 +534,10 @@
             shadowOffsetY: 2
           }
         }],
-        xAxis: { // x 杞磋缃�
+        xAxis: {
           type: 'time',
           boundaryGap: false,
-          axisLabel: { // x杞村叏閮ㄦ樉绀�
+          axisLabel: {
             // rotate: 30,
             margin: 6,
             interval: 0,
@@ -558,7 +545,7 @@
               color: '#fff'
             }
           },
-          splitLine: { // 缃戞牸鍨傜洿绾夸负 铏氱嚎
+          splitLine: {
             show: true,
             lineStyle: {
               type: 'dashed'
@@ -570,14 +557,13 @@
           axisLine: {
             lineStyle: {
               color: '#FFFFFF',
-              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+              width: 1
             }
           }
-          // data: xdata
         },
         yAxis: [{
           type: 'value',
-          name: yname,
+          name: ySideName,
           max: function (value) {
             return parseInt(value.max + 3)
           },
@@ -592,11 +578,11 @@
           },
           splitLine: {
             show: false
-          }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+          },
           axisLine: {
             lineStyle: {
               color: '#FFFFFF',
-              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+              width: 1
             }
           }
         }, {
@@ -613,14 +599,14 @@
           },
           splitLine: {
             show: false
-          }, // y杞� 缃戞牸绾夸笉鏄剧ず,
+          },
           // inverse: true,
           // nameLocation: 'start',
           // max:500,
           axisLine: {
             lineStyle: {
               color: '#FFFFFF',
-              width: 1// 杩欓噷鏄负浜嗙獊鍑烘樉绀哄姞涓婄殑
+              width: 1
             }
           }
         }],

--
Gitblit v1.8.0