From 9a4b76398009cf76c508d61f7e48fb6f5cb7ac2d Mon Sep 17 00:00:00 2001 From: xm <1271024303@qq.com> Date: 星期二, 21 七月 2020 09:46:53 +0800 Subject: [PATCH] 请合并最新多功能面板代码 --- ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/MutilfunctionPanelMethod.cs | 103 +++++++++++++++++++++++++++++++-------------------- 1 files changed, 62 insertions(+), 41 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/MutilfunctionPanelMethod.cs b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/MutilfunctionPanelMethod.cs old mode 100755 new mode 100644 index c1bac93..7e5db3d --- a/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/MutilfunctionPanelMethod.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/Device/Bind/MutilfunctionPanelMethod.cs @@ -48,20 +48,41 @@ var tempList = new List<BindListAllInfo>(); int count1 = 0; int count2 = 0; + + switch (curBindType) + { + case 1: + curSwitchCount = 0; + break; + case 2: + curSocketCount = 0; + break; + case 3: + curLightFromRelayCount = 0; + curLightCount = 0; + break; + } + foreach (var key in bindTargetsFromMutilfunctionPanelList.Keys) { var bList = bindTargetsFromMutilfunctionPanelList[key]; foreach (var bDev in bList) { + if (curBindType == 0) + { + if (bDev.KeyEpoint >= 32 && bDev.KeyEpoint <= 51) + { + tempList.Add(bDev); + } + } + var device = LocalDevice.Current.GetDevice(bDev.BindMacAddr, bDev.BindEpoint); + if (device == null) + { + continue; + } switch (curBindType) { - case 0: - if (bDev.KeyEpoint >= 32 && bDev.KeyEpoint <= 51) - { - tempList.Add(bDev); - } - break; case 1: if (bDev.KeyEpoint >= 52 && bDev.KeyEpoint <= 61) { @@ -128,7 +149,6 @@ //绌鸿皟缁戝畾绫诲瀷 if (device.Type == DeviceType.Thermostat && bDev.BindCluster == 513) { - //Thermostat鏄┖璋� tempList.Add(bDev); } } @@ -222,15 +242,21 @@ var bList = bindTargetsFromMutilfunctionPanelList[key]; foreach (var bDev in bList) { + if (curBindType == 0) + { + if (bDev.KeyEpoint >= 32 && bDev.KeyEpoint <= 51) + { + tempList.Remove(bDev.KeyEpoint); + } + } + var device = LocalDevice.Current.GetDevice(bDev.BindMacAddr, bDev.BindEpoint); + if (device == null) + { + continue; + } switch (curBindType) { - case 0: - if (bDev.KeyEpoint >= 32 && bDev.KeyEpoint <= 51) - { - tempList.Remove(bDev.KeyEpoint); - } - break; case 1: case 2: if (bDev.KeyEpoint >= 52 && bDev.KeyEpoint <= 61) @@ -296,7 +322,6 @@ //绌鸿皟缁戝畾绫诲瀷 if (device.Type == DeviceType.Thermostat && bDev.BindCluster == 513) { - //Thermostat鏄┖璋� tempList.Remove(bDev.KeyEpoint); } } @@ -393,10 +418,10 @@ roomIncludeMatchDevice.Add(device); } } - if (device.Type == DeviceType.DimmableLight) - { - roomIncludeMatchDevice.Add(device); - } + //if (device.Type == DeviceType.DimmableLight) + //{ + // roomIncludeMatchDevice.Add(device); + //} break; case 4: if (device.Type == DeviceType.WindowCoveringDevice) @@ -407,7 +432,10 @@ case 5: if (device.Type == DeviceType.Thermostat) { - //Thermostat鏄┖璋� + if (BindInfo.checkRealAcDevice(device) == false) + { + continue; + } roomIncludeMatchDevice.Add(device); } break; @@ -579,10 +607,10 @@ { currentPanelBindSupportDeviceListTemp.Add(device); } - if (device.Type == DeviceType.DimmableLight) - { - currentPanelBindSupportDeviceListTemp.Add(device); - } + //if (device.Type == DeviceType.DimmableLight) + //{ + // currentPanelBindSupportDeviceListTemp.Add(device); + //} break; case 4: if (device.Type == DeviceType.WindowCoveringDevice) @@ -593,7 +621,10 @@ case 5: if (device.Type == DeviceType.Thermostat) { - //Thermostat鏄┖璋� + if (BindInfo.checkRealAcDevice(device) == false) + { + continue; + } currentPanelBindSupportDeviceListTemp.Add(device); } break; @@ -715,10 +746,6 @@ undistruibuteDevList.Add(device); } } - if (device.Type == DeviceType.DimmableLight) - { - undistruibuteDevList.Add(device); - } break; case 4: if (device.Type == DeviceType.WindowCoveringDevice) @@ -729,7 +756,10 @@ case 5: if (device.Type == DeviceType.Thermostat) { - //Thermostat鏄┖璋� + if (BindInfo.checkRealAcDevice(device) == false) + { + continue; + } undistruibuteDevList.Add(device); } break; @@ -826,21 +856,12 @@ curRoomDeviceListTemp.Add(device); } } - if (device.Type == DeviceType.DimmableLight) - { - if (deviceEnumInfo.ConcreteType != Common.DeviceConcreteType.ButtonPanel_SimpleMultifunction) - { - //Thermostat鏄┖璋� - curRoomDeviceListTemp.Add(device); - } - } break; case 4: if (device.Type == DeviceType.WindowCoveringDevice) { if (deviceEnumInfo.ConcreteType != Common.DeviceConcreteType.ButtonPanel_SimpleMultifunction) { - //Thermostat鏄┖璋� curRoomDeviceListTemp.Add(device); } } @@ -848,11 +869,11 @@ case 5: if (device.Type == DeviceType.Thermostat) { - if (deviceEnumInfo.ConcreteType != Common.DeviceConcreteType.ButtonPanel_SimpleMultifunction) + if (BindInfo.checkRealAcDevice(device) == false) { - //Thermostat鏄┖璋� - curRoomDeviceListTemp.Add(device); + continue; } + curRoomDeviceListTemp.Add(device); } break; case 6: -- Gitblit v1.8.0