浏览代码

fix:灯模块的bug修改

chenzhen2 1 年之前
父节点
当前提交
8795eadb91
共有 2 个文件被更改,包括 26 次插入9 次删除
  1. 20 4
      src/views/envmonitor/components/Light/index.vue
  2. 6 5
      src/views/envmonitor/index.vue

+ 20 - 4
src/views/envmonitor/components/Light/index.vue

@@ -223,7 +223,14 @@ export default defineComponent({
         getLampHttp({ spaceId: proxyData.spaceId })
           .then((res) => {
             const resData: any = res;
-            if (!proxyData.setStatus) {
+            let lampFlag:any=false;
+            if(proxyData.lampList &&  proxyData.lampList.length){
+              lampFlag=false;
+            }else {
+              lampFlag=true
+            }
+            console.log("proxyData.setStatus===",proxyData.setStatus);
+            if (!proxyData.setStatus || lampFlag) {
               // console.log("灯的状态修改--");
               if (resData && resData.result == "success") {
                 let content = resData?.content ?? [];
@@ -319,7 +326,7 @@ export default defineComponent({
             let isExeSpaceTime: Boolean = proxyData.checkDeviceIsExeSpaceTime([
               item,
             ]);
-            debugger;
+            // debugger;
             if (proxyData.forceOverTimeFlag && item.switch && isExeSpaceTime) {
               // 强制加班开灯
               contx.emit("triggerWork", 3, item);
@@ -341,14 +348,16 @@ export default defineComponent({
       // 定时查看灯的状态是否需要更新
       statusInterval: statusInterval,
       setStatusNum() {
-        clearInterval(proxyData.statusInterval);
-        proxyData.statusInterval = setInterval(() => {
+        if(proxyData.statusInterval){
+        }else {
+          proxyData.statusInterval = setInterval(() => {
           proxyData.setStatus--;
           if (proxyData.setStatus == 1) {
             proxyData.setStatus = 0;
             clearInterval(proxyData.statusInterval);
           }
         }, 1000);
+        }
       },
       //  控制灯的接口
       setLamp(
@@ -550,6 +559,10 @@ export default defineComponent({
         if (timerLen == 15000 && nowTime < "070000" && nowTime > "200000") {
           timerLen = 300000;
         }
+        // 当灯没有数据的时候,继续15s调一次接口
+        if(proxyData.lampList && proxyData.lampList.length===0){
+          timerLen=15000
+        }
         proxyData.clearLightStatusTimer();
         proxyData.lightsStatusTimer = setTimeout(() => {
           proxyData.clearLightStatusTimer();
@@ -568,6 +581,7 @@ export default defineComponent({
       (newProps: any, oldProps: any) => {
         // debugger
         if (newProps[0]) {
+          console.log("切换空间里--2")
           proxyData.showLight = newProps[0].showLight;
           proxyData.userIsControl = newProps[0].userIsControl;
           proxyData.controlMode = newProps[0].controlMode;
@@ -577,9 +591,11 @@ export default defineComponent({
 
         if (newProps[1] && oldProps[1] && newProps[1] != oldProps[1]) {
           // 空间id改变的重新获取值调用接口
+          console.log("切换空间里--")
           proxyData.clearLightStatusTimer();
           proxyData.showFlag = false;
           proxyData.lampList = [];
+          proxyData.setStatus=0;
           proxyData.spaceId = newProps[1];
           proxyData.getLampList();
         }

+ 6 - 5
src/views/envmonitor/index.vue

@@ -1628,9 +1628,10 @@ export default defineComponent({
             }
           })
           .catch(() => {
-            if (!proxyData.equimentsTimer) {
-              proxyData.setEquimentsTimer();
-            }
+            // if (!proxyData.equimentsTimer) {
+            //   proxyData.setEquimentsTimer();
+            // }
+            proxyData.getEquipments()
           });
       },
       // 时间格式转换
@@ -1769,7 +1770,7 @@ export default defineComponent({
             proxyData.querySpaceSceneConfigTimer();
           })
           .catch((error: any) => {
-            proxyData.querySpaceSceneConfigTimer();
+            proxyData.querySpaceSceneConfigTimer(1000);
           });
       },
       /**
@@ -2004,7 +2005,7 @@ export default defineComponent({
          */
         proxyData.spaceExistenceDevice = {
           curtain: false,
-          light: false,
+          light: true,
           airConditioner: false,
           bodySensor: false,
           socket: false,