From 160e6863bf3ecb420986f31abb1ab1372218d921 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期一, 11 一月 2021 14:11:35 +0800
Subject: [PATCH] Merge branch 'WJC' into NewFilePath

---
 HDL-ON_Android/Assets/Language.ini                             |   22 +
 .vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm                 |    0 
 HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs |  116 ++++++
 HDL-ON_iOS/HDL-ON_iOS.csproj                                   |    2 
 HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPage.cs |    2 
 HDL-ON_iOS/AppDelegate.cs                                      |    2 
 HDL_ON/HDL_ON.projitems                                        |    5 
 HDL-ON_Android/HDL-ON_Android.csproj                           |    2 
 HDL_ON/UI/UI2/3-Intelligence/Automation/AddInputType.cs        |   17 
 HDL-ON_iOS/Resources/Language.ini                              |   22 +
 HDL_ON/UI/UI2/3-Intelligence/Automation/OutdoorEnvironment.cs  |  129 +++++++
 .vs/HDL_APP_Project/xs/sqlite3/storage.ide                     |    0 
 HDL_ON/UI/UI2/3-Intelligence/Automation/WeatherCondition.cs    |   86 +++++
 HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs     |   11 
 HDL_ON/UI/UI2/FuntionControlView/Curtain/MotorCurtainPage.cs   |    2 
 HDL-ON_iOS/Resources/Phone/LoginIcon/changesinoutdoor.png      |    0 
 HDL-ON_iOS/Resources/Phone/LogicIcon/location.png              |    0 
 HDL_ON/UI/UI2/3-Intelligence/Automation/Time3.cs               |  283 ++++++++++++++++
 HDL-ON_Android/Assets/Phone/LogicIcon/location.png             |    0 
 HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs               |    2 
 HDL-ON_Android/Assets/Phone/LogicIcon/changesinoutdoor.png     |    0 
 HDL_ON/Common/R.cs                                             |   23 +
 HDL_ON/UI/UI2/3-Intelligence/Automation/SpeciaTime.cs          |  172 ++++++++++
 HDL_ON/UI/UI2/3-Intelligence/Automation/TimeTpye.cs            |   19 +
 HDL_ON/UI/UI2/3-Intelligence/Automation/Weather.cs             |   71 ++++
 .vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal                 |    0 
 26 files changed, 970 insertions(+), 18 deletions(-)

diff --git a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide
index 2836110..f17f451 100644
--- a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide
+++ b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide
Binary files differ
diff --git a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm
index 670d6a6..9a6dc9d 100644
--- a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm
+++ b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-shm
Binary files differ
diff --git a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal
index 4035901..cefbeed 100644
--- a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal
+++ b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide-wal
Binary files differ
diff --git a/HDL-ON_Android/Assets/Language.ini b/HDL-ON_Android/Assets/Language.ini
index 0170614..0e530c5 100644
--- a/HDL-ON_Android/Assets/Language.ini
+++ b/HDL-ON_Android/Assets/Language.ini
@@ -540,6 +540,28 @@
 7077=鏃堕棿鏈缃紝璇疯缃椂闂淬��
 7078=鏉′欢鎴栬�呯洰鏍囦负绌恒��
 7079=缃戝叧涓嶅湪绾�
+7080=鏃ュ嚭/鏃ヨ惤/姝e崍
+7081=鏃ュ嚭
+7082=鏃ヨ惤
+7083=姝e崍
+7084=姝g偣
+7085=鎻愬墠
+7086=鍒嗛挓
+7087=瀹ゅ鍙樺寲
+7088=閫夋嫨瀹ゅ鍙樺寲鏉′欢
+7089=瀹ゅ娓┿�佹箍搴︺�丳M2.5鍙樺寲
+7090=澶╂皵鍙樺寲(鍩庡競澶╂皵)
+7091=瀹ゅ鐜鍙樺寲
+7092=娓╁害楂樹簬
+7093=娓╁害浣庝簬
+7094=婀垮害楂樹簬
+7095=婀垮害浣庝簬
+7096=PM2.5楂樹簬
+7097=PM2.5浣庝簬
+7098=鏅村ぉ
+7099=澶氫簯
+7100=涓嬮洦
+
 
 9000=璇蜂娇鐢ㄦ柊鐨勬墜鏈鸿处鍙风櫥褰旳PP
 9001=璇蜂娇鐢ㄦ柊鐨勯偖绠辫处鍙风櫥褰旳PP
diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/changesinoutdoor.png b/HDL-ON_Android/Assets/Phone/LogicIcon/changesinoutdoor.png
new file mode 100755
index 0000000..32432d0
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/LogicIcon/changesinoutdoor.png
Binary files differ
diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/location.png b/HDL-ON_Android/Assets/Phone/LogicIcon/location.png
new file mode 100755
index 0000000..fc41632
--- /dev/null
+++ b/HDL-ON_Android/Assets/Phone/LogicIcon/location.png
Binary files differ
diff --git a/HDL-ON_Android/HDL-ON_Android.csproj b/HDL-ON_Android/HDL-ON_Android.csproj
index 1204b1a..907187b 100644
--- a/HDL-ON_Android/HDL-ON_Android.csproj
+++ b/HDL-ON_Android/HDL-ON_Android.csproj
@@ -676,6 +676,8 @@
     <AndroidAsset Include="Assets\Phone\Public\ListCellbg\ListCellbg1.png" />
     <AndroidAsset Include="Assets\Phone\Public\ListCellbg\ListCellbg4.png" />
     <AndroidAsset Include="Assets\Phone\Public\ListCellbg\ListCellbg5.png" />
+    <AndroidAsset Include="Assets\Phone\LogicIcon\location.png" />
+    <AndroidAsset Include="Assets\Phone\LogicIcon\changesinoutdoor.png" />
   </ItemGroup>
   <ItemGroup>
     <AndroidNativeLibrary Include="libs\armeabi-v7a\libelianjni.so" />
diff --git a/HDL-ON_iOS/AppDelegate.cs b/HDL-ON_iOS/AppDelegate.cs
index 8d0c6eb..a49c073 100644
--- a/HDL-ON_iOS/AppDelegate.cs
+++ b/HDL-ON_iOS/AppDelegate.cs
@@ -221,7 +221,7 @@
             //Bugly.Bugly.StartWithAppId("b58fb35436");
 
             //鍙栨秷EditText榛樿瀵嗙爜杈撳叆鏂瑰紡
