| | |
| | | var middle = new VerticalScrolViewLayout |
| | | { |
| | | Y = view.topRowLayout.Bottom, |
| | | Height = Application.GetRealHeight(1920 - 184-180), |
| | | Height = Application.GetRealHeight(Method.H - 184-180), |
| | | BackgroundColor = ZigbeeColor.Current.LogicMiddleBackgroundColor, |
| | | }; |
| | | this.AddChidren(middle); |
| | |
| | | addconditionview.iconBtn.Visible = true; |
| | | addconditionview.titleBtn.TextID = MyInternationalizationString.ifcondition; |
| | | middle.AddChidren(addconditionview.AddDeviceView()); |
| | | |
| | | |
| | | ///添加条件的点击事件 |
| | | addconditionview.clickBtn.MouseUpEventHandler+= (sender, e) => |
| | | { |
| | |
| | | LogicView.AddDeviceView addflview = new LogicView.AddDeviceView(); |
| | | addflview.titleBtn.TextID = MyInternationalizationString.addconditions; |
| | | middle.AddChidren(addflview.AddFl()); |
| | | |
| | | addflview.clickBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | if (Common.Logic.CurrentLogic.Conditions.Count == 1) |
| | |
| | | { |
| | | 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; |
| | |
| | | |
| | | } |
| | | } |
| | | 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: |
| | |
| | | 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: |
| | |
| | | s = "≤"; |
| | | } |
| | | break; |
| | | } |
| | | }
|
| | | ///转换温度值/100
|
| | | string srtValue = (int.Parse(conditions["AttriButeData1"]) / 100).ToString(); |
| | | if (conditions["Cluster_ID"] == "1026") |
| | | { |
| | | icon = "ZigeeLogic/temperature.png"; |
| | | state = s + conditions["AttriButeData1"] + "℃"; |
| | | state = s + srtValue + "℃"; |
| | | } |
| | | else |
| | | { |
| | | icon = "ZigeeLogic/humidity.png"; |
| | | state = s + conditions["AttriButeData1"] + "%"; |
| | | state = s + srtValue + "%"; |
| | | } |
| | | break; |
| | | |
| | |
| | | { |
| | | 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); |
| | | } |
| | | } |
| | | } |
| | |
| | | selecteddevice.selecetddevicestateBtn.Text = state; |
| | | } |
| | | ///编辑 |
| | | selecteddevice.edit.Tag = i.ToString(); |
| | | selecteddevice.edit.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | switch (Type) |
| | |
| | | { |
| | | 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 |
| | | { |
| | |
| | | addactionview.iconBtn.Visible = true; |
| | | addactionview.titleBtn.TextID = MyInternationalizationString.execute; |
| | | middle.AddChidren(addactionview.AddDeviceView()); |
| | | |
| | | |
| | | addactionview.clickBtn.MouseUpEventHandler+= (sender, e) => |
| | | { |
| | |
| | | ListActions.AddRange(Common.Logic.CurrentLogic.Actions); |
| | | ListActions.Add(new Dictionary<string, object>()); |
| | | |
| | | |
| | | |
| | | for (int i = 0; i < ListActions.Count; i++) |
| | | { |
| | | if (i == (ListActions.Count - 1)) |
| | |
| | | LogicView.AddDeviceView addflview = new LogicView.AddDeviceView(); |
| | | addflview.titleBtn.TextID = MyInternationalizationString.addfunction; |
| | | middle.AddChidren(addflview.AddFl()); |
| | | |
| | | |
| | | addflview.clickBtn.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | Common.Logic.CurrentLogic.LogicName = logicTextBox.Text.Trim(); |
| | |
| | | } |
| | | } |
| | | 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; |
| | | } |
| | | |
| | | } |
| | |
| | | actiondevice.selecetddevicestateBtn.Text = state; |
| | | } |
| | | ///编辑 |
| | | actiondevice.edit.Tag = i.ToString(); |
| | | actiondevice.edit.MouseUpEventHandler += (sender, e) => |
| | | { |
| | | switch (linkType) |
| | |
| | | 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: |