Преглед изворни кода

判断实时曲线超四小时自动删除

yuhan пре 5 месеци
родитељ
комит
205ab80b88
1 измењених фајлова са 20 додато и 0 уклоњено
  1. 20 0
      src/views/modules_guAn/visualization/modules/RealTimeCurve.vue

+ 20 - 0
src/views/modules_guAn/visualization/modules/RealTimeCurve.vue

@@ -69,6 +69,7 @@ export default {
   created () {
   },
   mounted () {
+    // console.log(this.getTimeDifference())
     this.$nextTick(() => {
       this.initDataCurve()
       this.refreshData(this.data)
@@ -275,12 +276,21 @@ export default {
       if(data.length === 0){
         return
       }
+      // 获取第一个时间
+      var isDelete = false
+      if(data.find(item => item.name === '当前温度值')){
+        var startTime = data.filter(item => item.name === '温度实值-实时')[0].subList[0].logtime
+        var endTime = data.filter(item => item.name === '当前温度值')[0].subList[0].logtime
+        isDelete = this.getTimeDifference(startTime, endTime)
+      }
+      // 获取最新时间
       var wendu = data.filter(item => item.name === '温度实值-实时' || item.name === '当前温度值')
       var nWendu = []
       for (let i = 0; i < wendu.length; i++) {
         const element = wendu[i];
         var item = element.subList
         nWendu = [...nWendu, ...item]
+        if(isDelete){nWendu.shift()}
       }
       var shidu = data.filter(item => item.name === '湿度实值-实时' || item.name === '当前湿度值')
       var nShidu = []
@@ -357,6 +367,16 @@ export default {
         ]
       });
     },
+    getTimeDifference(startTime, endTime){
+      // let dateTime = new Date(time.replace(/-/g, "/"));  // replace方法将 - 转为 /
+      // var time = '2024-04-15 10:09:00'
+      // var createDate = new Date(time);
+      // console.log(createDate, createDate.getTime())
+      //获取差值-秒  4小时的秒数为14400
+      var second = parseInt((new Date(endTime).getTime() - new Date(startTime).getTime())/(1000));
+      console.log('时间戳', second)
+      return second > 14400 ? true : false
+    },
     showModal(){
       this.visible = true
       this.$nextTick(()=>{