From 0a11352dffeb8d5f31dd40b9728fe1abf4537f04 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期五, 01 九月 2023 18:06:45 +0800
Subject: [PATCH] 2023年09月01日18:06:42

---
 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs |   99 ++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 80 insertions(+), 19 deletions(-)

diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
index 40ba375..8d03e9a 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
@@ -131,7 +131,7 @@
         /// <param name="dic">Dictionary绫�</param>
         /// <param name="key">鍋�</param>
         /// <param name="value">鍊�</param>
-        public void dictionary(Dictionary<string, string> dic, string key, string value)
+        public void dictionary(Dictionary<string, string> dic, string key, string value)  
         {
             if (dic.ContainsKey(key)) //鍒ゆ柇鏄惁瀛樺湪閿��
             {
@@ -187,7 +187,10 @@
             var list2 = this.GetVideoDeviceList();
             list.AddRange(list1);
             list.AddRange(list2);
+            list.AddRange(FunctionList.List.groupControls);
+#if DEBUG
             //GetTestDevice(ref list, true);
+#endif
             return list;
         }
         /// <summary>
@@ -203,7 +206,7 @@
                 function.spk = videoDevice.spk;
                 function.name = videoDevice.deviceName;
                 function.deviceId = videoDevice.deviceId;
-                function.online = videoDevice.status == "online";
+                function.setOnine( videoDevice.status == "online");
                 function.sid = videoDevice.sid;
                 var video = functionList.Find((o) => o.deviceId == function.deviceId);
                 if (video == null)
@@ -356,10 +359,18 @@
             {
                 return "MusicIcon/localMusic.png";
             }
-            else if (SPK.SensorPm10 == device.spk)
+            else if (SPK.SensorPm10 == device.spk
+                || SPK.SensorPirHold == device.spk
+                || SPK.SensorLight == device.spk)
             {
                 return "LogicIcon/sensor.png";
             }
+            else if (SPK.DoorLock == device.spk
+                || SPK.VideoDoorLock == device.spk)
+            {
+                return "FunctionIcon/DoorLock/DoorLock.png";
+            }
+
             //LogicIcon/heatlogic.png"
             return $"FunctionIcon/Icon/{device.IconName}.png";
 
@@ -418,6 +429,7 @@
                     }
                     break;
                 case SPK.AcStandard:
