wxr
2020-07-06 23c075a9c27946773feccf05abc90489a6bf5203
HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberPermissionPage.cs
@@ -102,12 +102,14 @@
            };
            contentView.AddChidren(roomListView);
            List<Function> funss = new List<Function>();
            if (memberInfo.CurShareData.ShareDataBytes != null)
            {
                funss = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Function>>(
                       CommonPage.MyEncodingUTF8.GetString(memberInfo.CurShareData.ShareDataBytes));
            }
            //List<Function> funss = new List<Function>();
            //if (memberInfo.CurResidenceShareDate.Count > 0)
            //{
            //    foreach (var sd in memberInfo.CurResidenceShareDate)
            //    {
            //        funss.Add(Newtonsoft.Json.JsonConvert.DeserializeObject<ShareData>(CommonPage.MyEncodingUTF8.GetString(sd.ShareDataBytes)));
            //    }
            //}
            foreach (var room in DB_ResidenceData.residenceData.rooms)
            {
                var roomView = new FrameLayout()
@@ -132,14 +134,25 @@
                //计算已经加入房间的设备数量
                int addCount = 0;
                foreach (var d in memberInfo.sharedDatas)
                foreach (var sd in memberInfo.CurResidenceShareDate)
                {
                    foreach(var f in funss)
                    if (room.functions.Find((obj) => obj.sid == sd.ShareName) != null)
                    {
                        if (room.functions.Find((obj) => obj.sid == f.sid) != null)
                        {
                            addCount++;
                        }
                        addCount++;
                    }
                }
                //移除当前住宅已经不存在的功能
                for(int i= 0;i< memberInfo.CurResidenceShareDate.Count;)
                {
                    var sd = memberInfo.CurResidenceShareDate[i];
                    if (DB_ResidenceData.residenceData.functionList.functions.Find((obj) => obj.sid == sd.ShareName) == null)
                    {
                        new DAL.Server.HttpServerRequest().DeleteShareData(sd);
                        memberInfo.CurResidenceShareDate.Remove(sd);
                    }
                    else
                    {
                        i++;
                    }
                }
@@ -168,7 +181,10 @@
                EventHandler<MouseEventArgs> eHandler = (sender, e) =>
                {
                    var mmp = new MemberFunctionPermissionPage(memberInfo,room);
                    Action<string> refreshFunctionCount = (newCount) => {
                        btnFunctionCount.Text = newCount + "/" + room.functions.Count.ToString();
                    };
                    var mmp = new MemberFunctionPermissionPage(memberInfo, room,refreshFunctionCount);
                    MainPage.BasePageView.AddChidren(mmp);
                    mmp.LoadPage(StringId.PermissionToUse);
                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;