From 8369943018da4ffe3fed1ecf5992edaee597d49c Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期一, 05 六月 2023 17:44:29 +0800
Subject: [PATCH] 2023年06月05日17:44:04

---
 HDL-ON_iOS/Resources/Language.ini                                 |   16 ++
 HDL_ON/Entity/Function/Function.cs                                |    5 
 HDL-ON_Android/Assets/Language.ini                                |   16 ++
 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs            |   10 +
 HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs    |   57 +++++++
 HDL-ON_Android/Resources/Resource.designer.cs                     |    2 
 HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs |  103 ++++++++++++++
 HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs                  |    4 
 HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs                   |    2 
 HDL_ON/Common/R.cs                                                |   13 +
 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs     |  137 +++++++++++++++++++
 HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs               |    7 
 12 files changed, 355 insertions(+), 17 deletions(-)

diff --git a/HDL-ON_Android/Assets/Language.ini b/HDL-ON_Android/Assets/Language.ini
index 5edc896..9b3e021 100644
--- a/HDL-ON_Android/Assets/Language.ini
+++ b/HDL-ON_Android/Assets/Language.ini
@@ -1149,6 +1149,9 @@
 7166=Camera
 7167=Main switch
 7168=PM10
+7169=Time of duration
+7170=Human presence detection
+7171=continue
 
 8501=Video door lock
 8502=Electric quantity
@@ -2432,6 +2435,10 @@
 7166=鎽勫儚澶�
 7167=鎬绘帶寮�鍏�
 7168=PM10
+7169=鎸佺画鏃堕棿
+7170=浜轰綋瀛樺湪妫�娴�
+7171=鎸佺画
+
 
 
 8501=瑙嗛闂ㄩ攣
@@ -3711,6 +3718,9 @@
 7166=Camera
 7167=Main switch
 7168=PM10
+7169=Time of duration
+7170=Human presence detection
+7171=continue
 
 8501=Video door lock
 8502=Electric quantity
@@ -4985,6 +4995,9 @@
 7166=Camera
 7167=Main switch
 7168=PM10
+7169=Time of duration
+7170=Human presence detection
+7171=continue
 
 8501=Video door lock
 8502=Electric quantity
@@ -6258,6 +6271,9 @@
 7166=Camera
 7167=Main switch
 7168=PM10
+7169=Time of duration
+7170=Human presence detection
+7171=continue
 
 8501=Video door lock
 8502=Electric quantity
