浏览代码

fix:空调增加模式以及温度的显示

zhaojijng 2 年之前
父节点
当前提交
3d8da19da9

+ 35 - 1
src/pages/Equipment/components/deviceModal/airEq/index.jsx

@@ -29,6 +29,8 @@ export default ({ spaceId, projectId }) => {
   let airLoadingTimer = useRef(null);
   const [spaceStatus, setStatusText] = useState('null');
   let [changeLoading, setChangeLoading] = useState({ 4: false, 2: false, 5: false, 6: false });
+  let [modeName, setModeName] = useState('');
+  let [tempSet, setTempSet] = useState('');
 
   const airExpend = [
     {
@@ -112,6 +114,10 @@ export default ({ spaceId, projectId }) => {
         timerGetAirInfo(3000);
         setStatusText(res.spaceStatus); // 状态文案
         statusImg(res.icon); // icon
+
+        //console.log('res', res);
+        setModeName(formateModel((res || {}).mode));
+        setTempSet((res || {}).tempSet);
       })
       .catch(() => {
         timerGetAirInfo(3000);
@@ -119,7 +125,25 @@ export default ({ spaceId, projectId }) => {
         // setIsLoading(false);
       });
   }, []);
-
+  const formateModel = (model) => {
+    var modeName = '';
+    if (model) {
+      if (model === 1) {
+        modeName = '制冷';
+      } else if (model === 2) {
+        modeName = '制热';
+      } else if (model === 3) {
+        modeName = '通风';
+      } else if (model === 4) {
+        modeName = '除湿';
+      } else {
+        modeName = '';
+      }
+    } else {
+      modeName = '';
+    }
+    return modeName;
+  };
   const changeAir = useCallback(
     (itemId) => {
       if (changeLoading[itemId]) {
@@ -155,6 +179,7 @@ export default ({ spaceId, projectId }) => {
     getAirInfo(); // 获取空调状态
     //timerGetAirInfo(2000);
     return () => {
+      console.log('useEffect[]spaceId', spaceId);
       clearTimeout(timer.current);
     };
   }, []);
@@ -163,6 +188,15 @@ export default ({ spaceId, projectId }) => {
     <div className={styles.box}>
       <div className={styles.content}>
         <div className={styles.env}>
+          {isOpen && (
+            <div className={styles.modeshow}>
+              <span className={styles.mode}>{modeName}</span>
+              <span className={styles.tempset}>
+                {tempSet}
+                {tempSet ? '℃' : ''}
+              </span>
+            </div>
+          )}
           <div className={styles.envLeft}>
             <span className={commonStyles.eqTitle}>空调</span>
             <div className={styles.airStatus}>

+ 9 - 0
src/pages/Equipment/components/deviceModal/airEq/index.less

@@ -8,6 +8,15 @@
     .env {
       position: relative;
       display: flex;
+      .modeshow {
+        position: absolute;
+        top: 55px;
+        left: 114px;
+        color: #c4c4c4;
+        .mode {
+          margin-right: 4px;
+        }
+      }
       .envLeft {
         flex: 1 1 auto;
         height: 140px;

+ 48 - 50
src/pages/Equipment/equipmentControl.js

@@ -112,54 +112,52 @@ export const changeAllAir = (itemarr, getDeviceStatus, status, projectId) => {
     });
 };
 //查询 单个灯的状态
-export const getLamp = (sitem, callback, num) => {
-    num = num - 1;
-    getLampHttp(sitem.id).then((res) => {
-
-        if (res.result != 'success') return;
-        const arr = res.content || [];
-        //1开 0 关
-        let totalIsOpen = 0;
-        arr.forEach((item) => {
-            if (item.runStatus) {
-                totalIsOpen = 1;
-            }
-
-        });
-        //说明状态改变
-        if (sitem.light !== totalIsOpen) {
-            callback && callback(totalIsOpen);
-            return;
-        } else if (num == 0) {
-            return;
-        }
-
-        getLamp(sitem, callback, num);
-
-    });
-};
+// export const getLamp = (sitem, callback, num) => {
+//     num = num - 1;
+//     getLampHttp(sitem.id).then((res) => {
+
+//         if (res.result != 'success') return;
+//         const arr = res.content || [];
+//         //1开 0 关
+//         let totalIsOpen = 0;
+//         arr.forEach((item) => {
+//             if (item.runStatus) {
+//                 totalIsOpen = 1;
+//             }
+
+//         });
+//         //说明状态改变
+//         if (sitem.light !== totalIsOpen) {
+//             callback && callback(totalIsOpen);
+//             return;
+//         } else if (num == 0) {
+//             return;
+//         }
+
+//         getLamp(sitem, callback, num);
+
+//     });
+// };
 //查询 单个空调的状态
-export const getAirInfo = (sitem, callback, num, projectId) => {
-
-    num = num - 1;
-    const paramsObj = {
-        objectId: sitem.id,
-        projectId: projectId,
-    };
-    getFeedbackDocumentsHttp(paramsObj).then((res) => {
-        //1开 0 关
-        const totalIsOpen = res.icon == 7 ? 0 : 1;
-
-        //说明状态改变
-        if (sitem.airConditioner !== totalIsOpen) {
-            callback && callback(totalIsOpen);
-            //debugger;
-            return;
-        } else if (num == 0) {
-            return;
-        }
-        // debugger;
-        //getAirInfo(sitem, callback, num, projectId);
-
-    });
-};
+// export const getAirInfo = (sitem, callback, num, projectId) => {
+
+//     num = num - 1;
+//     const paramsObj = {
+//         objectId: sitem.id,
+//         projectId: projectId,
+//     };
+//     getFeedbackDocumentsHttp(paramsObj).then((res) => {
+//         //1开 0 关
+//         const totalIsOpen = res.icon == 7 ? 0 : 1;
+
+//         //说明状态改变
+//         if (sitem.airConditioner !== totalIsOpen) {
+//             callback && callback(totalIsOpen);
+//             //debugger;
+//             return;
+//         } else if (num == 0) {
+//             return;
+//         }
+
+//     });
+// };

+ 2 - 8
src/pages/Equipment/index.tsx

@@ -26,13 +26,7 @@ import {
   queryDeviceTimeManage,
   queryProjectEquipType,
 } from '@/services/sagacare_service/environment';
-import {
-  changeCurtain,
-  changeAir,
-  changeLight,
-  getLamp,
-  getAirInfo,
-} from '@/pages/Equipment/equipmentControl';
+import { changeCurtain, changeAir, changeLight } from '@/pages/Equipment/equipmentControl';
 
 //设备状态
 type equipStatus = {
@@ -135,7 +129,7 @@ const Environment: React.FC = () => {
     }
     if (selNav.id == 'curtain' || type == 'curtain') {
       //console.log('valuevaluevaluevalue', value);
-      if (value == 'noHave') {
+      if (value == 'noHave' || (!value && value !== 0)) {
         //没有
         return 'rgba(196, 196, 196, 0)';
       } else {