+                case SPK.AcIr:
                 case SPK.HvacAC:
                     {
                         strPath = "LogicIcon/airconditionerlogic.png";
@@ -451,7 +463,7 @@
                 case SPK.SensorMmvPose:
                 case SPK.SenesorMegahealth:
                 case SPK.SenesorMegahealth2:
-                case SPK.SensorEnvironment:
+                case SPK.SensorEnvironment:case SPK.SensorEnvironmentHailin:
                 case SPK.SensorEnvironment2:
                 case SPK.SensorEnvironment3:
                 case SPK.SensorTemperature:
@@ -461,6 +473,8 @@
                 case SPK.SensorTVOC:
                 case SPK.SensorHcho:
                 case SPK.SensorHelp:
+                case SPK.SensorPirHold:
+                    
                     {
                         strPath = "LogicIcon/sensor.png";
                     }
@@ -489,7 +503,15 @@
         {
             List<string> deviceStrTypeList = new List<string>();
             deviceStrTypeList.Clear();
-           
+
+            //缇ゆ帶
+            var gp = deviceList.Find((device) =>
+                device.spk == SPK.GroupControl);
+            if (gp != null)
+            {
+                deviceStrTypeList.Add(Language.StringByID(StringId.GroupControl));
+            }
+
             ///鐏厜绫�
             var lightjosn = deviceList.Find((device) =>
             device.spk == SPK.LightSwitch
@@ -514,7 +536,7 @@
                 deviceStrTypeList.Add(Language.StringByID(StringId.Curtain));
             }
             ///绌鸿皟绫�
-            var ac = deviceList.Find((device) => device.spk == SPK.AcStandard || device.spk == SPK.HvacAC);
+            var ac = deviceList.Find((device) => device.spk == SPK.AcStandard || device.spk == SPK.HvacAC|| device.spk == SPK.AcIr);
             if (ac != null)
             {
                 deviceStrTypeList.Add(Language.StringByID(StringId.AC));
@@ -545,7 +567,7 @@
             || device.spk == SPK.SensorMmvPose
             || device.spk == SPK.SenesorMegahealth
             || device.spk == SPK.SenesorMegahealth2
-            || device.spk == SPK.SensorEnvironment
+            || device.spk == SPK.SensorEnvironment || device.spk == SPK.SensorEnvironmentHailin
              || device.spk == SPK.SensorEnvironment2
               || device.spk == SPK.SensorEnvironment3
                 || device.spk == SPK.SensorTemperature
@@ -556,6 +578,8 @@
                           || device.spk == SPK.SensorHcho
                           || device.spk == SPK.SensorHelp
                           || device.spk == SPK.SensorPm10
+                          || device.spk == SPK.SensorPirHold
+                          || device.spk == SPK.SensorLight
             );
             if (sensor != null)
             {
@@ -566,13 +590,15 @@
             device.spk == SPK.AirSwitch
             || device.spk == SPK.PanelSocket
             || device.spk == SPK.ElectricSocket
+            || device.spk == SPK.ElectricalTvHisense
             );
             if (electric != null)
             {
                 deviceStrTypeList.Add(Language.StringByID(StringId.Electric));
             }
             ///闂ㄩ攣绫�
-            var doorlock = deviceList.Find((device) => device.spk == SPK.DoorLock);
+            var doorlock = deviceList.Find((device) => device.spk == SPK.DoorLock
+            || device.spk == SPK.VideoDoorLock);
             if (doorlock != null)
             {
                 deviceStrTypeList.Add(Language.StringByID(StringId.DoorLock));
@@ -598,7 +624,7 @@
             }
             ///鎽勫儚澶寸被
             var camera = deviceList.Find((device) =>
-            device.spk == SPK.IpCam_Imou);
+            device.spk == SPK.IpCam_Imou || device.spk == SPK.Ev_Ipcam || device.spk == SPK.Peephole);
             if (camera != null)
             {
                 deviceStrTypeList.Add(Language.StringByID(StringId.shexiangtou));
@@ -627,6 +653,11 @@
                 functionTypeList.Add(SPK.PanelSocket);
                 functionTypeList.Add(SPK.ElectricSocket);
             }
+            //缇ゆ帶
+            else if (deviceType == Language.StringByID(StringId.GroupControl))
+            {
+                functionTypeList.Add(SPK.GroupControl);
+            }
             ///绐楀笜绫�
             else if (deviceType == Language.StringByID(StringId.Curtain))
             {
@@ -641,6 +672,7 @@
                 functionTypeList.Add(SPK.AcStandard);
                 functionTypeList.Add(SPK.HvacAC);
                 functionTypeList.Add(SPK.HvacCac);
+                functionTypeList.Add(SPK.AcIr);
             }
             ///鍦版殩绫�
             else if (deviceType == Language.StringByID(StringId.FloorHeating))
@@ -667,7 +699,7 @@
                 functionTypeList.Add(SPK.SensorMmvPose);
                 functionTypeList.Add(SPK.SenesorMegahealth);
                 functionTypeList.Add(SPK.SenesorMegahealth2);
-                functionTypeList.Add(SPK.SensorEnvironment);
+                functionTypeList.Add(SPK.SensorEnvironment); functionTypeList.Add(SPK.SensorEnvironmentHailin);
                 functionTypeList.Add(SPK.SensorEnvironment2);
                 functionTypeList.Add(SPK.SensorEnvironment3);
                 functionTypeList.Add(SPK.SensorTemperature);
@@ -678,6 +710,8 @@
                 functionTypeList.Add(SPK.SensorHcho);
                 functionTypeList.Add(SPK.SensorHelp);
                 functionTypeList.Add(SPK.SensorPm10);
+                functionTypeList.Add(SPK.SensorPirHold);
+                functionTypeList.Add(SPK.SensorLight);
 
 
             }
@@ -687,11 +721,13 @@
                 functionTypeList.Add(SPK.AirSwitch);
                 functionTypeList.Add(SPK.PanelSocket);
                 functionTypeList.Add(SPK.ElectricSocket);
+                functionTypeList.Add(SPK.ElectricalTvHisense);
             }
             ///闂ㄩ攣绫�
             else if (deviceType == Language.StringByID(StringId.DoorLock))
             {
                 functionTypeList.Add(SPK.DoorLock);
+                functionTypeList.Add(SPK.VideoDoorLock);
             }
             ///闊充箰绫�
             else if (deviceType == Language.StringByID(StringId.Music))