diff --git a/HDL-ON_Android/Resources/Resource.designer.cs b/HDL-ON_Android/Resources/Resource.designer.cs
index b127030..acf2224 100644
--- a/HDL-ON_Android/Resources/Resource.designer.cs
+++ b/HDL-ON_Android/Resources/Resource.designer.cs
@@ -14,7 +14,7 @@
 {
 	
 	
-	[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Xamarin.Android.Build.Tasks", "12.2.8.165")]
+	[global::System.CodeDom.Compiler.GeneratedCodeAttribute("Xamarin.Android.Build.Tasks", "1.0.0.0")]
 	public partial class Resource
 	{
 		
diff --git a/HDL-ON_iOS/Resources/Language.ini b/HDL-ON_iOS/Resources/Language.ini
index 5edc896..9b3e021 100644
--- a/HDL-ON_iOS/Resources/Language.ini
+++ b/HDL-ON_iOS/Resources/Language.ini
@@ -1149,6 +1149,9 @@
 7166=Camera
 7167=Main switch
 7168=PM10
+7169=Time of duration
+7170=Human presence detection
+7171=continue
 
 8501=Video door lock
 8502=Electric quantity
@@ -2432,6 +2435,10 @@
 7166=鎽勫儚澶�
 7167=鎬绘帶寮�鍏�
 7168=PM10
+7169=鎸佺画鏃堕棿
+7170=浜轰綋瀛樺湪妫�娴�
+7171=鎸佺画
+
 
 
 8501=瑙嗛闂ㄩ攣
@@ -3711,6 +3718,9 @@
 7166=Camera
 7167=Main switch
 7168=PM10
+7169=Time of duration
+7170=Human presence detection
+7171=continue
 
 8501=Video door lock
 8502=Electric quantity
@@ -4985,6 +4995,9 @@
 7166=Camera
 7167=Main switch
 7168=PM10
+7169=Time of duration
+7170=Human presence detection
+7171=continue
 
 8501=Video door lock
 8502=Electric quantity
@@ -6258,6 +6271,9 @@
 7166=Camera
 7167=Main switch
 7168=PM10
+7169=Time of duration
+7170=Human presence detection
+7171=continue
 
 8501=Video door lock
 8502=Electric quantity
diff --git a/HDL_ON/Common/R.cs b/HDL_ON/Common/R.cs
index 1d4c2ab..971b2ab 100644
--- a/HDL_ON/Common/R.cs
+++ b/HDL_ON/Common/R.cs
@@ -3238,6 +3238,19 @@
         /// PM210
         /// </summary>
         public const int pm10 = 7168;
+        /// <summary>
+        /// 鎸佺画鏃堕棿
+        /// </summary>
+        public const int chixushijian = 7169;
+        /// <summary>
+        /// 浜轰綋瀛樺湪妫�娴�
+        /// </summary>
+        public const int rentijiance = 7170;
+        /// <summary>
+        /// 鎸佺画
+        /// </summary>
+        public const int chixu = 7171;
+
 
         /// <summary>
         /// 瑙嗛闂ㄩ攣
diff --git a/HDL_ON/Entity/Function/Function.cs b/HDL_ON/Entity/Function/Function.cs
index 6e468e9..18c0920 100644
--- a/HDL_ON/Entity/Function/Function.cs
+++ b/HDL_ON/Entity/Function/Function.cs
@@ -1681,6 +1681,10 @@
         /// </summary>
         public const string SensorPir = "sensor.pir";
         /// <summary>
+        /// 浜轰綋绉诲姩浼犳劅鍣紙甯︽寔缁椂闂达級
+        /// </summary>
+        public const string sensorPirhold = "sensor.pir_hold";
+        /// <summary>
         /// 锛堥棬绐椾紶鎰熷櫒锛�
         /// </summary>
         public const string SensorDoorWindow = "sensor.doorwindow";
@@ -1734,6 +1738,7 @@
         {
             var spkList = new List<string>();
             //spkList.Add(SensorLight);
+            spkList.Add(sensorPirhold);
             spkList.Add(SensorPir);
             spkList.Add(SensorHelp);
             spkList.Add(SensorDoorWindow);
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs
index 0cf91cc..8f0d13f 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/ConditionDeviceFunList.cs
@@ -36,6 +36,12 @@
         /// 鍙瀵硅涓撶敤
         /// </summary>
         private string identifier;
+        /// <summary>
+        /// 浜轰綋浼犳劅鍣ㄦ寔缁椂闂翠笓鐢�
+        /// </summary>
+        private string hold_time=string.Empty;
+
+        
 
         private static ConditionDeviceFunList m_Current = null;
 
@@ -184,6 +190,59 @@
                         if (edit)
                         {
                             GetEditState(device, index, view.btnState, null, null, null);
+                        }
+                    }
+                    break;
+                //浜轰綋瀛樺湪浼犳劅鍣�
+                case SPK.sensorPirhold:
+                    {
+                       
+
+                        LogicView.FunTypeView view1 = new LogicView.FunTypeView();
+                        view1.btnText.TextID = StringId.rentijiance;
+                        view1.btnText.Name = Language.StringByID(StringId.rentijiance);
+                        fLayout.AddChidren(view1.FLayoutView());
+                        view1.btnClick.MouseUpEventHandler += (sender, e) =>
+                        {
+                            DeviceView(device, view1.btnState, StringId.youren, StringId.wuren);
+
+                        };
+
+                        LogicView.FunTypeView view2 = new LogicView.FunTypeView();
+                        view2.frameLayout.Y = view1.frameLayout.Bottom;
+                        view2.btnText.TextID = StringId.chixushijian;
+                        fLayout.AddChidren(view2.FLayoutView());
+                        view2.btnClick.MouseUpEventHandler += (sender, e) =>
+                        {
+                            //涓荤晫闈㈡帶浠�
+                            FrameLayout fLayout = new FrameLayout
+                            {
+                                BackgroundColor = CSS.CSS_Color.viewTrans60lucence,
+                            };
+                            this.AddChidren(fLayout);
+                            TimeView(fLayout, device, view2.btnState);
+
+                        };
+
+
+                        if (edit)
+                        {
+                            try
+                            {
+                                Input inputs = Logic.currlogic.input[index];
+                                if (!string.IsNullOrEmpty(inputs.hold_time) && int.Parse(inputs.hold_time) > 0)
+                                {
+                                    int time = int.Parse(inputs.hold_time);
+                                    int h = time / (60 * 60);
+                                    int m = time % (60 * 60) / 60;
+                                    int s = (time % (60 * 60) % 60);
+                                    view2.btnState.Text = inputs.hold_time + "s";
+                                    view2.btnState.Name = h + ":" + m + ":" + s;
+                                    this.hold_time = inputs.hold_time;
+                                }
+                            }
+                            catch { }
+                            GetEditState(device, index, view1.btnState, view2.btnState, null, null);
                         }
                     }
                     break;
@@ -694,6 +753,11 @@
                     inputDevice.condition_type = "9";
                     inputDevice.identifier = this.identifier;
                 }
+                else if (device.spk == SPK.sensorPirhold)
+                {
+                    //浜轰綋瀛樺湪浼犳劅鍣�
+                    inputDevice.hold_time = this.hold_time;
+                }
 
 
                 if (edit)
@@ -737,6 +801,7 @@
             }
 
         }
