Bladeren bron

添加公共处理时区方法202107151423

fanghuisheng 4 jaren geleden
bovenliggende
commit
fbe78b8c82
4 gewijzigde bestanden met toevoegingen van 94 en 61 verwijderingen
  1. 13 4
      src/api/site/Device_motore.js
  2. 19 8
      src/store/index.js
  3. 53 41
      src/views/site/Device_motore.vue
  4. 9 8
      src/views/site_ehcarts/Device_second.vue

+ 13 - 4
src/api/site/Device_motore.js

@@ -7,7 +7,7 @@ export default {
         return request({
             url: `rtAnalogData/one`,
             method: 'GET',
-            params:params
+            params: params
             // data: data
         })
     },
@@ -20,11 +20,20 @@ export default {
         })
     },
     // 获取运行状态统计 -> 本日 本月
-    LoopStatus(data) {
+    LoopStatus(params) {
         return request({
             url: `rtSwitchData/LoopStatus`,
-            method: 'post',
-            data: data
+            method: 'GET',
+            params: params
+        })
+    },
+    // 获取运行状态统计 -> 折线图数据
+    runStatus(params) {
+        return request({
+            url: `alarmPower/runStatus`,
+            method: 'GET',
+            params: params
         })
     }
+    
 }

+ 19 - 8
src/store/index.js

@@ -1,17 +1,28 @@
 import { createStore } from 'vuex'
 