@@ -713,10 +749,15 @@
             else if (deviceType == Language.StringByID(StringId.shexiangtou))
             {
                 functionTypeList.Add(SPK.IpCam_Imou);
+                functionTypeList.Add(SPK.Ev_Ipcam);
+                functionTypeList.Add(SPK.Peephole);
             }
             else
             {
                 //鍏ㄩ儴鍖哄煙
+                functionTypeList.Add(SPK.GroupControl);
+                functionTypeList.Add(SPK.Peephole);
+                functionTypeList.Add(SPK.Ev_Ipcam);
                 functionTypeList.Add(SPK.LightSwitch);
                 functionTypeList.Add(SPK.LightDimming);
                 functionTypeList.Add(SPK.LightRGB);
@@ -730,6 +771,7 @@
                 functionTypeList.Add(SPK.CurtainTrietex);
                 functionTypeList.Add(SPK.AcStandard);
                 functionTypeList.Add(SPK.HvacAC);
+                functionTypeList.Add(SPK.AcIr);
                 functionTypeList.Add(SPK.FloorHeatStandard);
                 functionTypeList.Add(SPK.HvacFloorHeat);
                 functionTypeList.Add(SPK.AirFreshStandard);
@@ -747,7 +789,7 @@
                 functionTypeList.Add(SPK.SensorMmvPose);
                 functionTypeList.Add(SPK.SenesorMegahealth);
                 functionTypeList.Add(SPK.SenesorMegahealth2);
-                functionTypeList.Add(SPK.SensorEnvironment);
+                functionTypeList.Add(SPK.SensorEnvironment); functionTypeList.Add(SPK.SensorEnvironmentHailin);
                 functionTypeList.Add(SPK.SensorEnvironment2);
                 functionTypeList.Add(SPK.SensorEnvironment3);
                 functionTypeList.Add(SPK.SensorTemperature);
@@ -769,6 +811,11 @@
                 functionTypeList.Add(SPK.MechanicalArm);
                 functionTypeList.Add(SPK.IpCam_Imou);
                 functionTypeList.Add(SPK.SensorPm10);
+                functionTypeList.Add(SPK.VideoDoorLock);
+                functionTypeList.Add(SPK.AcIr);
+                functionTypeList.Add(SPK.SensorPirHold);
+                functionTypeList.Add(SPK.ElectricalTvHisense);
+                functionTypeList.Add(SPK.SensorLight);
 
             }
 
