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/Device/Logic/CurrentDeviceState.cs | 1426 +++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ 1 files changed, 1,426 insertions(+), 0 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs b/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs new file mode 100755 index 0000000..cb02f21 --- /dev/null +++ b/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs @@ -0,0 +1,1426 @@ +锘縰sing System; +using Shared.Common; +using Shared.R; +using Shared; +using ZigBee.Device; +using System.Collections.Generic; +namespace Shared.Phone.Device.Logic +{ + public class CurrentDeviceState + { + /// <summary> + /// 閫変腑璇ヨ澶囧姛鑳戒綔涓烘潯浠舵垨鑰呯洰鏍囩殑瑙嗗浘鏂规硶 + /// </summary> + /// <param name="common">Common.</param> + public static void CurrentDeviceView(FrameLayout flMain, CommonDevice common, bool edit, string str,int intValue) + { + #region -------鐣岄潰甯冨眬閮ㄥ垎 + //涓嶈褰撳墠鐣岄潰婊戝姩 + UserView.HomePage.Instance.ScrollEnabled = false; + CompleteView completeView = new CompleteView(); + flMain.AddChidren(completeView.Show(1)); + completeView.Btntitle.Text = LocalDevice.Current.GetDeviceEpointName(common); + EventHandler<MouseEventArgs> clickcancel = (sender, e) => + { + if (!edit) + { + UserView.HomePage.Instance.ScrollEnabled = true; + } + flMain.RemoveFromParent(); + }; + flMain.MouseUpEventHandler += clickcancel; + completeView.Btncancel.MouseUpEventHandler += clickcancel; + + mFunView openView = new mFunView(); + openView.frameLayout.Y = Application.GetRealHeight(140 + 20); + //completeView.Show(l).AddChidren(openView.Show()); + openView.titleBtn.TextID = MyInternationalizationString.open; + + mFunView closeView = new mFunView(); + closeView.frameLayout.Y = Application.GetRealHeight(140 + 20+160); + // closeView.frameLayout.Y = openView.frameLayout.Bottom; + //completeView.Show(l).AddChidren(closeView.Show()); + closeView.titleBtn.TextID = MyInternationalizationString.close; + + mFunView takebackView = new mFunView(); + takebackView.frameLayout.Y = Application.GetRealHeight(140+20+160+160); + // takebackView.frameLayout.Y = closeView.frameLayout.Bottom; + //completeView.Show(l).AddChidren(takebackView.Show()); + takebackView.titleBtn.TextID = MyInternationalizationString.onoff; + takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + #region -------杩涘害鏉℃帶浠� + var horizontalSeekBarRowLien = new RowLayout + { + //Y = openView.frameLayout.Bottom, + Width = Application.GetRealWidth(915), + Height = Application.GetRealHeight(160), + X = Application.GetRealWidth(80), + LineColor = ZigbeeColor.Current.LogicRowLayoutLineColor, + }; + var horizontalSeekBarVol = new DiyImageSeekBar + { + //Y = openView.frameLayout.Bottom,//杩涘害鏉$埗鎺т欢Y鍧愭爣 + X = Application.GetRealWidth(80),//杩涘害鏉鍧愭爣 + Width = Application.GetRealWidth(915),//杩涘害鏉$殑闀垮害 + Height = Application.GetRealHeight(160),//杩涘害鏉$埗鎺т欢楂樺害 + IsProgressTextShow = true,//鏄剧ず鐧惧垎姣� + IsClickable = false,//杩涘害鏉℃槸鍚︽粦鍔� + ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected,//閫変腑杩涘害鏉¢鑹� + ThumbImagePath = "ZigeeLogic/progressbtn2.png",//杩涘害鏉℃寜閽浘鏍� + ThumbImageHeight = Application.GetRealHeight(56),//杩涘害鏉℃寜閽浘鏍囩殑楂樺害锛堥粯璁ゆ鏂瑰舰锛氬鍜岄珮涓�鏍凤級 + ProgressTextColor = ZigbeeColor.Current.LogicBtnCancelColor, + ProgressTextSize = 9,//鏄剧ず鐧惧垎姣斿瓧浣撳ぇ灏�12 + SeekBarViewHeight = Application.GetRealHeight(5),//杩涘害鏉$殑楂樺害10 + }; + #endregion + #endregion + + #region -------鏁版嵁澶勭悊閮ㄥ垎 + #region -------鏉′欢 + Dictionary<string, string> deviceConditionsInfo = new Dictionary<string, string>(); + Send.dictionary(deviceConditionsInfo, "Type", "1"); + Send.dictionary(deviceConditionsInfo, "IsValid", "1"); + Send.dictionary(deviceConditionsInfo, "MacAddr", common.DeviceAddr); + Send.dictionary(deviceConditionsInfo, "Epoint", common.DeviceEpoint.ToString()); + Dictionary<string, string> devices = null; + #endregion + #region -------鐩爣 + Dictionary<string, object> actionsInfo = new Dictionary<string, object>(); + List<Dictionary<string, string>> taskListInfo = new List<Dictionary<string, string>>(); + actionsInfo.Add("LinkType", 0); + actionsInfo.Add("DeviceAddr", common.DeviceAddr); + actionsInfo.Add("Epoint", common.DeviceEpoint); + actionsInfo.Add("Time", 0); + actionsInfo.Add("TaskList", taskListInfo); + List<Dictionary<string, string>> TaskList = null; + #endregion + var _if=str.Split('_'); + if (edit) + { + if (_if[0]== "condition") + { + var deviceinfo = Common.Logic.CurrentLogic.Conditions[intValue]; + if (deviceinfo["Type"] == "1") + { + if (common.DeviceAddr == deviceinfo["MacAddr"] && common.DeviceEpoint.ToString() == deviceinfo["Epoint"]) + { + devices = deviceinfo; + + } + } + //foreach (var deviceinfo in Common.Logic.CurrentLogic.Conditions) + //{ + // if (deviceinfo["Type"] == "1") + // { + // if (common.DeviceAddr == deviceinfo["MacAddr"] && common.DeviceEpoint.ToString() == deviceinfo["Epoint"]) + // { + // devices = deviceinfo; + // break; + // } + // } + //} + } + else + { + var deviceinfo = Common.Logic.CurrentLogic.Actions[intValue]; + if (deviceinfo["LinkType"].ToString() == "0") + { + + if (deviceinfo["DeviceAddr"].ToString() == common.DeviceAddr && deviceinfo["Epoint"].ToString() == common.DeviceEpoint.ToString()) + { + TaskList = deviceinfo["TaskList"] as List<Dictionary<string, string>>; + } + } + //foreach (var deviceinfo in Common.Logic.CurrentLogic.Actions) + //{ + // if (deviceinfo["LinkType"].ToString() == "0") + // { + // if (deviceinfo["DeviceAddr"].ToString() == common.DeviceAddr && deviceinfo["Epoint"].ToString() == common.DeviceEpoint.ToString()) + // { + // TaskList = deviceinfo["TaskList"] as List<Dictionary<string, string>>; + // break; + // } + // } + //} + } + } + #endregion + int l = 0; + string SelectedDeviceStatus = ""; + switch (common.Type) + { + ///鐏厜 + case DeviceType.OnOffOutput: + { + if (_if[0] == "condition") + { + l = 2; + Send.dictionary(deviceConditionsInfo, "Cluster_ID", "6"); + Send.dictionary(deviceConditionsInfo, "AttriButeId", "0"); + Send.dictionary(deviceConditionsInfo, "Range", "1"); + Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0"); + + #region 鐏厜View + completeView.Show(l).AddChidren(openView.Show()); + completeView.Show(l).AddChidren(closeView.Show()); + closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + #endregion + + ///鐐瑰嚮纭浜嬩欢 + openView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + openView.selectedIconBtn.Visible = true; + closeView.selectedIconBtn.Visible = false; + openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; + closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; + SelectedDeviceStatus = "OnOffOutput"; + Send.dictionary(deviceConditionsInfo, "AttriButeData1", "1");//榛樿鍊� + + + }; + + ///鐐瑰嚮鍙栨秷浜嬩欢 + closeView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = true; + openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; + closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; + SelectedDeviceStatus = "OnOffOutput"; + Send.dictionary(deviceConditionsInfo, "AttriButeData1", "0");//榛樿鍊� + + }; + + if (edit && devices != null) + { + if (devices["AttriButeId"] == "0") + { + if (devices["AttriButeData1"] == "1") + { + openView.selectedIconBtn.Visible = true; + closeView.selectedIconBtn.Visible = false; + openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; + closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; + } + else + { + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = true; + openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; + closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; + + } + } + } + } + else + { + l = 3; + #region ----鍒濆鍖栬澶囧姛鑳芥暟鎹�---- + Dictionary<string, string> switchdictionary = new Dictionary<string, string>(); + Send.dictionary(switchdictionary, "TaskType", "1"); + Send.dictionary(switchdictionary, "Data1", "0"); + Send.dictionary(switchdictionary, "Data2", "0"); + taskListInfo.Add(switchdictionary); + + #endregion + + #region 鐏厜View + + completeView.Show(l).AddChidren(openView.Show()); + completeView.Show(l).AddChidren(closeView.Show()); + //closeView.frameLayout.Y = openView.frameLayout.Bottom; + completeView.Show(l).AddChidren(takebackView.Show()); + //takebackView.frameLayout.Y = closeView.frameLayout.Bottom; + takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + #endregion + + ///纭浜嬩欢 + openView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "yes"; + openView.selectedIconBtn.Visible = true; + closeView.selectedIconBtn.Visible = false; + takebackView.selectedIconBtn.Visible = false; + Send.dictionary(switchdictionary, "Data1", "1");//榛樿鍊� + }; + ///鍙栨秷浜嬩欢 + closeView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "yes"; + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = true; + takebackView.selectedIconBtn.Visible = false; + Send.dictionary(switchdictionary, "Data1", "0");//榛樿鍊� + + }; + //鍙栧弽 + takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "yes"; + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = false; + takebackView.selectedIconBtn.Visible = true; + Send.dictionary(switchdictionary, "Data1", "2");//榛樿鍊� + + }; + + if (edit && TaskList != null) + { + foreach (var value in TaskList) + { + if (value["TaskType"] == "1") + { + var data1 = value["Data1"]; + Send.dictionary(switchdictionary, "Data1", data1); + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = false; + takebackView.selectedIconBtn.Visible = false; + switch (data1) + { + case "1": + { + openView.selectedIconBtn.Visible = true; + } + break; + case "0": + { + closeView.selectedIconBtn.Visible = true; + } + break; + case "2": + { + takebackView.selectedIconBtn.Visible = true; + } + break; + } + + } + + } + } + } + } + break; + case DeviceType.IASZone: + { + var iASZonedevice = common as IASZone; + if (iASZonedevice.DeviceID != 1026) + { + break; + } + + Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1280"); + Send.dictionary(deviceConditionsInfo, "AttriButeId", "1281"); + Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0"); + + int timeValue = 0; + ///鐐瑰嚮纭浜嬩欢 + openView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "IASZone"; + openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; + closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; + openView.selectedIconBtn.Visible = true; + closeView.selectedIconBtn.Visible = false; + if (iASZonedevice.IasDeviceType == 13||iASZonedevice.IasDeviceType == 541) + { + closeView.selectedIconBtn.Visible = true; + } + Send.dictionary(deviceConditionsInfo, "Range", "5"); + Send.dictionary(deviceConditionsInfo, "AttriButeData1", "1"); + }; + ///鐐瑰嚮鍙栨秷浜嬩欢 + closeView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "IASZone"; + openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; + closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = true; + Send.dictionary(deviceConditionsInfo, "Range", "1"); + Send.dictionary(deviceConditionsInfo, "AttriButeData1", "0"); + if (iASZonedevice.IasDeviceType == 13|| iASZonedevice.IasDeviceType == 541) + { + SelectedDeviceStatus = ""; + closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; + var ignoreTime = new IgnoreTime(); + UserView.HomePage.Instance.AddChidren(ignoreTime); + UserView.HomePage.Instance.PageIndex += 1; + ignoreTime.Show(common, closeView.titleBtn.Text, edit, timeValue, _if[1]); + } + }; + + switch (iASZonedevice.IasDeviceType) + { + case 13: + { + openView.titleBtn.TextID = MyInternationalizationString.someone; + closeView.titleBtn.TextID = MyInternationalizationString.unattendedtime1; + closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + closeView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png"; + closeView.selectedIconBtn.Visible = true; + completeView.Show(2).AddChidren(openView.Show()); + completeView.Show(2).AddChidren(closeView.Show()); + } + break; + case 21: + case 22: + { + #region + var view = completeView.Show(3); + openView.titleBtn.TextID = MyInternationalizationString.logicopen; + closeView.titleBtn.TextID = MyInternationalizationString.logicclose; + view.AddChidren(openView.Show()); + view.AddChidren(closeView.Show()); + + takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + takebackView.selectedIconBtn.Visible = true; + takebackView.titleBtn.TextID = MyInternationalizationString.closetimeout; + takebackView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png"; + view.AddChidren(takebackView.Show()); + takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = ""; + openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; + closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = false; + var ignoreTime = new IgnoreTime(); + UserView.HomePage.Instance.AddChidren(ignoreTime); + UserView.HomePage.Instance.PageIndex += 1; + ignoreTime.Show(common, takebackView.titleBtn.Text, edit, timeValue, _if[1]); + + }; + + #endregion + } + break; + case 40: + { + + openView.titleBtn.TextID = MyInternationalizationString.smokescreen; + openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + completeView.Show(1).AddChidren(openView.Show()); + } + break; + case 42: + { + openView.titleBtn.TextID = MyInternationalizationString.waterleakage; + closeView.titleBtn.TextID = MyInternationalizationString.noleakage; + closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + completeView.Show(2).AddChidren(openView.Show()); + completeView.Show(2).AddChidren(closeView.Show()); + + } + break; + case 43: + {//鍙厓璇寸殑 + openView.titleBtn.TextID = MyInternationalizationString.gas; + openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + completeView.Show(1).AddChidren(openView.Show()); + } + break; + case 44: + { + openView.titleBtn.TextID = MyInternationalizationString.emergencybutton; + openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + completeView.Show(1).AddChidren(openView.Show()); + } + break; + case 277: + { + openView.titleBtn.TextID = MyInternationalizationString.callthepolice; + openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + completeView.Show(1).AddChidren(openView.Show()); + } + break; + case 541: + { + int _height = 3; + if (edit) + { + _height = 2; + } + var view = completeView.Show(_height); + openView.titleBtn.TextID = MyInternationalizationString.someone; + closeView.titleBtn.TextID = MyInternationalizationString.unattendedtime1; + closeView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png"; + closeView.selectedIconBtn.Visible = true; + view.AddChidren(openView.Show()); + view.AddChidren(closeView.Show()); + + takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + takebackView.selectedIconBtn.Visible = true; + takebackView.titleBtn.TextID = MyInternationalizationString.ambientLight; + takebackView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png"; + if (edit) + { + + if (devices["Cluster_ID"] == "1024") + { + flMain.RemoveFromParent(); + var illumination = new Illumination(); + UserView.HomePage.Instance.AddChidren(illumination); + UserView.HomePage.Instance.PageIndex += 1; + illumination.Show(common, takebackView.titleBtn.Text, int.Parse(devices["AttriButeData1"]), true); + } + else + { + closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + } + } + else + { + view.AddChidren(takebackView.Show()); + + } + + + takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = ""; + openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; + openView.selectedIconBtn.Visible = false; + var illumination = new Illumination(); + UserView.HomePage.Instance.AddChidren(illumination); + UserView.HomePage.Instance.PageIndex += 1; + illumination.Show(common,takebackView.titleBtn.Text, 0, false); + + }; + } + break; + default: + { + openView.titleBtn.TextID = MyInternationalizationString.callthepolice; + openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + completeView.Show(1).AddChidren(openView.Show()); + + } + break; + } + if (edit && devices != null) + { + if (devices["AttriButeId"] == "1281") + { + if (devices.ContainsKey("IgnoreTime")) + { + timeValue = int.Parse(devices["IgnoreTime"]); + } + else + { + if (devices["AttriButeData1"] == "1") + { + openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; + closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; + openView.selectedIconBtn.Visible = true; + closeView.selectedIconBtn.Visible = false; + } + else + { + openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; + closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = true; + } + + } + + + } + + } + + } + break; + case DeviceType.OnOffSwitch: + { + l = 1; + Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1282"); + Send.dictionary(deviceConditionsInfo, "AttriButeId", "1283"); + Send.dictionary(deviceConditionsInfo, "Range", "0");//鎸夐敭鐗规畩 + Send.dictionary(deviceConditionsInfo, "AttriButeData1", "0"); + Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0"); + + completeView.Show(l).AddChidren(openView.Show()); + openView.titleBtn.Text = Language.StringByID(MyInternationalizationString.OnOffSwitch) + common.DeviceEpoint.ToString(); + openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + openView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "OnOffSwitch"; + openView.selectedIconBtn.Visible = true; + openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; + }; + + if (edit && devices != null) + { + openView.selectedIconBtn.Visible = true; + openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; + } + + } + break; + case DeviceType.DoorLock: + { + + flMain.RemoveFromParent(); + var memberList = new MemberList(); + UserView.HomePage.Instance.AddChidren(memberList); + UserView.HomePage.Instance.PageIndex += 1; + MemberList.edit = false; + memberList.Show(common); + } + break; + case DeviceType.TemperatureSensor: + { + l = 4; + string current = Language.StringByID(MyInternationalizationString.current); + completeView.Show(l); + var temperatureSensor = common as TemperatureSensor; + SelectedDeviceStatus = "TemperatureSensor"; + #region 甯冨眬View + var PickerViewfra = new FrameLayout + { + Y = Application.GetRealHeight(140), + Height = Application.GetRealHeight(640), + }; + completeView.Show(l).AddChidren(PickerViewfra); + var mUIPickerView = new UIPickerView + { + Height = Application.GetRealHeight(640 - 5), + }; + PickerViewfra.AddChidren(mUIPickerView); + + var mList1 = new List<string> { ">", "<", "=", "鈮�", "鈮�" }; + var mList2 = new List<string>(); + var mList3 = new List<string>(); + for (int i = 1; i <= 100; i++) + { + mList2.Add(i.ToString()); + } + if (temperatureSensor.SensorDiv == 1) + { + mList3.Add("鈩�"); + Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1026"); + Send.dictionary(deviceConditionsInfo, "AttriButeId", "0"); + Send.dictionary(deviceConditionsInfo, "Range", "1");//1:绛変簬AttriButeData1鏃惰Е鍙戝姩浣� + Send.dictionary(deviceConditionsInfo, "AttriButeData1", "5000");//榛樿娓╁害鍊�50鈩� + Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0"); + } + else + { + mList3.Add("%"); + Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1029"); + Send.dictionary(deviceConditionsInfo, "AttriButeId", "0"); + Send.dictionary(deviceConditionsInfo, "Range", "1");//1:绛変簬AttriButeData1鏃惰Е鍙戝姩浣� + Send.dictionary(deviceConditionsInfo, "AttriButeData1", "5000");//榛樿婀垮害鍊�50% + Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0"); + } + mUIPickerView.setNPicker(mList1, mList2, mList3); + + #endregion + + mUIPickerView.OnSelectChangeEvent += (s1, s2, s3) => + { + ///娓╁害杩涚巼杞崲*100 + var strValue = (int.Parse(mList2[s2]) * 100).ToString(); + SelectedDeviceStatus = "TemperatureSensor"; + Send.dictionary(deviceConditionsInfo, "AttriButeData1", strValue); + switch (mList1[s1]) + { + case ">": + { + Send.dictionary(deviceConditionsInfo, "Range", "0"); + } + break; + case "<": + { + Send.dictionary(deviceConditionsInfo, "Range", "2"); + } + break; + case "=": + { + Send.dictionary(deviceConditionsInfo, "Range", "1"); + } + break; + case "鈮�": + { + Send.dictionary(deviceConditionsInfo, "Range", "6"); + } + break; + case "鈮�": + { + Send.dictionary(deviceConditionsInfo, "Range", "7"); + } + break; + } + }; + + //榛樿=,50 + int index1 = 2, index2 = 49; + if (edit && devices != null) + { + SelectedDeviceStatus = ""; + string s = ""; + switch (devices["Range"]) + { + case "0": + { + s = ">"; + } + break; + case "1": + { + s = "="; + } + break; + case "2": + { + s = "<"; + } + break; + case "6": + { + s = "鈮�"; + } + break; + case "7": + { + s = "鈮�"; + } + break; + } + //鏌ユ壘绱㈠紩 + index1 = mList1.IndexOf(s); + //杞崲娓╁害鍊�/100 + var dd = (int.Parse(devices["AttriButeData1"])/100).ToString(); + index2 = mList2.IndexOf(dd); + + } + ///鏇存柊鏈�鏂扮姸鎬侊紱 + mUIPickerView.setCurrentItems(index1, index2, 0); + + } + break; + ///璋冨厜鐏厜 + case DeviceType.DimmableLight: + { + l = 4; + #region ----鍒濆鍖栬澶囧姛鑳芥暟鎹�---- + Dictionary<string, string> switchdictionary = new Dictionary<string, string>(); + Send.dictionary(switchdictionary, "Data2", "0"); + taskListInfo.Add(switchdictionary); + completeView.Show(l).AddChidren(openView.Show()); + openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + + horizontalSeekBarRowLien.Y = openView.frameLayout.Bottom; + horizontalSeekBarVol.Y = openView.frameLayout.Bottom; + completeView.Show(l).AddChidren(horizontalSeekBarRowLien); + completeView.Show(l).AddChidren(horizontalSeekBarVol); + + closeView.frameLayout.Y = horizontalSeekBarRowLien.Bottom; + completeView.Show(l).AddChidren(closeView.Show()); + + takebackView.frameLayout.Y = closeView.frameLayout.Bottom; + completeView.Show(l).AddChidren(takebackView.Show()); + takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + #endregion + int Progressvalue = 100; + EventHandler<int> progressclick = (sender, e) => + { + SelectedDeviceStatus = "yes"; + Progressvalue = horizontalSeekBarVol.Progress; + Send.dictionary(switchdictionary, "TaskType", "3"); + //鏈�澶т寒搴﹀�兼槸254闇�瑕佽浆鎹紱 + var lightbrightnessvalue = (254 * horizontalSeekBarVol.Progress) / 100; + Send.dictionary(switchdictionary, "Data1", lightbrightnessvalue.ToString()); + + }; + horizontalSeekBarVol.OnProgressChangedEvent += progressclick; + horizontalSeekBarVol.OnStopTrackingTouchEvent += progressclick; + ///纭浜嬩欢 + openView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "yes"; + horizontalSeekBarVol.IsClickable = true; + horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected; + openView.selectedIconBtn.Visible = true; + closeView.selectedIconBtn.Visible = false; + takebackView.selectedIconBtn.Visible = false; + horizontalSeekBarVol.Progress = Progressvalue; + Send.dictionary(switchdictionary, "TaskType", "3"); + //鏈�澶т寒搴﹀�兼槸254闇�瑕佽浆鎹紱 + var lightbrightnessvalue = (254 * horizontalSeekBarVol.Progress) / 100; + Send.dictionary(switchdictionary, "Data1", lightbrightnessvalue.ToString()); + }; + + ///鍙栨秷浜嬩欢 + closeView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "yes"; + horizontalSeekBarVol.IsClickable = false; + horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor; + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = true; + takebackView.selectedIconBtn.Visible = false; + Send.dictionary(switchdictionary, "TaskType", "1"); + Send.dictionary(switchdictionary, "Data1", "0");//榛樿鍊� + }; + + //鍙栧弽 + takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "yes"; + horizontalSeekBarVol.IsClickable = false; + horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor; + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = false; + takebackView.selectedIconBtn.Visible = true; + Send.dictionary(switchdictionary, "TaskType", "1"); + Send.dictionary(switchdictionary, "Data1", "2");//榛樿鍊� + + }; + if (edit && TaskList != null) + { + foreach (var value in TaskList) + { + var tasktype = value["TaskType"]; + var data1 = value["Data1"]; + Send.dictionary(switchdictionary, "TaskType", tasktype); + Send.dictionary(switchdictionary, "Data1", data1); + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = false; + takebackView.selectedIconBtn.Visible = false; + horizontalSeekBarVol.IsClickable = false; + horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor; + if (tasktype == "1") + { + if (data1 == "0") + { + closeView.selectedIconBtn.Visible = true; + } + else if (data1 == "2") + { + takebackView.selectedIconBtn.Visible = true; + } + } + else if (tasktype == "3") + { + openView.selectedIconBtn.Visible = true; + horizontalSeekBarVol.IsClickable = true; + horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected; + horizontalSeekBarVol.Progress = int.Parse(data1) * 100 / 254; + Progressvalue = horizontalSeekBarVol.Progress; + + } + break; + + } + } + + } + break; + ///绐楀笜 + case DeviceType.WindowCoveringDevice: + { + l = 3; + #region ----鍒濆鍖栬澶囧姛鑳芥暟鎹�---- + Dictionary<string, string> switchdictionary = new Dictionary<string, string>(); + Send.dictionary(switchdictionary, "TaskType", "6"); + taskListInfo.Add(switchdictionary); + + completeView.Show(l).AddChidren(openView.Show()); + openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + + + + horizontalSeekBarRowLien.Y = openView.frameLayout.Bottom; + horizontalSeekBarVol.Y = openView.frameLayout.Bottom; + completeView.Show(l).AddChidren(horizontalSeekBarRowLien); + completeView.Show(l).AddChidren(horizontalSeekBarVol); + + closeView.frameLayout.Y = horizontalSeekBarRowLien.Bottom; + completeView.Show(l).AddChidren(closeView.Show()); + closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + #endregion + int Progressvalue = 100; + EventHandler<int> progressclick = (sender, e) => + { + SelectedDeviceStatus = "yes"; + Progressvalue = horizontalSeekBarVol.Progress; + Send.dictionary(switchdictionary, "Data1", "5"); + Send.dictionary(switchdictionary, "Data2", horizontalSeekBarVol.Progress.ToString()); + }; + horizontalSeekBarVol.OnProgressChangedEvent += progressclick; + horizontalSeekBarVol.OnStopTrackingTouchEvent += progressclick; + ///纭浜嬩欢 + openView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "yes"; + horizontalSeekBarVol.IsClickable = true; + horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected; + openView.selectedIconBtn.Visible = true; + closeView.selectedIconBtn.Visible = false; + horizontalSeekBarVol.Progress = Progressvalue; + Send.dictionary(switchdictionary, "Data1", "5"); + Send.dictionary(switchdictionary, "Data2", horizontalSeekBarVol.Progress.ToString()); + + }; + ///鍙栨秷浜嬩欢 + closeView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "yes"; + horizontalSeekBarVol.IsClickable = false; + horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor; + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = true; + Send.dictionary(switchdictionary, "Data2", "0"); + Send.dictionary(switchdictionary, "Data1", "1");//榛樿鍊� + + }; + + if (edit && TaskList != null) + { + foreach (var value in TaskList) + { + if (value["TaskType"] == "6") + { + if (value["Data1"] == "5") + { + + Send.dictionary(switchdictionary, "Data1", "5"); + Send.dictionary(switchdictionary, "Data2", value["Data2"]); + horizontalSeekBarVol.IsClickable = true; + horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColorSelected; + openView.selectedIconBtn.Visible = true; + closeView.selectedIconBtn.Visible = false; + horizontalSeekBarVol.Progress = int.Parse(value["Data2"]); + Progressvalue = horizontalSeekBarVol.Progress; + } + else if (value["Data1"] == "1") + { + Send.dictionary(switchdictionary, "Data1", "1"); + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = true; + horizontalSeekBarVol.IsClickable = false; + horizontalSeekBarVol.ProgressBarColor = ZigbeeColor.Current.LogicProgressColor; + } + + } + + } + } + } + break; + ///绌烘皵寮�鍏� + case DeviceType.AirSwitch: + { + { + l = 3; + #region ----鍒濆鍖栬澶囧姛鑳芥暟鎹�---- + Dictionary<string, string> switchdictionary = new Dictionary<string, string>(); + Send.dictionary(switchdictionary, "TaskType", "1"); + Send.dictionary(switchdictionary, "Data1", "0"); + Send.dictionary(switchdictionary, "Data2", "0"); + taskListInfo.Add(switchdictionary); + #endregion + + #region 绌烘皵鐏厜View + + completeView.Show(l).AddChidren(openView.Show()); + completeView.Show(l).AddChidren(closeView.Show()); + completeView.Show(l).AddChidren(takebackView.Show()); + takebackView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + + #endregion + + ///纭浜嬩欢 + openView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "yes"; + openView.selectedIconBtn.Visible = true; + closeView.selectedIconBtn.Visible = false; + takebackView.selectedIconBtn.Visible = false; + Send.dictionary(switchdictionary, "Data1", "1"); + + }; + ///鍙栨秷浜嬩欢 + closeView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "yes"; + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = true; + takebackView.selectedIconBtn.Visible = false; + Send.dictionary(switchdictionary, "Data1", "0"); + + }; + //鍙栧弽 + takebackView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatus = "yes"; + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = false; + takebackView.selectedIconBtn.Visible = true; + Send.dictionary(switchdictionary, "Data1", "2"); + + }; + + if (edit && TaskList != null) + { + foreach (var value in TaskList) + { + if (value["TaskType"] == "1") + { + var data1 = value["Data1"]; + Send.dictionary(switchdictionary, "Data1", data1); + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = false; + takebackView.selectedIconBtn.Visible = false; + if (data1 == "1") + { + openView.selectedIconBtn.Visible = true; + } + else if (data1 == "0") + { + closeView.selectedIconBtn.Visible = true; + } + else if (data1 == "2") + { + takebackView.selectedIconBtn.Visible = true; + } + break; + } + + } + } + + } + } + break; + ///绌鸿皟 + case DeviceType.Thermostat: + { + l = 6; + #region ----鍒濆鍖栬澶囧姛鑳芥暟鎹�---- + var temperaturedictionary = new Dictionary<string, string>(); + var modedictionary = new Dictionary<string, string>(); + var speeddictionary = new Dictionary<string, string>(); + Send.dictionary(temperaturedictionary, "TaskType", "5"); + Send.dictionary(modedictionary, "TaskType", "5"); + Send.dictionary(modedictionary, "Data1", "3"); + Send.dictionary(speeddictionary, "TaskType", "5"); + Send.dictionary(speeddictionary, "Data1", "6"); + taskListInfo.Add(temperaturedictionary); + taskListInfo.Add(modedictionary); + taskListInfo.Add(speeddictionary); + #endregion + #region 绌鸿皟View + + completeView.Show(l).AddChidren(openView.Show()); + + #region 绌鸿皟鐘舵�乂iew + var PickerViewfra = new FrameLayout + { + Y = openView.frameLayout.Bottom, + Height = Application.GetRealHeight(640), + }; + completeView.Show(l).AddChidren(PickerViewfra); + + //閬尅绌鸿皟婊戝姩view锛� + var pausePickerViewfra = new FrameLayout + { + Y = openView.frameLayout.Bottom, + Height = Application.GetRealHeight(640), + BackgroundColor = 0x60ffffff, + }; + completeView.Show(l).AddChidren(pausePickerViewfra); + + var mUIPickerView = new UIPickerView + { + Height = Application.GetRealHeight(640 - 5), + }; + PickerViewfra.AddChidren(mUIPickerView); + var line = new Button + { + Y = Application.GetRealHeight(640 - 5), + Width = Application.GetRealWidth(920), + Height = Application.GetRealHeight(5), + X = Application.GetRealWidth(80), + BackgroundColor = ZigbeeColor.Current.LogicRowLayoutLineColor, + }; + PickerViewfra.AddChidren(line); + + var mList1 = new List<string>(); + var mList2 = new List<string> { + Language.StringByID(MyInternationalizationString.logiccool), + Language.StringByID(MyInternationalizationString.logicheat), + Language.StringByID(MyInternationalizationString.logicauto), + Language.StringByID(MyInternationalizationString.logicdry), + Language.StringByID(MyInternationalizationString.logicfanonly), + }; + var mList3 = new List<string>{ + Language.StringByID(MyInternationalizationString.logiclow), + Language.StringByID(MyInternationalizationString.logicmedium), + Language.StringByID(MyInternationalizationString.logichigh), + }; + for (int i = 16; i < 33; i++) + { + mList1.Add(i.ToString() + " " + "鈩�"); + } + mUIPickerView.setNPicker(mList1, mList2, mList3); + ///榛樿鐘舵�� + + + #endregion + + closeView.frameLayout.Y = PickerViewfra.Bottom; + completeView.Show(l).AddChidren(closeView.Show()); + closeView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; + + //榛樿26,鑷姩,涓 + int indextemperature = 10, indexmode = 2, indexspeed = 1; + mUIPickerView.OnSelectChangeEvent += (s1, s2, s3) => + { + indextemperature = s1; + indexmode = s2; + indexspeed = s3; + if (openView.selectedIconBtn.Visible) + { + SelectedDeviceStatus = "yes"; + var temperature = mList1[s1].Split(' ')[0]; + var modestring = mList2[s2].Split(' ')[0]; + var speedstring = mList3[s3].Split(' ')[0]; + ModeState(modestring, temperaturedictionary, modedictionary); + var a = int.Parse(temperature) * 100; + Send.dictionary(temperaturedictionary, "Data2", a.ToString()); + + SpeedState(speedstring, speeddictionary); + } + }; + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 0); + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 1); + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 2); + #endregion + + if (edit && TaskList != null) + { + + foreach (var value in TaskList) + { + if (TaskList.Count == 1) + { + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 0); + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 1); + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 2); + //鏁扮粍鍙湁涓�涓厓绱犺鏄庡綋鍓嶇┖璋冪姸鎬佷负鍏筹紱 + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = true; + pausePickerViewfra.Height = Application.GetRealHeight(600); + //濡傛灉绌鸿皟鐘舵�佹槸鍏筹紱鐩存帴璺冲嚭for寰潖锛� + break; + + } + else + { + openView.selectedIconBtn.Visible = true; + closeView.selectedIconBtn.Visible = false; + pausePickerViewfra.Height = Application.GetRealHeight(0); + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 0); + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 1); + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 2); + } + + + if (value["TaskType"] == "5") + { + if (value["Data1"] == "3") + {//3---璁剧疆宸ヤ綔妯″紡(1:鑷姩;3:鍒跺喎;4:鍒剁儹;7:閫侀;8:闄ゆ箍) + Send.dictionary(modedictionary, "Data2", value["Data2"]); + string modetext = ""; + switch (value["Data2"]) + { + case "3": + { + modetext = Language.StringByID(MyInternationalizationString.logiccool); + //indexmode = 0; + } + break; + case "4": + { + modetext = Language.StringByID(MyInternationalizationString.logicheat); + // indexmode = 1; + } + break; + case "1": + { + modetext = Language.StringByID(MyInternationalizationString.logicauto); + // indexmode = 2; + } + break; + case "8": + { + modetext = Language.StringByID(MyInternationalizationString.logicdry); + // indexmode = 3; + } + break; + case "7": + { + modetext = Language.StringByID(MyInternationalizationString.logicfanonly); + //indexmode = 4; + } + break; + } + indexmode = mList2.IndexOf(modetext); + } + else if (value["Data1"] == "6") + {//6---璁剧疆椋庢墖妯″紡(1:浣庨;2:涓;3:楂橀;) + Send.dictionary(speeddictionary, "Data2", value["Data2"]); + string speedtext = ""; + switch (value["Data2"]) + { + case "1": + { + speedtext = Language.StringByID(MyInternationalizationString.logiclow); + //indexspeed = 0; + } + break; + + case "2": + { + speedtext = Language.StringByID(MyInternationalizationString.logicmedium); + // indexspeed = 1; + } + break; + case "3": + { + speedtext = Language.StringByID(MyInternationalizationString.logichigh); + // indexspeed = 2; + } + break; + + } + indexspeed = mList3.IndexOf(speedtext); + } + //4-璁剧疆鍔犵儹搴︽暟;5-璁剧疆鍒跺喎銆侀櫎婀垮害鏁�;7-璁剧疆鑷姩搴︽暟 + else if (value["Data1"] == "4" || value["Data1"] == "5" || value["Data1"] == "7") + { + var s = int.Parse(value["Data2"]) / 100; + indextemperature = mList1.IndexOf(s.ToString() + " " + "鈩�"); + Send.dictionary(temperaturedictionary, "Data1", value["Data1"]); + Send.dictionary(temperaturedictionary, "Data2", value["Data2"]); + } + + } + } + } + ///鏇存柊鏈�鏂扮┖璋冪姸鎬侊紱 + mUIPickerView.setCurrentItems(indextemperature, indexmode, indexspeed); + ///纭浜嬩欢 + openView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 0); + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 1); + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnSelectedColor, 2); + mUIPickerView.setCurrentItems(indextemperature, indexmode, indexspeed); + pausePickerViewfra.Height = Application.GetRealHeight(0); + SelectedDeviceStatus = "yes"; + openView.selectedIconBtn.Visible = true; + closeView.selectedIconBtn.Visible = false; + //娓呴櫎涔嬪墠鏁版嵁锛� + taskListInfo.Clear(); + //鍔犺浇鏂版暟鎹紱 + Send.dictionary(temperaturedictionary, "TaskType", "5"); + Send.dictionary(modedictionary, "TaskType", "5"); + Send.dictionary(modedictionary, "Data1", "3"); + Send.dictionary(speeddictionary, "TaskType", "5"); + Send.dictionary(speeddictionary, "Data1", "6"); + taskListInfo.Add(temperaturedictionary); + taskListInfo.Add(modedictionary); + taskListInfo.Add(speeddictionary); + + var temperature = mList1[indextemperature].Split(' ')[0]; + var modestring = mList2[indexmode].Split(' ')[0]; + var speedstring = mList3[indexspeed].Split(' ')[0]; + + ModeState(modestring, temperaturedictionary, modedictionary); + var a = int.Parse(temperature) * 100; + Send.dictionary(temperaturedictionary, "Data2", a.ToString()); + SpeedState(speedstring, speeddictionary); + + }; + ///鍙栨秷浜嬩欢 + closeView.clickviewBtn.MouseUpEventHandler += (sender, e) => + { + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 0); + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 1); + mUIPickerView.setTextColorCenter(ZigbeeColor.Current.LogicBtnCancelColor, 2); + mUIPickerView.setCurrentItems(indextemperature, indexmode, indexspeed); + //娓呴櫎涔嬪墠鏁版嵁锛� + taskListInfo.Clear(); + Send.dictionary(modedictionary, "TaskType", "5"); + Send.dictionary(modedictionary, "Data1", "3"); + Send.dictionary(modedictionary, "Data2", "0"); + //鍔犺浇鏂版暟鎹紱 + taskListInfo.Add(modedictionary); + pausePickerViewfra.Height = Application.GetRealHeight(600); + SelectedDeviceStatus = "yes"; + openView.selectedIconBtn.Visible = false; + closeView.selectedIconBtn.Visible = true; + + }; + } + break; + case DeviceType.ColorTemperatureLight: { + flMain.RemoveFromParent(); + var nightlight = new Nightlight(); + UserView.HomePage.Instance.AddChidren(nightlight); + UserView.HomePage.Instance.PageIndex += 1; + if (edit) + { + nightlight.Show(common, edit, _if[1], Common.Logic.CurrentLogic.Actions[intValue]); + } + else + { + nightlight.Show(common, edit, _if[1]); + } + + } + break; + } + completeView.Btncomplete.MouseUpEventHandler += (sender, e) => + { + //UserView.HomePage.Instance.ScrollEnabled = true; + if (SelectedDeviceStatus != "") + { + if (_if[0] == "condition") + { //娣诲姞鏉′欢 + LogicIfon.AddDeviceconditions(common, deviceConditionsInfo); + } + else + { //娣诲姞鐩爣 + if (SelectedDeviceStatus == "DoorLock") + {//闂ㄩ攣鏁版嵁鐗规畩,杩涜鐗规畩澶勭悊; + LogicIfon.AddDoorLockActions(common, actionsInfo); + } + else + { + LogicIfon.AddDeviceActions(common, actionsInfo); + } + } + } + else + { + if (!edit) + { + var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal, + Language.StringByID(MyInternationalizationString.selectdevicestatuscondition), + Language.StringByID(MyInternationalizationString.confrim)); + alert.Show(); + return; + } + + } + flMain.RemoveFromParent(); + switch (_if[1]) + { + case "logic": + { + //鑷姩鍖� + var logicCommunalPage = new LogicCommunalPage(); + UserView.HomePage.Instance.AddChidren(logicCommunalPage); + UserView.HomePage.Instance.PageIndex += 1; + logicCommunalPage.Show(() => { }); + } + break; + case "mould": + { + //鑷姩鍖栨帹鑽愭ā鏉� + var templatePage = new TemplatePage(); + UserView.HomePage.Instance.AddChidren(templatePage); + UserView.HomePage.Instance.PageIndex += 1; + templatePage.Show(); + } + break; + case "lockaction": + { + //闂ㄩ攣鑱斿姩浜嬩欢 + var lockLogicCommunalPage = new DoorLockLogic.LockLogicCommunalPage(); + UserView.HomePage.Instance.AddChidren(lockLogicCommunalPage); + UserView.HomePage.Instance.PageIndex += 1; + lockLogicCommunalPage.Show(() => { }); + } + break; + } + + + }; + } + + /// <summary> + /// 绌鸿皟妯″紡鐨勭姸鎬� + /// </summary> + /// <param name="modestring"></param> + /// <param name="temperaturedictionary"></param> + /// <param name="modedictionary"></param> + public static void ModeState(string modestring, Dictionary<string, string> temperaturedictionary, Dictionary<string, string> modedictionary) + { + + if (modestring == Language.StringByID(MyInternationalizationString.logiccool)) + { + Send.dictionary(modedictionary, "Data2", "3"); + Send.dictionary(temperaturedictionary, "Data1", "5"); + } + else if (modestring == Language.StringByID(MyInternationalizationString.logicheat)) + { + + Send.dictionary(modedictionary, "Data2", "4"); + Send.dictionary(temperaturedictionary, "Data1", "4"); + } + else if (modestring == Language.StringByID(MyInternationalizationString.logicauto)) + { + + Send.dictionary(modedictionary, "Data2", "1"); + Send.dictionary(temperaturedictionary, "Data1", "7"); + } + else if (modestring == Language.StringByID(MyInternationalizationString.logicdry)) + { + + Send.dictionary(modedictionary, "Data2", "8"); + Send.dictionary(temperaturedictionary, "Data1", "5"); + } + else if (modestring == Language.StringByID(MyInternationalizationString.logicfanonly)) + { + Send.dictionary(temperaturedictionary, "Data1", "20"); + Send.dictionary(modedictionary, "Data2", "7"); + } + + } + /// <summary> + /// 椋庨�熺殑妯″紡 + /// </summary> + /// <param name="speedstring"></param> + /// <param name="speeddictionary"></param> + public static void SpeedState(string speedstring, Dictionary<string, string> speeddictionary) + { + + if (speedstring == Language.StringByID(MyInternationalizationString.logiclow)) + { + + Send.dictionary(speeddictionary, "Data2", "1"); + + } + else if (speedstring == Language.StringByID(MyInternationalizationString.logicmedium)) + { + + Send.dictionary(speeddictionary, "Data2", "2"); + + } + else if (speedstring == Language.StringByID(MyInternationalizationString.logichigh)) + { + + Send.dictionary(speeddictionary, "Data2", "3"); + } + + } + } +} -- Gitblit v1.8.0