From c44b10e4447e84dbdfa9105edf460ef364a8f2b3 Mon Sep 17 00:00:00 2001
From: 陈嘉乐 <cjl@hdlchina.com.cn>
Date: 星期一, 30 十一月 2020 19:53:35 +0800
Subject: [PATCH] Merge branch 'master' into WJC

---
 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs |  100 +++++++++++++++++++++++++++++++------------------
 1 files changed, 63 insertions(+), 37 deletions(-)

diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
index 627f6c9..17ebb5e 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
@@ -7,8 +7,21 @@
     
     public class LogicMethod
     {
+        /// <summary>
+        /// 琛ㄧず鏄潯浠�
+        /// </summary>
         public const string condition_if = "鏉′欢";
+        /// <summary>
+        /// 琛ㄧず鏄洰鏍�
+        /// </summary>
         public const string target_if = "鐩爣";
+        /// <summary>
+        /// 绉婚櫎鎵�鏈�"Logic"鐣岄潰
+        /// </summary>
+        public static void RemoveAllView()
+        {
+            MainPage.BasePageView.RemoveViewByTag("Logic");
+        }
         /// <summary>
         /// 鐢熸垚閫昏緫sid鏂规硶
         /// </summary>
@@ -80,7 +93,7 @@
         /// 鑾峰彇缃戝叧鎴块棿鍒楄〃
         /// </summary>
         /// <returns></returns>
-        public static List<HDL_ON.Entity.Room> GetGatewayRoomListG()
+        public static List<HDL_ON.Entity.Room> GetGatewayRoomList() 
         {
             return HDL_ON.Entity.DB_ResidenceData.rooms;
         }
@@ -88,7 +101,7 @@
         /// 鑾峰彇缃戝叧鎴块棿鍒楄〃
         /// </summary>
         /// <returns></returns>
-        public static List<HDL_ON.Entity.Room> GetGatewayRoomListG(string name)
+        public static List<HDL_ON.Entity.Room> GetGatewayRoomList(string name) 
         {
 
             List<Entity.Room> roomList = new List<Entity.Room>();
@@ -96,7 +109,7 @@
             room1.name = name;//榛樿涓�涓埧闂村悕涓�:鍏ㄩ儴鍖哄煙
             room1.sid = "鍏ㄩ儴鍖哄煙";//榛樿sid鐢ㄨ瘑鍒鎴块棿
             roomList.Add(room1);//榛樿娣诲姞鍒版埧闂村垪琛ㄩ噷
-            var roomLists = GetGatewayRoomListG();
+            var roomLists = GetGatewayRoomList();
             foreach (var room in roomLists)
             {
                 roomList.Add(room);
@@ -112,6 +125,14 @@
         {
 
             return HDL_ON.Entity.DB_ResidenceData.functionList.GetAllFunction();
+        }
+        /// <summary>
+        /// 鑾峰彇缃戝叧鍦烘櫙鍒楄〃
+        /// </summary>
+        /// <returns></returns>
+        public static List<HDL_ON.Entity.Scene> GetSceneList()
+        {
+           return  HDL_ON.Entity.DB_ResidenceData.functionList.scenes;
         }
         /// <summary>
         /// 鑾峰彇鎴块棿鐨勮澶囧垪琛�
@@ -138,13 +159,13 @@
             return deviceLists;
         }
         /// <summary>
-        /// 鑾峰彇璁惧
+        /// 鑾峰彇褰撲釜璁惧
         /// </summary>
         /// <param name="sid">璁惧鍞竴鏍囪瘑</param>
         /// <returns></returns>
         public static HDL_ON.Entity.Function GetDevice(string sid)
         {
-            HDL_ON.Entity.Function device = new Entity.Function();
+            HDL_ON.Entity.Function device = new Entity.Function() { name= "Unknown",sid="璁惧涓嶅瓨鍦�"};
             List<HDL_ON.Entity.Function> deviceLists = GetGatewayDeviceList();
             foreach (var dev in deviceLists)
             {
@@ -156,6 +177,26 @@
             }
             return device;
         }
+
+        /// <summary>
+        /// 鑾峰彇褰撲釜鍦烘櫙
+        /// </summary>
+        /// <param name="sid">鍦烘櫙鍞竴鏍囪瘑</param>
+        /// <returns></returns>
+        public static HDL_ON.Entity.Scene GetSecne(string sid)
+        {
+            HDL_ON.Entity.Scene scene = new Entity.Scene() { name = "Unknown", sid = "鍦烘櫙涓嶅瓨鍦�" };
+            List<HDL_ON.Entity.Scene> sceneLists = GetSceneList();
+            foreach (var sce in sceneLists)
+            {
+                if (sce.sid == sid)
+                {
+                    scene = sce;
+                    break;
+                }
+            }
+            return scene;
+        }
         /// <summary>
         /// 鑾峰彇鎴块棿鍚�(鍗虫槸=鍖哄煙鍚嶇О)
         /// </summary>
@@ -164,7 +205,7 @@
         public static string GetGetRoomName(HDL_ON.Entity.Function device)
         {
             string roomName = "";
-            List<HDL_ON.Entity.Room> roomLists = GetGatewayRoomListG();
+            List<HDL_ON.Entity.Room> roomLists = GetGatewayRoomList();
 
             foreach (var dev in device.roomIdList)
             {
@@ -246,24 +287,25 @@
 
         }
         /// <summary>
-        /// 鏉′欢鏀寔璁惧
+        /// 鏉′欢/鐩爣鏀寔璁惧
         /// </summary>
         /// <returns></returns>
-        public static List<FunctionType> GetConditionFunctionTypeDevice() 
+        public static List<FunctionType> GetSupportEquipment(string if_type)  
         {
             List<FunctionType> deviceTypeList = new List<FunctionType>();
-            deviceTypeList.Add(FunctionType.Relay);
+            switch (if_type) {
+                case condition_if: {
+                        deviceTypeList.Add(FunctionType.Relay);
+                    }
+                    break;
+                case target_if:
+                    {
+                        deviceTypeList.Add(FunctionType.Relay);
+                    }
+                    break;
+            }
             return deviceTypeList;
         }
-        /// <summary>
-        /// 鐩爣鏀寔璁惧
-        /// </summary>
-        /// <returns></returns>
-        public static List<FunctionType> GetTargetFunctionTypeDevice()
-        {
-            List<FunctionType> deviceTypeList = new List<FunctionType>();
-            return deviceTypeList;
-        } 
         /// <summary>
         /// 鏄剧ず鐨勮澶囧垪琛�
         /// </summary>
@@ -283,36 +325,20 @@
             }
             return devList;
         }
-
         /// <summary>
         /// 杩斿洖鏈�缁堟敮鎸佹樉绀哄嚭鏉ョ殑璁惧鍒楄〃
         /// </summary>
         /// <param name="room">褰撳墠鎴块棿</param>
         /// <param name="str">鍒ゆ柇绗︼紙琛ㄧず=杈撳叆璁惧鍜岃緭鍑鸿澶囷級</param>
         /// <returns></returns>
-        public static List<Entity.Function> GetFunctionDeviceList(Entity.Room room,string str)
+        public static List<Entity.Function> GetFunctionDeviceList(Entity.Room room, string str)
         {
-            List<FunctionType> functionTypeList=new List<FunctionType>();
-            switch (str) {
-                case condition_if: {
-                        //杩斿洖鏉′欢鏀寔璁惧鍒楄〃
-                        functionTypeList = GetConditionFunctionTypeDevice();
-                    }
-                    break;
-                case target_if:
-                    {
-                        //杩斿洖鐩爣鏀寔璁惧鍒楄〃
-                        functionTypeList = GetTargetFunctionTypeDevice();
-                    }
-                    break;
-            }
+            List<FunctionType> functionTypeList = GetSupportEquipment(str);
             //杩斿洖鎴块棿璁惧鍒楄〃
             var roomDeviceList = GetRoomDevice(room);
             //杩斿洖鏈�缁堟敮鎸佹樉绀哄嚭鏉ョ殑璁惧鍒楄〃
-            var list= GetShowDeviceList(functionTypeList, roomDeviceList);
+            var list = GetShowDeviceList(functionTypeList, roomDeviceList);
             return list;
         }
-
-     
     }
 }

--
Gitblit v1.8.0