From 026ed1573ad8b9ba28f0e2c0bf0c9cd85f1dd2ed Mon Sep 17 00:00:00 2001 From: JLChen <551775569@qq.com> Date: 星期三, 02 十二月 2020 16:32:00 +0800 Subject: [PATCH] 2020-12-02 1.增加子账号设备分享。 2.房间删除时间优化。3.消息中心接口对接。4.版本检测更新接口对接。 --- HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPageBLL.cs | 170 ++++++++++++++++++++++++++++++++++---------------------- 1 files changed, 104 insertions(+), 66 deletions(-) diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPageBLL.cs b/HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPageBLL.cs index 0fc9bc6..2fafb92 100644 --- a/HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPageBLL.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPageBLL.cs @@ -15,7 +15,6 @@ LoadEvent_OptionClick(); } - /// <summary> /// 搴曢儴鎿嶄綔鎸夐挳鐐瑰嚮浜嬩欢 /// </summary> @@ -25,7 +24,7 @@ { if (titleId == StringId.PermissionToUse)//浠庝釜浜轰腑蹇冭繘鍏ュ崟鐙垎浜� { - new System.Threading.Thread(() => + new Thread(() => { bool result = false; Action act = () => { }; @@ -33,31 +32,70 @@ { act = new PublicAssmebly().TipLoadingMsgDialog(Language.StringByID(StringId.SavingPleaseWait)); }); - foreach (var f in funs_Del) - { - LoadMethod_DelSharedData(f); - } + //foreach (var f in funs_Del) + //{ + // LoadMethod_DelSharedData(f); + //} + //foreach (var f in funs_New) + //{ + // var sd = funs.Find((obj) => obj.shareTypeId == f.shareTypeId); + // //濡傛灉璇ュ姛鑳藉凡缁忓垎浜紝鏇存柊鍘熸湁鐨勬暟鎹� + // if (null != sd) + // { + // sd.ShareDataBytes = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(f)); + // result = EditShareData(sd); + // } + // else//濡傛灉璇ュ姛鑳芥湭琚垎浜紝鍒欐柊澧炲垎浜� + // { + // result = LoadMethod_AddShareData(f); + // } + // if (!result) + // { + // Application.RunOnMainThread(() => + // { + // new PublicAssmebly().TipMsgAutoClose(Language.StringByID(StringId.FunctionSharingFailed), true); + // }); + // } + //} + + //1.鎵归噺鍒犻櫎鍒嗕韩 + var deleteShareObj = new DeleteShareObj() { + shareDatas = funs_Del, + homeId = DB_ResidenceData.residenceData.residecenInfo.RegionID, + }; + LoadMethod_DelSharedData(deleteShareObj); + + //2.鎵归噺涓婁紶 + var funs_NeedAdd = new List<ShareData>(); foreach (var f in funs_New) { - var sd = funs.Find((obj) => obj.ShareName == f.ShareName); + var sd = funs.Find((obj) => obj.shareTypeId == f.shareTypeId); //濡傛灉璇ュ姛鑳藉凡缁忓垎浜紝鏇存柊鍘熸湁鐨勬暟鎹� - if (null != sd) + if (null == sd) { - sd.ShareDataBytes = CommonPage.MyEncodingUTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(f)); - result = EditShareData(sd); - } - else//濡傛灉璇ュ姛鑳芥湭琚垎浜紝鍒欐柊澧炲垎浜� - { - result = LoadMethod_AddShareData(f); - } - if (!result) - { - Application.RunOnMainThread(() => - { - new PublicAssmebly().TipMsgAutoClose(Language.StringByID(StringId.FunctionSharingFailed), true); - }); + funs_NeedAdd.Add(f); } } + + List<string> childAccountIds = new List<string>(); + childAccountIds.Add(memberInfo.childAccountId); + var addShareObj = new AddShareObj() + { + shareDatas = funs_NeedAdd, + childAccountIds = childAccountIds, + homeId = DB_ResidenceData.residenceData.residecenInfo.RegionID, + }; + result = LoadMethod_AddShareData(addShareObj); + + if (!result) + { + Application.RunOnMainThread(() => + { + new PublicAssmebly().TipMsgAutoClose(Language.StringByID(StringId.FunctionSharingFailed), true); + }); + } + + Application.RunOnMainThread(() => { act(); @@ -67,6 +105,7 @@ Application.RunOnMainThread(() => { new PublicAssmebly().TipMsgAutoClose(Language.StringByID(StringId.FunctionSharingSucceeded), true); + memberInfo.CurResidenceShareDate = funs_New; }); Thread.Sleep(1600); Application.RunOnMainThread(() => @@ -81,11 +120,12 @@ } else { - //var sharedBytes = CommonPage.MyEncodingUTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(funs_New)); - var page = new ChooseShareMemberTargetListPage(funs_New); - MainPage.BasePageView.AddChidren(page); - page.LoadPage(); - MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + //var sharedBytes = System.Text.Encoding.UTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(funs_New)); + //2020-12-01 灞忚斀椤甸潰 + //var page = new ChooseShareMemberTargetListPage(funs_New, memberInfo); + //MainPage.BasePageView.AddChidren(page); + //page.LoadPage(); + //MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; } }; } @@ -93,59 +133,62 @@ /// <summary> /// 鏂板鍏变韩鏁版嵁鐐瑰嚮浜嬩欢 /// </summary> - bool LoadMethod_AddShareData(ShareData ssdd) + bool LoadMethod_AddShareData(AddShareObj ssdd) { //澧炲姞鍏变韩鏁版嵁鐩綍 - ResponsePack responePack = new HttpServerRequest().AddShareData(ssdd); - if (responePack.StateCode.ToUpper() != "SUCCESS") + var responePack = new HttpServerRequest().AddShareData(ssdd); + if (responePack.Code != StateCode.SUCCESS) { return false; } else { - ssdd.DistributedMark = responePack.ResponseData.ToString(); - // 鏇存柊鍏变韩鏁版嵁 - return EditShareData(ssdd); + return true; + //var responeObj = Newtonsoft.Json.JsonConvert.DeserializeObject<ShareData>(responePack.Data.ToString()); + //ssdd.id = responeObj.id; + //// 鏇存柊鍏变韩鏁版嵁 + //return EditShareData(ssdd); } } /// <summary> /// 鍒犻櫎鍏变韩鏁版嵁鐐瑰嚮浜嬩欢 /// </summary> /// <param name="function"></param> - bool LoadMethod_DelSharedData(ShareData sd) + bool LoadMethod_DelSharedData(DeleteShareObj sd) { - ResponsePack responePack = new HttpServerRequest().DeleteShareData(sd); - if (responePack.StateCode.ToUpper() != "SUCCESS") + var responePack = new HttpServerRequest().DeleteShareData(sd); + if (responePack.Code != StateCode.SUCCESS) { return false; - }else + } + else { return true; } } - /// <summary> - /// 鏇存柊鍏变韩鏁版嵁 - /// </summary> - bool EditShareData(ShareData sd) - { - ResponsePack responePack = new HttpServerRequest().EditShareData(sd); - if (responePack.StateCode.ToUpper() == "SUCCESS") - { - return true; - } - else - { - return false; - } - } + ///// <summary> + ///// 鏇存柊鍏变韩鏁版嵁 + ///// </summary> + //bool EditShareData(ShareData sd) + //{ + // var responePack = new HttpServerRequest().EditShareData(sd); + // if (responePack.Code == StateCode.SUCCESS) + // { + // return true; + // } + // else + // { + // return false; + // } + //} void LoadMethod_SharedDataChange(Button btnChoose, Button btn2, FrameLayout btn3, Function function) { EventHandler<MouseEventArgs> eventHandler = (sender, e) => { btnChoose.IsSelected = !btnChoose.IsSelected; - var sd = funs.Find((obj) => obj.ShareName == function.sid); + var sd = funs.Find((obj) => obj.shareTypeId == function.deviceId); if (btnChoose.IsSelected) { try @@ -164,16 +207,14 @@ else { var newSd = new ShareData(); - newSd.ShareName = function.sid; - newSd.HouseDistributedMark = DB_ResidenceData.residenceData.residecenInfo.RegionID; - newSd.ShareDataBytes = CommonPage.MyEncodingUTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(function)); - newSd.SubAccountDistributedMark = memberInfo.SubAccountDistributedMark; + newSd.shareTypeId = function.deviceId; + funs_New.Add(newSd); } btnChooseAll.IsSelected = true; - foreach (var f in room.functions) + foreach (var f in room.GetRoomFunctions(false)) { - if (funs_New.Find((obj) => obj.ShareName == f.sid) == null) + if (funs_New.Find((obj) => obj.shareTypeId == f.deviceId) == null) { btnChooseAll.IsSelected = false; break; @@ -187,7 +228,7 @@ } else { - var onFuns = funs_New.Find((obj) => obj.ShareName == function.sid); + var onFuns = funs_New.Find((obj) => obj.shareTypeId == function.deviceId); if (funs_New.Contains(onFuns)) { funs_New.Remove(onFuns); @@ -219,21 +260,18 @@ funs_New = new List<ShareData>(); if (btnChooseAll.IsSelected) { - foreach(var f in room.functions) + foreach(var f in room.GetRoomFunctions(false)) { var ssdd = new ShareData(); - ssdd.ShareName = f.sid; - ssdd.HouseDistributedMark = DB_ResidenceData.residenceData.residecenInfo.RegionID; - ssdd.ShareDataBytes = CommonPage.MyEncodingUTF8.GetBytes(Newtonsoft.Json.JsonConvert.SerializeObject(f)); - ssdd.SubAccountDistributedMark = memberInfo.SubAccountDistributedMark; + ssdd.shareTypeId = f.deviceId; funs_New.Add(ssdd); } } else { - foreach(var f in room.functions) + foreach(var f in room.GetRoomFunctions(false)) { - var sd = funs.Find((obj) => obj.ShareName == f.sid); + var sd = funs.Find((obj) => obj.shareTypeId == f.deviceId); if (sd != null) { funs_Del.Add(sd); -- Gitblit v1.8.0