@@ -787,6 +834,8 @@
             {
                 case condition_if:
                     {
+                        deviceTypeList.Add(SPK.Ev_Ipcam);
+                        deviceTypeList.Add(SPK.Peephole);
                         deviceTypeList.Add(SPK.LightSwitch);
                         deviceTypeList.Add(SPK.LightRGB);
                         deviceTypeList.Add(SPK.LightRGBW);
@@ -795,7 +844,7 @@
                         deviceTypeList.Add(SPK.CurtainSwitch);
                         deviceTypeList.Add(SPK.CurtainRoller);
                         deviceTypeList.Add(SPK.CurtainTrietex);
-                        deviceTypeList.Add(SPK.AcStandard); deviceTypeList.Add(SPK.HvacAC);
+                        deviceTypeList.Add(SPK.AcStandard); deviceTypeList.Add(SPK.HvacAC);deviceTypeList.Add(SPK.AcIr);
                         deviceTypeList.Add(SPK.AirFreshStandard); deviceTypeList.Add(SPK.HvacAirFresh);
                         deviceTypeList.Add(SPK.FloorHeatStandard); deviceTypeList.Add(SPK.HvacFloorHeat);
                         deviceTypeList.Add(SPK.SensorSmoke);
@@ -810,7 +859,7 @@
                         deviceTypeList.Add(SPK.SensorMmvPose);
                         deviceTypeList.Add(SPK.SenesorMegahealth);
                         deviceTypeList.Add(SPK.SenesorMegahealth2);
-                        deviceTypeList.Add(SPK.SensorEnvironment);
+                        deviceTypeList.Add(SPK.SensorEnvironment); deviceTypeList.Add(SPK.SensorEnvironmentHailin);
                         deviceTypeList.Add(SPK.SensorEnvironment2);
                         deviceTypeList.Add(SPK.SensorEnvironment3);
                         deviceTypeList.Add(SPK.SensorTemperature);
@@ -828,11 +877,16 @@
                         deviceTypeList.Add(SPK.doorgate);
                         deviceTypeList.Add(SPK.IpCam_Imou);
                         deviceTypeList.Add(SPK.SensorPm10);
+                        deviceTypeList.Add(SPK.VideoDoorLock);
+                        deviceTypeList.Add(SPK.AcIr);
+                        deviceTypeList.Add(SPK.SensorPirHold);
+                        deviceTypeList.Add(SPK.SensorLight);
 
                     }
                     break;
                 case target_if:
                     {
+                        deviceTypeList.Add(SPK.GroupControl);
                         deviceTypeList.Add(SPK.LightSwitch);
                         deviceTypeList.Add(SPK.LightRGB);
                         deviceTypeList.Add(SPK.LightRGBW);
@@ -841,7 +895,7 @@
                         deviceTypeList.Add(SPK.CurtainSwitch);
                         deviceTypeList.Add(SPK.CurtainRoller);
                         deviceTypeList.Add(SPK.CurtainTrietex);
-                        deviceTypeList.Add(SPK.AcStandard); deviceTypeList.Add(SPK.HvacAC);
+                        deviceTypeList.Add(SPK.AcStandard); deviceTypeList.Add(SPK.HvacAC); deviceTypeList.Add(SPK.AcIr);
                         deviceTypeList.Add(SPK.FloorHeatStandard); deviceTypeList.Add(SPK.HvacFloorHeat);
                         deviceTypeList.Add(SPK.AirFreshStandard); deviceTypeList.Add(SPK.HvacAirFresh);
                         deviceTypeList.Add(SPK.AirSwitch);
@@ -851,6 +905,8 @@
                         deviceTypeList.Add(SPK.MusicStandard);
                         deviceTypeList.Add(SPK.AvMusic);
                         deviceTypeList.Add(SPK.MechanicalArm);
+                        deviceTypeList.Add(SPK.AcIr);
+                        deviceTypeList.Add(SPK.ElectricalTvHisense);
                     }
                     break;
             }
@@ -1166,17 +1222,22 @@
             {
                 //妯℃嫙璁惧
                 var functions = new List<Function> {
-                 //new Entity.Function { sid = "1234567890", name = "瓒呭0娉紶鎰熷櫒", spk = Entity.SPK.SensorUtrasonic },
+                 new Entity.Function { sid = "1234567890", name = "鐓ф槑浼犳劅鍣�", spk = Entity.SPK.SensorLight },
                  // new Entity.Function { sid = "1234567891", name = "娓╁害浼犳劅鍣�", spk = Entity.SPK.SensorTemperature },
                  //  new Entity.Function { sid = "1234567892", name = "婀垮害浼犳劅鍣�", spk = Entity.SPK.SensorHumidity },
-                    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 = "12345678933456", name = "闂ㄩ攣", spk = Entity.SPK.DoorLock },
+                    //  new Entity.Function { sid = "1234567895444", name = "瑙嗛闂ㄩ攣", spk = Entity.SPK.VideoDoorLock },
+                      //new Entity.Function { sid = "12345678968888", name = "浜轰綋瀛樺湪浼犳劅鍣�", spk = Entity.SPK.SensorPirHold },
+                      new Entity.Function { sid = "12345678968888", name = "娴嬭瘯鐚溂", spk = Entity.SPK.Peephole },
+                      new Entity.Function { sid = "12345678968889", name = "娴嬭瘯钀ょ煶鎽勫儚澶�", spk = Entity.SPK.Ev_Ipcam },
                       //  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 },
+                              new Entity.Function { sid = "12345678991234566844", name = "澶у崕鎽勫儚澶�", spk = Entity.SPK.IpCam_Imou },
+                                 new Entity.Function { sid = "12345678991234567", name = "RGB", spk = Entity.SPK.LightRGB },
+                                  new Entity.Function { sid = "123456789912345678", name = "RGBW", spk = Entity.SPK.LightRGBW },
+                                     new Function { spk = SPK.ElectricalTvHisense, name = "娴蜂俊鐢佃1",sid="123456789"},
             };
                 foreach (var function in functions)
                 {

--
Gitblit v1.8.0