+
         /// <summary>
         /// 璁惧閫夋嫨鏉′欢鐣岄潰
         /// </summary>
@@ -779,6 +844,7 @@
                             }
                         }
                         break;
+                    case SPK.sensorPirhold:
                     case SPK.SensorDuiShe:
                     case SPK.SensorShanLan:
                     case SPK.SensorPir:
@@ -1191,6 +1257,43 @@
         }
 
         /// <summary>
+        /// 鏃堕棿鏂规硶
+        /// </summary>
+        /// <param name="fLayout">鍦ㄥ摢涓晫闈㈡樉绀�</param>
+        /// <param name="edit">锛坱rue=缂栬緫锛沠alse=鏂板缓锛�</param>
+        /// <param name="index">缂栬緫鏉′欢鐨勭储寮�</param>
+        private void TimeView(FrameLayout fLayout,Function device, Button button)
+        {
+
+            LogicView.TimeView timePointView = new LogicView.TimeView();
+            timePointView.FLayoutView(fLayout);
+            timePointView.Time(fLayout, button.Name, (timeValue) =>
+            {
+                try
+                {
+                    if (timeValue.Contains(":"))
+                    {
+                        string[] ary = timeValue.Split(':');
+
+                        int h = int.Parse(ary[0]) * 60 * 60;
+                        int m = int.Parse(ary[1]) * 60;
+                        int s = int.Parse(ary[2]);
+                        this.hold_time = (h + m + s).ToString();
+                        if (button != null)
+                        {
+                            button.Text = this.hold_time + "s";
+                            button.Name = timeValue;
+                        }
+                        selectedState = device.spk + "_" + timeValue;
+                    }
+                }
+                catch { }
+
+            });
+
+        }
+
+        /// <summary>
         /// 鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬�
         /// </summary>
         /// <param name="device">缂栬緫璁惧</param>
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
index 7055171..eb3fb05 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
@@ -247,7 +247,7 @@
                                         {
                                             inputView.btnState.Text = Language.StringByID(StringId.kaiqi);
                                         }
-                                       
+
                                     }
                                     break;
                                 case SPK.SensorUtrasonic:
@@ -307,12 +307,14 @@
                                     {
                                         string value = this.GetValue(dicList);
                                         inputView.btnState.Text = Language.StringByID(StringId.wuren);
-                                        if (value == "fall") {
+                                        if (value == "fall")
+                                        {
                                             inputView.btnState.Text = Language.StringByID(StringId.diedao);
                                         }
                                     }
                                     break;
-                                case SPK.SensorEnvironment:case SPK.SensorEnvironmentHailin:
+                                case SPK.SensorEnvironment:
+                                case SPK.SensorEnvironmentHailin:
                                 case SPK.SensorEnvironment2:
                                 case SPK.SensorEnvironment3:
                                     {
@@ -376,7 +378,7 @@
                                 case SPK.SensorTemperature:
                                     {
 
-                                        string str =this.GetText(dicList, "temperature");
+                                        string str = this.GetText(dicList, "temperature");
                                         inputView.btnState.Text = str;
                                     }
                                     break;
@@ -451,7 +453,7 @@
 
 
                                             }
-                                           
+
                                         }
                                         inputView.btnState.Text = s;
                                     }
