From 06802250b4b9041d39d568c1dbe77684075006b2 Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期三, 11 三月 2020 10:03:44 +0800 Subject: [PATCH] 上传一个版本 --- ZigbeeApp/Shared/Phone/UserView/UserPage.cs | 167 ++++++++++++++++++++++++++++++++++++++++++------------- 1 files changed, 127 insertions(+), 40 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserView/UserPage.cs b/ZigbeeApp/Shared/Phone/UserView/UserPage.cs index be21182..ab9c4c5 100755 --- a/ZigbeeApp/Shared/Phone/UserView/UserPage.cs +++ b/ZigbeeApp/Shared/Phone/UserView/UserPage.cs @@ -4,14 +4,13 @@ using ZigBee.Device; using Shared.Phone.Device.AC; using System.Text; -using Shared.Phone.Device.Account; namespace Shared.Phone.UserView { /// <summary> /// User page. /// </summary> - public class UserPage : FrameLayout,ZigBee.Common.IStatus + public class UserPage : FrameLayout, ZigBee.Common.IStatus { #region 鈼� 鍙橀噺_______________________ /// <summary> @@ -147,7 +146,7 @@ var ac = (AC)myDevice; ac.DeviceStatusReport = common.DeviceStatusReport; var attriButeList = ac.DeviceStatusReport.AttriBute; - foreach(var attList in attriButeList) + foreach (var attList in attriButeList) { //姝ゅ睘鎬ц〃鏄庡鍐呭綋鍓嶇殑娓╁害 * 100锛屽疄闄呮俯搴︿负鈥淟ocalTemperature / 100鈥濓紝鍗曚綅锛氣剝 var curTemp = (attList.AttriButeData / 100 < ACControlBase.Temperature_High && attList.AttriButeData / 100 > ACControlBase.Temperature_Low) ? attList.AttriButeData / 100 : ACControlBase.Temperature_Default; @@ -173,14 +172,6 @@ ac.currentSystemMode = attList.AttriButeData; ac.LastDateTime = DateTime.Now; break; - case 4099: - var value = Convert.ToString(attList.AttriButeData, 2).PadLeft(16, '0'); - var modeStr = value.Substring(value.Length - 5, 5); - for (int j = 0; j < modeStr.Length; j++) - { - ac.listSupportMode[j] = Convert.ToInt32(modeStr[j]) == 49 ? 1 : 0; - } - break; case 4097: ac.CleanStatu = attList.AttriButeData == 42; break; @@ -193,7 +184,7 @@ var ac = (AC)myDevice; var attriButeList = common.DeviceStatusReport.AttriBute; ac.DeviceStatusReport = common.DeviceStatusReport; - foreach(var attList in attriButeList) + foreach (var attList in attriButeList) { switch (attList.AttributeId) { @@ -248,6 +239,62 @@ myDevice.LastDateTime = DateTime.Now; } break; + + case DeviceType.TemperatureSensor: + //娓╁害 + if (common.DeviceStatusReport.CluterID == 1026) + { + var tempera = (TemperatureSensor)myDevice; + foreach (var data in common.DeviceStatusReport.AttriBute) + { + if (data.AttributeId == (int)ZigBee.Device.AttriButeId.MeasuredValue) + { + if (data.AttriButeData == 0) + { + tempera.Temperatrue = 0; + } + else if (data.AttriButeData > 32767) + { + //璐熸暟(鐗规畩澶勭悊) + string strValue = (data.AttriButeData - 65536).ToString(); + //灏忔暟鐐归渶瑕佷竴浣� + strValue = strValue.Substring(0, strValue.Length - 1); + tempera.Temperatrue = Convert.ToDecimal(strValue.Insert(strValue.Length - 1, ".")); + } + else + { + //灏忔暟鐐归渶瑕佷竴浣� + string strValue = data.AttriButeData.ToString(); + strValue = strValue.Substring(0, strValue.Length - 1); + tempera.Temperatrue = Convert.ToDecimal(strValue.Insert(strValue.Length - 1, ".")); + } + } + } + } + //婀垮害 + if (common.DeviceStatusReport.CluterID == 1029) + { + var tempera = (TemperatureSensor)myDevice; + foreach (var data in common.DeviceStatusReport.AttriBute) + { + if (data.AttributeId == (int)ZigBee.Device.AttriButeId.MeasuredValue) + { + if (data.AttriButeData == 0) + { + tempera.Humidity = 0; + } + else + { + //灏忔暟鐐归渶瑕佷竴浣�(婀垮害娌℃湁璐熸暟) + string strValue = data.AttriButeData.ToString(); + strValue = strValue.Substring(0, strValue.Length - 1); + tempera.Humidity = Convert.ToDecimal(strValue.Insert(strValue.Length - 1, ".")); + tempera.LastDateTime = DateTime.Now; + } + } + } + } + break; } } catch (Exception ex) @@ -261,6 +308,21 @@ myDevice.IsOnline = common.IsOnline; //璁板綍鍥炲鏃堕棿 myDevice.LastDateTime = DateTime.Now; + } + else if (typeTag == "IASInfoReport") + { + try + { + switch (myDevice.Type) + { + case DeviceType.IASZone: + var iAS = (IASZone)myDevice; + iAS.iASInfo = (common as IASZone).iASInfo; + iAS.LastDateTime = DateTime.Now; + break; + } + } + catch { } } } /// <summary> @@ -306,7 +368,7 @@ ZbGateway.StatusList.Add(this); Shared.Application.LocationAction += (lon, lat) => { - AccountLogic.Instance.ReceiveAppLatAndLon(lon.ToString(), lat.ToString()); + Login.AccountLogic.Instance.ReceiveAppLatAndLon(lon.ToString(), lat.ToString()); }; } @@ -358,7 +420,6 @@ Width = Application.GetMinRealAverage(tabBarEnumIMG_Width), UnSelectedImagePath = "Navigation/Home.png", SelectedImagePath = "Navigation/HomeSelected.png", - IsSelected = true, Gravity = Gravity.CenterHorizontal }; /// <summary> @@ -371,7 +432,6 @@ TextID = R.MyInternationalizationString.HomePage, TextColor = Shared.Common.ZigbeeColor.Current.GXCTextBottomUnSelectedColor, SelectedTextColor = Shared.Common.ZigbeeColor.Current.GXCTextBlackColor2, - IsSelected = true, Gravity = Gravity.CenterHorizontal, TextSize = 10 }; @@ -383,7 +443,7 @@ /// </summary> public FrameLayout categoryFL = new FrameLayout { - X=Application.GetRealWidth(tabBarEnum_Width), + X = Application.GetRealWidth(tabBarEnum_Width), Width = Application.GetRealWidth(tabBarEnum_Width), Height = Application.GetRealHeight(CommonPage.TabbarHeight) }; @@ -409,9 +469,8 @@ TextID = R.MyInternationalizationString.Category, TextColor = Shared.Common.ZigbeeColor.Current.GXCTextBottomUnSelectedColor, SelectedTextColor = Shared.Common.ZigbeeColor.Current.GXCTextBlackColor2, - IsSelected = false, Gravity = Gravity.CenterHorizontal, - TextSize=10 + TextSize = 10 }; #endregion @@ -421,7 +480,7 @@ /// </summary> public FrameLayout settingFL = new FrameLayout { - X = Application.GetRealWidth(tabBarEnum_Width*2), + X = Application.GetRealWidth(tabBarEnum_Width * 2), Width = Application.GetRealWidth(tabBarEnum_Width), Height = Application.GetRealHeight(CommonPage.TabbarHeight) }; @@ -447,7 +506,6 @@ TextID = R.MyInternationalizationString.Me, TextColor = Shared.Common.ZigbeeColor.Current.GXCTextBottomUnSelectedColor, SelectedTextColor = Shared.Common.ZigbeeColor.Current.GXCTextBlackColor2, - IsSelected = false, Gravity = Gravity.CenterHorizontal, TextSize = 10 }; @@ -456,43 +514,72 @@ EventHandler<MouseEventArgs> BottomEventHandler = (sender, e) => { - Instance.homePageName.IsSelected = false; - Instance.homePageIMG.IsSelected = false; - - Instance.categoryName.IsSelected = false; - Instance.categoryIMG.IsSelected = false; - - Instance.settingName.IsSelected = false; - Instance.settingIMG.IsSelected = false; - - Instance.BodyView.RemoveAll(); if (sender == Instance.homePageIMG || sender == Instance.homePageName) - { + { + if (Instance.homePageName.IsSelected == true && e != null) + { + //鍙湁鏄墜鍔ㄧ偣鍑荤殑鏃跺�欐墠澶勭悊 + return; + } + Instance.BodyView.RemoveAll(); //涓婚〉 CommonPage.Instance.IsDrawerLockMode = false; Instance.homePageName.IsSelected = true; - Instance.homePageIMG.IsSelected = true; - var home = new UserHomeView { }; + Instance.homePageIMG.IsSelected = true; + + Instance.categoryName.IsSelected = false; + Instance.categoryIMG.IsSelected = false; + + Instance.settingName.IsSelected = false; + Instance.settingIMG.IsSelected = false; + + var home = new MainPage.UserHomeView2(); Instance.BodyView.AddChidren(home); - home.Show(); + home.ShowForm(); } - else if (sender == Instance.categoryIMG || sender==Instance.categoryName) - { + else if (sender == Instance.categoryIMG || sender == Instance.categoryName) + { + if (Instance.categoryName.IsSelected == true && e != null) + { + //鍙湁鏄墜鍔ㄧ偣鍑荤殑鏃跺�欐墠澶勭悊 + return; + } + + Instance.BodyView.RemoveAll(); //鍒嗙被 CommonPage.Instance.IsDrawerLockMode = true; Instance.categoryName.IsSelected = true; - Instance.categoryIMG.IsSelected = true; + Instance.categoryIMG.IsSelected = true; + + Instance.homePageName.IsSelected = false; + Instance.homePageIMG.IsSelected = false; + + Instance.settingName.IsSelected = false; + Instance.settingIMG.IsSelected = false; + var category = new Phone.Device.Category.Category { }; Instance.BodyView.AddChidren(category); category.Show(); } - else if (sender == Instance.settingIMG || sender==Instance.settingName) - { + else if (sender == Instance.settingIMG || sender == Instance.settingName) + { + if (Instance.settingName.IsSelected == true && e != null) + { + return; + } + Instance.BodyView.RemoveAll(); //涓汉涓績 CommonPage.Instance.IsDrawerLockMode = true; Instance.settingName.IsSelected = true; - Instance.settingIMG.IsSelected = true; + Instance.settingIMG.IsSelected = true; + + Instance.homePageName.IsSelected = false; + Instance.homePageIMG.IsSelected = false; + + Instance.categoryName.IsSelected = false; + Instance.categoryIMG.IsSelected = false; + var form = new UserCenter.UserMain.UserMainForm(); Instance.BodyView.AddChidren(form); form.ShowForm(); -- Gitblit v1.8.0