From 2ec9898778d3beda89278e2a53ac0e68b3035d29 Mon Sep 17 00:00:00 2001 From: 陈嘉乐 <cjl@hdlchina.com.cn> Date: 星期三, 01 七月 2020 15:06:24 +0800 Subject: [PATCH] 2020-7-1-2 --- ZigbeeApp/Shared/Phone/Device/Logic/LogicCommunalPage.cs | 213 +++++++++++++++++++++++++++++++++++++++++++---------- 1 files changed, 173 insertions(+), 40 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/LogicCommunalPage.cs b/ZigbeeApp/Shared/Phone/Device/Logic/LogicCommunalPage.cs old mode 100755 new mode 100644 index 97b170b..d937307 --- a/ZigbeeApp/Shared/Phone/Device/Logic/LogicCommunalPage.cs +++ b/ZigbeeApp/Shared/Phone/Device/Logic/LogicCommunalPage.cs @@ -312,11 +312,7 @@ { case 13: { - if (intvalue == "1") - { - state=Language.StringByID( MyInternationalizationString.someone); - } - else + if (conditions.ContainsKey("IgnoreTime")) { int minute = int.Parse(conditions["IgnoreTime"]) / 60; int second = int.Parse(conditions["IgnoreTime"]) % 60; @@ -340,48 +336,55 @@ } } + else + { + state = Language.StringByID(MyInternationalizationString.someone); + } + } break; case 21: case 22: { - if (intvalue == "1") + if (conditions.ContainsKey("IgnoreTime")) { - state =Language.StringByID( MyInternationalizationString.logicopen); - } - else - { - if (conditions.ContainsKey("IgnoreTime")) + + int minute = int.Parse(conditions["IgnoreTime"]) / 60; + int second = int.Parse(conditions["IgnoreTime"]) % 60; + if (minute != 0 && second != 0) { - - int minute = int.Parse(conditions["IgnoreTime"]) / 60; - int second = int.Parse(conditions["IgnoreTime"]) % 60; - if (minute != 0 && second != 0) - { - state = minute.ToString() + Language.StringByID(MyInternationalizationString.minute) + second.ToString() + Language.StringByID(MyInternationalizationString.second) + Language.StringByID(MyInternationalizationString.closetime); - - } - else - { - if (minute == 0 && second != 0) - { - state = second.ToString() + Language.StringByID(MyInternationalizationString.second) + Language.StringByID(MyInternationalizationString.closetime); - - } - if (minute != 0 && second == 0) - { - state = minute.ToString() + Language.StringByID(MyInternationalizationString.Minute) + Language.StringByID(MyInternationalizationString.closetime); - - } - - } + state = minute.ToString() + Language.StringByID(MyInternationalizationString.minute) + second.ToString() + Language.StringByID(MyInternationalizationString.second) + Language.StringByID(MyInternationalizationString.closetime); } else { - state =Language.StringByID(MyInternationalizationString.logicclose); + if (minute == 0 && second != 0) + { + state = second.ToString() + Language.StringByID(MyInternationalizationString.second) + Language.StringByID(MyInternationalizationString.closetime); + + } + if (minute != 0 && second == 0) + { + state = minute.ToString() + Language.StringByID(MyInternationalizationString.Minute) + Language.StringByID(MyInternationalizationString.closetime); + + } + } + } + else + { + if (intvalue == "1") + { + state = Language.StringByID(MyInternationalizationString.logicopen); + } + else + { + state = Language.StringByID(MyInternationalizationString.logicclose); + } + + } + } break; case 40: @@ -421,6 +424,44 @@ state =Language.StringByID( MyInternationalizationString.callthepolice); } + } + break; + case 541: + { + if (conditions["Cluster_ID"] == "1024") { + state = Language.StringByID(MyInternationalizationString.ambientLight)+"<"+conditions["AttriButeData1"]+"lux"+ Language.StringByID(MyInternationalizationString.hour1); + } + else + { + if (conditions.ContainsKey("IgnoreTime")) + { + int minute = int.Parse(conditions["IgnoreTime"]) / 60; + int second = int.Parse(conditions["IgnoreTime"]) % 60; + if (minute != 0 && second != 0) + { + state = minute.ToString() + Language.StringByID(MyInternationalizationString.minute) + second.ToString() + Language.StringByID(MyInternationalizationString.second) + Language.StringByID(MyInternationalizationString.unattendedtime1); + + } + else + { + if (minute == 0 && second != 0) + { + state = second.ToString() + Language.StringByID(MyInternationalizationString.second) + Language.StringByID(MyInternationalizationString.unattendedtime1); + + } + if (minute != 0 && second == 0) + { + state = minute.ToString() + Language.StringByID(MyInternationalizationString.Minute) + Language.StringByID(MyInternationalizationString.unattendedtime1); + + } + + } + } + else + { + state = Language.StringByID(MyInternationalizationString.someone); + } + } } break; default: @@ -563,11 +604,11 @@ { if (conditions["AtHome"] == "1") { - state = Language.StringByID(MyInternationalizationString.athome) + radius["Radius"] + "绫�"; + state = Language.StringByID(MyInternationalizationString.athome) + radius["Radius"] + Language.StringByID(MyInternationalizationString.mi); } else { - state = Language.StringByID(MyInternationalizationString.leavehome) + radius["Radius"] + "绫�"; + state = Language.StringByID(MyInternationalizationString.leavehome) + radius["Radius"] + Language.StringByID(MyInternationalizationString.mi); } } } @@ -590,6 +631,7 @@ selecteddevice.selecetddevicestateBtn.Text = state; } ///缂栬緫 + selecteddevice.edit.Tag = i.ToString(); selecteddevice.edit.MouseUpEventHandler += (sender, e) => { switch (Type) @@ -622,7 +664,7 @@ { var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor }; this.AddChidren(flMain); - CurrentDeviceState.CurrentDeviceView(flMain, deviceinof, true, "condition_logic"); + CurrentDeviceState.CurrentDeviceView(flMain, deviceinof, true, "condition_logic",int.Parse(selecteddevice.edit.Tag.ToString())); } else { @@ -984,6 +1026,86 @@ } } break; + case DeviceType.ColorTemperatureLight: + { + icon = "ZigeeLogic/nightLight.png"; + var taskList = actions["TaskList"] as List<Dictionary<string, string>>; + if (taskList == null) + { + continue; + } + foreach (var tasks in taskList) + { + switch (tasks["TaskType"]) + { + case "1": + { + if (tasks["Data1"] == "0") + { + state += Language.StringByID(MyInternationalizationString.close) + ";"; + } + else + { + state += Language.StringByID(MyInternationalizationString.open) + ";"; + } + } + break; + + } + } + foreach (var tasks in taskList) + { + switch (tasks["TaskType"]) + { + + case "3": + { + var intvalue = int.Parse(tasks["Data1"]); + var lightbrightnessvalue = (intvalue * 100) / 254; + state += Language.StringByID(MyInternationalizationString.brightness) + lightbrightnessvalue.ToString() + "%;"; + } + break; + + } + } + foreach (var tasks in taskList) + { + switch (tasks["TaskType"]) + { + + case "7": + { + if (tasks["Data1"] == "0") + { + state += Language.StringByID(MyInternationalizationString.buzzer) + Language.StringByID(MyInternationalizationString.close) + ";"; + } + else + { + state += Language.StringByID(MyInternationalizationString.buzzer) + Language.StringByID(MyInternationalizationString.open) + ";"; + } + } + break; + + } + } + foreach (var tasks in taskList) + { + switch (tasks["TaskType"]) + { + + case "8": + { + var intvalue = int.Parse(tasks["Data1"]); + var colorTemperatureValue = 1000000/(intvalue *100); + state += Language.StringByID(MyInternationalizationString.colorTemperature) + colorTemperatureValue.ToString() + "K"; + } + break; + } + } + + state=state.TrimEnd(';');//鍘绘帀鏈�鍚庨偅涓�";" + } + break; } } @@ -1110,6 +1232,7 @@ actiondevice.selecetddevicestateBtn.Text = state; } ///缂栬緫 + actiondevice.edit.Tag = i.ToString(); actiondevice.edit.MouseUpEventHandler += (sender, e) => { switch (linkType) @@ -1118,9 +1241,19 @@ case 0: { var deviceinof = Method.GetCommonDevice(actions["DeviceAddr"].ToString(), actions["Epoint"].ToString()); - var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor }; - this.AddChidren(flMain); - CurrentDeviceState.CurrentDeviceView(flMain, deviceinof, true, "action_logic"); + if (deviceinof.Type != DeviceType.ColorTemperatureLight) + { + var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor }; + this.AddChidren(flMain); + CurrentDeviceState.CurrentDeviceView(flMain, deviceinof, true, "action_logic",int.Parse(actiondevice.edit.Tag.ToString())); + } + else + { + var nightlight = new Nightlight(); + UserView.HomePage.Instance.AddChidren(nightlight); + UserView.HomePage.Instance.PageIndex += 1; + nightlight.Show(deviceinof, true, "logic", actions); + } } break; case 6: -- Gitblit v1.8.0