JLChen
2020-03-16 30d5375178a275abd2019f2e5ce0eab1dfa51e0e
Crabtree/SmartHome/UI/SimpleControl/CommonPage.cs
@@ -256,7 +256,8 @@
                    }
                    break;
                case Command.SetSingleLightACK:
                    Console.WriteLine ("Command.SetSingleLightACK");
                    //Console.WriteLine ($"Command.SetSingleLightACK: subnetID:{subnetID} deviceID:{deviceID} 回路:{usefullBytes [0]}");
                    //Console.WriteLine ("Command.SetSingleLightACK");
                    foreach (var room in Room.Lists) {
                        var common = room.DeviceList.Find ((obj) => obj.CommonLoopID == subnetID.ToString () + "_" + deviceID.ToString () + "_" + usefullBytes [0].ToString ());
                        if (common != null) {
@@ -279,7 +280,14 @@
                                    hadBeUpdate = false;
                                (common as LightDimming).CurrentBrightness = usefullBytes [2];
                            } else if (common.Type == DeviceType.FanModule) {
                                //if ((common as FanModule).Switch == usefullBytes [2]) {
                                //    hadBeUpdate = false;
                                //}
                                (common as FanModule).Switch = usefullBytes [2];
                                if (usefullBytes [2] != 0)
                                    (common as FanModule).WindSpeed = usefullBytes [2];
                                //(common as FanModule).Switch = usefullBytes [2];
                            } else if (common.Type == DeviceType.LightMixSwitch) {
                                if ((common as LightMixSwitch).CurrentBrightness == usefullBytes [2])
                                    hadBeUpdate = false;
@@ -312,6 +320,7 @@
                                if (!string.IsNullOrEmpty (room.Name))
                                    UserDeviceToLight.UpdateBrighingCount (updateFlag);
                                if (hadBeUpdate) {
                                    UserRoom.UpdataDeviceStatus (common);
                                    UserLightPage.UpdateStatus (updateFlag, usefullBytes [2]);
                                    UserDeviceToLight.UpdateStatus (updateFlag, usefullBytes [2]);
@@ -326,7 +335,7 @@
                        }
                    }
                    break;
                case Command. ReadAnalogValueACK:
                case Command.ReadAnalogValueACK:
                    foreach (var room in Room.Lists) {
                        foreach (var common in room.DeviceList) {
                            if (common.SubnetID != subnetID || common.DeviceID != deviceID || common.LoopID != usefullBytes [1]) {
@@ -350,7 +359,7 @@
                                int dddd = usefullBytes [0] & 0x3F;
                            int dddd = usefullBytes [0] & 0x3F;
                            // 0xXX:公司内部协议对应的序号
                            // common.Type:对应的是编辑软件的序号(没有一一对应,是为了将相近的调整在一起,方便客户使用)