From 9f326f4000847e6167d8166fa2f6a66f53cb3734 Mon Sep 17 00:00:00 2001
From: 黄学彪 <hxb@hdlchina.com.cn>
Date: 星期四, 17 十二月 2020 09:07:13 +0800
Subject: [PATCH] 新云端Ver1.3

---
 ZigbeeApp/Shared/Phone/UserCenter/Safety/AlarmTargetAddMenuForm.cs |   66 ++++++++++++++++++--------------
 1 files changed, 37 insertions(+), 29 deletions(-)

diff --git a/ZigbeeApp/Shared/Phone/UserCenter/Safety/AlarmTargetAddMenuForm.cs b/ZigbeeApp/Shared/Phone/UserCenter/Safety/AlarmTargetAddMenuForm.cs
index 626e387..b248d34 100755
--- a/ZigbeeApp/Shared/Phone/UserCenter/Safety/AlarmTargetAddMenuForm.cs
+++ b/ZigbeeApp/Shared/Phone/UserCenter/Safety/AlarmTargetAddMenuForm.cs
@@ -22,7 +22,7 @@
         /// <summary>
         /// 鍏ㄩ儴鐨勬暟鎹�(keys1:鎴块棿ID   Keys2:R鏂囦欢鐨勬暟鍊�)
         /// </summary>
-        private Dictionary<string, Dictionary<int, uRowInformation>> dicAllData = new Dictionary<string, Dictionary<int, uRowInformation>>();
+        private Dictionary<string, Dictionary<string, uRowInformation>> dicAllData = new Dictionary<string, Dictionary<string, uRowInformation>>();
         /// <summary>
         /// 褰撳墠閫夋嫨鐨勬ゼ灞侷D
         /// </summary>
@@ -93,7 +93,7 @@
             var listRoom = new List<Common.Room>();
             foreach (string roomId in this.dicAllData.Keys)
             {
-                listRoom.Add(Common.Room.CurrentRoom.GetRoomById(roomId));
+                listRoom.Add(HdlRoomLogic.Current.GetRoomById(roomId));
             }
 
             //鍒濆鍖栨埧闂磋彍鍗曟帶浠�
