From 7ff70bc7c9460c395b59952d55df6e5d6a12a718 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期三, 15 二月 2023 16:27:32 +0800
Subject: [PATCH] Merge branch 'Dev-Wxr'

---
 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs |  117 +++++++++++++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 95 insertions(+), 22 deletions(-)

diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
index 09792f4..d54f4de 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
@@ -11,7 +11,7 @@
         /// <summary>
         /// 瀹氫箟涓�涓潤鎬佸璞�
         /// </summary> 
-        private static LogicMethod s_Current = null;   
+        private static LogicMethod s_Current = null;
         /// <summary>
         /// 鑾峰彇闈欐�佸璞�
         /// </summary>
@@ -147,9 +147,9 @@
         /// <returns></returns>
         public List<HDL_ON.Entity.Room> GetGatewayRoomList()
         {
-            return   HDL_ON.Entity.SpatialInfo.CurrentSpatial.RoomList;
+            return HDL_ON.Entity.SpatialInfo.CurrentSpatial.RoomList;
 
-            
+
         }
         /// <summary>
         /// 鑾峰彇缃戝叧鎴块棿鍒楄〃
@@ -187,7 +187,7 @@
             var list2 = this.GetVideoDeviceList();
             list.AddRange(list1);
             list.AddRange(list2);
-            GetTestDevice(ref list, false);
+            //GetTestDevice(ref list, true);
             return list;
         }
         /// <summary>
