anxiaoxia 2 years ago
parent
commit
226d4649f9

+ 36 - 10
src/pages/Equipment/checLampStatus.js

@@ -1,11 +1,15 @@
 import { setallLampHttp, getStatusHttp } from '@/services/ant-design-pro/equipment';
-import { message } from 'antd';
+// import { message } from 'antd';
 
 // 定时调用 查询指令接口
-export const checkChangeLightStatusSuccess = (paramsArr, result, fn) => {
+export const checkChangeLightStatusSuccess = (paramsArr, resultArr, fn) => {
   let checkParams = paramsArr;
   checkParams.forEach((item) => {
-    item.orderSeqNum = result.orderSeqNum;
+    for (let i = 0; i < resultArr.length; i++) {
+      if ((item.id = resultArr[i].id)) {
+        item.orderSeqNum = resultArr[i].orderSeqNum;
+      }
+    }
   });
   getStatusHttp(checkParams).then((res) => {
     judgeChangeResponeseSuccess(res, paramsArr, fn);
@@ -14,27 +18,49 @@ export const checkChangeLightStatusSuccess = (paramsArr, result, fn) => {
 
 //   检查开关指令下发状态
 export const judgeChangeResponeseSuccess = (response, paramsArr, fn) => {
-  let result = response.content[0];
+  let resFlag = false;
+  let resultArr = JSON.parse(JSON.stringify(response.content));
+  resultArr &&
+    resultArr.forEach((item) => {
+      if (
+        (item.state === 200 && item.exeResult === 'processing:rcvd') ||
+        (item.state === 202 && !item.exeResult)
+      ) {
+        resFlag = true;
+      } else {
+        resultArr.splice(item, 1);
+      }
+    });
+  if (resFlag) {
+    setTimeout(() => {
+      checkChangeLightStatusSuccess(paramsArr, resultArr, fn);
+    }, 500);
+  } else {
+    fn(); // 查询灯设备
+  }
+  /*
   if (result.result === 'success') {
-    if (result.state === 200 && result.exeResult === 'success') {
+    if (!resFlag && result.state === 200 && result.exeResult === 'success') {
       console.log('成功了');
       fn(); // 查询灯设备
     } else if (
-      (result.state === 200 && result.exeResult === 'processing:rcvd') ||
-      (result.state === 202 && !result.exeResult)
+      (resFlag && result.state === 200 && result.exeResult === 'processing:rcvd') ||
+      (resFlag && result.state === 202 && !result.exeResult)
     ) {
       setTimeout(() => {
-        checkChangeLightStatusSuccess(paramsArr, result, fn);
+        checkChangeLightStatusSuccess(paramsArr, resultArr, fn);
       }, 500);
-    }else if (result.state === 200 && result.exeResult === 'fail:timeout') {
-        message.error('网络超时,请重试');
+    } else if (result.state === 200 && result.exeResult === 'fail:timeout') {
+      message.error('网络超时,请重试');
     } else {
       message.error('操作失败,请重试');
     }
   } else {
     message.error('操作失败,请重试');
   }
+  */
 };
+
 //  开关
 export const setallLamps = (paramsArr, fn) => {
   setallLampHttp(paramsArr).then((res) => {

+ 4 - 3
src/pages/Equipment/components/deviceModal/index.jsx

@@ -88,9 +88,10 @@ export default ({ onClose, showSpace }) => {
   console.log(showSpace, 'showSpace');
   function showEqCard(type) {
     let flag = false;
-    showSpace.equipList.forEach((item) => {
-      if (item.equipType === type) return (flag = true);
-    });
+    showSpace.equipList &&
+      showSpace.equipList.forEach((item) => {
+        if (item.equipType === type) return (flag = true);
+      });
     return flag;
   }
 

+ 0 - 73
src/pages/Equipment/components/deviceModal/lampEq/index.jsx

@@ -67,79 +67,6 @@ export default ({ spaceId }) => {
     }
     setallLamps(paramsArr, getLamp);
   };
-  /*
-  // 定时调用 查询指令接口
-  const checkChangeLightStatusSuccess = (paramsArr) => {
-    if (endTime - startTime >= 5000) {
-      message.error('网络故障,请重试');
-    } else {
-      setallLampHttp(paramsArr).then((res) => {
-        return judgeChangeResponeseSuccess(res);
-      });
-    }
-  };
-  //   检查开关指令下发状态
-  const judgeChangeResponeseSuccess = (response) => {
-    return new Promise((resolve, reject) => {
-      let result = response.content[0];
-      if (result.result === 'success') {
-        if (result.state === 200 && result.exeResult === 'success') {
-          resolve({ status: 'success', data: result });
-        } else if (result.state === 500) {
-          reject();
-        } else {
-          checkChangeLightStatusSuccess();
-          resolve({ status: 'processing', data: result });
-        }
-      } else {
-        reject();
-        console.log('judgeChangeResponeseSuccess-fail');
-      }
-    });
-  };
-  //  开关
-  const changeSwitch = (val, type, id) => {
-    let paramsArr = [];
-    if (type == 'total') {
-      lampArr.forEach((item) => {
-        paramsArr.push({
-          id: item.id,
-          switch: val,
-        });
-      });
-    } else {
-      paramsArr.push({ id: id, switch: val });
-    }
-    setallLampHttp(paramsArr)
-      .then((res) => {
-        startTime = Date.now(); // 开始计时'
-        return judgeChangeResponeseSuccess(res);
-      })
-      .then(
-        (res) => {
-          switch (res.status) {
-            case 'success':
-              getLamp();
-              break;
-            case 'processing':
-              // 继续查询
-              endTime = Date.now();
-              setTimeout(() => {
-                let checkParams = paramsArr;
-                checkParams.forEach((item) => {
-                  item.orderSeqNum = res.data.orderSeqNum;
-                });
-                checkChangeLightStatusSuccess(paramsArr);
-              }, 20);
-              break;
-          }
-        },
-        () => {
-          message.error('操作失败,请重试');
-        },
-      );
-  };
-  */
   return (
     <div className={commonStyles.box}>
       <div className={commonStyles.content}>