From d7ad5a3953a8cd001659092ebde204b881f94b9d Mon Sep 17 00:00:00 2001 From: WJC <wjc@hdlchina.com.cn> Date: 星期四, 31 十月 2019 10:47:13 +0800 Subject: [PATCH] 2019-10-31-1 --- ZigbeeApp/Shared/Phone/Device/Logic/TemplateDeviceCondition.cs | 79 ++++++++++++++++++++++++++++++--------- 1 files changed, 61 insertions(+), 18 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/Device/Logic/TemplateDeviceCondition.cs b/ZigbeeApp/Shared/Phone/Device/Logic/TemplateDeviceCondition.cs index 06624b8..074389f 100644 --- a/ZigbeeApp/Shared/Phone/Device/Logic/TemplateDeviceCondition.cs +++ b/ZigbeeApp/Shared/Phone/Device/Logic/TemplateDeviceCondition.cs @@ -87,7 +87,8 @@ Width = Application.GetRealWidth(400), Height = Application.GetRealHeight(69), Y = Application.GetRealHeight(92), - TextID = MyInternationalizationString.customroom, + // TextID = MyInternationalizationString.customroom, + Text = Config.Instance.Home.GetCurrentFloorName, }; topRowLayout.AddChidren(foolrname); var dropdown = new Button @@ -157,7 +158,7 @@ }; ///妤煎眰鐐瑰嚮浜嬩欢 - foolrname.MouseUpEventHandler += (sender, e) => + EventHandler<MouseEventArgs> foorlclick=(sender,e) => { var flMain = new FrameLayout { BackgroundColor = ZigbeeColor.Current.LogicViewBackgroundColor }; @@ -178,8 +179,7 @@ }; flMain.AddChidren(foolrbj); ///榛樿璋冭瘯 - List<string> foolrlist = new List<string> { "涓�妤�", "浜屾ゼ", "涓夋ゼ" }; - foreach (var foolr in foolrlist) + foreach (var foolr in Config.Instance.Home.FloorDics) { var foolrRowLayout = new FrameLayout { @@ -191,32 +191,57 @@ { Width = Application.GetRealWidth(250), Height = Application.GetRealHeight(160), - Text = foolr, + Text = foolr.Value, TextAlignment = TextAlignment.Center, TextColor = ZigbeeColor.Current.LogicTextBlackColor, - //SelectedTextColor=0xfffc744b, + Tag = foolr.Key, }; foolrRowLayout.AddChidren(btnfoolrname); - EventHandler<MouseEventArgs> foolrclick = (sender13, e13) => + EventHandler<MouseEventArgs> foolrnameclick = (sender13, e13) => { roomhorizontalScrol.RemoveAll(); + devicetypehorizontalScrol.RemoveAll(); + middle.RemoveAll(); foolrname.Text = btnfoolrname.Text; flMain.RemoveFromParent(); - ///澶囨敞锛氭樉绀洪�変腑妤煎眰鐨勬墍鏈夋埧闂� - AllRoomView(Common.Room.Lists, deviceTypeList, roomhorizontalScrol, devicetypehorizontalScrol); + var list = Send.GetRoomList(btnfoolrname.Tag.ToString()); + AllRoomView(list, deviceTypeList, roomhorizontalScrol, devicetypehorizontalScrol); }; - foolrRowLayout.MouseUpEventHandler += foolrclick; - btnfoolrname.MouseUpEventHandler += foolrclick; + foolrRowLayout.MouseUpEventHandler += foolrnameclick; + btnfoolrname.MouseUpEventHandler += foolrnameclick; } }; - ///绗竴娆¤繘鏉� - AllRoomView(Common.Room.Lists, deviceTypeList, roomhorizontalScrol, devicetypehorizontalScrol); + foolrname.MouseUpEventHandler += foorlclick; + dropdown.MouseUpEventHandler += foorlclick; + + var roomlists = new List<Common.Room>(); + roomlists.Clear(); + if (Config.Instance.Home.FloorDics.Count < 2) + { + foolrname.Visible = false; + dropdown.Visible = false; + if (Config.Instance.Home.FloorDics.Count == 0) + { + roomlists.AddRange(Common.Room.Lists); + } + else + { + roomlists = Send.GetRoomList(Config.Instance.Home.CurrentFloorId); + } + } + else + { + roomlists = Send.GetRoomList(Config.Instance.Home.CurrentFloorId); + + } + + AllRoomView(roomlists, deviceTypeList, roomhorizontalScrol, devicetypehorizontalScrol); } /// <summary> /// 鍔犺浇鎵�鏈夋埧闂寸殑瑙嗗浘鏂规硶 @@ -271,6 +296,10 @@ var list = new List<DeviceUI>(); foreach (var device in room.DeviceUIList) { + if (device.CommonDevice == null) + { + continue; + } if (!deviceTypeList.Contains(device.CommonDevice.Type)) { continue; @@ -297,6 +326,10 @@ var list = new List<DeviceUI>(); foreach (var device in room.DeviceUIList) { + if (device.CommonDevice == null) + { + continue; + } if (!deviceTypeList.Contains(device.CommonDevice.Type)) { continue; @@ -1328,8 +1361,7 @@ case DeviceType.DoorLock: { #region ------ - var doorlockifonlist = Send.ReadDoorLockIfon("ccccccfffe300347"); - //var list = Send.ReadDoorLockIfon(common.DeviceAddr); + var doorlockifonlist = await Send.UserListIfon(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); @@ -1343,9 +1375,20 @@ ///鏌ユ壘鎴愬憳浠ュ強鎴愬憳闂ㄩ攣瑙﹀彂婧�(1鎸夐敭/3鍗�/15鎸囩汗) if (doorlockifonlist[j].CloudAccountId == membershipifon.SubAccountDistributedMark) { - membership.UserIdMode.Add(doorlockifonlist[j].UserIdMode); - membership.MembershipName = membershipifon.UserName; + var lockMode = new Send.LockMode(); + lockMode.UserId = doorlockifonlist[j].DoorLockLocalUserId; + lockMode.OpenMode = doorlockifonlist[j].OpenLockMode; + membership.UserIdMode.Add(lockMode); membership.MembershipId = membershipifon.SubAccountDistributedMark; + if (string.IsNullOrEmpty(membershipifon.UserName)) + { + membership.MembershipName = membershipifon.Account; + } + else + { + membership.MembershipName = membershipifon.UserName; + + } } @@ -1353,7 +1396,7 @@ if (membership.UserIdMode.Count != 0) { ///杩囨护鎺夐噸澶嶆暟鎹紱 - var str = Send.UserList.Find((c) => { return c.MembershipId == membership.MembershipId; }); + var str = Send.UserList.Find((c) => { return c.MembershipId == membershipifon.SubAccountDistributedMark; }); if (str == null) { Send.UserList.Add(membership); -- Gitblit v1.8.0