-// console.log(createApp())
 export default createStore({
     state: {
-        routeInfo: null,
-        resizeTime: true,
-        windowWidth: 0,
-        typeTime: null,
-        count: 1
+        siteId: 1,//公共api请求参数->siteId
+        Time_Data: [],//公共api请求参数->Time_Data
     },
-    mutations: {          // mutations改变store的状态(通过store.commit('SET_NAME', 'qian')提交修改)
+    mutations: {
         increment(state, val) {
-            state.count = val
+            state.siteId = val
+        },
+        /**
+         * @公共处理时区方法
+         */
+        TimeAll_function(state, time) {
+            for (let i in time) {
+                var Y = time[i].getFullYear() < 10 ? '0' + time[i].getFullYear() : time[i].getFullYear()
+                var M = (time[i].getMonth() + 1) < 10 ? '0' + (time[i].getMonth() + 1) : (time[i].getMonth() + 1)
+                var D = time[i].getDate() < 10 ? '0' + time[i].getDate() : time[i].getDate()
+                var HH = time[i].getHours() < 10 ? '0' + time[i].getHours() : time[i].getHours()
+                var MM = time[i].getMinutes() < 10 ? '0' + time[i].getMinutes() : time[i].getMinutes()
+                var SS = time[i].getSeconds() < 10 ? '0' + time[i].getSeconds() : time[i].getSeconds()
+                // console.log(Y + '-' + M + '-' + D + ' ' + HH + ':' + MM + ':' + SS)
+                state.Time_Data.push(Y + '-' + M + '-' + D + ' ' + HH + ':' + MM + ':' + SS)
+            }
         }
     }
 })

+ 53 - 41
src/views/site/Device_motore.vue

@@ -313,6 +313,9 @@ const time = new Date();
 const Y = time.getFullYear(); //年
 const M = time.getMonth(); //月
 const D = time.getDate(); //日
+// const H = time.getHours(); //时,
+// const MM = time.getMinutes(); //分
+// const S = time.getSeconds(); //秒
 // const timestamp = new Date().getTime();//时间戳
 
 export default {
@@ -324,7 +327,7 @@ export default {
   },
   computed: {
     increment() {
-      return this.$store.state.count;
+      return this.$store.state.siteId;
     },
   },
   data() {
@@ -462,29 +465,6 @@ export default {
   },
   mounted() {},
   methods: {
-    //最外层tabs切换事件触发
-    handleClick(tab, event) {
-      //   console.log(tab, event);
-      //   console.log(tab.props.name)
-      this.ac_content = "model";
-      this.se_content = "flow";
-      for (let i in event.path) {
-        if (event.path[i].className === "el-tabs__nav is-top") {
-          var childNodes = event.path[i].childNodes;
-          for (let i in childNodes) {
-            if (childNodes[i].className === "el-tabs__active-bar is-top") {
-              childNodes[i].style.left = tab.index + "px";
-            }
-          }
-        }
-      }
-      this.If_tabs_api(this.siteId)
-    },
-    //历史趋势 内部tabs 点击事件触发
-    handleClick2(tab, event) {
-      console.log(tab, event);
-      this.se_label = tab.props.label;
-    },
     Time_all() {
       // console.log(this.defaultTime)
       // console.log("bbbbbbb",data)
@@ -644,6 +624,36 @@ export default {
         },
       ];
     },
+
+    //最外层tabs切换事件触发
+    handleClick(tab, event) {
+      //   console.log(tab, event);
+      //   console.log(tab.props.name)
+      this.ac_content = "model";
+      this.se_content = "flow";
+      for (let i in event.path) {
+        if (event.path[i].className === "el-tabs__nav is-top") {
+          var childNodes = event.path[i].childNodes;
+          for (let i in childNodes) {
+            if (childNodes[i].className === "el-tabs__active-bar is-top") {
+              childNodes[i].style.left = tab.index + "px";
+            }
+          }
+        }
+      }
+      this.If_tabs_api(this.$store.state.siteId);
+    },
+    //实时数据 内部tabs 点击事件触发
+    handleClick1(tab, event) {
+      // console.log(tab, event);
+      tab || event;
+      this.If_tabs_api(this.$store.state.siteId);
+    },
+    //历史趋势 内部tabs 点击事件触发
+    handleClick2(tab, event) {
+      console.log(tab, event);
+      this.se_label = tab.props.label;
+    },
     //数据报表全选按钮事件
     handleCheckAllChange(val) {
       this.checkedCities = val ? cityOptions : [];
@@ -656,12 +666,6 @@ export default {
       this.isIndeterminate =
         checkedCount > 0 && checkedCount < this.cities.length;
     },
-    //实时数据 内部tabs 点击事件触发
-    handleClick1(tab, event) {
-      // console.log(tab, event);
-      tab || event;
-      this.Real_time_api(this.siteId);
-    },
     //实时数据api请求
     Real_time_api(siteid) {
       var _this = this;
@@ -720,7 +724,25 @@ export default {
           }
         });
       }
+      function runStatus() {
+        _this.$store.commit("TimeAll_function", _this.fh_defaultTime);
+        var time = _this.$store.state.Time_Data;
+
+        api
+          .runStatus({ startTime: time[0], endTime: time[1], siteId: siteId })
+          .then((requset) => {
+            if (requset.status === "SUCCESS") {
+              console.log(requset);
+            } else {
+              ElMessage.success({
+                message: requset.msg,
+                type: "success",
+              });
+            }
+          });
+      }
       LoopStatus();
+      runStatus();
     },
     /**
      * @判断最外层tabs切换时请求api
@@ -786,17 +808,7 @@ export default {
       immediate: true, // 首次加载的时候执行函数
       deep: true, // 深入观察,监听数组值,对象属性值的变化
       handler: function () {
-        this.siteId = this.$store.state.count;
-      },
-    },
-    /**
-     * @监听siteid变化 用于调用api
-     */
-    siteId: {
-      immediate: true, // 首次加载的时候执行函数
-      deep: true, // 深入观察,监听数组值,对象属性值的变化
-      handler: function (siteid) {
-        this.If_tabs_api(siteid)
+        this.If_tabs_api(this.$store.state.siteId);
       },
     },
     /**

+ 9 - 8
src/views/site_ehcarts/Device_second.vue

@@ -117,7 +117,13 @@ export default {
         "2020-01-02 01:55:00",
         "2020-01-02 02:00:00",
       ];
-
+      let arr = [
+        0, 0, 0, 0.03, 0, 0, 0, 0, 0, 0, 0, 0.005, 0, 0, 0, 0.03, 0, 0, 0, 0, 0,
+        0, 0, 0.005, 0, 0, 0, 0.03, 0, 0, 0, 0, 0, 0, 0, 0.005,
+      ].map((val, ind) => {
+        return [data[ind], val];
+      });
+      // console.log(arr);
       option = {
         // title: {
         //   // text: "折线图堆叠",
@@ -254,12 +260,7 @@ export default {
             // smooth: true,  //设置折线为圆滑曲线,false则有转折点
             name: "A相电流",
             type: "line",
-            data: [
-              0, 0, 0, 0.03, 0, 0, 0, 0, 0, 0, 0, 0.005, 0, 0, 0, 0.03, 0, 0, 0,
-              0, 0, 0, 0, 0.005, 0, 0, 0, 0.03, 0, 0, 0, 0, 0, 0, 0, 0.005,
-            ].map((val, ind) => {
-              return [data[ind], val];
-            }), //0
+            data: arr,
             itemStyle: this.itemStyle[0],
             symbolSize: 10,
             symbol: "circle",
@@ -301,6 +302,6 @@ export default {
       });
       this.chart = chart;
     },
-  }
+  },
 };
 </script>