-            Shared.Application.IsEditTextContentTypePassword = false;
+            //Shared.Application.IsEditTextContentTypePassword = false;
             //榛樿浣跨敤鑻规柟瀛椾綋
             Shared.Application.IsUsePingFang = true;
             //淇濇寔灞忓箷甯镐寒鎴栬�呰嚜鍔ㄩ攣灞�
diff --git a/HDL-ON_iOS/HDL-ON_iOS.csproj b/HDL-ON_iOS/HDL-ON_iOS.csproj
index ae67b2f..b889fe2 100644
--- a/HDL-ON_iOS/HDL-ON_iOS.csproj
+++ b/HDL-ON_iOS/HDL-ON_iOS.csproj
@@ -653,6 +653,8 @@
       <BundleResource Include="Resources\Phone\Public\ListCellbg\ListCellbg1.png" />
       <BundleResource Include="Resources\Phone\Public\ListCellbg\ListCellbg4.png" />
       <BundleResource Include="Resources\Phone\Public\ListCellbg\ListCellbg5.png" />
+      <BundleResource Include="Resources\Phone\LogicIcon\location.png" />
+      <BundleResource Include="Resources\Phone\LoginIcon\changesinoutdoor.png" />
     </ItemGroup>
     <ItemGroup>
       <ITunesArtwork Include="iTunesArtwork" />
diff --git a/HDL-ON_iOS/Resources/Language.ini b/HDL-ON_iOS/Resources/Language.ini
index 0170614..0e530c5 100644
--- a/HDL-ON_iOS/Resources/Language.ini
+++ b/HDL-ON_iOS/Resources/Language.ini
@@ -540,6 +540,28 @@
 7077=鏃堕棿鏈缃紝璇疯缃椂闂淬��
 7078=鏉′欢鎴栬�呯洰鏍囦负绌恒��
 7079=缃戝叧涓嶅湪绾�
+7080=鏃ュ嚭/鏃ヨ惤/姝e崍
+7081=鏃ュ嚭
+7082=鏃ヨ惤
+7083=姝e崍
+7084=姝g偣
+7085=鎻愬墠
+7086=鍒嗛挓
+7087=瀹ゅ鍙樺寲
+7088=閫夋嫨瀹ゅ鍙樺寲鏉′欢
+7089=瀹ゅ娓┿�佹箍搴︺�丳M2.5鍙樺寲
+7090=澶╂皵鍙樺寲(鍩庡競澶╂皵)
+7091=瀹ゅ鐜鍙樺寲
+7092=娓╁害楂樹簬
+7093=娓╁害浣庝簬
+7094=婀垮害楂樹簬
+7095=婀垮害浣庝簬
+7096=PM2.5楂樹簬
+7097=PM2.5浣庝簬
+7098=鏅村ぉ
+7099=澶氫簯
+7100=涓嬮洦
+
 
 9000=璇蜂娇鐢ㄦ柊鐨勬墜鏈鸿处鍙风櫥褰旳PP
 9001=璇蜂娇鐢ㄦ柊鐨勯偖绠辫处鍙风櫥褰旳PP
diff --git a/HDL-ON_iOS/Resources/Phone/LogicIcon/location.png b/HDL-ON_iOS/Resources/Phone/LogicIcon/location.png
new file mode 100755
index 0000000..fc41632
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/LogicIcon/location.png
Binary files differ
diff --git a/HDL-ON_iOS/Resources/Phone/LoginIcon/changesinoutdoor.png b/HDL-ON_iOS/Resources/Phone/LoginIcon/changesinoutdoor.png
new file mode 100755
index 0000000..32432d0
--- /dev/null
+++ b/HDL-ON_iOS/Resources/Phone/LoginIcon/changesinoutdoor.png
Binary files differ
diff --git a/HDL_ON/Common/R.cs b/HDL_ON/Common/R.cs
index 187de9b..b08bfd4 100644
--- a/HDL_ON/Common/R.cs
+++ b/HDL_ON/Common/R.cs
@@ -534,8 +534,27 @@
         public const int timeNoSet = 7077;
         public const int conditioncNullOrtargetNull = 7078;
         public const int gatewayNotOnline = 7079;
-
-
+        public const int timespecia = 7080;
+        public const int sunrise = 7081;
+        public const int sunset = 7082;
+        public const int at = 7083;
+        public const int punctually = 7084;
+        public const int advanced = 7085;
+        public const int minute = 7086;
+        public const int shiwaibainhua=7087;
+        public const int xuanzeshiwaibianhuatiaojian = 7088;
+        public const int shuwaigongneng = 7089;
+        public const int tianqibianhua = 7090;
+        public const int shiwaihuanjingbianhua = 7091;
+        public const int wendugaoyu = 7092;
+        public const int wendudiyu = 7093;
+        public const int shidugaoyu = 7094;
+        public const int shidudiyu = 7095;
+        public const int pmgaoyu = 7096;
+        public const int pmdiyu = 7097;
+        public const int clearday =7098;
+        public const int cloudy= 7099;
+        public const int rain = 7100;
 
 
         #region LE鏂板
diff --git a/HDL_ON/HDL_ON.projitems b/HDL_ON/HDL_ON.projitems
index 1b619a5..f811662 100644
--- a/HDL_ON/HDL_ON.projitems
+++ b/HDL_ON/HDL_ON.projitems
@@ -268,6 +268,11 @@
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\TemperatureView.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\DiySelectPopupDialog.cs" />
     <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\ListCellDialog.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\SpeciaTime.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Time3.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Weather.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\OutdoorEnvironment.cs" />
+    <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\WeatherCondition.cs" />
   </ItemGroup>
   <ItemGroup>
     <Folder Include="$(MSBuildThisFileDirectory)UI\" />
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddInputType.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddInputType.cs
old mode 100755
new mode 100644
index 200befd..a319a5c
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddInputType.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddInputType.cs
@@ -40,10 +40,18 @@
             functionView.btnText.TextID = StringId.funLogic;
             functionView.btnIcon.UnSelectedImagePath = "LogicIcon/functionicon.png";
             viewLayout.AddChidren(functionView.FLayoutView());
