.vs/HDL_APP_Project/xs/UserPrefs.xml | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
HDL_ON/Common/Constant.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPage.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPageBLL.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
.vs/HDL_APP_Project/xs/UserPrefs.xml
@@ -1,12 +1,24 @@ <Properties StartupConfiguration="{D998E133-F0DD-4760-BE3C-461632F54DA4}|Default"> <MonoDevelop.Ide.ItemProperties.HDL-ON__iOS PreferredExecutionTarget="MonoDevelop.IPhone.IPhoneDeviceTarget.00008030-00014C392121802E" /> <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/Entity/UserInfo.cs"> <MonoDevelop.Ide.Workbench ActiveDocument="HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPage.cs"> <Files> <File FileName="HDL_ON/DAL/Server/HttpUtil.cs" Line="157" Column="54" /> <File FileName="HDL_ON/UI/UI1-Login/SelectServerDialog.cs" Line="74" Column="119" /> <File FileName="HDL_ON/UI/UI1-Login/SelectServerDialog.cs" Line="109" Column="37" /> <File FileName="HDL_ON/DAL/Server/NewAPI.cs" Line="15" Column="29" /> <File FileName="HDL_ON/DAL/Server/HttpServerRequest.cs" Line="102" Column="40" /> <File FileName="HDL_ON/Entity/UserInfo.cs" Line="56" Column="39" /> <File FileName="HDL_ON/DAL/Server/HttpServerRequest.cs" Line="729" Column="51" /> <File FileName="HDL_ON/Entity/UserInfo.cs" Line="45" Column="13" /> <File FileName="HDL_ON/UI/UI2/2-Classification/ClassificationPage.cs" Line="435" Column="1" /> <File FileName="HDL_ON/UI/MainPage.cs" Line="12" Column="19" /> <File FileName="HDL_ON/Common/Constant.cs" Line="199" Column="26" /> <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/AddMemberScanPageBLL.cs" Line="1" Column="1" /> <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/ChooseShareMemberTargetListPage.cs" Line="1" Column="1" /> <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/ChooseShareMemberTargetListPageBLL.cs" Line="1" Column="1" /> <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPage.cs" Line="76" Column="21" /> <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPageBLL.cs" Line="259" Column="34" /> <File FileName="HDL_ON/DAL/Server/NewApiRes.cs" Line="1334" Column="18" /> <File FileName="HDL_ON/Entity/Room.cs" Line="51" Column="23" /> <File FileName="HDL_ON/Entity/ResponseEntity/ResidenceMemberInfo.cs" Line="41" Column="32" /> <File FileName="HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberPermissionPage.cs" Line="219" Column="31" /> </Files> <Pads> <Pad Id="ProjectPad"> @@ -15,32 +27,19 @@ <Node name="HDL_ON" expanded="True"> <Node name="Common" expanded="True" /> <Node name="DAL" expanded="True"> <Node name="Mqtt" expanded="True" /> <Node name="Server" expanded="True" /> </Node> <Node name="Entity" expanded="True"> <Node name="UserInfo.cs" selected="True" /> <Node name="ResponseEntity" expanded="True" /> </Node> <Node name="UI" expanded="True"> <Node name="CSS" expanded="True" /> <Node name="UI0-Public" expanded="True"> <Node name="Widget" expanded="True" /> </Node> <Node name="UI1-Login" expanded="True" /> <Node name="UI2" expanded="True"> <Node name="2-Classification" expanded="True" /> <Node name="3-Intelligence" expanded="True"> <Node name="Scene" expanded="True" /> </Node> <Node name="4-PersonalCenter" expanded="True"> <Node name="AboutOn" expanded="True" /> <Node name="AccountBindInfo" expanded="True" /> <Node name="MemberManagement" expanded="True" /> <Node name="ResetAccountPassword" expanded="True" /> </Node> <Node name="FuntionControlView" expanded="True"> <Node name="EnvironmentalScience" expanded="True" /> <Node name="Music" expanded="True" /> <Node name="MemberManagement" expanded="True"> <Node name="MemberFunctionPermissionPage.cs" selected="True" /> </Node> <Node name="RoomListManage" expanded="True" /> <Node name="SearchDevice" expanded="True" /> </Node> </Node> </Node> @@ -66,7 +65,9 @@ <MonoDevelop.Ide.Workspace ActiveConfiguration="Debug|iPhone" /> <MonoDevelop.Ide.ItemProperties.HDL-ON__Android PreferredExecutionTarget="Android.822QECU5228FU" /> <MonoDevelop.Ide.DebuggingService.Breakpoints> <BreakpointStore /> <BreakpointStore> <Breakpoint file="/Users/jlchen/JLChen/ProjectsCode/HDLGit/ON+/HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPage.cs" relfile="HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPage.cs" line="60" column="1" /> </BreakpointStore> </MonoDevelop.Ide.DebuggingService.Breakpoints> <MultiItemStartupConfigurations /> </Properties> HDL_ON/Common/Constant.cs
@@ -210,6 +210,10 @@ /// /// </summary> SCENE, /// <summary> /// /// </summary> LOGIC, } /// <summary> HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPage.cs
@@ -35,8 +35,17 @@ Action<string> refreshFunctionCount; /// <summary> /// 之前的分享列表 /// </summary> List<ShareData> funs; /// <summary> /// 属于当前房间最终的设备分享列表 /// </summary> List<ShareData> funs_New; /// <summary> /// 删除的分享列表 /// </summary> List<ShareData> funs_Del; public MemberFunctionPermissionPage(ResidenceMemberInfo mInfo, Room r, Action<string> action) @@ -180,9 +189,13 @@ Tag = "ChooseIcon" }; roomView.AddChidren(btnChoose); if (shareDatas.Find((obj) => obj.shareTypeId == function.deviceId) != null) var shareData = shareDatas.Find((obj) => obj.shareTypeId == function.deviceId); if (shareData != null) { btnChoose.IsSelected = true; //刷新属于当前房间的分享统计 funs_New.Add(shareData); } else { HDL_ON/UI/UI2/4-PersonalCenter/MemberManagement/MemberFunctionPermissionPageBLL.cs
@@ -26,94 +26,122 @@ { new Thread(() => { bool result = false; Action act = () => { }; Application.RunOnMainThread(() => try { act = new PublicAssmebly().TipLoadingMsgDialog(Language.StringByID(StringId.SavingPleaseWait)); }); //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.shareTypeId == f.shareTypeId); //如果该功能已经分享,更新原有的数据 if (null == sd) bool result = false; Action act = () => { }; Application.RunOnMainThread(() => { funs_NeedAdd.Add(f); act = new PublicAssmebly().TipLoadingMsgDialog(Language.StringByID(StringId.SavingPleaseWait)); }); //1.管理房间分享 if (funs_New != null && funs_New.Count > 0) { //分享设备大于0 var success = ShareRoom(); if (success) { Utlis.WriteLine("添加房间分享成功"); } else { Utlis.WriteLine("添加房间分享失败"); } } } else { var success = DeleteShareRoom(); if (success) { Utlis.WriteLine("删除房间分享成功"); } else { Utlis.WriteLine("删除房间分享失败"); } } 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); //2.批量删除分享 var deleteShareObj = new DeleteShareObj() { shareDatas = funs_Del, homeId = DB_ResidenceData.residenceData.residecenInfo.RegionID, }; LoadMethod_DelSharedData(deleteShareObj); if (!result) { //3.批量上传 var funs_NeedAdd = new List<ShareData>(); foreach (var f in funs_New) { var sd = funs.Find((obj) => obj.shareTypeId == f.shareTypeId); //如果该功能已经分享,不用分享 if (null == sd) { 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(() => { new PublicAssmebly().TipMsgAutoClose(Language.StringByID(StringId.FunctionSharingFailed), true); act(); }); } Application.RunOnMainThread(() => { act(); }); if (result) { Application.RunOnMainThread(() => if (result) { new PublicAssmebly().TipMsgAutoClose(Language.StringByID(StringId.FunctionSharingSucceeded), true); memberInfo.CurResidenceShareDate = funs_New; }); Thread.Sleep(1600); Application.RunOnMainThread(() => { //4.1管理最终的分享列表 var funs_final = new List<ShareData>(); funs_final.AddRange(funs); //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); } } //4.3添加新增的 funs_final.AddRange(funs_NeedAdd); Application.RunOnMainThread(() => { new PublicAssmebly().TipMsgAutoClose(Language.StringByID(StringId.FunctionSharingSucceeded), true); memberInfo.CurResidenceShareDate = funs_final; }); Thread.Sleep(1600); Application.RunOnMainThread(() => { //MainPage.BasePageView.RemoveAt(MainPage.BasePageView.ChildrenCount - 1); MainPage.BasePageView.GetChildren(MainPage.BasePageView.ChildrenCount - 1).RemoveFromParent(); refreshFunctionCount?.Invoke(funs_New.Count.ToString()); }); refreshFunctionCount?.Invoke(funs_New.Count.ToString()); }); } } catch { } finally { } }) { IsBackground = true }.Start(); @@ -167,6 +195,65 @@ } } /// <summary> /// 分享房间 /// </summary> /// <returns></returns> bool ShareRoom() { var roomList = new List<ShareData>(); roomList.Add(new ShareData() { shareType = ShareType.ROOM.ToString(), shareTypeId = room.roomId }); List<string> childAccountIds = new List<string>(); childAccountIds.Add(memberInfo.childAccountId); var addShareObj = new AddShareObj() { childAccountIds = childAccountIds, homeId = DB_ResidenceData.residenceData.residecenInfo.RegionID, shareDatas = roomList }; var responePack = new HttpServerRequest().AddShareData(addShareObj); if (responePack.Code != StateCode.SUCCESS) { return false; } else { return true; } } /// <summary> /// 删除房间分享 /// </summary> /// <returns></returns> bool DeleteShareRoom() { var roomList = new List<ShareData>(); roomList.Add(new ShareData() { shareType = ShareType.ROOM.ToString(), shareTypeId = room.roomId }); var deleteShareObj = new DeleteShareObj() { shareDatas = roomList, homeId = DB_ResidenceData.residenceData.residecenInfo.RegionID, }; var responePack = new HttpServerRequest().DeleteShareData(deleteShareObj); if (responePack.Code != StateCode.SUCCESS) { return false; } else { return true; } } ///// <summary> ///// 更新共享数据 ///// </summary>