@@ -197,15 +197,17 @@
         public List<HDL_ON.Entity.Function> GetVideoDeviceList()
         {
             var functionList = new List<Function>();
-            foreach (var videoDevice in FunctionList.List.videoIntercom) {
+            foreach (var videoDevice in FunctionList.List.videoIntercom)
+            {
                 Function function = new Function();
                 function.spk = videoDevice.spk;
                 function.name = videoDevice.deviceName;
                 function.deviceId = videoDevice.deviceId;
-                function.online = videoDevice.status== "online";
+                function.online = videoDevice.status == "online";
                 function.sid = videoDevice.sid;
                 var video = functionList.Find((o) => o.deviceId == function.deviceId);
-                if (video == null) {
+                if (video == null)
+                {
                     functionList.Add(function);
                 }
 
@@ -341,17 +343,51 @@
 
             return roomName.TrimEnd(',');
         }
-        #region   鍔ㄤ竴鏀瑰洓
+
         /// <summary>
         /// 鑾峰彇璁惧绫诲瀷鍥炬爣
         /// </summary>
+        /// <param name="device">璁惧</param>
+        /// <returns></returns>
+        public string GetDeviceIconPath(Function device)
+        {
+            if (SPK.MusicStandard == device.spk
+                || SPK.AvMusic == device.spk)
+            {
+                return "MusicIcon/localMusic.png";
+            }
+            else if (SPK.SensorPm10 == device.spk)
+            {
+                return "LogicIcon/sensor.png";
+            }
+            else if (SPK.DoorLock == device.spk)
+            {
+                return "FunctionIcon/DoorLock/DoorLock.png";
+            }
+            //LogicIcon/heatlogic.png"
+            return $"FunctionIcon/Icon/{device.IconName}.png";
+
+        }
+        /// <summary>
+        /// 鑾峰彇璁惧绫诲瀷鍥炬爣(宸插純鐢� 2022骞�11鏈�25鏃�14:07:30)
+        /// </summary>
         /// <param name="functionType">璁惧绫诲瀷</param>
         /// <returns></returns>
-        public string GetIconPath(string functionType)
+        public string GetIconPath(string spk)
         {
             string strPath = "";
-            switch (functionType)
+            switch (spk)
             {
+                case SPK.IpCam_Imou:
+                    {
+                        strPath = $"FunctionIcon/Icon/{SPK.IpCam_Imou.Replace(".", "")}.png";
+                    }
+                    break;
+                case SPK.MechanicalArm:
+                    {
+                        strPath = "LogicIcon/lightloguc.png";
+                    }
+                    break;
                 case SPK.doorgate:
                     {
                         strPath = "VideoIcon/keshiduijiang.png";
@@ -444,10 +480,10 @@
                         strPath = "MusicIcon/localMusic.png";
                     }
                     break;
-
             }
             return strPath;
         }
+        #region   鍔ㄤ竴鏀逛笁
         /// <summary>
         /// 璁惧绫诲瀷鐨勫垪琛�(鐏厜绫伙紝绐楀笜绫汇�傘�傘��)
         /// </summary>
@@ -457,6 +493,7 @@
         {
             List<string> deviceStrTypeList = new List<string>();
             deviceStrTypeList.Clear();
+           
             ///鐏厜绫�
             var lightjosn = deviceList.Find((device) =>
             device.spk == SPK.LightSwitch
@@ -522,6 +559,7 @@
                         || device.spk == SPK.SensorTVOC
                           || device.spk == SPK.SensorHcho
                           || device.spk == SPK.SensorHelp
+                          || device.spk == SPK.SensorPm10
             );
             if (sensor != null)
             {
@@ -555,6 +593,20 @@
             {
                 deviceStrTypeList.Add(Language.StringByID(StringId.VideoIntercom));
             }
+            ///鏈烘鎵嬬被
+            var MechanicalArm = deviceList.Find((device) =>
+            device.spk == SPK.MechanicalArm);
+            if (MechanicalArm != null)
+            {
+                deviceStrTypeList.Add(Language.StringByID(StringId.jixieshou));
+            }
+            ///鎽勫儚澶寸被
+            var camera = deviceList.Find((device) =>
+            device.spk == SPK.IpCam_Imou);
+            if (camera != null)
+            {
+                deviceStrTypeList.Add(Language.StringByID(StringId.shexiangtou));
+            }
             return deviceStrTypeList;
 
         }
@@ -566,6 +618,7 @@
         public List<string> GetDeviceTypeFunctionList(string deviceType)
         {
             List<string> functionTypeList = new List<string>();
+          
             ///鐏厜绫�
             if (deviceType == Language.StringByID(StringId.Lights))
             {
@@ -628,6 +681,7 @@
                 functionTypeList.Add(SPK.SensorTVOC);
                 functionTypeList.Add(SPK.SensorHcho);
                 functionTypeList.Add(SPK.SensorHelp);
+                functionTypeList.Add(SPK.SensorPm10);
 
 
             }
@@ -653,6 +707,16 @@
             else if (deviceType == Language.StringByID(StringId.VideoIntercom))
             {
                 functionTypeList.Add(SPK.doorgate);
+            }
+            ///鏈烘鎵嬬被
+            else  if (deviceType == Language.StringByID(StringId.jixieshou))
+            {
+                functionTypeList.Add(SPK.MechanicalArm);
+            }
+            ///鎽勫儚澶寸被
+            else if (deviceType == Language.StringByID(StringId.shexiangtou))
+            {
+                functionTypeList.Add(SPK.IpCam_Imou);
             }
             else
             {
@@ -706,6 +770,9 @@
                 functionTypeList.Add(SPK.MusicStandard);
                 functionTypeList.Add(SPK.AvMusic);
                 functionTypeList.Add(SPK.doorgate);
+                functionTypeList.Add(SPK.MechanicalArm);
+                functionTypeList.Add(SPK.IpCam_Imou);
+                functionTypeList.Add(SPK.SensorPm10);
 
             }
 
@@ -762,7 +829,9 @@
                         deviceTypeList.Add(SPK.HvacCac);
                         deviceTypeList.Add(SPK.SensorHelp);
                         deviceTypeList.Add(SPK.DoorLock);
-                        deviceTypeList.Add(SPK.doorgate); 
+                        deviceTypeList.Add(SPK.doorgate);
+                        deviceTypeList.Add(SPK.IpCam_Imou);
+                        deviceTypeList.Add(SPK.SensorPm10);
 
                     }
                     break;
@@ -785,6 +854,7 @@
                         deviceTypeList.Add(SPK.CurtainDream);
                         deviceTypeList.Add(SPK.MusicStandard);
                         deviceTypeList.Add(SPK.AvMusic);
+                        deviceTypeList.Add(SPK.MechanicalArm);
                     }
                     break;
             }
@@ -821,15 +891,15 @@
         /// <returns></returns>
         public List<Entity.Function> GetFunctionDeviceList(Entity.Room room, string str)
         {
-            List<string> functionTypeList = GetSupportEquipment(str);
+            List<string> functionTypeList = this.GetSupportEquipment(str);
             //杩斿洖鎴块棿璁惧鍒楄〃
-            var roomDeviceList = GetRoomDevice(room);
+            var roomDeviceList = this.GetRoomDevice(room);
             //杩斿洖鏈�缁堟敮鎸佹樉绀哄嚭鏉ョ殑璁惧鍒楄〃
-            var list = GetShowDeviceList(functionTypeList, roomDeviceList);
+            var list =this.GetShowDeviceList(functionTypeList, roomDeviceList);
             return list;
         }
         /// <summary>
-        /// 缃戝叧ID(鑾峰彇鍢変箰缃戝叧ID)
+        /// 缃戝叧ID(鑾峰彇缃戝叧ID)
         /// </summary>
         public string GatewayId
         {
@@ -1049,7 +1119,7 @@
                             //瀹氫箟涓�涓眬閮ㄥ彉閲�
                             string direction = string.Empty;
                             //涓ょ偣璺濈灏忎簬閰嶇疆璺濈<鏃㈣嚜鍔ㄥ寲閰嶇疆杈撳叆鏉′欢鍦扮悊鍥存爮鍗婂緞>,璇存槑杩涘叆鍖哄煙
-                            if (r*1000< radius)
+                            if (r * 1000 < radius)
                             {
                                 //鍒拌揪鏌愬湴
                                 direction = "arrive";
@@ -1103,11 +1173,14 @@
                  //new Entity.Function { sid = "1234567890", name = "瓒呭0娉紶鎰熷櫒", spk = Entity.SPK.SensorUtrasonic },
                  // new Entity.Function { sid = "1234567891", name = "娓╁害浼犳劅鍣�", spk = Entity.SPK.SensorTemperature },
                  //  new Entity.Function { sid = "1234567892", name = "婀垮害浼犳劅鍣�", spk = Entity.SPK.SensorHumidity },
-                 //   new Entity.Function { sid = "1234567893", name = "绾㈠瀵瑰皠浼犳劅鍣�", spk = Entity.SPK.SensorDuiShe },
-                 //     new Entity.Function { sid = "1234567895", name = "瓒呭0娉紶鎰熷櫒", spk = Entity.SPK.SensorUtrasonic },
-                      new Entity.Function { sid = "1234567896", name = "姣背娉紶鎰熷櫒", spk = Entity.SPK.SenesorMegahealth },
-                        new Entity.Function { sid = "1234567897", name = "姣背娉紶鎰熷櫒1", spk = Entity.SPK.SenesorMegahealth2 },
-                       new Entity.Function { sid = "1234567899", name = "闂ㄧ浼犳劅鍣�", spk = Entity.SPK.SensorDoorWindow },
+                    new Entity.Function { sid = "12345678933456", name = "璋冨厜鐏�", spk = Entity.SPK.LightDimming },
+                      new Entity.Function { sid = "1234567895444", name = "闈㈡澘", spk = Entity.SPK.PanelSocket },
+                      new Entity.Function { sid = "12345678968888", name = "pm10", spk = Entity.SPK.SensorPm10 },
+                      //  new Entity.Function { sid = "1234567897", name = "姣背娉紶鎰熷櫒1", spk = Entity.SPK.SenesorMegahealth2 },
+                      // new Entity.Function { sid = "1234567899", name = "闂ㄧ浼犳劅鍣�", spk = Entity.SPK.SensorDoorWindow },
+                      //  new Entity.Function { sid = "12345678991234", name = "HDL鏈烘鎵�", spk = Entity.SPK.MechanicalArm },
+                      //    new Entity.Function { sid = "123456789912345", name = "娴锋浖鏈烘鎵�", spk = Entity.SPK.MechanicalArm },
+                      //        new Entity.Function { sid = "12345678991234566", name = "娴锋浖鏈烘鎵�", spk = Entity.SPK.MechanicalArm },
             };
                 foreach (var function in functions)
                 {

--
Gitblit v1.8.0