From 9f326f4000847e6167d8166fa2f6a66f53cb3734 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期四, 17 十二月 2020 09:07:13 +0800 Subject: [PATCH] 新云端Ver1.3 --- ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs | 217 ++++++++++++++++++++++++++++++++++++----------------- 1 files changed, 147 insertions(+), 70 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs b/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs index 5ccee7d..1501165 100755 --- a/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs +++ b/ZigbeeApp/Shared/Phone/Device/Logic/CurrentDeviceState.cs @@ -12,17 +12,17 @@ /// 閫変腑璇ヨ澶囧姛鑳戒綔涓烘潯浠舵垨鑰呯洰鏍囩殑瑙嗗浘鏂规硶 /// </summary> /// <param name="common">Common.</param> - public static void CurrentDeviceView(FrameLayout flMain, CommonDevice common, bool edit, string str) + 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); + completeView.Btntitle.Text = HdlDeviceCommonLogic.Current.GetDeviceEpointName(common); EventHandler<MouseEventArgs> clickcancel = (sender, e) => { - if (!edit) + if (edit) { UserView.HomePage.Instance.ScrollEnabled = true; } @@ -59,18 +59,19 @@ }; var horizontalSeekBarVol = new DiyImageSeekBar { - //Y = openView.frameLayout.Bottom, - X = Application.GetRealWidth(80), - Width = Application.GetRealWidth(915), - Height = Application.GetRealHeight(160), + //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 + ProgressTextSize = 12,//鏄剧ず鐧惧垎姣斿瓧浣撳ぇ灏�12 + SeekBarViewHeight = Application.GetRealHeight(6),//杩涘害鏉$殑楂樺害10 + SeekBarPadding = 30, }; #endregion #endregion @@ -99,33 +100,28 @@ { if (_if[0]== "condition") { - foreach (var deviceinfo in Common.Logic.CurrentLogic.Conditions) + var deviceinfo = Common.Logic.CurrentLogic.Conditions[intValue]; + if (deviceinfo["Type"] == "1") { - if (deviceinfo["Type"] == "1") + if (common.DeviceAddr == deviceinfo["MacAddr"] && common.DeviceEpoint.ToString() == deviceinfo["Epoint"]) { - if (common.DeviceAddr == deviceinfo["MacAddr"] && common.DeviceEpoint.ToString() == deviceinfo["Epoint"]) - { - devices = deviceinfo; - break; + devices = deviceinfo; - } } } } else { - foreach (var deviceinfo in Common.Logic.CurrentLogic.Actions) + var deviceinfo = Common.Logic.CurrentLogic.Actions[intValue]; + if (deviceinfo["LinkType"].ToString() == "0") { - 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; - } + if (deviceinfo["DeviceAddr"].ToString() == common.DeviceAddr && deviceinfo["Epoint"].ToString() == common.DeviceEpoint.ToString()) + { + TaskList = deviceinfo["TaskList"] as List<Dictionary<string, string>>; } } + } } #endregion @@ -298,7 +294,7 @@ Send.dictionary(deviceConditionsInfo, "AttriButeId", "1281"); Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0"); - int timevalue = 0; + int timeValue = 0; ///鐐瑰嚮纭浜嬩欢 openView.clickviewBtn.MouseUpEventHandler += (sender, e) => { @@ -309,10 +305,11 @@ closeView.selectedIconBtn.Visible = false; if (iASZonedevice.IasDeviceType == 13) { + closeView.selectedIconBtn.Visible = true; } Send.dictionary(deviceConditionsInfo, "Range", "5"); - Send.dictionary(deviceConditionsInfo, "AttriButeData1", "1"); + Send.dictionary(deviceConditionsInfo, "AttriButeData1", "3");//鏀寔1鍜�2;1+2=3 }; ///鐐瑰嚮鍙栨秷浜嬩欢 closeView.clickviewBtn.MouseUpEventHandler += (sender, e) => @@ -322,53 +319,109 @@ 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) + Send.dictionary(deviceConditionsInfo, "Range", "8");//1 + Send.dictionary(deviceConditionsInfo, "AttriButeData1", "3");//0 + if (iASZonedevice.IasDeviceType == 13|| iASZonedevice.IasDeviceType == 541) { SelectedDeviceStatus = ""; - openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; - openView.selectedIconBtn.Visible = false; - closeView.selectedIconBtn.Visible = true; var ignoreTime = new IgnoreTime(); UserView.HomePage.Instance.AddChidren(ignoreTime); UserView.HomePage.Instance.PageIndex += 1; - ignoreTime.Show(common, closeView.titleBtn.Text, edit, timevalue); + 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()); + + if (common.ModelIdentifier == "MSPIRB-ZB.10") + { + 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); + + }; + + } + else + { + + 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; - completeView.Show(3).AddChidren(openView.Show()); - completeView.Show(3).AddChidren(closeView.Show()); + view.AddChidren(openView.Show()); + view.AddChidren(closeView.Show()); - mFunView timeoutView = new mFunView(); - timeoutView.frameLayout.Y = closeView.frameLayout.Bottom; - timeoutView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; - completeView.Show(3).AddChidren(timeoutView.Show()); - timeoutView.titleBtn.TextID = MyInternationalizationString.closetimeout; - timeoutView.selectedIconBtn.UnSelectedImagePath = "ZigeeLogic/next.png"; - timeoutView.clickviewBtn.MouseUpEventHandler += (sender, e) => + 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; @@ -378,7 +431,7 @@ var ignoreTime = new IgnoreTime(); UserView.HomePage.Instance.AddChidren(ignoreTime); UserView.HomePage.Instance.PageIndex += 1; - ignoreTime.Show(common, timeoutView.titleBtn.Text, edit, timevalue); + ignoreTime.Show(common, takebackView.titleBtn.Text, edit, timeValue, _if[1]); }; @@ -387,6 +440,7 @@ break; case 40: { + openView.titleBtn.TextID = MyInternationalizationString.smokescreen; openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; completeView.Show(1).AddChidren(openView.Show()); @@ -403,7 +457,7 @@ } break; case 43: - { + {//鍙厓璇寸殑 openView.titleBtn.TextID = MyInternationalizationString.gas; openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; completeView.Show(1).AddChidren(openView.Show()); @@ -436,30 +490,32 @@ { if (devices["AttriButeId"] == "1281") { - if (devices["AttriButeData1"] == "1") + if (devices.ContainsKey("IgnoreTime")&& devices["IgnoreTime"]!="0") { - openView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnSelectedColor; - closeView.titleBtn.TextColor = ZigbeeColor.Current.LogicBtnNotSelectedColor; - openView.selectedIconBtn.Visible = true; - closeView.selectedIconBtn.Visible = false; + timeValue = int.Parse(devices["IgnoreTime"]); } else { - if (devices.ContainsKey("IgnoreTime")) + if (devices["Range"]== "5") { - timevalue = int.Parse(devices["IgnoreTime"]); + 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.titleBtn.Visible = true; + closeView.selectedIconBtn.Visible = true; } + } + + } - - + } } @@ -474,7 +530,8 @@ Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0"); completeView.Show(l).AddChidren(openView.Show()); - openView.titleBtn.Text = Language.StringByID(MyInternationalizationString.OnOffSwitch) + common.DeviceEpoint.ToString(); + openView.titleBtn.Text = HdlDeviceCommonLogic.Current.GetDeviceEpointName(common); + //openView.titleBtn.Text =Language.StringByID(MyInternationalizationString.OnOffSwitch) + common.DeviceEpoint.ToString(); openView.lineBtn.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; openView.clickviewBtn.MouseUpEventHandler += (sender, e) => { @@ -492,7 +549,7 @@ } break; case DeviceType.DoorLock: - { + { flMain.RemoveFromParent(); var memberList = new MemberList(); @@ -535,7 +592,7 @@ Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1026"); Send.dictionary(deviceConditionsInfo, "AttriButeId", "0"); Send.dictionary(deviceConditionsInfo, "Range", "1");//1:绛変簬AttriButeData1鏃惰Е鍙戝姩浣� - Send.dictionary(deviceConditionsInfo, "AttriButeData1", "50");//榛樿娓╁害鍊�50鈩� + Send.dictionary(deviceConditionsInfo, "AttriButeData1", "5000");//榛樿娓╁害鍊�50鈩� Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0"); } else @@ -544,7 +601,7 @@ Send.dictionary(deviceConditionsInfo, "Cluster_ID", "1029"); Send.dictionary(deviceConditionsInfo, "AttriButeId", "0"); Send.dictionary(deviceConditionsInfo, "Range", "1");//1:绛変簬AttriButeData1鏃惰Е鍙戝姩浣� - Send.dictionary(deviceConditionsInfo, "AttriButeData1", "50");//榛樿婀垮害鍊�50% + Send.dictionary(deviceConditionsInfo, "AttriButeData1", "5000");//榛樿婀垮害鍊�50% Send.dictionary(deviceConditionsInfo, "AttriButeData2", "0"); } mUIPickerView.setNPicker(mList1, mList2, mList3); @@ -553,8 +610,10 @@ mUIPickerView.OnSelectChangeEvent += (s1, s2, s3) => { + ///娓╁害杩涚巼杞崲*100 + var strValue = (int.Parse(mList2[s2]) * 100).ToString(); SelectedDeviceStatus = "TemperatureSensor"; - Send.dictionary(deviceConditionsInfo, "AttriButeData1", mList2[s2]); + Send.dictionary(deviceConditionsInfo, "AttriButeData1", strValue); switch (mList1[s1]) { case ">": @@ -621,7 +680,9 @@ } //鏌ユ壘绱㈠紩 index1 = mList1.IndexOf(s); - index2 = mList2.IndexOf(devices["AttriButeData1"]); + //杞崲娓╁害鍊�/100 + var dd = (int.Parse(devices["AttriButeData1"])/100).ToString(); + index2 = mList2.IndexOf(dd); } ///鏇存柊鏈�鏂扮姸鎬侊紱 @@ -1197,6 +1258,22 @@ }; } 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) => { @@ -1223,7 +1300,7 @@ { if (!edit) { - var alert = new UserCenter.ShowMsgControl(UserCenter.ShowMsgType.Normal, + var alert = new ShowMsgControl(ShowMsgType.Normal, Language.StringByID(MyInternationalizationString.selectdevicestatuscondition), Language.StringByID(MyInternationalizationString.confrim)); alert.Show(); -- Gitblit v1.8.0