@@ -462,7 +464,32 @@
                                         {
                                             inputView.btnState.Text = Language.StringByID(StringId.quyuruqingaojing);
                                         }
-                                        
+
+                                    }
+                                    break;
+                                case SPK.sensorPirhold:
+                                    {
+                                        string value = this.GetKeyValue("people_status", dicList);
+                                        if (string.IsNullOrEmpty(value))
+                                        {
+                                            inputView.btnState.Text = inputCondition.hold_time + "s";
+                                            break;
+
+                                        }
+                  
+                                        inputView.btnState.Text = Language.StringByID(StringId.wuren);
+                                        if (value == "true")
+                                        {
+                                            inputView.btnState.Text = Language.StringByID(StringId.youren);
+
+                                        }
+                                        if (!string.IsNullOrEmpty(inputCondition.hold_time) && int.Parse(inputCondition.hold_time) > 0)
+                                        {
+
+                                            inputView.btnState.Text += "鎸佺画" + inputCondition.hold_time + "s";
+                                        }
+
+
                                     }
                                     break;
                             }
@@ -1978,6 +2005,7 @@
                         }
                     }
                     break;
+              
                 case SPK.SensorGas:
                 case SPK.SensorSmoke:
                     {
@@ -2046,6 +2074,23 @@
                         }
                     }
                     break;
+                case SPK.sensorPirhold:
+                    {
+                        foreach (var dic in dicList)
+                        {
+                            string value = dic["value"];
+                            if (value == "true")
+                            {
+                                button1.Text = Language.StringByID(StringId.youren);
+                            }
+                            else
+                            {
+                                button1.Text = Language.StringByID(StringId.wuren);
+                            }
+                        }
+
+                    }
+                    break;
                 case SPK.SensorDoorWindow:
                     {
                         foreach (var dic in dicList)
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs
index 370900f..e043cf8 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs
@@ -106,6 +106,10 @@
         /// condition_type=9鏃朵娇鐢�
         /// </summary>
         public string identifier = "";
+        /// <summary>
+        /// 浜轰綋绉诲姩浼犳劅鍣紙甯︽寔缁椂闂达級
+        /// </summary>
+        public string hold_time = "";
         public List<Dictionary<string, string>> condition = new List<Dictionary<string, string>>();
         /// <summary>
         /// 鍦扮悊鍥存爮閰嶇疆
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
index 9ed7f66..173a736 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs
@@ -356,7 +356,7 @@
             {
                 return "MusicIcon/localMusic.png";
             }
-            else if (SPK.SensorPm10 == device.spk)
+            else if (SPK.SensorPm10 == device.spk || SPK.sensorPirhold == device.spk)
             {
                 return "LogicIcon/sensor.png";
             }
@@ -467,6 +467,8 @@
                 case SPK.SensorTVOC:
                 case SPK.SensorHcho:
                 case SPK.SensorHelp:
+                case SPK.sensorPirhold:
+                    
                     {
                         strPath = "LogicIcon/sensor.png";
                     }
@@ -562,6 +564,7 @@
                           || device.spk == SPK.SensorHcho
                           || device.spk == SPK.SensorHelp
                           || device.spk == SPK.SensorPm10
+                          || device.spk == SPK.sensorPirhold
             );
             if (sensor != null)
             {
@@ -686,6 +689,7 @@
                 functionTypeList.Add(SPK.SensorHcho);
                 functionTypeList.Add(SPK.SensorHelp);
                 functionTypeList.Add(SPK.SensorPm10);
+                functionTypeList.Add(SPK.sensorPirhold);
 
 
             }
