HDL Home App 第二版本 旧平台金堂用 正在使用
WJC
2019-10-31 d7ad5a3953a8cd001659092ebde204b881f94b9d
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);