From a1b0ab7044100daaa7e0f1da2d2ca45e38098963 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期一, 29 三月 2021 09:13:25 +0800
Subject: [PATCH] 2021-3-29-2
---
HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberPermissionPageBLL.cs | 218 +++++++++++++++++++++++++++++++++++++++++++++++++++--
1 files changed, 207 insertions(+), 11 deletions(-)
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberPermissionPageBLL.cs b/HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberPermissionPageBLL.cs
index e2c2d07..a9e3cc6 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,12 +21,7 @@
{
Action action = () =>
{
- var responePack = new HttpServerRequest().DeleteResidenceMemberAccount(memberInfo);
- if (responePack.Code == StateCode.SUCCESS)
- {
- this.RemoveFromParent();
- backAction();
- }
+ RemoveTheMember();
};
new PublicAssmebly().TipOptionMsg(StringId.Tip, StringId.ConfirmToRemoveTheMember, action);
};
@@ -45,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();
@@ -62,7 +59,7 @@
}
else
{
- memberInfo.CurResidenceShareDate = new List<ShareData>();
+ memberInfo.CurResidenceShareData = new List<ShareData>();
IMessageCommon.Current.ShowErrorInfoAlter(responePack.Code);
}
}
@@ -85,5 +82,204 @@
{ 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.RegionID,
+ };
+ 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.RegionID,
+ };
+ 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