@@ -781,6 +785,7 @@
                 functionTypeList.Add(SPK.SensorPm10);
                 functionTypeList.Add(SPK.VideoDoorLock);
                 functionTypeList.Add(SPK.AcIr);
+                functionTypeList.Add(SPK.sensorPirhold);
 
             }
 
@@ -842,6 +847,7 @@
                         deviceTypeList.Add(SPK.SensorPm10);
                         deviceTypeList.Add(SPK.VideoDoorLock);
                         deviceTypeList.Add(SPK.AcIr);
+                        deviceTypeList.Add(SPK.sensorPirhold);
 
                     }
                     break;
@@ -1186,7 +1192,7 @@
                  //  new Entity.Function { sid = "1234567892", name = "婀垮害浼犳劅鍣�", spk = Entity.SPK.SensorHumidity },
                     //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 = "pm10", spk = Entity.SPK.LightDimming },
+                      new Entity.Function { sid = "12345678968888", name = "浜轰綋瀛樺湪浼犳劅鍣�", spk = Entity.SPK.sensorPirhold },
                       //  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 },
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs
index a79324c..b45c5ae 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs
@@ -81,7 +81,7 @@
             frameLayout.AddChidren(btnLine);
         }
         /// <summary>
-        /// 閫変腑鏃堕棿鐨勬柟娉�
+        /// 閫変腑鏃堕棿鐨勬柟娉�(鏃讹紝鍒�)
         /// </summary>
         /// <param name="fLayout">鐖舵帶浠�</param>
         /// <param name="currState">涔嬪墠鐘舵�佸��</param>
@@ -156,6 +156,120 @@
                 string hour = GethStringList()[index1].Split(' ')[0];
                 string minuet = GetmStringList()[index2].Split(' ')[0];
                 timepoint = hour + ":" + minuet;
+            };
+            //纭畾鐐瑰嚮浜嬩欢
+            btnConfirm.MouseUpEventHandler += (sender, e3) =>
+            {
+                action(timepoint);
+                //绉婚櫎fLayout鐣岄潰
+                fLayout.RemoveFromParent();
+
+            };
+        }
+        /// <summary>
+        /// 閫変腑鏃堕棿鐨勬柟娉�(鏃讹紝鍒嗭紝绉�)
+        /// </summary>
+        /// <param name="fLayout">鐖舵帶浠�</param>
+        /// <param name="currState">涔嬪墠鐘舵�佸��</param>
+        /// <param name="action">杩斿洖鏃堕棿鍊�</param>
+        public void Time(FrameLayout fLayout, string currState, Action<string> action)
+        {
+            //鍙栨秷鐐瑰嚮浜嬩欢
+            btnCancel.MouseUpEventHandler += (sender, e1) =>
+            {
+                //绉婚櫎fLayout鐣岄潰
+                fLayout.RemoveFromParent();
+            };
+            //鍔犺浇鏁版嵁鐣岄潰鐨勮缃柟娉�(鍒楄〃浜掍笉鑱斿姩)
+            mUIPickerView.setNPicker(GethStringList(), GetmStringList(), GetsStringList());
+            var systemHour = DateTime.Now.Hour; //鑾峰彇灏忔椂
+            var systeMinute = DateTime.Now.Minute;//鑾峰彇鍒嗛挓
+            var systeSecond = DateTime.Now.Second;//鑾峰彇绉�
+
+            int systemHourIndex = 0;
+            int systeMinuteIndex = 0;
+            int systeSecondIndex = 0;
+            for (int i = 0; i < GethIntList().Count; i++)
+            {
+                var currhour = GethIntList()[i];
+                if (systemHour == currhour)
+                {
+                    systemHourIndex = i;
+                    break;
+                }
+            }
+            for (int i = 0; i < GetmIntList().Count; i++)
+            {
+                var currminute = GetmIntList()[i];
+                if (systeMinute == currminute)
+                {
+                    systeMinuteIndex = i;
+                    break;
+                }
+            }
+            for (int i = 0; i < GetsIntList().Count; i++)
+            {
+                var currsecond= GetsIntList()[i];
+                if (systeSecond == currsecond)
+                {
+                    systeSecondIndex = i;
+                    break;
+                }
+            }
+
+            //榛樿鍒濆閫変腑鐘舵��
+            mUIPickerView.setCurrentItems(systemHourIndex, systeMinuteIndex, systeSecondIndex);
+            string currH = "";
+            string currM = "";
+            string currS = "";
+            if (systemHour < 10)
+            {
+                currH = "0" + systemHour.ToString();
+            }
+            else
+            {
+                currH = systemHour.ToString();
+            }
+            if (systeMinute < 10)
+            {
+                currM = "0" + systeMinute.ToString();
+            }
+            else
+            {
+                currM = systeMinute.ToString();
+            }
+            if (systeSecond < 10)
+            {
+                currS = "0" + systeMinute.ToString();
+            }
+            else
+            {
+                currS = systeMinute.ToString();
+            }
+            //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鏃堕棿
+            string timepoint = currH + ":" + currM + ":" + currS;
+            if (!string.IsNullOrEmpty(currState))
+            {
+                int hIndex = GetValueIndex(currState, 0, 1, GethIntList());
+                int mIndex = GetValueIndex(currState, 1, 0, GetmIntList());
+                int sIndex = GetValueIndex(currState, 2, 0, GetsIntList());
+                //鏇存柊鍒濆鐘舵��
+                mUIPickerView.setCurrentItems(hIndex, mIndex, sIndex);
+                timepoint = currState;
+            }
+
+
+            //閫変腑鏃堕棿鍥炶皟鏂规硶,鏃堕棿鍙樺寲涓�娆″洖璋冧竴娆�
+            mUIPickerView.OnSelectChangeEvent += (index1, index2, index3) =>
+            {
+                try
+                {
+                    string hour = GethStringList()[index1].Split(' ')[0];
+                    string minuet = GetmStringList()[index2].Split(' ')[0];
+                    string second = GetmStringList()[index3].Split(' ')[0];
+                    timepoint = hour + ":" + minuet + ":" + second;
+                }
+                catch { }
             };
             //纭畾鐐瑰嚮浜嬩欢
             btnConfirm.MouseUpEventHandler += (sender, e3) =>
@@ -306,7 +420,22 @@
             }
             return mList;
         }
