Browse Source

fix:切换楼层窗帘显示问题,空调全关不筛选空间问题,切换空间运行设备显示数目问题

venshine 2 years ago
parent
commit
23c3c2435d

+ 5 - 5
src/pages/Equipment/components/topNavRight/index.tsx

@@ -23,7 +23,7 @@ const TopNavRight: React.FC<topNavRightProps> = ({ selNavObj, navigatorList, map
   const [deviceList, setDeviceList] = useState<navigatorItem[]>([]);
   useEffect(() => {
     setDeviceList(navigatorList.slice(1));
-  }, []);
+  }, [navigatorList]);
 
   const allOpenClick = (key) => {
     //debugger;
@@ -35,7 +35,7 @@ const TopNavRight: React.FC<topNavRightProps> = ({ selNavObj, navigatorList, map
       okText: '确认',
       cancelText: '取消',
       onOk() {
-        console.log('mapListmapList', mapList);
+        //console.log('mapListmapList', mapList,selNavObj);
         //筛选 没有开启的空间
         var filterSpaceArr = mapList.filter((item) => {
           return item[selNavObj.id] == 0 || item[selNavObj.id] == 2;
@@ -43,7 +43,7 @@ const TopNavRight: React.FC<topNavRightProps> = ({ selNavObj, navigatorList, map
         var filterSpaceArr2 = mapList.filter((item) => {
           return item.localName == '上格云3' || item.localName == '上格云休闲区';
         });
-        console.log('开启filterSpaceArr', filterSpaceArr2);
+
         var flag = 1;
         //现在加上循环调用 所以把查询关了
         function getDeviceStatus() {
@@ -61,7 +61,7 @@ const TopNavRight: React.FC<topNavRightProps> = ({ selNavObj, navigatorList, map
         //如果是空调
         if (filterSpaceArr.length == 0) return;
         if (selNavObj.id == 'airConditioner') {
-          changeAllAir(filterSpaceArr, getDeviceStatus, '打开', projectObj.projectId);
+          changeAllAir(mapList, getDeviceStatus, '打开', projectObj.projectId);
         }
         if (selNavObj.id == 'light') {
           changeLight('all', filterSpaceArr, getDeviceStatus, '打开');
@@ -110,7 +110,7 @@ const TopNavRight: React.FC<topNavRightProps> = ({ selNavObj, navigatorList, map
 
         //如果是空调
         if (selNavObj.id == 'airConditioner') {
-          changeAllAir(filterSpaceArr, getDeviceStatus, '关闭', projectObj.projectId);
+          changeAllAir(mapList, getDeviceStatus, '关闭', projectObj.projectId);
         }
         if (selNavObj.id == 'light') {
           changeLight('all', filterSpaceArr, getDeviceStatus, '关闭');

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

@@ -134,7 +134,8 @@ const Environment: React.FC = () => {
       colorStr = selNav.colorStr;
     }
     if (selNav.id == 'curtain' || type == 'curtain') {
-      if (value == 'noHave') {
+      //console.log('valuevaluevaluevalue', value);
+      if (value == 'noHave' || !value) {
         //没有
         return 'rgba(196, 196, 196, 0)';
       } else {