+
+            //瀹ゅ鍙樺寲
+            LogicView.SelectTypeView shiwaiView = new LogicView.SelectTypeView();
+            shiwaiView.frameLayout.Y = functionView.frameLayout.Bottom;
+            shiwaiView.btnText.TextID = StringId.shiwaibainhua;
+            shiwaiView.btnIcon.UnSelectedImagePath = "LogicIcon/changesinoutdoor.png";
+            viewLayout.AddChidren(shiwaiView.FLayoutView());
             #endregion
 
 
             #region  鎵�鏈夌偣鍑讳簨浠�
+            //鏃堕棿
             timeView.btnClick.MouseUpEventHandler += (sen, e) => {
                 TimeTpye timeTpye = new TimeTpye();
                 MainPage.BasePageView.AddChidren(timeTpye);
@@ -51,13 +59,20 @@
                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
 
             };
-
+            //鍔熻兘
             functionView.btnClick.MouseUpEventHandler += (sen, e) => {
                 FunTpye funTpye = new FunTpye();
                 MainPage.BasePageView.AddChidren(funTpye);
                 funTpye.Show(LogicMethod.condition_if);
                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
             };
+            //瀹ゅ鍙樺寲
+            shiwaiView.btnClick.MouseUpEventHandler += (sen, e) => {
+                Weather weather = new Weather();
+                MainPage.BasePageView.AddChidren(weather);
+                weather.Show();
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            };
             #endregion
 
         }
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
index c859bcb..5bacc1d 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs
@@ -40,9 +40,75 @@
                             inputView.btnIcon.UnSelectedImagePath = "LogicIcon/time.png";
                             foreach (var dic in dicList)
                             {
+                                string keyValue = dic["key"];
                                 string value = dic["value"];
-                                inputView.btnText.Text = Language.StringByID(StringId.hour) + ": " + value;
-                                inputView.btnClick.AddTag("timepoint", value);
+                                if (keyValue == "timepoint")
+                                {
+                                    inputView.btnText.Text = Language.StringByID(StringId.hour) + ": " + value;
+                                }
+                                else
+                                {
+                                    string strtext = "";
+                                    string statetext = "";
+                                    switch (keyValue)
+                                    {
+                                        case "before_sunrise":
+                                            {
+                                                strtext = Language.StringByID(StringId.sunrise);
+                                                statetext = Language.StringByID(StringId.advanced);
+                                              
+                                            }
+                                            break;
+                                        case "before_sunset":
+                                            {
+
+                                                strtext = Language.StringByID(StringId.sunset);
+                                                statetext = Language.StringByID(StringId.advanced);
+                                              
+                                            } break;
+                                        case "before_noon":
+                                            {
+                                                strtext = Language.StringByID(StringId.at);
+                                                statetext = Language.StringByID(StringId.advanced);
+                                            }
+                                            break;
+                                        case "after_sunrise":
+                                            {
+                                                strtext = Language.StringByID(StringId.sunrise);
+                                                statetext = Language.StringByID(StringId.delayLogic);
+                                            } break;
+                                        case "after_sunset":
+                                            {
+                                                strtext = Language.StringByID(StringId.sunset);
+                                                statetext = Language.StringByID(StringId.delayLogic);
+                                            } break;
+                                        case "after_noon":
+                                            {
+                                                strtext = Language.StringByID(StringId.at);
+                                                statetext = Language.StringByID(StringId.delayLogic);
+                                            }
+                                            break;
+                                    }
+
+                                    if (value != "0")
+                                    {
+                                        if (value == "30")
+                                        {
+                                            statetext += value + Language.StringByID(StringId.s);
+                                        }
+                                        else
+                                        {
+                                            statetext += value + Language.StringByID(StringId.minute);
+                                        }
+                                    }
+                                    else
+                                    {
+                                        statetext = "";
+                                    }
+
+                                    inputView.btnText.Text = strtext;
+                                    inputView.btnState.Text = statetext;
+                                }
                             }
                         }
                         break;
@@ -53,7 +119,6 @@
                             {
                                 string value = dic["value"];
                                 inputView.btnText.Text = Language.StringByID(StringId.timeHorizon) + ": " + value;
-                                inputView.btnClick.AddTag("timeHorizon", value);
                             }
 
                         }
@@ -131,13 +196,44 @@
                     {
                         case "1":
                             {
-                                FrameLayout fLayout = new FrameLayout
+                                bool is_bool = false;
+                                Input _input = Logic.currlogic.input[indexVulae];
+                                if (_input.condition_type == "1")
                                 {
-                                    BackgroundColor = CSS.CSS_Color.viewTrans60lucence,
-                                };
-                                thisView.AddChidren(fLayout);
-                                TimeTpye timeTpye = new TimeTpye();
-                                timeTpye.TimePoint(fLayout, edit, indexVulae);
+                                    var dicLists = _input.condition as List<Dictionary<string, string>>;
+                                    foreach (var dic in dicLists)
+                                    {
+                                        string keyValue = dic["key"];
+                                        if (keyValue != "timepoint")
+                                        {
+                                            //閫氳繃閿�兼煡鎵鹃敭鍊兼槸鍚︽槸
+                                            //锛堟棩鍑�/鏃ヨ惤/姝e崍锛�
+                                            is_bool = true;
+                                            break;
+                                        }
+
+                                    }
+
+                                }
+                                if (is_bool)
+                                {
+                                    //璺宠浆鍒帮紙鏃ュ嚭/鏃ヨ惤/姝e崍锛夌晫闈�
+                                    SpeciaTime speciaTime = new SpeciaTime();
+                                    MainPage.BasePageView.AddChidren(speciaTime);
+                                    speciaTime.Show(edit, indexVulae);
+                                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                                }
+                                else
+                                {
+                                    //璺宠浆鍒帮紙鏃堕棿鐐癸級鐣岄潰
+                                    FrameLayout fLayout = new FrameLayout
+                                    {
+                                        BackgroundColor = CSS.CSS_Color.viewTrans60lucence,
+                                    };
+                                    thisView.AddChidren(fLayout);
+                                    TimeTpye timeTpye = new TimeTpye();
+                                    timeTpye.TimePoint(fLayout, edit, indexVulae);
+                                }
                             }
                             break;
                         case "2":
@@ -161,8 +257,6 @@
                                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                             }
                             break;
-
-
                     }
                 };
                 ///鍒犻櫎鎺т欢
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs
old mode 100755
new mode 100644
index 9bbb5a8..6d95d0e
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs
@@ -31,7 +31,7 @@
         /// <summary>
         /// 閫昏緫鏉′欢鍏崇郴锛堜笌and:锛屾垨:or锛�
         /// </summary>