@@ -129,7 +129,7 @@
         private void InitTopRightMenuControl()
         {
             //鑾峰彇妤煎眰
-            var dicFloor = Common.Room.CurrentRoom.GetFloorSortList();
+            var dicFloor = HdlRoomLogic.Current.GetFloorSortList();
             if (dicFloor.Count == 0)
             {
                 return;
@@ -143,6 +143,7 @@
             btnFloor.Gravity = Gravity.CenterVertical;
             btnFloor.X = btnIconContr.X + btnIconContr.btnIcon.X - Application.GetRealWidth(300);
             btnFloor.TextAlignment = TextAlignment.CenterRight;
+            btnFloor.IsBold = true;
             topFrameLayout.AddChidren(btnFloor);
 
             foreach (var floorId in dicFloor.Keys)
@@ -156,10 +157,10 @@
             btnIconContr.ButtonClickEvent += (sender, e) =>
             {
                 //妤煎眰鑿滃崟
-                var contr = new TopRightMenuControl(dicFloor.Count, 2, Language.StringByID(R.MyInternationalizationString.SelectFloor));
+                var contr = new TopRightFloorMenuControl(dicFloor.Count, 2, this.nowSelectFloorId, Language.StringByID(R.MyInternationalizationString.SelectFloor));
                 foreach (var floorId in dicFloor.Keys)
                 {
-                    contr.AddRowMenu(dicFloor[floorId], "Floor/Floor.png", "Floor/FloorSelected.png", () =>
+                    contr.AddRowMenu(floorId, () =>
                     {
                         //璁板綍璧烽�夋嫨鐨処D
                         this.nowSelectFloorId = floorId;
@@ -179,16 +180,16 @@
         /// 鍒濆鍖栬鎺т欢
         /// </summary>
         /// <param name="dicRowData"></param>
-        private void InitRowControl(Dictionary<int, uRowInformation> dicRowData)
+        private void InitRowControl(Dictionary<string, uRowInformation> dicRowData)
         {
             this.listView.RemoveAll();
             HdlThreadLogic.Current.RunMainInThread(() =>
             {
                 int count = 0;
-                foreach (var textId in dicRowData.Keys)
+                foreach (var strText in dicRowData.Keys)
                 {
                     count++;
-                    var rowData = dicRowData[textId];
+                    var rowData = dicRowData[strText];
 
                     var rowlayout = new FrameRowControl(listView.rowSpace / 2);
                     listView.AddChidren(rowlayout);
@@ -197,7 +198,7 @@
                     btnIcon.UnSelectedImagePath = rowData.IconPath;
 
                     //璁惧鍚�
-                    var txtDevice = rowlayout.AddLeftCaption(Language.StringByID(textId), 750);
+                    var txtDevice = rowlayout.AddLeftCaption(strText, 750);
                     txtDevice.TextSize = 15;
                     //鍚戝彸鍥炬爣
                     rowlayout.AddRightArrow();
@@ -237,12 +238,12 @@
         /// 鑾峰彇璁惧鐨勬墍鏈夌被鍨嬶紝骞舵暣鐞嗘垚姣忎竴琛岀殑鏁版嵁(keys1:鎴块棿ID   Keys2:R鏂囦欢鐨勬暟鍊�)
         /// </summary>
         /// <returns></returns>
-        private Dictionary<string, Dictionary<int, uRowInformation>> GetAllListData()
+        private Dictionary<string, Dictionary<string, uRowInformation>> GetAllListData()
         {
-            var dicData = new Dictionary<string, Dictionary<int, uRowInformation>>();
+            var dicData = new Dictionary<string, Dictionary<string, uRowInformation>>();
             //鑾峰彇鏈湴瀹夐槻鐨勫満鏅�
             Dictionary<int, string> dicScene = HdlSafeguardLogic.Current.GetLocalSceneByZoneID(this.zoonID);
-            var listRoom = Common.Room.CurrentRoom.GetFloorSortRoom(this.nowSelectFloorId);
+            var listRoom = HdlRoomLogic.Current.GetFloorSortRoom(this.nowSelectFloorId);
 
             for (int i = 0; i < listRoom.Count; i++)
             {
@@ -262,18 +263,18 @@
         /// <param name="i_room"></param>
         /// <param name="dicScene"></param>
         /// <returns></returns>
-        private Dictionary<int, uRowInformation> GetRoomDeviceAndSceneData(Common.Room i_room, Dictionary<int, string> dicScene)
+        private Dictionary<string, uRowInformation> GetRoomDeviceAndSceneData(Common.Room i_room, Dictionary<int, string> dicScene)
         {
             if (dicScene == null)
             {
                 //鑾峰彇鏈湴瀹夐槻鐨勫満鏅�
                 dicScene = HdlSafeguardLogic.Current.GetLocalSceneByZoneID(this.zoonID);
             }
-            var dicRoomData = new Dictionary<int, uRowInformation>();
+            var dicRoomData = new Dictionary<string, uRowInformation>();
 
-            for (int j = 0; j < i_room.DeviceUIList.Count; j++)
+            for (int j = 0; j < i_room.ListDevice.Count; j++)
             {
-                var device = i_room.DeviceUIList[j].CommonDevice;
+                var device = HdlDeviceCommonLogic.Current.GetDevice(i_room.ListDevice[j]);
                 //濡傛灉閭d釜璁惧宸茬粡娣诲姞浜嗭紝鍒欎笉鍐嶆樉绀�
                 if (device == null || HdlSafeguardLogic.Current.IsAlarmDeviceExist(this.zoonID, device) == true)
                 {
@@ -283,36 +284,43 @@
                  || device.Type == DeviceType.DimmableLight//璋冨厜鍣�
                  || device.Type == DeviceType.ColorDimmableLight//褰╃伅
                  || device.Type == DeviceType.OnOffOutput//缁х數鍣�
+                 || device.Type == DeviceType.ColorTemperatureLight//鑹叉俯鐏�
                  || device.Type == DeviceType.WindowCoveringDevice)//绐楀笜
                 {
                     string unSelectPath = string.Empty;
                     string selectPath = string.Empty;
 
-                    var typeInfo = Common.LocalDevice.Current.GetDeviceBelongEnumInfo(device);
+                    var typeInfo = HdlDeviceCommonLogic.Current.GetDeviceBelongEnumInfo(device);
                     //鑾峰彇鍥剧墖
-                    Common.LocalDevice.Current.GetDeviceObjectIcon(typeInfo.ConcreteType, ref unSelectPath, ref selectPath);
-                    if (dicRoomData.ContainsKey(typeInfo.BeloneTextId) == false)
+                    HdlDeviceCommonLogic.Current.GetDeviceFunctionTypeMenuIcon(typeInfo, ref unSelectPath, ref selectPath);
+                    if (dicRoomData.ContainsKey(typeInfo.BeloneText) == false)
                     {
-                        dicRoomData[typeInfo.BeloneTextId] = new uRowInformation();
-                        dicRoomData[typeInfo.BeloneTextId].IconPath = unSelectPath;
+                        dicRoomData[typeInfo.BeloneText] = new uRowInformation();
+                        dicRoomData[typeInfo.BeloneText].IconPath = unSelectPath;
                     }
-                    dicRoomData[typeInfo.BeloneTextId].listDevice.Add(device);
+                    dicRoomData[typeInfo.BeloneText].listDevice.Add(device);
                 }
             }
-            for (int j = 0; j < i_room.SceneUIList.Count; j++)
+            string strSceneText = Language.StringByID(R.MyInternationalizationString.uScence);
+            for (int j = 0; j < i_room.ListSceneId.Count; j++)
             {
                 //濡傛灉閭d釜鍦烘櫙宸茬粡娣诲姞浜嗭紝鍒欎笉鍐嶆樉绀�
-                if (dicScene.ContainsKey(i_room.SceneUIList[j].Id) == true)
+                if (dicScene.ContainsKey(i_room.ListSceneId[j]) == true)
                 {
                     continue;
                 }
-                if (dicRoomData.ContainsKey(R.MyInternationalizationString.uScence) == false)
+                var sceneUi = HdlSceneLogic.Current.GetSceneUIBySceneId(i_room.ListSceneId[j]);
+                if (sceneUi == null)
                 {
-                    dicRoomData[R.MyInternationalizationString.uScence] = new uRowInformation();
-                    dicRoomData[R.MyInternationalizationString.uScence].IconPath = "Scene/SceneIcon.png";
-                    dicRoomData[R.MyInternationalizationString.uScence].listScene = new List<Common.SceneUI>();
+                    continue;
                 }
-                dicRoomData[R.MyInternationalizationString.uScence].listScene.Add(i_room.SceneUIList[j]);
+                if (dicRoomData.ContainsKey(strSceneText) == false)
+                {
+                    dicRoomData[strSceneText] = new uRowInformation();
+                    dicRoomData[strSceneText].IconPath = "Scene/SceneIcon.png";
+                    dicRoomData[strSceneText].listScene = new List<Common.SceneUI>();
+                }
+                dicRoomData[strSceneText].listScene.Add(sceneUi);
             }
             return dicRoomData;
         }

--
Gitblit v1.8.0