From fe3b2466c68b5db70d38e78039703add3b8b1dfe Mon Sep 17 00:00:00 2001 From: 黄学彪 <hxb@hdlchina.com.cn> Date: 星期四, 31 十二月 2020 19:29:43 +0800 Subject: [PATCH] 合并了代码 --- ZigbeeApp/Shared/Phone/UserCenter/SharedContent/LookSharedContentForm.cs | 65 ++++++++++++++++++++++---------- 1 files changed, 45 insertions(+), 20 deletions(-) diff --git a/ZigbeeApp/Shared/Phone/UserCenter/SharedContent/LookSharedContentForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/SharedContent/LookSharedContentForm.cs index 0d010e3..374d5fb 100755 --- a/ZigbeeApp/Shared/Phone/UserCenter/SharedContent/LookSharedContentForm.cs +++ b/ZigbeeApp/Shared/Phone/UserCenter/SharedContent/LookSharedContentForm.cs @@ -17,9 +17,9 @@ /// </summary> private Common.Room lookRoom = null; /// <summary> - /// 鎴愬憳ID + /// 鎴愬憳鐨勫垎浜暟鎹� /// </summary> - private string ChildAccountId = string.Empty; + private MemberShardInfoData memberShardInfo = null; /// <summary> /// 璁惧妗屽竷鎺т欢 /// </summary> @@ -58,10 +58,10 @@ /// </summary> /// <param name="i_room">鏌ョ湅鐨勬埧闂村璞�</param> /// <param name="i_memberShardInfo">鎴愬憳鐨勫垎浜暟鎹�</param> - public void ShowForm(Common.Room i_room, string i_ChildAccountId) + public void ShowForm(Common.Room i_room, MemberShardInfoData i_memberShardInfo) { this.lookRoom = i_room; - this.ChildAccountId = i_ChildAccountId; + this.memberShardInfo = i_memberShardInfo; //璁剧疆澶撮儴淇℃伅 base.SetTitleText(i_room.Name); @@ -159,13 +159,19 @@ this.frameSceneTable.RemoveAll(); var listScene = new List<Common.SceneUI>(); - foreach (var sceneId in lookRoom.ListSceneId) + for (int i = 0; i < lookRoom.ListSceneId.Count; i++) { - var scene = HdlShardLogic.Current.GetShardSceneFromMemory(sceneId); - if (scene != null) + var byteData = HdlShardLogic.Current.GetShardFileContent($"Scene_{lookRoom.ListSceneId[i]}.json"); + if (byteData == null) { - listScene.Add(scene); + continue; } + try + { + var sceneUi = Newtonsoft.Json.JsonConvert.DeserializeObject<Common.SceneUI>(System.Text.Encoding.UTF8.GetString(byteData)); + listScene.Add(sceneUi); + } + catch { } } if (listScene.Count == 0) { @@ -249,7 +255,7 @@ else { var frameBack = new FrameLayout(); - frameBack.X = HdlControlResourse.XXLeft; + frameBack.X = ControlCommonResourse.XXLeft; frameBack.Y = Application.GetRealHeight(178); frameBack.BackgroundColor = UserCenterColor.Current.White; frameBack.Width = bodyFrameLayout.Width; @@ -309,15 +315,15 @@ foreach (var device in listDevice) { var frameRow = new FrameRowControl(listView.rowSpace / 2); - frameRow.LeftOffset = Application.GetRealWidth(46) - HdlControlResourse.XXLeft; - frameRow.RightOffset = -HdlControlResourse.XXLeft; + frameRow.LeftOffset = Application.GetRealWidth(46) - ControlCommonResourse.XXLeft; + frameRow.RightOffset = -ControlCommonResourse.XXLeft; listView.AddChidren(frameRow); //鍥炬爣 var btnIcon = frameRow.AddLeftIcon(81); - HdlDeviceCommonLogic.Current.SetDeviceIconToControl(btnIcon, device); + Common.LocalDevice.Current.SetDeviceIconToControl(btnIcon, device); //鍚嶇О var btnView = frameRow.AddLeftCaption(string.Empty, 600); - btnView.Text = HdlDeviceCommonLogic.Current.GetDeviceEpointName(device); + btnView.Text = Common.LocalDevice.Current.GetDeviceEpointName(device); btnView.TextSize = 15; //搴曠嚎 frameRow.AddBottomLine(); @@ -326,7 +332,7 @@ btnSelect.UnSelectedImagePath = "Item/ItemUnSelected.png"; btnSelect.SelectedImagePath = "Item/ItemSelected.png"; - string mainKeys = HdlDeviceCommonLogic.Current.GetDeviceMainKeys(device); + string mainKeys = Common.LocalDevice.Current.GetDeviceMainKeys(device); if (dicSelectDevice.ContainsKey(mainKeys) == true) { btnSelect.IsSelected = true; @@ -372,7 +378,7 @@ var dic = new Dictionary<string, List<CommonDevice>>(); foreach (var device in listDevice) { - var typeInfo = HdlDeviceCommonLogic.Current.GetDeviceBelongEnumInfo(device); + var typeInfo = Common.LocalDevice.Current.GetDeviceBelongEnumInfo(device); if (dic.ContainsKey(typeInfo.BeloneText) == false) { dic[typeInfo.BeloneText] = new List<CommonDevice>(); @@ -410,7 +416,7 @@ HdlThreadLogic.Current.RunThread(() => { //涓婁紶鏂囦欢 - var result = HdlShardLogic.Current.DeleteSharedContent(this.ChildAccountId, this.lookRoom, listDevice, listScene); + var result = HdlShardLogic.Current.DoDeleteSharedContent(memberShardInfo, this.lookRoom, listDevice, listScene); if (result == true) { HdlThreadLogic.Current.RunMain(() => @@ -435,12 +441,31 @@ { //鑾峰彇杩欎釜鎴块棿閲岄潰鐨勫垎浜澶� var listDevice = new List<CommonDevice>(); - foreach (var deviceKey in this.lookRoom.ListDevice) + foreach (var deviceKeys in this.lookRoom.ListDevice) { - var device = HdlShardLogic.Current.GetShardDeviceFromMemory(deviceKey); - if (device != null) + string deviceFile = HdlShardLogic.Current.GetShardDeviceFileName(deviceKeys); + if (memberShardInfo.dicAllShardKeys.ContainsKey(deviceFile) == true) { - listDevice.Add(device); + //浠庡垎浜枃浠朵腑搴忓垪鍖栧洖鏉� + var deviceData = HdlShardLogic.Current.GetShardFileContent(deviceFile); + if (deviceData == null) + { + continue; + } + try + { + var jobject = Newtonsoft.Json.Linq.JObject.Parse(System.Text.Encoding.UTF8.GetString(deviceData)); + if (jobject.Property("DeviceID") == null) + { + continue; + } + var device = ZigBee.Device.CommonDevice.CommonDeviceByByteString(Convert.ToInt32(jobject["DeviceID"].ToString()), System.Text.Encoding.UTF8.GetString(deviceData)); + if (device != null) + { + listDevice.Add(device); + } + } + catch { } } } return listDevice; -- Gitblit v1.8.0