-        public string relation = "or";
+        public string relation = "and";
         /// <summary>
         /// 閫昏緫鐘舵�侊紙true锛宖alse锛�
         /// </summary>
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/OutdoorEnvironment.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/OutdoorEnvironment.cs
new file mode 100644
index 0000000..e3b39c6
--- /dev/null
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/OutdoorEnvironment.cs
@@ -0,0 +1,129 @@
+锘縰sing System;
+using Shared;
+namespace HDL_ON.UI.UI2.Intelligence.Automation
+{
+    public class OutdoorEnvironment : FrameLayout
+    {
+        public OutdoorEnvironment()
+        {
+            Tag = "Logic";
+        }
+        public void Show()
+        {
+            #region  鐣岄潰甯冨眬
+            LogicView.TopView topView = new LogicView.TopView();
+            this.AddChidren(topView.FLayoutView());
+            topView.clickBackBtn.MouseUpEventHandler += (e, sen) =>
+            {
+                RemoveFromParent();
+            };
+            topView.topNameBtn.TextID = StringId.shiwaihuanjingbianhua;
+
+            FrameLayout viewLayout = new FrameLayout
+            {
+                Y = Application.GetRealHeight(64),
+                Width = Application.GetRealWidth(LogicView.TextSize.view375),
+                Height = Application.GetRealHeight(LogicView.TextSize.view667 - 64),
+                BackgroundColor = CSS.CSS_Color.viewMiddle,
+            };
+            this.AddChidren(viewLayout);
+
+            //娓╁害楂樹簬
+            LogicView.SelectTypeView temperaturehigherView = new LogicView.SelectTypeView();
+            temperaturehigherView.btnIcon.Visible = false;
+            temperaturehigherView.btnText.X = Application.GetRealWidth(16);
+            temperaturehigherView.btnLine.X = Application.GetRealWidth(16);
+            temperaturehigherView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16);
+            temperaturehigherView.btnText.TextID = StringId.wendugaoyu;
+            viewLayout.AddChidren(temperaturehigherView.FLayoutView());
+            //娓╁害浣庝簬
+            LogicView.SelectTypeView temperatureunderView = new LogicView.SelectTypeView();
+            temperatureunderView.frameLayout.Y = temperaturehigherView.frameLayout.Bottom;
+            temperatureunderView.btnIcon.Visible = false;
+            temperatureunderView.btnText.X = Application.GetRealWidth(16);
+            temperatureunderView.btnLine.X = Application.GetRealWidth(16);
+            temperatureunderView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16);
+            temperatureunderView.btnText.TextID = StringId.wendudiyu;
+            viewLayout.AddChidren(temperatureunderView.FLayoutView());
+
+            //婀垮害楂樹簬
+            LogicView.SelectTypeView humidityhigherView = new LogicView.SelectTypeView();
+            humidityhigherView.frameLayout.Y = temperatureunderView.frameLayout.Bottom+Application.GetRealHeight(8);
+            humidityhigherView.btnIcon.Visible = false;
+            humidityhigherView.btnText.X = Application.GetRealWidth(16);
+            humidityhigherView.btnLine.X = Application.GetRealWidth(16);
+            humidityhigherView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16);
+            humidityhigherView.btnText.TextID = StringId.shidugaoyu;
+            viewLayout.AddChidren(humidityhigherView.FLayoutView());
+            //婀垮害浣庝簬
+            LogicView.SelectTypeView humidityunderView = new LogicView.SelectTypeView();
+            humidityunderView.frameLayout.Y = humidityhigherView.frameLayout.Bottom;
+            humidityunderView.btnIcon.Visible = false;
+            humidityunderView.btnText.X = Application.GetRealWidth(16);
+            humidityunderView.btnLine.X = Application.GetRealWidth(16);
+            humidityunderView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16);
+            humidityunderView.btnText.TextID = StringId.shidudiyu;
+            viewLayout.AddChidren(humidityunderView.FLayoutView());
+
+            //PM2.5楂樹簬
+            LogicView.SelectTypeView pmhigherView = new LogicView.SelectTypeView();
+            pmhigherView.frameLayout.Y = humidityunderView.frameLayout.Bottom + Application.GetRealHeight(8);
+            pmhigherView.btnIcon.Visible = false;
+            pmhigherView.btnText.X = Application.GetRealWidth(16);
+            pmhigherView.btnLine.X = Application.GetRealWidth(16);
+            pmhigherView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16);
+            pmhigherView.btnText.TextID = StringId.pmgaoyu;
+            viewLayout.AddChidren(pmhigherView.FLayoutView());
+            //PM2.5浣庝簬
+            LogicView.SelectTypeView pmunderView = new LogicView.SelectTypeView();
+            pmunderView.frameLayout.Y = pmhigherView.frameLayout.Bottom;
+            pmunderView.btnIcon.Visible = false;
+            pmunderView.btnText.X = Application.GetRealWidth(16);
+            pmunderView.btnLine.X = Application.GetRealWidth(16);
+            pmunderView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16);
+            pmunderView.btnText.TextID = StringId.pmdiyu;
+            viewLayout.AddChidren(pmunderView.FLayoutView());
+
+            #endregion
+
+            #region  鎵�鏈夌偣鍑讳簨浠�
+            //娓╁害楂樹簬
+            temperaturehigherView.btnClick.MouseUpEventHandler += (sen, e) =>
+            {
+                
+
+            };
+            //娓╁害浣庝簬
+            temperatureunderView.btnClick.MouseUpEventHandler += (sen, e) =>
+            {
+              
+            };
+
+            //婀垮害楂樹簬
+            humidityhigherView.btnClick.MouseUpEventHandler += (sen, e) =>
+            {
+               
+
+            };
+            //婀垮害浣庝簬
+            humidityunderView.btnClick.MouseUpEventHandler += (sen, e) =>
+            {
+               
+            };
+
+            //PM2.5楂樹簬
+            pmhigherView.btnClick.MouseUpEventHandler += (sen, e) =>
+            {
+               
+
+            };
+            //PM2.5浣庝簬
+            pmunderView.btnClick.MouseUpEventHandler += (sen, e) =>
+            {
+               
+            };
+
+            #endregion
+        }
+    }
+}
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs
index 49c6428..efc5426 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/PublicInterface.cs
@@ -451,6 +451,17 @@
                       };
                     }
                     break;
