From e5f993f52e09eb46878baced83bb8492f147d41c Mon Sep 17 00:00:00 2001 From: WJC <wjc@hdlchina.com.cn> Date: 星期一, 04 十一月 2019 17:58:40 +0800 Subject: [PATCH] 2019-11-04-1 --- ZigbeeApp/Shared/Phone/Device/Logic/DeviceStateCondition.cs | 222 +++++++++++++++++++++++++++++++++++++++++-------------- 1 files changed, 165 insertions(+), 57 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/DeviceStateCondition.cs b/ZigbeeApp/Shared/Phone/Device/Logic/DeviceStateCondition.cs index 72ab9f6..e88eec2 100644 --- a/ZigbeeApp/Shared/Phone/Device/Logic/DeviceStateCondition.cs +++ b/ZigbeeApp/Shared/Phone/Device/Logic/DeviceStateCondition.cs @@ -23,7 +23,6 @@ FrameLayout clickframeLayout = new FrameLayout(); Button clickbutton = new Button(); Button clicktextcolcrbutton = new Button(); - public void Show() { @@ -44,7 +43,7 @@ TextColor = ZigbeeColor.Current.LogicTextBlackColor, TextAlignment = TextAlignment.CenterLeft, X = Application.GetRealWidth(160), - Width = Application.GetRealWidth(300), + Width = Application.GetRealWidth(600), Height = Application.GetRealHeight(69), Y = Application.GetRealHeight(92), TextID = MyInternationalizationString.devicestate, @@ -145,7 +144,7 @@ middle = new VerticalScrolViewLayout(); middle.Y = devicetypehorizontalScrol.Bottom + Application.GetRealHeight(40); - middle.Height = Application.GetRealHeight(1920) - devicetypehorizontalScrol.Y; + middle.Height =Application.GetRealHeight(1920-40) - devicetypehorizontalScrol.Bottom; middle.BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor; middle.X = Application.GetRealWidth(58); middle.Radius = (uint)Application.GetRealHeight(50); @@ -156,7 +155,8 @@ DeviceType.IASZone, DeviceType.OnOffSwitch, DeviceType.OnOffOutput,//妤兼鐏� - DeviceType.DoorLock + DeviceType.DoorLock, + DeviceType.TemperatureSensor, }; ///妤煎眰鐐瑰嚮浜嬩欢 @@ -169,45 +169,83 @@ { flMain.RemoveFromParent(); }; + var foolrbjicon = new FrameLayout + { + + Width = Application.GetRealWidth(450), + Height = Application.GetRealHeight(780), + X = Application.GetRealWidth(1080 - 468 - 35), + Y = Application.GetRealHeight(184), + BackgroundImagePath= "Item/SelectFloor_Right.png", + }; + flMain.AddChidren(foolrbjicon); + + var btnfoolrtext = new Button + { + Width = Application.GetRealWidth(450), + Height = Application.GetRealHeight(150), + TextAlignment = TextAlignment.CenterLeft, + TextColor = ZigbeeColor.Current.LogicTextBlackColor, + X = Application.GetRealWidth(80), + TextID = MyInternationalizationString.selecfoolr, + }; + foolrbjicon.AddChidren(btnfoolrtext); + var foolrbj = new VerticalScrolViewLayout { - Width = Application.GetRealWidth(400), - Height = Application.GetRealHeight(600), - X = Application.GetRealWidth(1080 - 400 - 60), - Y = Application.GetRealHeight(184 + 50), - BackgroundColor = ZigbeeColor.Current.LogicBackgroundColor, - Radius = (uint)Application.GetRealHeight(30), + Width = Application.GetRealWidth(450), + Height =foolrbjicon.Height - btnfoolrtext.Height, + X = Application.GetRealWidth(80), + Y = btnfoolrtext.Bottom, }; - flMain.AddChidren(foolrbj); + foolrbjicon.AddChidren(foolrbj); + foreach (var foolr in Config.Instance.Home.FloorDics) { - - var foolrRowLayout = new FrameLayout + var foolrRowLayout = new RowLayout { Height = Application.GetRealHeight(150), + LineColor= ZigbeeColor.Current.LogicMiddleBackgroundColor, }; foolrbj.AddChidren(foolrRowLayout); + + var btnfoolricon = new Button + { + Width = Application.GetRealWidth(81), + Height = Application.GetRealHeight(81), + UnSelectedImagePath = "Floor/Floor.png", + Gravity=Gravity.CenterVertical, + }; + foolrRowLayout.AddChidren(btnfoolricon); + var btnfoolrname = new Button { Width = Application.GetRealWidth(250), - Height = Application.GetRealHeight(160), + Height = Application.GetRealHeight(150), Text = foolr.Value, - TextAlignment = TextAlignment.Center, - TextColor = ZigbeeColor.Current.LogicTextBlackColor, - //SelectedTextColor=0xfffc744b, + TextAlignment = TextAlignment.CenterLeft, + TextColor = ZigbeeColor.Current.LogicBtnCancelColor, Tag = foolr.Key, + X= btnfoolricon.Right+Application.GetRealWidth(12), }; foolrRowLayout.AddChidren(btnfoolrname); - + if (foolrname.Text == foolr.Value) { + btnfoolricon.UnSelectedImagePath = "Floor/FloorSelected.png"; + btnfoolrname.TextColor = ZigbeeColor.Current.LogicTextBlackColor; + } EventHandler<MouseEventArgs> foolrnameclick = (sender13, e13) => { + roomhorizontalScrol.RemoveAll(); + devicetypehorizontalScrol.RemoveAll(); + middle.RemoveAll(); foolrname.Text = btnfoolrname.Text; flMain.RemoveFromParent(); var list = Send.GetRoomList(btnfoolrname.Tag.ToString()); + AllRoomView(list, deviceTypeList, roomhorizontalScrol, devicetypehorizontalScrol); }; foolrRowLayout.MouseUpEventHandler += foolrnameclick; @@ -222,7 +260,7 @@ ///绗竴娆¤繘鏉� var roomlists = new List<Common.Room>(); roomlists.Clear(); - if (Config.Instance.Home.FloorDics.Count < 1) + if (Config.Instance.Home.FloorDics.Count < 2) { foolrname.Visible = false; dropdown.Visible = false; @@ -305,6 +343,7 @@ } list.Add(device); } + AllDeviceTypeView(list, devicetypehorizontalScrol); } @@ -334,6 +373,7 @@ } list.Add(device); } + AllDeviceTypeView(list, devicetypehorizontalScrol); @@ -364,7 +404,7 @@ devicetypelist.Add(Language.StringByID(MyInternationalizationString.Curtains)); } - var iASZonejosn = devicelist.Find((device) => device.CommonDevice.Type == DeviceType.IASZone); + var iASZonejosn = devicelist.Find((device) => device.CommonDevice.Type == DeviceType.IASZone|| device.CommonDevice.Type == DeviceType.TemperatureSensor); if (iASZonejosn != null) { devicetypelist.Add(Language.StringByID(MyInternationalizationString.sensor)); @@ -484,6 +524,7 @@ else if (devicetype == Language.StringByID(MyInternationalizationString.sensor)) { list.Add(DeviceType.IASZone); + list.Add(DeviceType.TemperatureSensor); } else if (devicetype == Language.StringByID(MyInternationalizationString.doorLock)) { @@ -585,6 +626,21 @@ deviceIconBtn.SelectedImagePath = $"ZigeeLogic/selectedsensor{iASZonedevice.IasDeviceType}.png"; + } + break; + case DeviceType.TemperatureSensor: + { + var temperatureSensor = common.CommonDevice as TemperatureSensor; + if (temperatureSensor.SensorDiv == 1) + { + deviceIconBtn.UnSelectedImagePath = $"ZigeeLogic/temperature.png"; + deviceIconBtn.SelectedImagePath = $"ZigeeLogic/selectedtemperature.png"; + } + else + { + deviceIconBtn.UnSelectedImagePath = "ZigeeLogic/humidity.png"; + deviceIconBtn.SelectedImagePath = "ZigeeLogic/selectedhumidity.png"; + } } break; case DeviceType.OnOffSwitch: @@ -696,9 +752,9 @@ TextID = MyInternationalizationString.security, TextColor = ZigbeeColor.Current.LogicBtnTypeColor, Height = Application.GetRealHeight(140), - Width = Application.GetRealWidth(320), + Width = Application.GetRealWidth(420), TextAlignment = TextAlignment.Center, - X = Btncancel.Right + Application.GetRealWidth(100), + X = Btncancel.Right + Application.GetRealWidth(50), TextSize = 16, Text = common.DeviceEpointName, }; @@ -710,7 +766,7 @@ Height = Application.GetRealHeight(140), Width = Application.GetRealWidth(200), TextAlignment = TextAlignment.CenterRight, - X = Btntitle.Right + Application.GetRealWidth(100), + X = Btntitle.Right + Application.GetRealWidth(50), }; timetype.AddChidren(Btncomplete); @@ -1351,50 +1407,102 @@ break; case DeviceType.DoorLock: { - #region ------ - var doorlockifonlist = Send.ReadDoorLockIfon("ccccccfffe300347"); - //var list = Send.ReadDoorLockIfon(common.DeviceAddr); - var pra = new UserCenter.MemberListInfoPra(); - string result = await UserCenter.UserCenterLogic.GetResponseDataByRequestHttps("ZigbeeUsers/GetSubAccountByDistributedMark", false, pra); - var listInfo = Newtonsoft.Json.JsonConvert.DeserializeObject<List<UserCenter.MemberInfoRes>>(result); - Send.UserList.Clear(); - for (int i = 0; i < listInfo.Count; i++) - { - var membership = new Send.MembershipIfon(); - var membershipifon = listInfo[i]; - for (int j = 0; j < doorlockifonlist.Count; j++) - { - ///鏌ユ壘鎴愬憳浠ュ強鎴愬憳闂ㄩ攣瑙﹀彂婧�(1鎸夐敭/3鍗�/15鎸囩汗) - if (doorlockifonlist[j].CloudAccountId == membershipifon.SubAccountDistributedMark) - { - membership.UserIdMode.Add(doorlockifonlist[j].UserIdMode); - membership.MembershipName = membershipifon.UserName; - membership.MembershipId = membershipifon.SubAccountDistributedMark; - } - - } - if (membership.UserIdMode.Count != 0) - { - ///杩囨护鎺夐噸澶嶆暟鎹紱 - var str = Send.UserList.Find((c) => { return c.MembershipId == membership.MembershipId; }); - if (str == null) - { - Send.UserList.Add(membership); - } - } - - } - #endregion var memberList = new MemberList(); UserView.HomePage.Instance.AddChidren(memberList); UserView.HomePage.Instance.PageIndex += 1; MemberList.action += () => { flMain.RemoveFromParent(); }; + MemberList.edit = false; memberList.Show(common); } break; + case DeviceType.TemperatureSensor: + { + string current = Language.StringByID(MyInternationalizationString.current); + devicefra.Y = Application.GetRealHeight(1920 - 140 - 160 * 2 - 20 - 50); + devicefra.Height = Application.GetRealHeight(140 + 160 * 2 + 20 + 50); + var temperatureSensor = common as TemperatureSensor; + var Btntemperaturevalue = new Button + { + TextColor = ZigbeeColor.Current.LogicBtnCancelColor, + Height = Application.GetRealHeight(60), + Width = Application.GetRealWidth(400), + TextAlignment = TextAlignment.CenterLeft, + X = Application.GetRealWidth(80), + Y = timetype.Bottom + Application.GetRealHeight(70), + }; + devicefra.AddChidren(Btntemperaturevalue); + var horizontalSeekBarVol = new HorizontalSeekBar + { + Width = Application.GetRealWidth(920), + Height = Application.GetRealHeight(80), + Radius = (uint)Application.GetRealHeight(25), + Y = timetype.Bottom + Application.GetRealHeight(70 + 60 + 70), + X = Application.GetRealWidth(80), + ProgressColor = ZigbeeColor.Current.LogicProgressColorSelected, + Max = 100, + SleepTime = 1000, + ThumbRadius = 9, + }; + devicefra.AddChidren(horizontalSeekBarVol); + horizontalSeekBarVol.MouseUpEventHandler += (sender, e) => + { + SelectedDeviceStatuscondition = "TemperatureSensor"; + if (temperatureSensor.SensorDiv == 1) + { + dictionary(deviceConditionsInfo, "AttriButeData1", horizontalSeekBarVol.Progress.ToString()); + + Btntemperaturevalue.Text = current + ">" + horizontalSeekBarVol.Progress.ToString() + "鈩�"; + + } + else + { + Btntemperaturevalue.Text = current + "<" + horizontalSeekBarVol.Progress.ToString() + "%"; + dictionary(deviceConditionsInfo, "AttriButeData1", horizontalSeekBarVol.Progress.ToString());//娓╁害鍊� + } + }; + + + + if (temperatureSensor.SensorDiv == 1) + { + dictionary(deviceConditionsInfo, "Cluster_ID", "1026"); + dictionary(deviceConditionsInfo, "AttriButeId", "0"); + dictionary(deviceConditionsInfo, "Range", "0");//0澶т簬AttriButeData1鏃惰Е鍙戝姩浣� + dictionary(deviceConditionsInfo, "AttriButeData1", "0"); + dictionary(deviceConditionsInfo, "AttriButeData2", "0"); + Btntemperaturevalue.Text = current + ">0鈩�"; + + } + else + { + Btntemperaturevalue.Text = current + "<0%"; + dictionary(deviceConditionsInfo, "Cluster_ID", "1029"); + dictionary(deviceConditionsInfo, "AttriButeId", "0"); + dictionary(deviceConditionsInfo, "Range", "2");//2灏忎簬AttriButeData1鏃惰Е鍙戝姩浣� + dictionary(deviceConditionsInfo, "AttriButeData1", "0");//娓╁害鍊� + dictionary(deviceConditionsInfo, "AttriButeData2", "0"); + } + + if (edit && devices != null) + { + horizontalSeekBarVol.Progress = int.Parse(devices["AttriButeData1"]); + if (temperatureSensor.SensorDiv == 1) + { + + Btntemperaturevalue.Text = current + ">" + devices["AttriButeData1"] + "鈩�"; + + } + else + { + Btntemperaturevalue.Text = current + "<" + devices["AttriButeData1"] + "%"; + } + } + + } + break; } Btncomplete.MouseUpEventHandler += (sender2, e2) => -- Gitblit v1.8.0