From eda3fb873e59544ff36301b51e05aef64f87b0f9 Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期五, 27 八月 2021 13:21:21 +0800 Subject: [PATCH] Merge branch 'newBranch1' of http://172.16.1.23:6688/r/~wxr/HDL_APP_Project into newBranch1 --- HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberPermissionPageBLL.cs | 228 +++++++++++++++++++++++++++++++++++++++++++++++++++++--- 1 files changed, 214 insertions(+), 14 deletions(-) diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberPermissionPageBLL.cs b/HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberPermissionPageBLL.cs index 4d3a95c..e9599c7 100644 --- a/HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberPermissionPageBLL.cs +++ b/HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberPermissionPageBLL.cs @@ -1,6 +1,8 @@ 锘縰sing System; using System.Collections.Generic; +using System.Threading; using HDL_ON.DAL.Server; +using HDL_ON.Entity; using Shared; namespace HDL_ON.UI @@ -19,14 +21,9 @@ { Action action = () => { - var responePack = new HttpServerRequest().DeleteResidenceMemberAccount(memberInfo); - if (responePack.Code == StateCode.SUCCESS) - { - this.RemoveFromParent(); - backAction(); - } + RemoveTheMember(); }; - new PublicAssmebly().TipMsg(StringId.Tip, StringId.ConfirmToRemoveTheMember, action); + new PublicAssmebly().TipOptionMsg(StringId.Tip, StringId.ConfirmToRemoveTheMember, action); }; } @@ -36,6 +33,7 @@ void GetShareDataByAccount() { var waitPage = new Loading(); + bodyView.AddChidren(waitPage); waitPage.Start(Language.StringByID(StringId.PleaseWait)); new System.Threading.Thread(() => { @@ -44,16 +42,16 @@ var responePack = new HttpServerRequest().GetShareDataByMemberAccount(memberInfo.childAccountId); if (responePack.Code == StateCode.SUCCESS) { - if(responePack.Data != null) + if (responePack.Data != null) { var responeObj = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ShareData>>(responePack.Data.ToString()); - memberInfo.CurResidenceShareDate = responeObj; + memberInfo.CurResidenceShareData = responeObj; } else { - memberInfo.CurResidenceShareDate = new List<ShareData>(); + memberInfo.CurResidenceShareData = new List<ShareData>(); } - + Application.RunOnMainThread(() => { ShowRoomListView(); @@ -61,7 +59,7 @@ } else { - memberInfo.CurResidenceShareDate = new List<ShareData>(); + memberInfo.CurResidenceShareData = new List<ShareData>(); IMessageCommon.Current.ShowErrorInfoAlter(responePack.Code); } } @@ -73,13 +71,215 @@ { Application.RunOnMainThread(() => { - //ShowRoomListView(); - waitPage.Hide(); + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } }); } }) { IsBackground = true }.Start(); } + /// <summary> + /// 鍒犻櫎瀛愯处鍙� + /// </summary> + void RemoveTheMember() + { + var waitPage = new Loading(); + bodyView.AddChidren(waitPage); + waitPage.Start(Language.StringByID(StringId.PleaseWait)); + new System.Threading.Thread(() => + { + try + { + var responePack = new HttpServerRequest().DeleteResidenceMemberAccount(memberInfo); + if (responePack.Code == StateCode.SUCCESS) + { + Application.RunOnMainThread(() => + { + this.RemoveFromParent(); + backAction(); + }); + } + else + { + IMessageCommon.Current.ShowErrorInfoAlter(responePack.Code); + } + } + catch (Exception ex) + { + + } + finally + { + Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } + }); + } + }) + { IsBackground = true }.Start(); + } + + + /// <summary> + /// 涓�閿垹闄ゅ綋鍓嶆埧闂存墍鏈夊垎浜� + /// </summary> + /// <param name="funs_Del">闇�瑕佷竴閿垹闄ょ殑鍒嗕韩鏁版嵁</param> + /// <param name="roomFunctionOrSceneList">褰撳墠鎴块棿鎵�鏈夊姛鑳藉垪琛�</param> + /// <param name="roomId">濡傛灉鎴块棿ID涓虹┖锛屽垯浠h〃绠$悊鏃犲垎閰嶅尯鍩熺殑鍔熻兘锛屼笉闇�瑕佸垹闄ゆ埧闂村垎浜�</param> + /// <param name="btnFunctionCount">涓暟缁熻鏁伴噺</param> + /// <param name="roomView">鑳屾櫙View</param> + void DeleteRoomAllShare(List<ShareData> funs_Del, List<RoomData> roomFunctionOrSceneList, string roomId, Button btnFunctionCount, RowLayout roomView) + { + //闇�瑕佸垹闄ょ殑鍒嗕韩涓�0 + if (funs_Del == null || funs_Del.Count == 0) + { + //鍏抽棴鍙虫粦鑿滃崟 + roomView.HideMenu(); + Utlis.ShowTip(Language.StringByID(StringId.NoShare)); + return; + } + + var waitPage = new Loading(); + bodyView.AddChidren(waitPage); + waitPage.Start(Language.StringByID(StringId.PleaseWait)); + + new Thread(() => + { + try + { + bool result = false; + //2020-12-22 灞忚斀鎴块棿鍒嗕韩绠$悊 + ////濡傛灉鎴块棿ID涓虹┖锛屽垯浠h〃绠$悊鏃犲垎閰嶅尯鍩熺殑鍔熻兘锛屼笉闇�瑕佸垹闄ゆ埧闂村垎浜� + //if (!string.IsNullOrEmpty(roomId)) + //{ + // //鍒犻櫎鎴块棿鍒嗕韩 + // var success = DeleteShareRoom(roomId); + // if (success) + // { + // Utlis.WriteLine("鍒犻櫎鎴块棿鍒嗕韩鎴愬姛"); + // } + // else + // { + // Utlis.WriteLine("鍒犻櫎鎴块棿鍒嗕韩澶辫触"); + // } + //} + + //2.鎵归噺鍒犻櫎鍒嗕韩 + var deleteShareObj = new DeleteShareObj() + { + shareDatas = funs_Del, + homeId = DB_ResidenceData.Instance.CurrentRegion.id, + }; + result = LoadMethod_DelSharedData(deleteShareObj); + + if (!result) + { + Application.RunOnMainThread(() => + { + new PublicAssmebly().TipMsgAutoClose(Language.StringByID(StringId.delFail), true); + }); + } + else + { + //鍒犻櫎鍒嗕韩鎴愬姛 + //4.1绠$悊鏈�缁堢殑鍒嗕韩鍒楄〃 + var funs_final = new List<ShareData>(); + funs_final.AddRange(memberInfo.CurResidenceShareData); + //4.2绉婚櫎鍒犻櫎鐨� + foreach (var share_d in funs_Del) + { + var sd = funs_final.Find((obj) => obj.shareTypeId == share_d.shareTypeId); + //濡傛灉璇ュ姛鑳藉凡缁忓垎浜紝涓嶇敤鍒嗕韩 + if (null != sd) + { + funs_final.Remove(share_d); + } + } + + Application.RunOnMainThread(() => + { + new PublicAssmebly().TipMsgAutoClose(Language.StringByID(StringId.SavedSuccessfully), true); + //娓呯┖ + funs_Del.Clear(); + memberInfo.CurResidenceShareData = funs_final; + btnFunctionCount.Text = 0 + "/" + roomFunctionOrSceneList.Count.ToString(); + //鍏抽棴鍙虫粦鑿滃崟 + roomView.HideMenu(); + }); + + } + } + catch { } + finally + { + Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } + }); + + } + + }) + { IsBackground = true }.Start(); + } + + /// <summary> + /// 鍒犻櫎鎴块棿鍒嗕韩 + /// </summary> + /// <returns></returns> + bool DeleteShareRoom(string roomId) + { + var roomList = new List<ShareData>(); + roomList.Add(new ShareData() + { + shareType = ShareType.ROOM.ToString(), + shareTypeId = roomId + }); + + var deleteShareObj = new DeleteShareObj() + { + shareDatas = roomList, + homeId = DB_ResidenceData.Instance.CurrentRegion.id, + }; + var responePack = new HttpServerRequest().DeleteShareData(deleteShareObj); + if (responePack.Code != StateCode.SUCCESS) + { + return false; + } + else + { + return true; + } + } + + /// <summary> + /// 鍒犻櫎鍏变韩鏁版嵁鐐瑰嚮浜嬩欢 + /// </summary> + /// <param name="function"></param> + bool LoadMethod_DelSharedData(DeleteShareObj sd) + { + var responePack = new HttpServerRequest().DeleteShareData(sd); + if (responePack.Code != StateCode.SUCCESS) + { + return false; + } + else + { + return true; + } + } } + } -- Gitblit v1.8.0