+                case "time":
+                    {
+                        list = new List<string> {
+                   "30 s",
+                   "1 min",
+                   "2 min",
+                   "3 min",
+                   "5 min",
+                      };
+                    }
+                    break;
 
             }
             return list;
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/SpeciaTime.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/SpeciaTime.cs
new file mode 100644
index 0000000..6020246
--- /dev/null
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/SpeciaTime.cs
@@ -0,0 +1,172 @@
+锘縰sing System;
+using Shared;
+using System.Collections.Generic;
+namespace HDL_ON.UI.UI2.Intelligence.Automation
+{
+    public class SpeciaTime : FrameLayout
+    {
+
+        public SpeciaTime()
+        {
+            Tag = "Logic";
+        }
+
+        public void Show(bool edit = false, int index = -1)
+        {
+            #region  鐣岄潰甯冨眬
+            LogicView.TopView topView = new LogicView.TopView();
+            this.AddChidren(topView.FLayoutView());
+            topView.clickBackBtn.MouseUpEventHandler += (e, sen) =>
+            {
+                RemoveFromParent();
+            };
+            topView.topNameBtn.TextID = StringId.selectionCondition;
+
+            FrameLayout viewLayout = new FrameLayout
+            {
+                Y = Application.GetRealHeight(64),
+                Width = Application.GetRealWidth(LogicView.TextSize.view375),
+                Height = Application.GetRealHeight(LogicView.TextSize.view667 - 64),
+                BackgroundColor = CSS.CSS_Color.viewMiddle,
+            };
+            this.AddChidren(viewLayout);
+            #endregion
+
+            //锛堟棩鍑烘椂锛屾棩钀芥椂锛屾鍗堟椂锛�
+            string str1 = "";
+            //锛堟彁鍓嶏紝寤舵椂锛�
+            string str2 = "";
+            //锛堟彁鍓嶏紝寤舵椂澶氬皯鍒嗛挓锛�
+            string value= "";
+            if (edit)
+            {
+                GetText(index, (s1, s2, s3) => {
+                    str1 = s1;
+                    str2 = s2;
+                    value = s3;
+                    
+                });
+
+               
+            }
+            var list = new List<string> {
+                Language.StringByID(StringId.sunrise)+Language.StringByID(StringId.h),
+                Language.StringByID(StringId.sunset)+Language.StringByID(StringId.h),
+                Language.StringByID(StringId.at)+Language.StringByID(StringId.h),
+            };
+            for (int i = 0; i < list.Count; i++)
+            {
+                LogicView.SelectTypeView timeView = new LogicView.SelectTypeView();
+                timeView.frameLayout.Y = Application.GetRealHeight(i * 50);
+                timeView.btnIcon.Visible = false;
+                timeView.btnText.X = Application.GetRealWidth(16);
+                timeView.btnLine.X = Application.GetRealWidth(16);
+                timeView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16);
+                timeView.btnText.Text = list[i];
+                timeView.btnClick.Tag = list[i];
+                if (str1 == list[i])
+                {
+                    string s = "";
+                    if (value != "0")
+                    {
+                        if (value == "30")
+                        {
+                           s= str2 +value+ Language.StringByID(StringId.s);
+                        }
+                        else
+                        {
+                            s = str2 + value + Language.StringByID(StringId.minute);
+                        }
+                    }
+                    timeView.btnState.Visible = true;
+                    timeView.btnState.Text = s;
+                }
+
+                viewLayout.AddChidren(timeView.FLayoutView());
+
+                timeView.btnClick.MouseUpEventHandler += (sen, e) =>
+                {
+                    Time3 time3 = new Time3();
+                    MainPage.BasePageView.AddChidren(time3);
+                    time3.Show(timeView.btnClick.Tag.ToString(), edit, index);
+                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                };
+            }
+
+        }
+        /// <summary>
+        /// 鑾蜂箣鍓嶇姸鎬佸��
+        /// </summary>
+        /// <param name="index"></param>
+        /// <param name="action"></param>
+        public void GetText(int index, Action<string, string, string> action) {
+            //锛堟棩鍑烘椂锛屾棩钀芥椂锛屾鍗堟椂锛�
+            string str1 = "";
+            //锛堟彁鍓嶏紝寤舵椂锛�
+            string str2 = "";
+            //锛堟彁鍓嶏紝寤舵椂澶氬皯鍒嗛挓锛�
+            string valuestr = "";
+            Input _input = Logic.currlogic.input[index];
+            if (_input.condition_type == "1")
+            {
+                var dicLists = _input.condition as List<Dictionary<string, string>>;
+                foreach (var dic in dicLists)
+                {
+                    string keyValue = dic["key"];
+                    valuestr = dic["value"];
+
+                    if (keyValue != "timepoint")
+                    {
+                        switch (keyValue)
+                        {
+                            case "before_sunrise":
+                                {
+                                    str1 = Language.StringByID(StringId.sunrise) + Language.StringByID(StringId.h);
+                                    str2 = Language.StringByID(StringId.advanced);
+
+                                }
+                                break;
+                            case "before_sunset":
+                                {
+
+                                    str1 = Language.StringByID(StringId.sunset) + Language.StringByID(StringId.h);
+                                    str2 = Language.StringByID(StringId.advanced);
+
+                                }
+                                break;
+                            case "before_noon":
+                                {
+                                    str1 = Language.StringByID(StringId.at) + Language.StringByID(StringId.h);
+                                    str2 = Language.StringByID(StringId.advanced);
+                                }
+                                break;
+                            case "after_sunrise":
+                                {
+                                    str1 = Language.StringByID(StringId.sunrise) + Language.StringByID(StringId.h);
+                                    str2 = Language.StringByID(StringId.delayLogic);
+                                }
+                                break;
+                            case "after_sunset":
+                                {
+                                    str1 = Language.StringByID(StringId.sunset) + Language.StringByID(StringId.h);
+                                    str2 = Language.StringByID(StringId.delayLogic);
+                                }
+                                break;
+                            case "after_noon":
+                                {
+                                    str1 = Language.StringByID(StringId.at) + Language.StringByID(StringId.h);
+                                    str2 = Language.StringByID(StringId.delayLogic);
+                                }
+                                break;
+                        }
+
+                    }
+
+                }
+
+            }
+            action(str1,str2, valuestr);
+        }
+       
+    }
+}
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Time3.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Time3.cs
new file mode 100644
index 0000000..2d42405
--- /dev/null
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Time3.cs
@@ -0,0 +1,283 @@
+锘縰sing System;
+using System.Collections.Generic;
+using Shared;
+namespace HDL_ON.UI.UI2.Intelligence.Automation
+{
+    public class Time3:FrameLayout
+    {
+      
+        public Time3()
+        {
+            Tag = "Logic";
+        }
+
+        public void Show(string titelText, bool edit, int index)
+        {
+            #region  鐣岄潰甯冨眬
+            LogicView.TopView topView = new LogicView.TopView();
+            topView.frameLayout.Height = Application.GetRealHeight(64 + 20);
+            this.AddChidren(topView.FLayoutView());
+            topView.topNameBtn.Text = titelText;
+            //鑾峰彇瀹藉害
+            int widthValue = topView.topNameBtn.GetTextWidth();
+            int textWidth = (Application.GetRealWidth(255) - widthValue) / 2;
+            Button locationBtn = new Button
+            {
+                Width = Application.GetRealWidth(18),
+                Height = Application.GetRealWidth(18),
+                X = Application.GetRealWidth(60 + 4) + textWidth + widthValue,
+                Y = Application.GetRealHeight(34 + 1),
+                UnSelectedImagePath = "LogicIcon/location.png",
+
+            };
+            topView.frameLayout.AddChidren(locationBtn);
+
+            Button textBtn = new Button
+            {
+                Height = Application.GetRealHeight(14),
+                Y = Application.GetRealHeight(57),
+                TextSize = LogicView.TextSize.text10,
+                TextColor = CSS.CSS_Color.textCancelColor,
+                Text = "骞夸笢骞垮窞甯傜暘绂哄尯鐭虫ゼ闀�",
+            };
+            topView.frameLayout.AddChidren(textBtn);
+            topView.clickBackBtn.MouseUpEventHandler += (e, sen) =>
+            {
+                RemoveFromParent();
+            };
+
+            FrameLayout viewLayout = new FrameLayout
+            {
+                Y = Application.GetRealHeight(64 + 20),
+                Width = Application.GetRealWidth(LogicView.TextSize.view375),
+                Height = Application.GetRealHeight(LogicView.TextSize.view667 - 64 - 20),
+                BackgroundColor = CSS.CSS_Color.viewMiddle,
+            };
+            this.AddChidren(viewLayout);
+            #endregion
+
+            //锛堟棩鍑烘椂锛屾棩钀芥椂锛屾鍗堟椂锛�
+            string str1 = "";
+            //锛堟彁鍓嶏紝寤舵椂锛�
+            string str2 = "";
+            //锛堟彁鍓嶏紝寤舵椂澶氬皯鍒嗛挓锛�
+            string value = "";
+            if (edit)
+            {
+                new SpeciaTime().GetText(index, (s1, s2, s3) =>
+                {
+                    str1 = s1;
+                    str2 = s2;
+                    value = s3;
+                });
+
+
+            }
+            var list = new List<string> {
+                Language.StringByID(StringId.punctually),
+                Language.StringByID(StringId.advanced),
+                Language.StringByID(StringId.delayLogic),
+            };
+
+            for (int i = 0; i < list.Count; i++)
+            {
+                LogicView.SelectTypeView timeView = new LogicView.SelectTypeView();
+                timeView.frameLayout.Y = Application.GetRealHeight(i * 50);
+                timeView.btnIcon.Visible = false;
+                timeView.btnText.X = Application.GetRealWidth(16);
+                timeView.btnLine.X = Application.GetRealWidth(16);
+                timeView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16);
+                timeView.btnText.Text = list[i];
+                timeView.btnClick.Tag = list[i];
+                if (i == 0)
+                {
+                    timeView.btnNextIcon.Visible = false;
+                }
+                //鍒ゆ柇鏄�(鏃ュ嚭,鏃ヨ惤,姝e崍)
+                if (str1 == titelText)
+                {
+                    //鍒ゆ柇鏄�(鎻愬墠锛屽欢鏃�)
+                    if (str2 == list[i])
+                    {
+                        string s = "";
+                        if (value != "0")
+                        {
+                            if (value == "30")
+                            {
+                                s = value + Language.StringByID(StringId.s);
+                            }
+                            else
+                            {
+                                s =value + Language.StringByID(StringId.minute);
+                            }
+                        }
+                        timeView.btnState.Visible = true;
+                        timeView.btnState.Text = s;
+                    }
+
+                }
+                viewLayout.AddChidren(timeView.FLayoutView());
+                timeView.btnClick.MouseUpEventHandler += (sen, e) =>
+                {
+                    string clickText = timeView.btnClick.Tag.ToString();
+                    string keyValue = GetKeyValue(clickText, titelText);
+                    if (clickText == Language.StringByID(StringId.punctually))
+                    {
+                        //姝g偣
+                        AddDic(keyValue, "0", edit, index);
+                    }
+                    else
+                    {
+                        //瀹氫箟涓�涓眬閮ㄥ彉閲�
+                        string stateValue = "";
+                        //鍒ゆ柇鏄�(鏃ュ嚭,鏃ヨ惤,姝e崍)
+                        if (str1 == titelText)
+                        {
+                            //鍒ゆ柇鏄�(鎻愬墠锛屽欢鏃�)
+                            if (str2 == clickText)
+                            {
+                                string s = "";
+                                if (value != "0")
+                                {
+                                    if (value == "30")
+                                    {
+                                        s = value + " s";
+                                    }
+                                    else
+                                    {
+                                        s = value + " min";
+                                    }
+                                }
+                                //鏇存柊鍊約tateValue
+                                //涓轰簡鏄剧ず涔嬪墠鐨勭姸鎬�
+                                stateValue = s;
+                            }
+
+                        }
+
+                        PublicInterface timePublicInterface = new PublicInterface();
+                        var timelist = timePublicInterface.GetViewList("time");
+                        timePublicInterface.SingleSelectionShow(this, timelist, clickText, stateValue
+                           , (value1) =>
+                           {
+                               string timeValue = value1.Split(" ")[0];
+                               AddDic(keyValue, timeValue, edit, index);
+
+                           });
+                    }
+
+                };
+            }
+
+
+        }
+        /// <summary>
+        /// 鑾峰彇閿��
+        /// </summary>
+        /// <param name="clickText">褰撳墠閫変腑鏂囨湰</param>
+        /// <param name="titelText">鏍囬鏂囨湰</param>
+        /// <returns></returns>
+        private string GetKeyValue(string clickText, string titelText)
+        {
+
+            string keyValue = "";
+            if (titelText == Language.StringByID(StringId.sunrise) + Language.StringByID(StringId.h))
+            {
+                if (clickText == Language.StringByID(StringId.advanced))
+                {
+                    keyValue = "before_sunrise";
+
+                }
+                else if (clickText == Language.StringByID(StringId.delayLogic))
+                {
+                    keyValue = "after_sunrise";
+                }
+                else
+                {
+                    keyValue = "after_sunrise";
+                }
+            }
+            else if (titelText == Language.StringByID(StringId.sunset) + Language.StringByID(StringId.h))
+            {
+
+
+                if (clickText == Language.StringByID(StringId.advanced))
+                {
+                    keyValue = "before_sunset";
+
+                }
+                else if (clickText == Language.StringByID(StringId.delayLogic))
+                {
+                    keyValue = "after_sunset";
+                }
+                else
+                {
+                    keyValue = "after_sunset";
+                }
+            }
+            else
+            {
+                if (clickText == Language.StringByID(StringId.advanced))
+                {
+                    keyValue = "before_noon";
+
+                }
+                else if (clickText == Language.StringByID(StringId.delayLogic))
+                {
+                    keyValue = "after_noon";
+                }
+                else
+                {
+                    keyValue = "after_noon";
+                }
+
+            }
+            return keyValue;
+        }
+        /// <summary>
+        /// 灏佽鏁版嵁
+        /// </summary>
+        /// <param name="keyValue"></param>
+        /// <param name="value"></param>
+        /// <param name="edit"></param>
+        /// <param name="index"></param>
+        private void AddDic(string keyValue, string value, bool edit, int index)
+        {
+            Input inputTime = new Input();
+            inputTime.sid = LogicMethod.NewSid();
+            inputTime.condition_type = "1";
+            Dictionary<string, string> dic = new Dictionary<string, string>();
+            LogicMethod.dictionary(dic, "key", keyValue);
+            LogicMethod.dictionary(dic, "comparator", "=");
+            LogicMethod.dictionary(dic, "data_type", "string");
+            LogicMethod.dictionary(dic, "value", value);
+            inputTime.condition.Add(dic);
+            AddCondition(inputTime, edit, index);
+        }
+        /// <summary>
+        /// 娣诲姞鏉′欢
+        /// </summary>
+        /// <param name="input"></param>
+        private void AddCondition(Input input, bool edit, int index)
+        {
+            if (edit)
+            {
+                //绉婚櫎鏃ф暟鎹�
+                Logic.currlogic.input.RemoveAt(index);
+                //鏂版暟鎹彃鍏ユ棫鏁版嵁鐨勪綅缃�
+                Logic.currlogic.input.Insert(index, input);
+            }
+            else
+            {
+                //娣诲姞涓�涓柊鐨勬椂闂存潯浠�
+                Logic.currlogic.input.Add(input);
+            }
+            LogicMethod.RemoveAllView();
+            AddLogic addLogic = new AddLogic();
+            MainPage.BasePageView.AddChidren(addLogic);
+            addLogic.Show();
+            MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+
+        }
+    }
+}
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/TimeTpye.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/TimeTpye.cs
index 047b701..ee08deb 100644
--- a/HDL_ON/UI/UI2/3-Intelligence/Automation/TimeTpye.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/TimeTpye.cs
@@ -49,6 +49,17 @@
             timeHorizonView.btnText.TextID = StringId.timeHorizon;
             viewLayout.AddChidren(timeHorizonView.FLayoutView());
 