-       
+        /// <summary>
+        /// 鑾峰彇60绉掑垪琛�
+        /// </summary>
+        /// <returns></returns>
+        public List<int> GetsIntList()
+        {
+            //鍒濆鍖栧垪琛�
+            var mList = new List<int>();
+            for (int i = 0; i < 60; i++)
+            {
+                //娣诲姞鏁版嵁
+                mList.Add(i);
+            }
+            return mList;
+        }
+
         /// <summary>
         /// 鑾峰彇鏃堕棿鍊�
         /// </summary>
@@ -317,6 +446,10 @@
         /// <returns></returns>
         public int GetValueIndex(string str, int digit, int startIndex, List<int> list)
         {
+            if (string.IsNullOrEmpty(str))
+            {
+                return 0;
+            }
             int index = 0;
             int value = 0;
             if (str.Contains(":"))
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs
index d2a7a33..84ea1a0 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs
@@ -408,12 +408,7 @@
 
                         }
                         break;
-                    case 8:
-                        {
-                            iconInt = 5;
-
-                        }
-                        break;
+                   
                 }
 
                 if (!iconIntValue.Contains(iconInt))
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs
index 8ea607a..ff4eb7d 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs
@@ -114,6 +114,7 @@
                 {
                     var inputTypeJOb = new JObject { };
                     inputTypeJOb.Add("sid", dictionary.sid);
+                    inputTypeJOb.Add("hold_time", dictionary.hold_time);
                     inputTypeJOb.Add("condition_type", dictionary.condition_type);
                     if (dictionary.condition_type=="9") {
                         inputTypeJOb.Add("identifier", dictionary.identifier);
@@ -241,6 +242,7 @@
                 {
                     var inputTypeJOb = new JObject { };
                     inputTypeJOb.Add("sid", dictionary.sid);
+                    inputTypeJOb.Add("hold_time", dictionary.hold_time);
                     inputTypeJOb.Add("condition_type", dictionary.condition_type);
                     if (dictionary.condition_type == "9")
                     {

--
Gitblit v1.8.0