+
+            //鏃ュ嚭/鏃ヨ惤/姝e崍
+            LogicView.SelectTypeView timeSpecialView = new LogicView.SelectTypeView();
+            timeSpecialView.frameLayout.Y = timeHorizonView.frameLayout.Bottom;
+            timeSpecialView.btnIcon.Visible = false;
+            timeSpecialView.btnText.X = Application.GetRealWidth(16);
+            timeSpecialView.btnLine.X = Application.GetRealWidth(16);
+            timeSpecialView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16);
+            timeSpecialView.btnText.TextID = StringId.timespecia;
+            viewLayout.AddChidren(timeSpecialView.FLayoutView());
+
             #endregion
 
             #region  鏃堕棿鐐�  鏃堕棿鑼冨洿鐐瑰嚮浜嬩欢
@@ -78,7 +89,15 @@
 
                 TimeHorizon(fLayout, false, 0);
             };
+            //鏃ュ嚭/鏃ヨ惤/姝e崍鐐瑰嚮浜嬩欢
+            timeSpecialView.btnClick.MouseUpEventHandler += (sen, e) =>
+            {
+                SpeciaTime speciaTime = new SpeciaTime();
+                MainPage.BasePageView.AddChidren(speciaTime);
+                speciaTime.Show();
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
 
+            };
             #endregion
         }
 
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Weather.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Weather.cs
new file mode 100644
index 0000000..53bba3f
--- /dev/null
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Weather.cs
@@ -0,0 +1,71 @@
+锘縰sing System;
+using Shared;
+namespace HDL_ON.UI.UI2.Intelligence.Automation
+{
+    public class Weather : FrameLayout
+    {
+        public Weather()
+        {
+            Tag = "Logic";
+        }
+
+        public void Show()
+        {
+            #region  鐣岄潰甯冨眬
+            LogicView.TopView topView = new LogicView.TopView();
+            this.AddChidren(topView.FLayoutView());
+            topView.clickBackBtn.MouseUpEventHandler += (e, sen) =>
+            {
+                RemoveFromParent();
+            };
+            topView.topNameBtn.TextID = StringId.xuanzeshiwaibianhuatiaojian;
+
+            FrameLayout viewLayout = new FrameLayout
+            {
+                Y = Application.GetRealHeight(64),
+                Width = Application.GetRealWidth(LogicView.TextSize.view375),
+                Height = Application.GetRealHeight(LogicView.TextSize.view667 - 64),
+                BackgroundColor = CSS.CSS_Color.viewMiddle,
+            };
+            this.AddChidren(viewLayout);
+            //瀹ゅ娓┿�佹箍搴︺�丳M2.5鍙樺寲
+            LogicView.SelectTypeView airqualityView = new LogicView.SelectTypeView();
+            airqualityView.btnIcon.Visible = false;
+            airqualityView.btnText.X = Application.GetRealWidth(16);
+            airqualityView.btnLine.X = Application.GetRealWidth(16);
+            airqualityView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16);
+            airqualityView.btnText.TextID =StringId.shuwaigongneng;
+            viewLayout.AddChidren(airqualityView.FLayoutView());
+            //澶╂皵鍙樺寲(鍩庡競澶╂皵)
+            LogicView.SelectTypeView weatherView = new LogicView.SelectTypeView();
+            weatherView.frameLayout.Y = airqualityView.frameLayout.Bottom;
+            weatherView.btnIcon.Visible = false;
+            weatherView.btnText.X = Application.GetRealWidth(16);
+            weatherView.btnLine.X = Application.GetRealWidth(16);
+            weatherView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16);
+            weatherView.btnText.TextID = StringId.tianqibianhua;
+            viewLayout.AddChidren(weatherView.FLayoutView());
+
+            #endregion
+
+            #region  鎵�鏈夌偣鍑讳簨浠�
+            //瀹ゅ娓┿�佹箍搴︺�丳M2.5鍙樺寲
+            airqualityView.btnClick.MouseUpEventHandler += (sen, e) => {
+                OutdoorEnvironment outdoorEnvironment = new OutdoorEnvironment();
+                MainPage.BasePageView.AddChidren(outdoorEnvironment);
+                outdoorEnvironment.Show();
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+
+            };
+            //澶╂皵鍙樺寲(鍩庡競澶╂皵)
+            weatherView.btnClick.MouseUpEventHandler += (sen, e) => {
+                WeatherCondition weatherCondition = new WeatherCondition();
+                MainPage.BasePageView.AddChidren(weatherCondition);
+                weatherCondition.Show();
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            };
+          
+            #endregion
+        }
+    }
+}
diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/WeatherCondition.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/WeatherCondition.cs
new file mode 100644
index 0000000..19b6a60
--- /dev/null
+++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/WeatherCondition.cs
@@ -0,0 +1,86 @@
+锘縰sing System;
+using System.Collections.Generic;
+using Shared;
+namespace HDL_ON.UI.UI2.Intelligence.Automation
+{
+    public class WeatherCondition : FrameLayout
+    {
+        public WeatherCondition()
+        {
+            Tag = "Logic";
+        }
+        public void Show(bool edit = false, int index=-1)
+        {
+            #region  鐣岄潰甯冨眬
+            LogicView.TopView topView = new LogicView.TopView();
+            topView.frameLayout.Height = Application.GetRealHeight(64 + 20);
+            this.AddChidren(topView.FLayoutView());
+            topView.topNameBtn.TextID = StringId.selectionCondition;
+            //鑾峰彇瀹藉害
+            int widthValue= topView.topNameBtn.GetTextWidth();
+            int textWidth =(Application.GetRealWidth(255)- widthValue) / 2;
+            Button locationBtn = new Button
+            {
+                Width = Application.GetRealWidth(18),
+                Height = Application.GetRealWidth(18),
+                X = Application.GetRealWidth(60+4)+ textWidth + widthValue,
+                Y = Application.GetRealHeight(34+1),
+                UnSelectedImagePath = "LogicIcon/location.png",
+
+            };
+            topView.frameLayout.AddChidren(locationBtn);
+
+            Button textBtn = new Button
+            {
+                Height = Application.GetRealHeight(14),
+                Y = Application.GetRealHeight(57),
+                TextSize = LogicView.TextSize.text10,
+                TextColor = CSS.CSS_Color.textCancelColor,
+                Text = "骞夸笢骞垮窞甯傜暘绂哄尯鐭虫ゼ闀�",
+            };
+            topView.frameLayout.AddChidren(textBtn);
+            topView.clickBackBtn.MouseUpEventHandler += (e, sen) =>
+            {
+                RemoveFromParent();
+            };
+
+            FrameLayout viewLayout = new FrameLayout
+            {
+                Y = Application.GetRealHeight(64+20),
+                Width = Application.GetRealWidth(LogicView.TextSize.view375),
+                Height = Application.GetRealHeight(LogicView.TextSize.view667 - 64-20),
+                BackgroundColor = CSS.CSS_Color.viewMiddle,
+            };
+            this.AddChidren(viewLayout);
+            #endregion
+
+            var list = new List<string> {
+                Language.StringByID(StringId.clearday),
+                Language.StringByID(StringId.cloudy),
+                Language.StringByID(StringId.rain),
+            };
+            for (int i = 0; i < list.Count; i++)
+            {
+                LogicView.SelectTypeView timeView = new LogicView.SelectTypeView();
+                timeView.frameLayout.Y = Application.GetRealHeight(i * 50);
+                timeView.btnIcon.Visible = false;
+                timeView.btnText.X = Application.GetRealWidth(16);
+                timeView.btnLine.X = Application.GetRealWidth(16);
+                timeView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16);
+                timeView.btnText.Text = list[i];
+                timeView.btnClick.Tag = list[i];
+                viewLayout.AddChidren(timeView.FLayoutView());
+
+                timeView.btnClick.MouseUpEventHandler += (sen, e) =>
+                {
+                    //string 
+                    //if () { }
+                    //else if () { }
+                    //else if () { }
+                };
+            }
+
+        }
+
+    }
+}
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Curtain/MotorCurtainPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Curtain/MotorCurtainPage.cs
index fc51e57..4cc63e4 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Curtain/MotorCurtainPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Curtain/MotorCurtainPage.cs
@@ -141,7 +141,7 @@
                 Height = Application.GetRealWidth(177),
                 Progress = curtain.percent,
                 ProgressTextColor =0x00000000,
-                IsInvertedProgress = true,
+                //IsInvertedProgress = true,
             };
             controlView.AddChidren(curtainSeekBar);
 
diff --git a/HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPage.cs b/HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPage.cs
index 0cd0d45..efc37fb 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/Curtain/RollingShutterPage.cs
@@ -140,7 +140,7 @@
                 Width = Application.GetRealWidth(170),
                 Height = Application.GetRealWidth(210),
                 Progress = curtain.percent,
-                IsInvertedProgress = true,
+                //IsInvertedProgress = true,
                 ProgressTextColor = 0x00000000,
             };
             controlView.AddChidren(curtainSeekBar);

--
Gitblit v1.8.0