From a46cd0adb5af29e8a9cf47c219475acaedfcf839 Mon Sep 17 00:00:00 2001 From: wxr <464027401@qq.com> Date: 星期二, 01 十二月 2020 17:09:00 +0800 Subject: [PATCH] Merge remote-tracking branch 'origin/WJC' --- HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/EditPopView.cs | 10 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AreaView.cs | 57 HDL-ON_Android/Assets/Phone/LogicIcon/off.png | 0 HDL-ON_Android/Assets/Language.ini | 57 HDL-ON_Android/Assets/Phone/LogicIcon/airconditionerlogic.png | 0 HDL-ON_Android/Assets/Phone/LogicIcon/timecondition.png | 0 HDL-ON_Android/Assets/Phone/LogicIcon/addconditiontarget.png | 0 HDL-ON_Android/Assets/Phone/LogicIcon/delayed.png | 0 HDL_ON/HDL_ON.projitems | 31 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/ConfirmPopView.cs | 10 HDL-ON_Android/Assets/Phone/LogicIcon/editname.png | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs | 284 +++ HDL_ON/UI/UI2/3-Intelligence/Automation/AddInputType.cs | 66 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs | 344 +++ HDL-ON_Android/Resources/Resource.designer.cs | 3 HDL-ON_Android/Assets/Phone/LogicIcon/outletlogic.png | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TipPopView.cs | 569 ++++++ HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/MonView.cs | 71 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TextSize.cs | 21 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/FunAllAreaView.cs | 84 HDL-ON_Android/Assets/Phone/LogicIcon/next.png | 0 HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs | 55 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SelectTypeView.cs | 135 + HDL-ON_Android/Assets/Phone/LogicIcon/curtainlogic.png | 0 HDL-ON_Android/Assets/Phone/LogicIcon/timeicon.png | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs | 256 ++ HDL-ON_Android/Assets/Phone/LogicIcon/back.png | 0 HDL_ON/DAL/Server/HttpUtil.cs | 1 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SaveView.cs | 51 HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs | 105 + HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/LogicAddView.cs | 45 HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs | 263 ++ HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SingleLogicView.cs | 107 + HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TopView.cs | 87 HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs | 262 ++ HDL-ON_Android/Assets/Phone/LogicIcon/set.png | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs | 269 ++ HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs | 193 ++ HDL-ON_Android/Assets/Phone/LogicIcon/lightloguc.png | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/Set.cs | 114 + HDL_ON/UI/UI2/3-Intelligence/Automation/Automation/.DS_Store | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeHorizonView.cs | 98 + HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SwitchView.cs | 55 HDL_ON/UI/CSS/CSS.cs | 19 HDL-ON_Android/Assets/Phone/LogicIcon/heatlogic.png | 0 .vs/HDL_APP_Project/xs/sqlite3/storage.ide | 0 HDL-ON_Android/Assets/Phone/LogicIcon/down.png | 0 HDL-ON_Android/Assets/Phone/LogicIcon/weekon.png | 0 HDL-ON_Android/Assets/Phone/LogicIcon/bjicon.png | 0 HDL-ON_Android/Assets/Phone/LogicIcon/functionicon.png | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AddOutputInputTextView.cs | 42 HDL_ON/UI/UI2/3-Intelligence/Automation/DeviceFunList.cs | 386 ++++ HDL-ON_Android/Assets/Phone/LogicIcon/scene.png | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/DateView.cs | 82 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/LogicTypeTitleView.cs | 79 HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs | 674 +++++++ HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AddOutputInputView.cs | 106 + HDL_ON/Common/R.cs | 54 HDL_ON/UI/UI2/3-Intelligence/.DS_Store | 0 HDL_ON/UI/UI2/3-Intelligence/Automation/TimeTpye.cs | 386 ++++ HDL-ON_Android/Assets/Phone/LogicIcon/weekoff.png | 0 HDL-ON_Android/Assets/Phone/LogicIcon/on.png | 0 63 files changed, 5,499 insertions(+), 32 deletions(-) diff --git a/.vs/HDL_APP_Project/xs/sqlite3/storage.ide b/.vs/HDL_APP_Project/xs/sqlite3/storage.ide index f8a5a70..93a5304 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/HDL-ON_Android/Assets/Language.ini b/HDL-ON_Android/Assets/Language.ini index ae55f72..ad318ec 100644 --- a/HDL-ON_Android/Assets/Language.ini +++ b/HDL-ON_Android/Assets/Language.ini @@ -432,6 +432,63 @@ 5046=璋冭妭闊抽噺 5047=浣犳墜鏈烘殏鏈畨瑁�"QQ闊充箰"{\r\n}璇峰墠寰�鎵嬫満鍟嗗満瀹夎 + + +7000=鏂板缓鑷姩鍖� +7001=缂栬緫鑷姩鍖� +7002=濡傛灉 +7003=鍚屾椂婊¤冻浠ヤ笅鏉′欢鏃� +7004=浠讳竴婊¤冻浠ヤ笅鏉′欢鏃� +7005=灏辨墽琛� +7006=浠ヤ笅鍔ㄤ綔 +7007=寰幆鏂瑰紡 +7008=鎵ц涓�娆� +7009=姣忓ぉ +7010=姣忓懆 +7011=姣忔湀 +7012=淇濆瓨 +7013=鎵ц鎺ㄩ�� +7014=鍙戦�侀�氱煡 +7015=閫夋嫨鏉′欢 +7016=鏃堕棿 +7017=閫夋嫨鏃堕棿鏉′欢 +7018=鏃跺埢 +7019=鏃堕棿鑼冨洿 +7020=鏃� +7021=鍒� +7022=绉� +7023=鍙栨秷 +7024=纭畾 +7025=*鍦ㄦ偍鎵�璁剧疆鐨勬椂闂存鍐呭繀瀹氫細鎵ц涓�娆℃偍鎵�璁剧疆鐨勮嚜鍔ㄥ寲 +7026=寮�濮嬫椂闂� +7027=缁撴潫鏃堕棿 +7028=鍔熻兘 +7029=閫変腑鍔熻兘鏉′欢 +7030=鍏ㄩ儴鍖哄煙 +7031=鍏ㄩ儴鍔熻兘 +7032=寮� +7033=鍏� +7034=寮�鍏� +7035=瀹屾垚 +7036=娣诲姞鎵ц鍔ㄤ綔 +7037=鍛ㄤ竴 +7038=鍛ㄤ簩 +7039=鍛ㄤ笁 +7040=鍛ㄥ洓 +7041=鍛ㄤ簲 +7042=鍛ㄥ叚 +7043=鍛ㄦ棩 +7044=婊¤冻鏉′欢 +7045=璁剧疆 +7046=鍚嶇О +7047=淇敼鍚嶇О +7048=鑷姩鍖栧悕绉板凡瀛樺湪 +7049=鏄惁瑕佸垹闄よ嚜鍔ㄥ寲锛� +7050=娣诲姞鍦烘櫙 +7051=寤舵椂 + + + 9000=璇蜂娇鐢ㄦ柊鐨勬墜鏈鸿处鍙风櫥褰旳PP 9001=璇蜂娇鐢ㄦ柊鐨勯偖绠辫处鍙风櫥褰旳PP 9002=鐧诲綍鎵嬫満淇敼瀹屾垚 diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/addconditiontarget.png b/HDL-ON_Android/Assets/Phone/LogicIcon/addconditiontarget.png new file mode 100755 index 0000000..ac6e7ec --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/addconditiontarget.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/airconditionerlogic.png b/HDL-ON_Android/Assets/Phone/LogicIcon/airconditionerlogic.png new file mode 100755 index 0000000..6123b42 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/airconditionerlogic.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/back.png b/HDL-ON_Android/Assets/Phone/LogicIcon/back.png new file mode 100755 index 0000000..d10ae27 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/back.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/bjicon.png b/HDL-ON_Android/Assets/Phone/LogicIcon/bjicon.png new file mode 100755 index 0000000..b3a3423 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/bjicon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/curtainlogic.png b/HDL-ON_Android/Assets/Phone/LogicIcon/curtainlogic.png new file mode 100755 index 0000000..0dc4af4 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/curtainlogic.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/delayed.png b/HDL-ON_Android/Assets/Phone/LogicIcon/delayed.png new file mode 100755 index 0000000..df66c33 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/delayed.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/down.png b/HDL-ON_Android/Assets/Phone/LogicIcon/down.png new file mode 100755 index 0000000..ad0f3b1 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/down.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/editname.png b/HDL-ON_Android/Assets/Phone/LogicIcon/editname.png new file mode 100755 index 0000000..52727a2 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/editname.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/functionicon.png b/HDL-ON_Android/Assets/Phone/LogicIcon/functionicon.png new file mode 100755 index 0000000..e1ea93a --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/functionicon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/heatlogic.png b/HDL-ON_Android/Assets/Phone/LogicIcon/heatlogic.png new file mode 100755 index 0000000..eecd1a2 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/heatlogic.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/lightloguc.png b/HDL-ON_Android/Assets/Phone/LogicIcon/lightloguc.png new file mode 100755 index 0000000..722c37e --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/lightloguc.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/next.png b/HDL-ON_Android/Assets/Phone/LogicIcon/next.png new file mode 100755 index 0000000..293a8c5 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/next.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/off.png b/HDL-ON_Android/Assets/Phone/LogicIcon/off.png new file mode 100755 index 0000000..bc2f19c --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/off.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/on.png b/HDL-ON_Android/Assets/Phone/LogicIcon/on.png new file mode 100755 index 0000000..c6318d6 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/on.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/outletlogic.png b/HDL-ON_Android/Assets/Phone/LogicIcon/outletlogic.png new file mode 100755 index 0000000..798bcbf --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/outletlogic.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/scene.png b/HDL-ON_Android/Assets/Phone/LogicIcon/scene.png new file mode 100755 index 0000000..0585769 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/scene.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/set.png b/HDL-ON_Android/Assets/Phone/LogicIcon/set.png new file mode 100755 index 0000000..32b42f6 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/set.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/timecondition.png b/HDL-ON_Android/Assets/Phone/LogicIcon/timecondition.png new file mode 100755 index 0000000..5b638b7 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/timecondition.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/timeicon.png b/HDL-ON_Android/Assets/Phone/LogicIcon/timeicon.png new file mode 100755 index 0000000..df66c33 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/timeicon.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/weekoff.png b/HDL-ON_Android/Assets/Phone/LogicIcon/weekoff.png new file mode 100755 index 0000000..3f2fe5b --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/weekoff.png Binary files differ diff --git a/HDL-ON_Android/Assets/Phone/LogicIcon/weekon.png b/HDL-ON_Android/Assets/Phone/LogicIcon/weekon.png new file mode 100755 index 0000000..9b0a3d2 --- /dev/null +++ b/HDL-ON_Android/Assets/Phone/LogicIcon/weekon.png Binary files differ diff --git a/HDL-ON_Android/Resources/Resource.designer.cs b/HDL-ON_Android/Resources/Resource.designer.cs index f65757c..8ecaf81 100644 --- a/HDL-ON_Android/Resources/Resource.designer.cs +++ b/HDL-ON_Android/Resources/Resource.designer.cs @@ -2,6 +2,7 @@ //------------------------------------------------------------------------------ // <auto-generated> // This code was generated by a tool. +// Runtime Version:4.0.30319.42000 // // Changes to this file may cause incorrect behavior and will be lost if // the code is regenerated. @@ -14,7 +15,7 @@ { - [global::System.CodeDom.Compiler.GeneratedCodeAttribute("Xamarin.Android.Build.Tasks", "1.0.0.0")] + [System.CodeDom.Compiler.GeneratedCodeAttribute("Xamarin.Android.Build.Tasks", "1.0.0.0")] public partial class Resource { diff --git a/HDL_ON/Common/R.cs b/HDL_ON/Common/R.cs index 20455f3..aa54a49 100644 --- a/HDL_ON/Common/R.cs +++ b/HDL_ON/Common/R.cs @@ -427,6 +427,60 @@ public const int qqMsuicTip = 5047; + public const int newAutomation = 7000; + public const int editAutomation = 7001; + public const int ifCondition = 7002; + public const int andCondition = 7003; + public const int orCondition = 7004; + public const int isExecuted = 7005; + public const int theFollowingActions = 7006; + public const int cyclic = 7007; + public const int performA = 7008; + public const int days = 7009; + public const int weekly = 7010; + public const int monthly = 7011; + public const int save = 7012; + public const int push = 7013; + public const int notification = 7014; + public const int selectionCondition = 7015; + public const int time = 7016; + public const int selectionTimeCondition = 7017; + public const int hour = 7018; + public const int timeHorizon = 7019; + public const int h = 7020; + public const int m = 7021; + public const int s = 7022; + public const int cancelSelected = 7023; + public const int confirmSelected = 7024; + public const int timeTipText = 7025; + public const int startTime = 7026; + public const int endTime = 7027; + public const int funLogic = 7028; + public const int selectedFunCondition = 7029; + public const int allAreas = 7030; + public const int allFun = 7031; + public const int onLogic = 7032; + public const int offLogic = 7033; + public const int switchLogic = 7034; + public const int completeLogic = 7035; + public const int addtarget = 7036; + public const int monday = 7037; + public const int tuesday = 7038; + public const int wednesday = 7039; + public const int thursday = 7040; + public const int friday = 7041; + public const int saturday = 7042; + public const int sunday = 7043; + public const int meetTheCondition = 7044; + public const int setlogic = 7045; + public const int namelogic = 7046; + public const int editName = 7047; + public const int NameAlreadyExists = 7048; + public const int delAutomation = 7049; + public const int addSceneLogic = 7050; + public const int delayLogic = 7051; + + #region LE鏂板 /// <summary> /// 璇蜂娇鐢ㄦ柊鐨勬墜鏈鸿处鍙风櫥褰旳PP diff --git a/HDL_ON/DAL/Server/HttpUtil.cs b/HDL_ON/DAL/Server/HttpUtil.cs index 0fa2299..5e52242 100644 --- a/HDL_ON/DAL/Server/HttpUtil.cs +++ b/HDL_ON/DAL/Server/HttpUtil.cs @@ -208,6 +208,7 @@ { try { + ResponsePackNew revertObj = new ResponsePackNew() { }; revertObj = Newtonsoft.Json.JsonConvert.DeserializeObject<ResponsePackNew>(response.Content); //*****涓�浜涘垽绌哄鐞�***************** diff --git a/HDL_ON/HDL_ON.projitems b/HDL_ON/HDL_ON.projitems index 61d911d..593e764 100644 --- a/HDL_ON/HDL_ON.projitems +++ b/HDL_ON/HDL_ON.projitems @@ -218,6 +218,37 @@ <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\1-HomePage\MessageCenterPage.cs" /> <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\Widget\MenuButton.cs" /> <Compile Include="$(MSBuildThisFileDirectory)UI\UI0-Public\RoomGalleryPage.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\AddInputType.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\AddLogic.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\AddTarget.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\DeviceFunList.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\FunTpye.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\InpOrOutLogicMethod.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Logic.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicMethod.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\MainView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Set.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\TimeTpye.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\FunAllAreaView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\EditPopView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\DateView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\AreaView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\MonView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\LogicAddView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\TopView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\ConfirmPopView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\SelectTypeView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\SwitchView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\LogicTypeTitleView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\TimeView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\TimeHorizonView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\TextSize.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\AddOutputInputView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\TipPopView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\AddOutputInputTextView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\SaveView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\LogicView\SingleLogicView.cs" /> + <Compile Include="$(MSBuildThisFileDirectory)UI\UI2\3-Intelligence\Automation\Send.cs" /> </ItemGroup> <ItemGroup> <Folder Include="$(MSBuildThisFileDirectory)UI\" /> diff --git a/HDL_ON/UI/CSS/CSS.cs b/HDL_ON/UI/CSS/CSS.cs index 3eb67cd..ff5eff9 100644 --- a/HDL_ON/UI/CSS/CSS.cs +++ b/HDL_ON/UI/CSS/CSS.cs @@ -94,6 +94,25 @@ /// </summary> public const uint LinkTipFail = 0xFFFF4747; + #region 鑷姩鍖� + /// <summary> + /// 鏍囧噯瀛椾綋棰滆壊 + /// </summary> + public const uint textColor = 0XFF1B2D4D; + public const uint textCancelColor = 0XFFC0C7D4; + public const uint textConfirmColor = 0XFF4484F4; + public const uint textRedColor = 0XFFFF4747; + public const uint textWhiteColor = 0XFFFFFFFF; + public const uint viewTop = 0XFFF7F7F7; + public const uint viewMiddle = 0XFFF2F3F7; + public const uint viewLine = 0XFFECEDEE; + public const uint view = 0XFFFFFFFF; + public const uint btnSaveBackgroundColor = 0XFF4484F4; + public const uint viewTrans60lucence = 0x60000000; + public const uint viewTranslucence = 0x00000000; + public const uint textTipColor = 0XFF798394; + #endregion + #endregion } diff --git a/HDL_ON/UI/UI2/3-Intelligence/.DS_Store b/HDL_ON/UI/UI2/3-Intelligence/.DS_Store new file mode 100644 index 0000000..ca6baf5 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/.DS_Store Binary files differ diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store b/HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store new file mode 100644 index 0000000..ca6baf5 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/.DS_Store Binary files differ diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddInputType.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddInputType.cs new file mode 100644 index 0000000..353be15 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddInputType.cs @@ -0,0 +1,66 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation +{ + public class AddInputType : FrameLayout + { + public AddInputType() + { + Tag = "Logic"; + } + public void Show() + { + + 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); + #region 鏃堕棿 鍔熻兘 + //鏃堕棿 + LogicView.SelectTypeView timeView = new LogicView.SelectTypeView(); + timeView.btnText.TextID = StringId.time; + timeView.btnIcon.UnSelectedImagePath = "LogicIcon/timeicon.png"; + viewLayout.AddChidren(timeView.FLayoutView()); + + //鍔熻兘 + LogicView.SelectTypeView functionView = new LogicView.SelectTypeView(); + functionView.frameLayout.Y = timeView.frameLayout.Bottom; + functionView.btnText.TextID = StringId.funLogic; + functionView.btnIcon.UnSelectedImagePath = "LogicIcon/functionicon.png"; + viewLayout.AddChidren(functionView.FLayoutView()); + #endregion + + + #region 鎵�鏈夌偣鍑讳簨浠� + timeView.btnClick.MouseUpEventHandler += (sen, e) => { + TimeTpye timeTpye = new TimeTpye(); + MainPage.BasePageView.AddChidren(timeTpye); + timeTpye.Show(); + 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; + + }; + #endregion + + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs new file mode 100644 index 0000000..c877f26 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddLogic.cs @@ -0,0 +1,674 @@ +锘縰sing System; +using Shared; +using System.Collections.Generic; + + +namespace HDL_ON.UI.UI2.Intelligence.Automation +{ + public class AddLogic : FrameLayout + { + public AddLogic() + { + Tag = "Logic"; + } + + public void Show() + { + + this.BackgroundColor = CSS.CSS_Color.viewMiddle; + LogicView.TopView topView = new LogicView.TopView(); + topView.setBtn.Visible = true; + this.AddChidren(topView.FLayoutView()); + topView.clickBackBtn.MouseUpEventHandler += (e, sen) => + { + RemoveFromParent(); + }; + if (string.IsNullOrEmpty(Logic.currlogic.sid)) + { + topView.topNameBtn.TextID = StringId.newAutomation; + topView.setBtn.Visible = false; + topView.clickSetBtn.Visible = false; + } + else + { + topView.topNameBtn.TextID = StringId.editAutomation; + topView.setBtn.Visible = true; + topView.clickSetBtn.Visible = true; + } + topView.clickSetBtn.MouseUpEventHandler += (sender,e) => { + Set set = new Set(); + MainPage.BasePageView.AddChidren(set); + set.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + + }; + + VerticalScrolViewLayout viewLayout = new VerticalScrolViewLayout + { + Y = Application.GetRealHeight(64), + Width = Application.GetRealWidth(LogicView.TextSize.view375), + Height = Application.GetRealHeight(LogicView.TextSize.view667 - 64 - 76), + BackgroundColor = CSS.CSS_Color.viewMiddle, + }; + this.AddChidren(viewLayout); + #region 鏉′欢 + ///濡傛灉鐨刅iew + LogicView.AddOutputInputTextView addInputTextView = new LogicView.AddOutputInputTextView(); + addInputTextView.btnIf.TextID = StringId.ifCondition; + viewLayout.AddChidren(addInputTextView.FLayoutView(46, 12)); + ///婊¤冻浠ヤ笅鏉′欢鐨刅iew + LogicView.LogicTypeTitleView titleCondition = new LogicView.LogicTypeTitleView(); + titleCondition.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); + titleCondition.btnText.TextID = StringId.andCondition; + viewLayout.AddChidren(titleCondition.FLayoutView()); + titleCondition.btnClick.MouseUpEventHandler += (sender, e) => + { + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + this.AddChidren(fLayout); + AndOrMethod(fLayout, titleCondition.btnText); + }; + + + // 鏉′欢澶勭悊鏂规硶 + InpOrOutLogicMethod.InputCondition(this, viewLayout); + ///娣诲姞鍥炬爣鐨刅iew + LogicView.LogicAddView addInputIcon = new LogicView.LogicAddView(); + addInputIcon.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerBottomLeft | HDLUtils.RectCornerBottomRight); + viewLayout.AddChidren(addInputIcon.FLayoutView()); + + addInputIcon.btnClick.MouseUpEventHandler += (sen, e) => + { + var addInputType = new AddInputType(); + MainPage.BasePageView.AddChidren(addInputType); + addInputType.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + #endregion + + #region 鐩爣 + ///灏辨墽琛孷iew + LogicView.AddOutputInputTextView addOutpuTextView = new LogicView.AddOutputInputTextView(); + addOutpuTextView.btnIf.TextID = StringId.isExecuted; + viewLayout.AddChidren(addOutpuTextView.FLayoutView(54, 20)); + ///浠ヤ笅鍔ㄤ綔View + LogicView.LogicTypeTitleView titleOutpu = new LogicView.LogicTypeTitleView(); + titleOutpu.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); + titleOutpu.btnText.TextID = StringId.theFollowingActions; + viewLayout.AddChidren(titleOutpu.FLayoutView()); + //鐩爣澶勭悊鏂规硶 + InpOrOutLogicMethod.OutputTarget(this, viewLayout); + ///娣诲姞鍥炬爣鐨刅iew + LogicView.LogicAddView addOutputIcon = new LogicView.LogicAddView(); + addOutputIcon.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerBottomLeft | HDLUtils.RectCornerBottomRight); + viewLayout.AddChidren(addOutputIcon.FLayoutView()); + addOutputIcon.btnClick.MouseUpEventHandler += (sen, e) => + { + var addTarget = new AddTarget(); + MainPage.BasePageView.AddChidren(addTarget); + addTarget.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + #endregion + + #region 寰幆鏂瑰紡 + ///寰幆鏂瑰紡iew + LogicView.AddOutputInputTextView cyclicTextView = new LogicView.AddOutputInputTextView(); + cyclicTextView.btnIf.TextID = StringId.cyclic; + viewLayout.AddChidren(cyclicTextView.FLayoutView(54, 20)); + ///閫夋嫨鍛ㄦ湡绫诲瀷View + LogicView.LogicTypeTitleView cyclicTitle = new LogicView.LogicTypeTitleView(); + cyclicTitle.frameLayout.Height = Application.GetRealHeight(50); + cyclicTitle.frameLayout.Radius = (uint)Application.GetRealHeight(12); + cyclicTitle.btnText.TextID = StringId.days; + viewLayout.AddChidren(cyclicTitle.FLayoutView()); + cyclicTitle.btnClick.MouseUpEventHandler += (sender, e) => + { + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + this.AddChidren(fLayout); + DateMethod(fLayout, cyclicTitle.btnText); + + + }; + #endregion + + #region 鎵ц鎺ㄩ�� 鍙戦�侀�氱煡 + ///涓婁笅闂撮殧12鍍忕礌 + viewLayout.AddChidren(new FrameLayout { Height = Application.GetRealHeight(12) }); + ///鎵ц鎺ㄩ�乮ew + LogicView.LogicTypeTitleView push = new LogicView.LogicTypeTitleView(); + push.frameLayout.Height = Application.GetRealHeight(50); + push.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); + push.btnText.TextID = StringId.push; + viewLayout.AddChidren(push.FLayoutView()); + ///鍙戦�侀�氱煡View + LogicView.LogicTypeTitleView notification = new LogicView.LogicTypeTitleView(); + notification.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerBottomLeft | HDLUtils.RectCornerBottomRight); + notification.btnText.TextID = StringId.notification; + viewLayout.AddChidren(notification.FLayoutView()); + ///涓婁笅闂撮殧62鍍忕礌 + viewLayout.AddChidren(new FrameLayout { Height = Application.GetRealHeight(62) }); + #endregion + + #region 淇濆瓨 + ///淇濆瓨View + LogicView.SaveView saveView = new LogicView.SaveView(); + saveView.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(24), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); + this.AddChidren(saveView.FLayoutView()); + saveView.btnClick.MouseUpEventHandler += (sender, e) => + { + + Logic.currlogic.sid = "000101000000000A0A0100CC1100"; + //Logic.currlogic.sid = LogicMethod.NewSid(); + //var f = Send.AddLogic(Logic.currlogic); + + //var a = Send.getLogicIdList(); + + //var d = Send.getLogic(Logic.currlogic); + + // var c = Send.delLogic(Logic.currlogic); + + var e1= Send.switchLogic(Logic.currlogic); + + + + //if (string.IsNullOrEmpty(Logic.currlogic.sid)) + //{ + // List<string> list = new List<string>(); + // foreach (var logic in Logic.LogicList) + // { + // list.Add(logic.name); + // } + // new LogicView.TipPopView().InputBox(StringId.editName, Logic.currlogic.name, StringId.nameNull, StringId.NameAlreadyExists, list, (logicName) => + // { + // Logic.currlogic.name = logicName; + // Logic.currlogic.sid = LogicMethod.NewSid(); + // var responsePackNew = Send.AddLogic(Logic.currlogic); + // if (responsePackNew.Code == "0") + // { + // Logic.LogicList.Add(Logic.currlogic); + // LogicMethod.RemoveAllView(); + // MainView.MainShow(); + // } + // //鍙戦�佹柊鍔犱慨鏀归�昏緫鍛戒护锛� + + // }); + + //} + //else + //{ + // LogicMethod.RemoveAllView(); + // MainView.MainShow(); + // //鍙戦�佹柊鍔犱慨鏀归�昏緫鍛戒护锛� + //} + + }; + #endregion + + } + /// <summary> + /// 寰幆鏂瑰紡(姣忓ぉ锛屾瘡鏈堛�傘��) + /// </summary> + /// <param name="fLayout">寮规涓绘帶浠�</param> + /// <param name="button">鏄剧ず鏂囨湰</param> + public void DateMethod(FrameLayout fLayout, Button button) + { + + LogicView.DateView dateView = new LogicView.DateView(); + dateView.btnTitle.TextID = StringId.cyclic; + dateView.FLayoutView(fLayout, 4); + dateView.btnCancel.MouseUpEventHandler += (sender2, e2) => + { + //绉婚櫎fLayout鐣岄潰 + fLayout.RemoveFromParent(); + }; + //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鏂囨湰鐘舵�� + string weekName = ""; + //瀹氫箟涓�涓眬閮˙tn鐢ㄦ潵璁板綍閫変腑Btn; + var selecetdBtn = new Button(); + for (int i = 0; i < 4; i++) + { + LogicView.SelectTypeView dateTypeView = new LogicView.SelectTypeView(); + dateTypeView.frameLayout.BackgroundColor = CSS.CSS_Color.viewTranslucence; + dateTypeView.frameLayout.Y = Application.GetRealHeight(56 + 50 * i); + dateTypeView.btnIcon.Visible = false; + dateTypeView.btnText.X = Application.GetRealWidth(20); + dateTypeView.btnNextIcon.X = Application.GetRealWidth(307); + dateTypeView.btnLine.X = Application.GetRealWidth(20); + dateTypeView.btnLine.Width = Application.GetRealWidth(303); + dateView.frameLayout.AddChidren(dateTypeView.FLayoutView()); + dateTypeView.btnClick.Tag = i;//鏍囪绫诲瀷 + switch (i) + { + case 0: + { + weekName = Language.StringByID(StringId.performA); + dateTypeView.btnNextIcon.Visible = false; + } + break; + case 1: + { + weekName = Language.StringByID(StringId.days); + dateTypeView.btnNextIcon.Visible = false; + } + break; + case 2: + { + weekName = Language.StringByID(StringId.weekly); + } + break; + case 3: + { + weekName = Language.StringByID(StringId.monthly); + } + break; + + + } + dateTypeView.btnText.Text = weekName; + //寰幆绫诲瀷(渚嬪锛氭瘡鏈堬紝姣忓ぉ)鐐瑰嚮浜嬩欢 + dateTypeView.btnClick.MouseUpEventHandler += (sender, e) => + { + int clickIndex = int.Parse(dateTypeView.btnClick.Tag.ToString()); + switch (clickIndex) + { + case 0: + { + weekName = Language.StringByID(StringId.performA); + selecetdBtn.TextColor = CSS.CSS_Color.textColor; + dateTypeView.btnText.TextColor = CSS.CSS_Color.textConfirmColor; + selecetdBtn = dateTypeView.btnText; + } + break; + case 1: + { + weekName = Language.StringByID(StringId.days); + selecetdBtn.TextColor = CSS.CSS_Color.textColor; + dateTypeView.btnText.TextColor = CSS.CSS_Color.textConfirmColor; + selecetdBtn = dateTypeView.btnText; + + } + break; + case 2: + { + // weekName = Language.StringByID(StringId.weekly); + WeekMethod(fLayout, button); + } + break; + case 3: + { + //weekName = Language.StringByID(StringId.monthly); + MonMethod(fLayout, button); + } + break; + + + } + }; + + + //鏄剧ず涔嬪墠鐨勭姸鎬� + if (button.Text == weekName) + { + dateTypeView.btnText.TextColor = CSS.CSS_Color.textConfirmColor; + selecetdBtn = dateTypeView.btnText; + } + else if (button.Text == weekName) + { + dateTypeView.btnText.TextColor = CSS.CSS_Color.textConfirmColor; + selecetdBtn = dateTypeView.btnText; + } + } + //纭畾淇濆瓨 + dateView.btnConfirm.MouseUpEventHandler += (sender3, e3) => + { + if (weekName == Language.StringByID(StringId.monthly)|| weekName== Language.StringByID(StringId.weekly)) { + //鎻愮ず锛氳繕鏈�� + return; + + } + + if (weekName == Language.StringByID(StringId.performA)) + { + //鎵ц涓�娆� + Logic.currlogic.cycle.type = "once"; + } + else if (weekName == Language.StringByID(StringId.days)) + { + //姣忓ぉ + Logic.currlogic.cycle.type = "day"; + + } + //閫変腑淇濆瓨涔嬪悗鏄剧ず鏂囨湰 + button.Text = weekName; + //绉婚櫎fLayout鐣岄潰 + fLayout.RemoveFromParent(); + }; + } + /// <summary> + /// 閫変腑鏄熸湡鍑�(鍛ㄤ竴锛屽懆浜� 銆傘�傘��) + /// </summary> + /// <param name="fLayout">寮规涓绘帶浠�</param> + /// <param name="button">鏄剧ず鏂囨湰</param> + public void WeekMethod(FrameLayout fLayout, Button button) + { + + LogicView.DateView weekView = new LogicView.DateView(); + weekView.btnTitle.TextID = StringId.cyclic; + weekView.FLayoutView(fLayout, 7); + weekView.btnCancel.MouseUpEventHandler += (sender2, e2) => + { + weekView.frameLayout.RemoveFromParent(); + }; + //瀹氫箟涓�涓眬閮╳eekList鍒楄〃鐢ㄦ潵璁板綍閫変腑鏁版嵁; + List<string> weekList = new List<string>(); + if (Logic.currlogic.cycle.type == "week") + { + //鍔犺浇涔嬪墠淇濆瓨鐨勬暟鎹� + weekList.AddRange(Logic.currlogic.cycle.value); + } + //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鏂囨湰鐘舵�� + string weekName = ""; + for (int i = 0; i < 7; i++) + { + LogicView.SelectTypeView weekTypeView = new LogicView.SelectTypeView(); + weekTypeView.frameLayout.BackgroundColor = CSS.CSS_Color.viewTranslucence; + weekTypeView.frameLayout.Y = Application.GetRealHeight(56 + 50 * i); + weekTypeView.btnIcon.Visible = false; + weekTypeView.btnText.X = Application.GetRealWidth(20); + weekTypeView.btnLine.X = Application.GetRealWidth(20); + weekTypeView.btnLine.Width = Application.GetRealWidth(303); + weekTypeView.btnNextIcon.X = Application.GetRealWidth(303); + weekTypeView.btnNextIcon.Width = Application.GetMinRealAverage(28); + weekTypeView.btnNextIcon.Height = Application.GetMinRealAverage(28); + weekTypeView.btnNextIcon.UnSelectedImagePath = "LogicIcon/weekoff.png"; + weekTypeView.btnNextIcon.SelectedImagePath = "LogicIcon/weekon.png"; + weekView.frameLayout.AddChidren(weekTypeView.FLayoutView()); + weekTypeView.btnClick.Tag = i;//鏍囪绱㈠紩 + switch (i) + { + case 0: + { + weekName = Language.StringByID(StringId.monday); + } + break; + case 1: + { + weekName = Language.StringByID(StringId.tuesday); + } + break; + case 2: + { + weekName = Language.StringByID(StringId.wednesday); + } + break; + case 3: + { + weekName = Language.StringByID(StringId.thursday); + } + break; + case 4: + { + weekName = Language.StringByID(StringId.friday); + } + break; + case 5: + { + weekName = Language.StringByID(StringId.saturday); + } + break; + case 6: + { + weekName = Language.StringByID(StringId.sunday); + } + break; + + } + weekTypeView.btnText.Text = weekName; + if (weekList.Contains(i.ToString())) + { + //鏄剧ず涔嬪墠鐨勯�変腑鐘舵�� + weekTypeView.btnNextIcon.IsSelected = true; + } + //鏄熸湡鐨勭偣鍑讳簨浠� + weekTypeView.btnClick.MouseUpEventHandler += (sender, e) => + { + string clickIndex = weekTypeView.btnClick.Tag.ToString(); + weekTypeView.btnClick.IsSelected = !weekTypeView.btnClick.IsSelected; + if (weekTypeView.btnClick.IsSelected) + { + weekTypeView.btnNextIcon.IsSelected = true; + if (!weekList.Contains(clickIndex)) + { + //娣诲姞閫変腑鏁版嵁 + weekList.Add(clickIndex); + } + } + else + { + weekTypeView.btnNextIcon.IsSelected = false; + if (weekList.Contains(clickIndex)) + { + //绉婚櫎閫変腑鏁版嵁 + weekList.Remove(clickIndex); + } + } + + }; + + } + //纭畾鐐瑰嚮浜嬩欢 + weekView.btnConfirm.MouseUpEventHandler += (sender1, e1) => + { + if (weekList.Count == 0) + { + //鎻愮ず锛氳繕娌¢�変腑鎵ц鍛ㄦ湡 + return; + } + Logic.currlogic.cycle.type = "week"; + Logic.currlogic.cycle.value = weekList; + button.Text = MainView.GetWeekString(weekList); + fLayout.RemoveFromParent(); + }; + + } + /// <summary> + /// 姣忔湀 + /// </summary> + /// <param name="fLayout">寮规涓绘帶浠�</param> + /// <param name="button">鏄剧ず鏂囨湰</param> + public void MonMethod(FrameLayout fLayout, Button button) + { + LogicView.MonView monView = new LogicView.MonView(); + monView.btnTitle.TextID = StringId.monthly; + monView.FLayoutView(fLayout); + monView.btnCancel.MouseUpEventHandler += (sender2, e2) => + { + monView.frameLayout.RemoveFromParent(); + }; + //瀹氫箟涓�涓眬閮╩onList鍒楄〃鐢ㄦ潵璁板綍閫変腑鏁版嵁; + List<string> monList = new List<string>(); + if (Logic.currlogic.cycle.type == "mon") + { + //鍔犺浇涔嬪墠淇濆瓨鐨勬暟鎹� + monList.AddRange(Logic.currlogic.cycle.value); + } + //瀹氫箟涓�涓彉閲忚褰曡鏁� + int lineSun = 0; + for (int i = 1; i < 32; i++) + { + Button monTextBtn = new Button + { + Width = Application.GetMinRealAverage(30), + Height = Application.GetMinRealAverage(30), + Radius = (uint)Application.GetRealHeight(15), + Text = i.ToString(), + TextSize = LogicView.TextSize.text14, + TextColor = CSS.CSS_Color.textColor, + SelectedTextColor = CSS.CSS_Color.view, + SelectedBackgroundColor = CSS.CSS_Color.textConfirmColor, + BackgroundColor = CSS.CSS_Color.viewTranslucence, + Tag = i, + }; + monView.frameLayout.AddChidren(monTextBtn); + if (lineSun > 0) + { + monTextBtn.X = Application.GetRealWidth(16 + ((i - 1) - lineSun * 7) * 46); + } + else + { + + monTextBtn.X = Application.GetRealWidth(16 + (i - 1) * 46); + } + monTextBtn.Y = Application.GetRealWidth(58 + 10 + lineSun * (30 + 10)); + + if (i % 7 == 0) + { + //涓�瀹氭墽琛屽畬鍐嶅垽鏂槸鍚﹁鎹㈣. + lineSun = lineSun + 1; + + } + monTextBtn.MouseUpEventHandler += (sender, e) => + { + string clickIndex = monTextBtn.Tag.ToString(); + monTextBtn.IsSelected = !monTextBtn.IsSelected; + if (monTextBtn.IsSelected) + { + monTextBtn.IsSelected = true; + if (!monList.Contains(clickIndex)) + { + //娣诲姞閫変腑鏁版嵁 + monList.Add(clickIndex); + } + } + else + { + monTextBtn.IsSelected = false; + if (monList.Contains(clickIndex)) + { + //绉婚櫎閫変腑鏁版嵁 + monList.Remove(clickIndex); + } + } + }; + + if (monList.Contains(i.ToString())) { + monTextBtn.IsSelected = true; + } + } + //纭畾鐐瑰嚮浜嬩欢 + monView.btnConfirm.MouseUpEventHandler += (sender1, e1) => + { + if (monList.Count == 0) + { + //鎻愮ず锛氳繕娌¢�変腑鎵ц鍛ㄦ湡 + return; + } + Logic.currlogic.cycle.type = "mon"; + Logic.currlogic.cycle.value = monList; + button.Text = MainView.GetMonString(monList); + fLayout.RemoveFromParent(); + }; + } + + /// <summary> + /// 婊¤冻鏉′欢 + /// </summary> + /// <param name="fLayout">寮规涓绘帶浠�</param> + /// <param name="button">鏄剧ず鏂囨湰</param> + public void AndOrMethod(FrameLayout fLayout, Button button) + { + LogicView.DateView meetTheConditionView = new LogicView.DateView(); + meetTheConditionView.btnTitle.TextID = StringId.meetTheCondition; + meetTheConditionView.FLayoutView(fLayout, 2); + meetTheConditionView.btnCancel.MouseUpEventHandler += (sender2, e2) => + { + fLayout.RemoveFromParent(); + }; + + //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鏂囨湰鐘舵�� + string condition = ""; + LogicView.SelectTypeView andConditionViews = new LogicView.SelectTypeView(); + andConditionViews.frameLayout.BackgroundColor = CSS.CSS_Color.viewTranslucence; + andConditionViews.frameLayout.Y = Application.GetRealHeight(56); + andConditionViews.btnIcon.Visible = false; + andConditionViews.btnText.X = Application.GetRealWidth(20); + andConditionViews.btnText.TextID = StringId.andCondition; + andConditionViews.btnLine.X = Application.GetRealWidth(20); + andConditionViews.btnLine.Width = Application.GetRealWidth(303); + andConditionViews.btnNextIcon.X = Application.GetRealWidth(303); + andConditionViews.btnNextIcon.Width = Application.GetMinRealAverage(28); + andConditionViews.btnNextIcon.Height = Application.GetMinRealAverage(28); + andConditionViews.btnNextIcon.UnSelectedImagePath = "LogicIcon/weekoff.png"; + andConditionViews.btnNextIcon.SelectedImagePath = "LogicIcon/weekon.png"; + meetTheConditionView.frameLayout.AddChidren(andConditionViews.FLayoutView()); + + + LogicView.SelectTypeView orConditionView = new LogicView.SelectTypeView(); + orConditionView.frameLayout.BackgroundColor = CSS.CSS_Color.viewTranslucence; + orConditionView.frameLayout.Y = Application.GetRealHeight(56 + 50); + orConditionView.btnIcon.Visible = false; + orConditionView.btnText.X = Application.GetRealWidth(20); + orConditionView.btnText.TextID = StringId.orCondition; + orConditionView.btnLine.X = Application.GetRealWidth(20); + orConditionView.btnLine.Width = Application.GetRealWidth(303); + orConditionView.btnNextIcon.X = Application.GetRealWidth(303); + orConditionView.btnNextIcon.Width = Application.GetMinRealAverage(28); + orConditionView.btnNextIcon.Height = Application.GetMinRealAverage(28); + orConditionView.btnNextIcon.UnSelectedImagePath = "LogicIcon/weekoff.png"; + orConditionView.btnNextIcon.SelectedImagePath = "LogicIcon/weekon.png"; + meetTheConditionView.frameLayout.AddChidren(orConditionView.FLayoutView()); + + + if (Logic.currlogic.relation == "and") + { + andConditionViews.btnNextIcon.IsSelected = true; + condition = "and"; + } + else + { + orConditionView.btnNextIcon.IsSelected = true; + condition = "or"; + } + andConditionViews.btnClick.MouseUpEventHandler += (sen1, e) => + { + condition = "and"; + andConditionViews.btnNextIcon.IsSelected = true; + orConditionView.btnNextIcon.IsSelected = false; + }; + orConditionView.btnClick.MouseUpEventHandler += (sen1, e) => + { + condition = "or"; + andConditionViews.btnNextIcon.IsSelected = false; + orConditionView.btnNextIcon.IsSelected = true; + }; + //纭畾鐐瑰嚮浜嬩欢 + meetTheConditionView.btnConfirm.MouseUpEventHandler += (sender1, e1) => + { + if (string.IsNullOrEmpty(condition)) + { + //鎻愮ず锛氳繕娌¢�変腑鎵ц鍛ㄦ湡 + return; + } + Logic.currlogic.relation = condition; + if (condition == "or") + { + button.Text = Language.StringByID(StringId.orCondition); + } + else + { + button.Text = Language.StringByID(StringId.andCondition); + } + fLayout.RemoveFromParent(); + }; + + } + + + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs new file mode 100644 index 0000000..f839d4c --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs @@ -0,0 +1,284 @@ +锘縰sing System; +using System.Collections.Generic; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation +{ + public class AddTarget : FrameLayout + { + public AddTarget() + { + Tag = "Logic"; + } + public void Show() + { + + LogicView.TopView topView = new LogicView.TopView(); + this.AddChidren(topView.FLayoutView()); + topView.clickBackBtn.MouseUpEventHandler += (e, sen) => + { + RemoveFromParent(); + }; + topView.topNameBtn.TextID = StringId.addtarget; + + 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); + #region 鍔熻兘 + //鍔熻兘 + LogicView.SelectTypeView functionView = new LogicView.SelectTypeView(); + functionView.btnText.TextID = StringId.funLogic; + functionView.btnIcon.UnSelectedImagePath = "LogicIcon/functionicon.png"; + viewLayout.AddChidren(functionView.FLayoutView()); + + //鍦烘櫙 + LogicView.SelectTypeView sceneView = new LogicView.SelectTypeView(); + sceneView.frameLayout.Y = functionView.frameLayout.Bottom; + sceneView.btnText.TextID = StringId.Scenes; + sceneView.btnIcon.UnSelectedImagePath = "LogicIcon/scene.png"; + viewLayout.AddChidren(sceneView.FLayoutView()); + + //寤舵椂 + LogicView.SelectTypeView delayView = new LogicView.SelectTypeView(); + delayView.frameLayout.Y = sceneView.frameLayout.Bottom; + delayView.btnText.TextID = StringId.delayLogic; + delayView.btnIcon.UnSelectedImagePath = "LogicIcon/delayed.png"; + viewLayout.AddChidren(delayView.FLayoutView()); + #endregion + + #region 鎵�鏈夌偣鍑讳簨浠� + functionView.btnClick.MouseUpEventHandler += (sen, e) => + { + FunTpye funTpye = new FunTpye(); + MainPage.BasePageView.AddChidren(funTpye); + funTpye.Show(LogicMethod.target_if); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + + }; + + sceneView.btnClick.MouseUpEventHandler += (sen, e) => + { + + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + this.AddChidren(fLayout); + SceneMethod(fLayout); + }; + + delayView.btnClick.MouseUpEventHandler += (sen, e) => + { + + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + this.AddChidren(fLayout); + Delayed(fLayout,false,1000); + }; + #endregion + + } + + /// <summary> + /// 娣诲姞鍦烘櫙 + /// </summary> + /// <param name="fLayout">寮规涓绘帶浠�</param> + public void SceneMethod(FrameLayout fLayout) + { + LogicView.DateView dateView = new LogicView.DateView(); + dateView.btnTitle.TextID = StringId.addSceneLogic; + dateView.FLayoutView(fLayout, 5); + dateView.btnCancel.MouseUpEventHandler += (sender2, e2) => + { + fLayout.RemoveFromParent(); + }; + VerticalRefreshLayout verticalRefresh = new VerticalRefreshLayout + { + Y = Application.GetRealHeight(56), + Height = Application.GetRealHeight(50 * 5), + + }; + dateView.frameLayout.AddChidren(verticalRefresh); + //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鐘舵�� + Button buttonClick = new Button(); + HDL_ON.Entity.Scene sceneSelecetd = null; + var sceneList = LogicMethod.GetSceneList(); + verticalRefresh.BeginHeaderRefreshingAction += () => + { + //鍏抽棴鍒锋柊View锛� + verticalRefresh.EndHeaderRefreshing(); + }; + for (int i = 0; i < sceneList.Count; i++) + { + var scene = sceneList[i]; + LogicView.SelectTypeView sceneView = new LogicView.SelectTypeView(); + sceneView.frameLayout.BackgroundColor = CSS.CSS_Color.viewTranslucence; + sceneView.btnIcon.Visible = false; + sceneView.btnText.X = Application.GetRealWidth(20); + sceneView.btnText.Text = scene.name; + sceneView.btnLine.X = Application.GetRealWidth(20); + sceneView.btnLine.Width = Application.GetRealWidth(303); + sceneView.btnNextIcon.X = Application.GetRealWidth(303); + sceneView.btnNextIcon.Width = Application.GetMinRealAverage(28); + sceneView.btnNextIcon.Height = Application.GetMinRealAverage(28); + sceneView.btnNextIcon.UnSelectedImagePath = "LogicIcon/weekoff.png"; + sceneView.btnNextIcon.SelectedImagePath = "LogicIcon/weekon.png"; + verticalRefresh.AddChidren(sceneView.FLayoutView()); + sceneView.btnClick.Tag = scene;//鏍囪绱㈠紩 + + //鍦烘櫙鐨勭偣鍑讳簨浠� + sceneView.btnClick.MouseUpEventHandler += (sender, e) => + { + buttonClick.IsSelected = false; + sceneView.btnNextIcon.IsSelected = true; + buttonClick = sceneView.btnNextIcon; + sceneSelecetd =sceneView.btnClick.Tag as HDL_ON.Entity.Scene; + }; + + } + //纭鐐瑰嚮浜嬩欢 + dateView.btnConfirm.MouseUpEventHandler += (sender1, e1) => + { + if (sceneSelecetd == null) + { + //鎻愮ず锛氳繕娌¢�変腑鎵ц鍛ㄦ湡 + return; + } + Output outputDevice = new Output(); + outputDevice.target_type = "2"; + outputDevice.sid = sceneSelecetd.sid; + //娌″暐浣滅敤锛屼负浜嗘暟鎹牸寮忕粺涓�,鍙戦�佹椂涓嶅啀鍒ゆ柇 + outputDevice.status = new List<Dictionary<string, string>> { new Dictionary<string, string> { { "key", "scene"},{ "value", "0" } } }; + AddOutput(outputDevice); + fLayout.RemoveFromParent(); + LogicMethod.RemoveAllView(); + AddLogic addLogic = new AddLogic(); + MainPage.BasePageView.AddChidren(addLogic); + addLogic.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + + } + + /// <summary> + /// 寤舵椂鏃堕棿鏂规硶 + /// </summary> + /// <param name="fLayout">鍦ㄥ摢涓晫闈㈡樉绀�</param> + /// <param name="edit">锛坱rue=缂栬緫锛沠alse=鏂板缓锛�</param> + /// <param name="index">缂栬緫鏉′欢鐨勭储寮�</param> + public void Delayed(FrameLayout fLayout, bool edit, int index) + { + LogicView.TimeView timePointView = new LogicView.TimeView(); + timePointView.FLayoutView(fLayout); + EventHandler<MouseEventArgs> RemovefLayout = (sender, e1) => + { + //绉婚櫎fLayout鐣岄潰 + fLayout.RemoveFromParent(); + }; + //鍙栨秷鐐瑰嚮浜嬩欢 + timePointView.btnCancel.MouseUpEventHandler += RemovefLayout; + + //鍔犺浇鏁版嵁鐣岄潰鐨勮缃柟娉�(鍒楄〃浜掍笉鑱斿姩) + timePointView.mUIPickerView.setNPicker(timePointView.GethStringList0(), timePointView.GetmStringList(), null); + //榛樿鍒濆閫変腑鐘舵�� + timePointView.mUIPickerView.setCurrentItems(0, 5, 0); + //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鏃堕棿 + string timepoint = "00:05"; + + if (edit) + { + Output output = Logic.currlogic.output[index]; + if (output.target_type == "3") + { + List<Dictionary<string, string>> dicList = output.status as List<Dictionary<string, string>>; + foreach (var dic in dicList) + { + string timeValue = dic["value"]; + int hIndex = timePointView.GetValueIndex(timeValue, 0, 1, timePointView.GethIntList0()); + int mIndex = timePointView.GetValueIndex(timeValue, 1, 0, timePointView.GetmIntList()); + //鏇存柊鍒濆鐘舵�� + timePointView.mUIPickerView.setCurrentItems(hIndex, mIndex, 0); + timepoint = timeValue; + } + } + } + + + //閫変腑鏃堕棿鍥炶皟鏂规硶,鏃堕棿鍙樺寲涓�娆″洖璋冧竴娆� + timePointView.mUIPickerView.OnSelectChangeEvent += (index1, index2, index3) => + { + string hour = timePointView.GethStringList0()[index1].Split(' ')[0]; + string minuet = timePointView.GetmStringList()[index2].Split(' ')[0]; + timepoint = hour + ":" + minuet; + }; + //纭畾鐐瑰嚮浜嬩欢 + timePointView.btnConfirm.MouseUpEventHandler += (sender, e3) => + { + if (timepoint=="00:00") { + //鎻愮ず + return; + } + Output outputTime= new Output(); + outputTime.sid = LogicMethod.NewSid(); + outputTime.target_type = "3"; + Dictionary<string, string> dic = new Dictionary<string, string>(); + LogicMethod.dictionary(dic, "key", "delay"); + LogicMethod.dictionary(dic, "value", timepoint); + outputTime.status.Add(dic); + if (edit) + { + //绉婚櫎鏃ф暟鎹� + Logic.currlogic.output.RemoveAt(index); + //鏂版暟鎹彃鍏ユ棫鏁版嵁鐨勪綅缃�; + Logic.currlogic.output.Insert(index, outputTime); + } + else + { + //娣诲姞涓�涓柊鐨勬椂闂寸偣鏉′欢 + AddOutput(outputTime); + } + fLayout.RemoveFromParent(); + LogicMethod.RemoveAllView(); + AddLogic addLogic = new AddLogic(); + MainPage.BasePageView.AddChidren(addLogic); + addLogic.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + + }; + } + + /// <summary> + /// 娣诲姞鐩爣 + /// </summary> + /// <param name="target"></param> + private void AddOutput(Output target) + { + int indexValue = -1; + for (int i = 0; i < Logic.currlogic.output.Count; i++) + { + if (Logic.currlogic.output[i].sid == target.sid) + { + indexValue = i; + break; + } + } + + if (indexValue != -1) + { + Logic.currlogic.output.RemoveAt(indexValue); + Logic.currlogic.output.Insert(indexValue, target); + } + else + { + Logic.currlogic.output.Add(target); + } + + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Automation/.DS_Store b/HDL_ON/UI/UI2/3-Intelligence/Automation/Automation/.DS_Store new file mode 100644 index 0000000..f14f384 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Automation/.DS_Store Binary files differ diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/DeviceFunList.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/DeviceFunList.cs new file mode 100644 index 0000000..e6e5698 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/DeviceFunList.cs @@ -0,0 +1,386 @@ +锘縰sing System; +using Shared; +using System.Collections.Generic; +namespace HDL_ON.UI.UI2.Intelligence.Automation +{ + public class DeviceFunList : FrameLayout + { + public DeviceFunList() + { + Tag = "Logic"; + } + /// <summary> + /// 琛ㄧず鏄�(鏉′欢/鐩爣) + /// </summary> + private string if_type; + public void Show(Entity.Function device, int index, bool edit, string str) + { + if_type = str; + #region 鐣岄潰甯冨眬 + this.BackgroundColor = CSS.CSS_Color.viewMiddle; + LogicView.TopView topView = new LogicView.TopView(); + this.AddChidren(topView.FLayoutView()); + topView.clickBackBtn.MouseUpEventHandler += (e, sen) => + { + RemoveFromParent(); + }; + topView.topNameBtn.Text = device.name; + + FrameLayout fLayout = new FrameLayout + { + Y = Application.GetRealHeight(64), + Height = Application.GetRealHeight(667 - 64), + }; + this.AddChidren(fLayout); + #endregion + //瀹氫箟涓�涓褰曢�変腑璁惧鐘舵�佸垪琛紱 + List<Dictionary<string, string>> dicSateteList = new List<Dictionary<string, string>>(); + //瀹氫箟涓�涓彉閲忥紝璁板綍閫変腑鐘舵�� + string selectedState = "unknown"; + //瀹氫箟涓�涓彉閲忥紝璁板綍閫変腑鐘舵�佽褰曞睘鎬� + string keyVlaue = ""; + switch (device.functionType) + { + //寮�鍏崇伅鍏� + case FunctionType.Relay: + { + //for (int i = 0; i < device.function.Count; i++) + //{ + //} + LogicView.SelectTypeView relayView = new LogicView.SelectTypeView(); + relayView.btnIcon.Visible = false; + relayView.btnState.Visible = true; + relayView.btnText.TextSize = LogicView.TextSize.text16; + relayView.btnText.Height = Application.GetRealHeight(22); + relayView.btnText.TextID = StringId.switchLogic; + relayView.btnText.X = Application.GetRealWidth(16); + relayView.btnText.Width = Application.GetRealWidth(130); + relayView.btnLine.X = Application.GetRealWidth(16); + relayView.btnLine.Width = Application.GetRealWidth(343); + relayView.btnState.Text = ""; + fLayout.AddChidren(relayView.FLayoutView()); + relayView.btnClick.MouseUpEventHandler += (sender, e) => + { + FrameLayout relayFunView = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + this.AddChidren(relayFunView); + LogicView.SwitchView switchView = new LogicView.SwitchView(); + switchView.FLayoutView(relayFunView, 2); + + Button btnOn = new Button + { + TextAlignment = TextAlignment.Center, + TextSize = LogicView.TextSize.text16, + TextColor = CSS.CSS_Color.textCancelColor, + TextID = StringId.onLogic, + Height = Application.GetRealHeight(44), + Width = Application.GetRealWidth(343), + + }; + switchView.frameLayout.AddChidren(btnOn); + Button btnLine = new Button + { + Height = 1, + BackgroundColor = CSS.CSS_Color.viewLine, + Y = btnOn.Bottom, + }; + switchView.frameLayout.AddChidren(btnLine); + Button btnOff = new Button + { + Y = btnLine.Bottom, + TextAlignment = TextAlignment.Center, + TextSize = LogicView.TextSize.text16, + TextColor = CSS.CSS_Color.textCancelColor, + TextID = StringId.offLogic, + Height = Application.GetRealHeight(44), + Width = Application.GetRealWidth(343), + }; + switchView.frameLayout.AddChidren(btnOff); + + Dictionary<string, string> dic = new Dictionary<string, string>(); + switch (if_type) + { + case LogicMethod.condition_if: + { + LogicMethod.dictionary(dic, "key", "on_off"); + LogicMethod.dictionary(dic, "comparator", "="); + LogicMethod.dictionary(dic, "data_type", "string"); + keyVlaue = "on_off"; + } + break; + case LogicMethod.target_if: + { + LogicMethod.dictionary(dic, "key", "on_off"); + keyVlaue = "on_off"; + } + break; + } + + btnOn.MouseUpEventHandler += (sender2, e2) => + { + LogicMethod.dictionary(dic, "value", "on"); + RemView(relayFunView); + relayView.btnState.TextID = StringId.onLogic; + selectedState = device.functionType + "_on"; + AddDictionaryData(dicSateteList, keyVlaue, dic); + }; + btnOff.MouseUpEventHandler += (sender3, e3) => + { + LogicMethod.dictionary(dic, "value", "off"); + RemView(relayFunView); + relayView.btnState.TextID = StringId.offLogic; + selectedState = device.functionType + "_off"; + AddDictionaryData(dicSateteList, keyVlaue, dic); + }; + + if (relayView.btnState.Text != "") + { + if (relayView.btnState.Text == btnOn.Text) + { + btnOn.TextColor = CSS.CSS_Color.textConfirmColor; + } + else + { + btnOff.TextColor = CSS.CSS_Color.textConfirmColor; + } + } + + }; + if (edit) + { + GetEditState(device, edit, index, relayView.btnState, null, null, null); + } + + } + break; + + } + + + + #region 淇濆瓨 + ///淇濆瓨View + LogicView.SaveView saveView = new LogicView.SaveView(); + saveView.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(24), HDLUtils.RectCornerTopLeft | HDLUtils.RectCornerTopRight); + saveView.btnSave.TextID = StringId.completeLogic; + this.AddChidren(saveView.FLayoutView()); + saveView.btnClick.MouseUpEventHandler += (sen, e) => + { + + + if (selectedState != "unknown") + { + if (if_type == LogicMethod.condition_if) + { + + Input inputDevice = new Input(); + inputDevice.condition_type = "3"; + inputDevice.sid = device.sid; + inputDevice.condition = dicSateteList; + + + if (edit) + { + //绉婚櫎鏃ф暟鎹� + Logic.currlogic.input.RemoveAt(index); + //鏂版暟鎹彃鍏ユ棫鏁版嵁鐨勪綅缃�; + Logic.currlogic.input.Insert(index, inputDevice); + } + else + { + //娣诲姞涓�涓潯浠� + AddCondition(inputDevice); + } + } + else + { + Output outputDevice = new Output(); + outputDevice.target_type = "1"; + outputDevice.sid = device.sid; + outputDevice.status = dicSateteList; + if (edit) + { + //绉婚櫎鏃ф暟鎹� + Logic.currlogic.output.RemoveAt(index); + //鏂版暟鎹彃鍏ユ棫鏁版嵁鐨勪綅缃�; + Logic.currlogic.output.Insert(index, outputDevice); + } + else + { + //娣诲姞涓�涓潯浠� + AddTarget(outputDevice); + } + } + } + else + { + if (!edit) + { + //鎻愮ず鐢ㄦ埛 + return; + } + this.RemoveFromParent(); + return; + } + LogicMethod.RemoveAllView(); + AddLogic addLogic = new AddLogic(); + MainPage.BasePageView.AddChidren(addLogic); + addLogic.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + + #endregion + + } + /// <summary> + /// 绉婚櫎鎺т欢 + /// </summary> + /// <param name="frame"></param> + private void RemView(FrameLayout frame) + { + frame.RemoveFromParent(); + } + /// <summary> + /// 鏄剧ず缂栬緫涔嬪墠鐨勮澶囩姸鎬� + /// </summary> + /// <param name="device">缂栬緫璁惧</param> + /// <param name="edit">缂栬緫鐘舵��</param> + /// <param name="index">缂栬緫鏁版嵁鐨勭储寮�</param> + /// <param name="button1">鏄剧ずBtn</param> + /// <param name="button2">鏄剧ずBtn</param> + /// <param name="button3">鏄剧ずBtn</param> + /// <param name="button4">鏄剧ずBtn</param> + private void GetEditState(Entity.Function device, bool edit, int index, Button button1, Button button2, Button button3, Button button4) + { + var dicList = new List<Dictionary<string, string>>(); + switch (if_type) + { + case LogicMethod.condition_if: + { + Input inputs = Logic.currlogic.input[index]; + dicList = inputs.condition as List<Dictionary<string, string>>; + } + break; + case LogicMethod.target_if: + { + Output outputs = Logic.currlogic.output[index]; + dicList = outputs.status as List<Dictionary<string, string>>; + } + break; + } + switch (device.functionType) + { + //寮�鍏崇伅鍏� + case FunctionType.Relay: + { + foreach (var dic in dicList) + { + string value = dic["value"]; + if (value == "on") + { + button1.Text = Language.StringByID(StringId.onLogic); + } + else + { + button1.Text = Language.StringByID(StringId.offLogic); + } + } + } + break; + + } + + } + /// <summary> + /// 娣诲姞閫変腑鏁版嵁 + /// </summary> + /// <param name="dicList">鏁版嵁鍒楄〃</param> + /// <param name="keyValue">璇嗗埆璁惧</param> + /// <param name="dictionary">閫変腑鏁版嵁</param> + /// <returns></returns> + private void AddDictionaryData(List<Dictionary<string, string>> dicList, string keyValue, Dictionary<string, string> dictionary) + { + int indexValue = -1; + for (int i = 0; i < dicList.Count; i++) + { + var dic = dicList[i]; + if (dic.ContainsValue(keyValue)) + { + //鍒ゆ柇鏄惁瀛樺湪 + indexValue = i; + break; + } + } + + if (indexValue != -1) + { + //瀛樺湪绉婚櫎 + dicList.RemoveAt(indexValue); + //閲嶆柊娣诲姞 + dicList.Insert(indexValue, dictionary); + } + else + { + //鏂版坊鍔� + dicList.Add(dictionary); + } + + } + /// <summary> + /// 娣诲姞鏉′欢 + /// </summary> + /// <param name="input"></param> + private void AddCondition(Input input) + { + int indexValue = -1; + for (int i = 0; i < Logic.currlogic.input.Count; i++) + { + if (Logic.currlogic.input[i].sid == input.sid) + { + indexValue = i; + break; + } + } + + if (indexValue != -1) + { + Logic.currlogic.input.RemoveAt(indexValue); + Logic.currlogic.input.Insert(indexValue, input); + } + else + { + Logic.currlogic.input.Add(input); + } + + } + /// <summary> + /// 娣诲姞鐩爣 + /// </summary> + /// <param name="target"></param> + private void AddTarget(Output target) + { + int indexValue = -1; + for (int i = 0; i < Logic.currlogic.output.Count; i++) + { + if (Logic.currlogic.output[i].sid == target.sid) + { + indexValue = i; + break; + } + } + + if (indexValue != -1) + { + Logic.currlogic.output.RemoveAt(indexValue); + Logic.currlogic.output.Insert(indexValue, target); + } + else + { + Logic.currlogic.output.Add(target); + } + + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs new file mode 100644 index 0000000..f09d0b0 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/FunTpye.cs @@ -0,0 +1,256 @@ +锘縰sing System; +using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; +using Shared; +using System.Collections.Generic; + +namespace HDL_ON.UI.UI2.Intelligence.Automation +{ + public class FunTpye : FrameLayout + { + public FunTpye() + { + Tag = "Logic"; + } + /// <summary> + /// 榛樿閫変腑鏄埧闂存椂锛氬叏閮ㄥ尯鍩� + /// </summary> + private Entity.Room selectedRoom = new Entity.Room { sid = Language.StringByID(StringId.allAreas) }; + /// <summary> + /// 琛ㄧず鏄�(鏉′欢/鐩爣) + /// </summary> + private string if_type; + public void Show(string str) + { + + if_type = str; + this.BackgroundColor = CSS.CSS_Color.viewMiddle; + LogicView.TopView topView = new LogicView.TopView(); + this.AddChidren(topView.FLayoutView()); + topView.clickBackBtn.MouseUpEventHandler += (e, sen) => + { + RemoveFromParent(); + }; + topView.topNameBtn.TextID = StringId.selectedFunCondition; + + LogicView.FunAllAreaView funAllAreaView = new LogicView.FunAllAreaView(); + funAllAreaView.frameLayout.Y = topView.frameLayout.Bottom; + this.AddChidren(funAllAreaView.FLayoutView()); + + VerticalScrolViewLayout vv = new VerticalScrolViewLayout + { + Y = Application.GetRealHeight(117), + Height = Application.GetRealHeight(667 - 117), + }; + this.AddChidren(vv); + + //鎴块棿鐐瑰嚮浜嬩欢 + EventHandler<MouseEventArgs> roomClick = (sender, e) => + { + #region 鍖哄煙寮规鐣岄潰 + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + this.AddChidren(fLayout); + fLayout.MouseUpEventHandler += (sender1, e1) => + { + fLayout.RemoveFromParent(); + }; + + FrameLayout bghFrameLyout = new FrameLayout + { + X = Application.GetRealWidth(10), + Y = Application.GetRealHeight(103), + Width = Application.GetRealWidth(160), + Height = Application.GetRealHeight(21 + 44), + BackgroundImagePath = "LogicIcon/bjicon.png", + }; + fLayout.AddChidren(bghFrameLyout); + + FrameLayout areaBgh = new FrameLayout + { + X = Application.GetRealWidth(8), + Y = Application.GetRealHeight(14), + Width = Application.GetRealWidth(144), + Height = Application.GetRealHeight(44), + }; + VerticalScrolViewLayout vvBgh = new VerticalScrolViewLayout + { + X = Application.GetRealWidth(8), + Y = Application.GetRealHeight(14), + Width = Application.GetRealWidth(144), + Height = Application.GetRealHeight(44 * 5), + }; + var roomList = LogicMethod.GetGatewayRoomList(Language.StringByID(StringId.allAreas)); + if (roomList.Count > 5) + { + bghFrameLyout.Height = Application.GetRealHeight(21 + 44 * 5); + bghFrameLyout.AddChidren(vvBgh); + + } + else + { + + bghFrameLyout.AddChidren(areaBgh); + bghFrameLyout.Height = Application.GetRealHeight(21 + 44 * roomList.Count); + areaBgh.Height = Application.GetRealHeight(44 * roomList.Count); + } + #endregion + + for (int i = 0; i < roomList.Count; i++) + { + var room = roomList[i]; + LogicView.AreaView areaView = new LogicView.AreaView(); + if (roomList.Count > 5) + { + vvBgh.AddChidren(areaView.FLayoutView()); + } + else + { + areaView.frameLayout.Y = Application.GetRealHeight(i * 44); + areaBgh.AddChidren(areaView.FLayoutView()); + } + areaView.btnRoomName.Text = room.name; + areaView.btnClick.Tag = room; + areaView.btnClick.MouseUpEventHandler += (sender2, e2) => + { + fLayout.RemoveFromParent(); + funAllAreaView.btnText1.Text = (areaView.btnClick.Tag as Entity.Room).name; + ///鍒囨崲鎴块棿榛樿鍔熻兘绫诲瀷鍏ㄩ儴; + funAllAreaView.btnText2.Text = Language.StringByID(StringId.allFun); + selectedRoom = (areaView.btnClick.Tag as Entity.Room); + ///鑾峰彇鏄剧ず璁惧鍒楄〃 + var list = LogicMethod.GetFunctionDeviceList(areaView.btnClick.Tag as Entity.Room,if_type); + + DeviceListView(vv, list); + }; + + } + }; + funAllAreaView.btnText1.MouseUpEventHandler += roomClick; + funAllAreaView.btnIcon1.MouseUpEventHandler += roomClick; + //鍔熻兘鐐瑰嚮浜嬩欢 + EventHandler<MouseEventArgs> funClick = (sender3, e3) =>{ + #region 鍖哄煙寮规鐣岄潰 + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + this.AddChidren(fLayout); + fLayout.MouseUpEventHandler += (sender1, e1) => + { + fLayout.RemoveFromParent(); + }; + + FrameLayout bghFrameLyout = new FrameLayout + { + X = Application.GetRealWidth(10), + Y = Application.GetRealHeight(103), + Width = Application.GetRealWidth(160), + Height = Application.GetRealHeight(21 + 44), + BackgroundImagePath = "LogicIcon/bjicon.png", + }; + fLayout.AddChidren(bghFrameLyout); + + FrameLayout areaBgh = new FrameLayout + { + X = Application.GetRealWidth(8), + Y = Application.GetRealHeight(14), + Width = Application.GetRealWidth(144), + Height = Application.GetRealHeight(44), + }; + VerticalScrolViewLayout vvBgh = new VerticalScrolViewLayout + { + X = Application.GetRealWidth(8), + Y = Application.GetRealHeight(14), + Width = Application.GetRealWidth(144), + Height = Application.GetRealHeight(44 * 5), + }; + + //鑾峰彇鏈�缁堟樉绀哄垪琛� + var functionList = LogicMethod.GetFunctionDeviceList(selectedRoom, if_type); + //鑾峰彇璁惧鍒楄〃鐨勭被鍨嬶紙渚嬪锛氱伅鍏夌被锛岀獥甯樼被銆傘�傘�傦級 + var deviceTypeList = LogicMethod.GetDeviceTypeList(functionList); + + + if (deviceTypeList.Count > 5) + { + bghFrameLyout.Height = Application.GetRealHeight(21 + 44 * 5); + bghFrameLyout.AddChidren(vvBgh); + + } + else + { + bghFrameLyout.AddChidren(areaBgh); + bghFrameLyout.Height = Application.GetRealHeight(21 + 44 * deviceTypeList.Count); + areaBgh.Height = Application.GetRealHeight(44 * deviceTypeList.Count); + } + #endregion + + for (int i = 0; i < deviceTypeList.Count; i++) + { + var deviceTypeName = deviceTypeList[i]; + LogicView.AreaView areaView = new LogicView.AreaView(); + if (deviceTypeList.Count > 5) + { + vvBgh.AddChidren(areaView.FLayoutView()); + } + else + { + areaView.frameLayout.Y = Application.GetRealHeight(i * 44); + areaBgh.AddChidren(areaView.FLayoutView()); + } + areaView.btnRoomName.Text = deviceTypeName; + areaView.btnClick.Tag = deviceTypeName; + areaView.btnClick.MouseUpEventHandler += (sender, e2) => + { + fLayout.RemoveFromParent(); + funAllAreaView.btnText2.Text = areaView.btnClick.Tag.ToString(); + ///鑾峰彇鍗曚釜绫诲瀷锛堜緥濡傦細鐏厜绫汇�傘�傦級璁惧FunctionType鍒楄〃 + var typeFunctionList = LogicMethod.GetDeviceTypeFunctionList(areaView.btnClick.Tag.ToString()); + ///鑾峰彇鍗曚釜绫诲瀷锛堜緥濡傦細鐏厜绫汇�傘�傦級鏄剧ず璁惧鍒楄〃 + var lists = LogicMethod.GetShowDeviceList(typeFunctionList, functionList); + DeviceListView(vv, lists); + }; + + } + }; + funAllAreaView.btnText2.MouseUpEventHandler += funClick; + funAllAreaView.btnIcon2.MouseUpEventHandler += funClick; + ///鑾峰彇鏄剧ず璁惧鍒楄〃 + var deviceList = LogicMethod.GetFunctionDeviceList(selectedRoom, if_type); + DeviceListView(vv, deviceList); + + } + /// <summary> + /// 鏄剧ず璁惧鐨刅iew + /// </summary> + /// <param name="verticalScrolView">涓婁笅婊戝姩</param> + /// <param name="deviceList"></param> + public void DeviceListView(VerticalScrolViewLayout verticalScrolView, List<HDL_ON.Entity.Function> deviceList) + { + verticalScrolView.RemoveAll(); + foreach (var dev in deviceList) + { + LogicView.SelectTypeView funView = new LogicView.SelectTypeView(); + funView.btnText.Visible = false; + funView.btnDeviceName.Visible = true; + funView.btnRoomName.Visible = true; + funView.btnLine.X = Application.GetRealWidth(16); + funView.btnLine.Width = Application.GetRealWidth(343); + verticalScrolView.AddChidren(funView.FLayoutView()); + funView.btnIcon.UnSelectedImagePath = LogicMethod.GetIconPath(dev.functionType); + funView.btnDeviceName.Text = dev.name; + funView.btnRoomName.Text = dev.GetRoomListName(); + funView.btnClick.MouseUpEventHandler += (sen,e) => { + DeviceFunList deviceFunList = new DeviceFunList(); + MainPage.BasePageView.AddChidren(deviceFunList); + deviceFunList.Show(dev,0,false,if_type); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + } + } + } + + +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs new file mode 100644 index 0000000..5f3a71b --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/InpOrOutLogicMethod.cs @@ -0,0 +1,262 @@ +锘縰sing System; +using Shared; +using System.Collections.Generic; +namespace HDL_ON.UI.UI2.Intelligence.Automation +{ + public class InpOrOutLogicMethod + { + /// <summary> + /// 杈撳叆鏉′欢澶勭悊鏂规硶 + /// </summary> + /// <param name="thisView">褰撳墠鐣岄潰</param> + /// <param name="viewLayout">涓婁笅婊戝姩鎺т欢</param> + public static void InputCondition(FrameLayout thisView,VerticalScrolViewLayout viewLayout) + { + for (int i = 0; i < Logic.currlogic.input.Count; i++) + { + Input inputCondition = Logic.currlogic.input[i]; + ///鍚勭鏉′欢鐨刅iew + LogicView.AddOutputInputView inputView = new LogicView.AddOutputInputView(); + viewLayout.AddChidren(inputView.FLayoutView()); + ///璁板綍鏉′欢绫诲瀷 + inputView.btnClick.Name = inputCondition.condition_type; + ///璁板綍鏉′欢绱㈠紩 + inputView.btnClick.Tag = i; + ///鏉′欢鐘舵�佹暟缁� + List<Dictionary<string, string>> dicList = inputCondition.condition as List<Dictionary<string, string>>; + //鏄剧ず鏉′欢鍚勭绫诲瀷鐘舵�� + switch (inputCondition.condition_type) + { + case "1": + { + inputView.btnIcon.UnSelectedImagePath = "LogicIcon/timecondition.png"; + foreach (var dic in dicList) + { + string value = dic["value"]; + inputView.btnText.Text = Language.StringByID(StringId.hour) + ": " + value; + inputView.btnClick.AddTag("timepoint", value); + } + + } + break; + case "2": + { + inputView.btnIcon.UnSelectedImagePath = "LogicIcon/timecondition.png"; + foreach (var dic in dicList) + { + string value = dic["value"]; + inputView.btnText.Text = Language.StringByID(StringId.timeHorizon) + ": " + value; + inputView.btnClick.AddTag("timeHorizon", value); + } + + } + break; + case "3": + { + //鐢╯id鎵惧埌璁惧锛� + var device = LogicMethod.GetDevice(inputCondition.sid); + //鐢ㄨ澶囩殑functionType绫诲瀷鎵惧埌瀵瑰簲鍥炬爣锛� + inputView.btnIcon.UnSelectedImagePath = LogicMethod.GetIconPath(device.functionType); + //鏄剧ず璁惧鍚嶇О + inputView.btnText.Text = device.name; + //鏀瑰彉璁惧鍚嶇О鏄剧ず鎺т欢瀹藉害 + inputView.btnText.Width = Application.GetRealWidth(80); + //鍖哄埆涓嶅悓璁惧锛屾樉绀轰笉鍚岃澶囩姸鎬� + switch (device.functionType) + { + case FunctionType.Relay: + {//寮�鍏崇伅 + foreach (var dic in dicList) + { + + string value = dic["value"]; + if (value == "on") + { + inputView.btnState.Text = Language.StringByID(StringId.onLogic); + + } + else + { + inputView.btnState.Text = Language.StringByID(StringId.offLogic); + } + } + } + break; + } + } + break; + + } + //鍐嶆缂栬緫鏉′欢鐘舵�佺偣鍑讳簨浠� + inputView.btnClick.MouseUpEventHandler += (sen, e) => + { + Button button = (Button)sen; + //鎵惧埌褰撳墠缂栬緫鐨勭储寮� + int indexVulae = int.Parse(inputView.btnClick.Tag.ToString()); + //鏍囪缂栬緫鐘舵�� + bool edit = true; + //琛ㄧず鏄潯浠� + string if_type = LogicMethod.condition_if; + switch (button.Name) + { + case "1": + { + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + thisView.AddChidren(fLayout); + TimeTpye timeTpye = new TimeTpye(); + timeTpye.TimePoint(fLayout, edit, indexVulae); + } + break; + case "2": + { + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + thisView.AddChidren(fLayout); + TimeTpye timeTpye = new TimeTpye(); + timeTpye.TimeHorizon(fLayout, edit, indexVulae); + } + break; + + case "3": + { + //鐢╯id鎵惧埌璁惧锛� + var device = LogicMethod.GetDevice(inputCondition.sid); + DeviceFunList deviceFunList = new DeviceFunList(); + MainPage.BasePageView.AddChidren(deviceFunList); + deviceFunList.Show(device, indexVulae,edit, if_type); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + } + break; + + + } + }; + } + + } + /// <summary> + /// 杈撳嚭鏉′欢澶勭悊鏂规硶 + /// </summary> + /// <param name="thisView">褰撳墠鐣岄潰</param> + /// <param name="viewLayout">涓婁笅婊戝姩鎺т欢</param> + public static void OutputTarget(FrameLayout thisView, VerticalScrolViewLayout viewLayout) + { + + for (int i = 0; i < Logic.currlogic.output.Count; i++) + { + Output outputTarget = Logic.currlogic.output[i]; + ///鍚勭鏉′欢鐨刅iew + LogicView.AddOutputInputView targetView = new LogicView.AddOutputInputView(); + viewLayout.AddChidren(targetView.FLayoutView()); + ///璁板綍鏉′欢绫诲瀷 + targetView.btnClick.Name = outputTarget.target_type; + ///璁板綍鏉′欢绱㈠紩 + targetView.btnClick.Tag = i; + ///鏉′欢鐘舵�佹暟缁� + List<Dictionary<string, string>> dicList = outputTarget.status as List<Dictionary<string, string>>; + //鏄剧ず鏉′欢鍚勭绫诲瀷鐘舵�� + switch (outputTarget.target_type) + { + case "1": + { + //鐢╯id鎵惧埌璁惧锛� + var device = LogicMethod.GetDevice(outputTarget.sid); + //鐢ㄨ澶囩殑functionType绫诲瀷鎵惧埌瀵瑰簲鍥炬爣锛� + targetView.btnIcon.UnSelectedImagePath = LogicMethod.GetIconPath(device.functionType); + //鏄剧ず璁惧鍚嶇О + targetView.btnText.Text = device.name; + //鏀瑰彉璁惧鍚嶇О鏄剧ず鎺т欢瀹藉害 + targetView.btnText.Width = Application.GetRealWidth(80); + //鍖哄埆涓嶅悓璁惧锛屾樉绀轰笉鍚岃澶囩姸鎬� + switch (device.functionType) + { + case FunctionType.Relay: + {//寮�鍏崇伅 + foreach (var dic in dicList) + { + + string value = dic["value"]; + if (value == "on") + { + targetView.btnState.Text = Language.StringByID(StringId.onLogic); + + } + else + { + targetView.btnState.Text = Language.StringByID(StringId.offLogic); + } + } + } + break; + } + } + break; + case "2": + { + //鐢╯id鎵惧埌鍦烘櫙锛� + var scene = LogicMethod.GetSecne(outputTarget.sid); + targetView.btnIcon.UnSelectedImagePath = "LogicIcon/scene.png"; + targetView.btnNextIcon.Visible = false; + //鏄剧ず鍦烘櫙鍚嶇О + targetView.btnText.Text = scene.name; + } + break; + case "3": + { + targetView.btnIcon.UnSelectedImagePath = "LogicIcon/delayed.png"; + foreach (var dic in dicList) + { + string value = dic["value"]; + targetView.btnText.Text =value; + } + } + break; + } + //鍐嶆缂栬緫鏉′欢鐘舵�佺偣鍑讳簨浠� + targetView.btnClick.MouseUpEventHandler += (sen, e) => + { + Button button = (Button)sen; + //鎵惧埌褰撳墠缂栬緫鐨勭储寮� + int indexVulae = int.Parse(targetView.btnClick.Tag.ToString()); + //鏍囪缂栬緫鐘舵�� + bool edit = true; + //琛ㄧず鏄洰鏍� + string if_type = LogicMethod.target_if; + switch (button.Name) + { + case "1": + { + //鐢╯id鎵惧埌璁惧锛� + var device = LogicMethod.GetDevice(outputTarget.sid); + DeviceFunList deviceFunList = new DeviceFunList(); + MainPage.BasePageView.AddChidren(deviceFunList); + deviceFunList.Show(device, indexVulae, edit, if_type); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + } + break; + case "3": + { + + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + thisView.AddChidren(fLayout); + AddTarget addTarget = new AddTarget(); + addTarget.Delayed(fLayout, edit, indexVulae); + + + } + break; + } + }; + } + } + + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs new file mode 100644 index 0000000..95f9f48 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Logic.cs @@ -0,0 +1,105 @@ +锘縰sing System; +using System.Collections.Generic; +namespace HDL_ON.UI.UI2.Intelligence.Automation +{ + /// <summary> + /// 閫昏緫瀛樺偍鏁版嵁瀵硅薄 + /// </summary> + public class Logic + { + /// <summary> + /// 閫昏緫鍒楄〃 + /// </summary> + public static List<Logic> LogicList = new List<Logic>(); + /// <summary> + /// 褰撳墠閫昏緫 + /// </summary> + public static Logic currlogic; + /// <summary> + /// 閫昏緫鍞竴鏍囪瘑 + /// </summary> + public string sid = ""; + /// <summary> + /// 閫昏緫鍚嶇О + /// </summary> + public string name = "閫昏緫涓�"; + /// <summary> + /// 閫昏緫鏉′欢鍏崇郴锛堜笌and:锛屾垨:or锛� + /// </summary> + public string relation = "or"; + /// <summary> + /// 閫昏緫鐘舵�侊紙true锛宖alse锛� + /// </summary> + public string enable = "true"; + /// <summary> + /// 閫昏緫鎵ц寰幆鍛ㄦ湡锛堟墽琛屼竴娆★紝姣忓ぉ锛屾瘡鏈堬紝鏄熸湡锛� + /// </summary> + public Cycle cycle = new Cycle(); + /// <summary> + /// 閫昏緫杈撳叆鏉′欢鏁扮粍 + /// </summary> + public List<Input> input = new List<Input>(); + /// <summary> + /// 閫昏緫杈撳嚭鐩爣鏁扮粍 + /// </summary> + public List<Output> output = new List<Output>(); + + + } + /// <summary> + /// 鎵ц鍛ㄦ湡瀵硅薄 + /// </summary> + public class Cycle + { + /// <summary> + /// 鏃堕棿绫诲瀷 + /// (鎵ц涓�娆�:once锛屾瘡澶�:day锛屾瘡鏈�:mon锛屾槦鏈�:week锛屾棩鏈熸:date_to_date) + /// </summary> + public string type = "day"; + public List<string> value = new List<string>(); + } + /// <summary> + /// 杈撳叆鏉′欢瀵硅薄 + /// </summary> + public class Input + { + /// <summary> + /// 閫昏緫杈撳叆鏉′欢鍞竴鏍囪瘑 + /// </summary> + public string sid = ""; + /// <summary> + /// 閫昏緫杈撳叆鏉′欢绫诲瀷 + /// 鏃堕棿鐐规潯浠�=1; + /// 鏃堕棿娈垫潯浠�=2; + /// 璁惧鐘舵�佸彉鍖栨潯浠�=3; + /// 鐜淇℃伅鏉′欢=4; + /// 瀹夐槻鏉′欢=5; + /// 浜戠澶╂皵鏉′欢=6; + /// 鏌愪釜閫昏緫/鍦烘櫙鐨勮緭鍑烘潯浠�=7; + /// 鍦扮悊鍥存爮=8; + /// </summary> + public string condition_type = ""; + public List<Dictionary<string, string>> condition = new List<Dictionary<string, string>>(); + } + /// <summary> + /// 杈撳嚭鐩爣瀵硅薄 + /// </summary> + public class Output + { + /// <summary> + /// 閫昏緫杈撳嚭鐩爣鍞竴鏍囪瘑 + /// </summary> + public string sid = ""; + /// <summary> + /// 閫昏緫杈撳嚭鐩爣绫诲瀷 + /// 璁惧=1; + /// 鍦烘櫙=2; + /// 寤舵椂=3; + /// </summary> + public string target_type = ""; + public List<Dictionary<string, string>> status = new List<Dictionary<string, string>>(); + } + + +} + diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs new file mode 100644 index 0000000..17ebb5e --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicMethod.cs @@ -0,0 +1,344 @@ +锘縰sing System; +using System.Collections.Generic; +using Shared; + +namespace HDL_ON.UI.UI2.Intelligence.Automation +{ + + public class LogicMethod + { + /// <summary> + /// 琛ㄧず鏄潯浠� + /// </summary> + public const string condition_if = "鏉′欢"; + /// <summary> + /// 琛ㄧず鏄洰鏍� + /// </summary> + public const string target_if = "鐩爣"; + /// <summary> + /// 绉婚櫎鎵�鏈�"Logic"鐣岄潰 + /// </summary> + public static void RemoveAllView() + { + MainPage.BasePageView.RemoveViewByTag("Logic"); + } + /// <summary> + /// 鐢熸垚閫昏緫sid鏂规硶 + /// </summary> + public static string NewSid() + { + string logicId = ""; + try + { + string sOidBeginsWith = "000101";//鍘傚晢 + 閫氳鏂瑰紡 + DateTime dt = DateTime.Now; + DateTime startTime = TimeZoneInfo.ConvertTimeToUtc(new DateTime(2020, 1, 1)); + long m = (long)((dt - startTime).TotalMilliseconds / 10); + string sTimeSpan = "00000000"; + + byte[] arry = new byte[4]; + arry[0] = (byte)(m & 0xFF); + arry[1] = (byte)((m & 0xFF00) >> 8); + arry[2] = (byte)((m & 0xFF0000) >> 16); + arry[3] = (byte)((m >> 24) & 0xFF); + sTimeSpan = arry[0].ToString("X2") + arry[1].ToString("X2") + arry[2].ToString("X2") + arry[3].ToString("X2"); + + + if (sTimeSpan.Length > 8) + { + sTimeSpan = sTimeSpan.Substring(0, 8); + } + else + { + sTimeSpan = "00000000"; + } + + logicId = sOidBeginsWith + sTimeSpan; + + logicId += "0A"; + logicId += "0A01"; + //0A01 鐗╂ā鍨嬩负閫昏緫锛� 0001 琛ㄧず 1 鍙烽�昏緫鍔熻兘 + int iTopLogicId = 1; + + Random random = new Random(); + iTopLogicId = random.Next(0, 255); + iTopLogicId += random.Next(0, 255); + + logicId += iTopLogicId.ToString("X4");//閫昏緫鍙� 涓や釜byte + logicId += "1100"; + } + catch + { + return logicId; + } + return logicId; + } + /// <summary> + /// 灏佽Dictionary瀵硅薄 + /// </summary> + /// <param name="dic">Dictionary绫�</param> + /// <param name="key">鍋�</param> + /// <param name="value">鍊�</param> + public static void dictionary(Dictionary<string, string> dic, string key, string value) + { + if (dic.ContainsKey(key)) //鍒ゆ柇鏄惁瀛樺湪閿�� + { + //閿瓨鍦ㄧЩ闄� + dic.Remove(key); + } + //娣诲姞閿�� + dic.Add(key, value); + } + /// <summary> + /// 鑾峰彇缃戝叧鎴块棿鍒楄〃 + /// </summary> + /// <returns></returns> + public static List<HDL_ON.Entity.Room> GetGatewayRoomList() + { + return HDL_ON.Entity.DB_ResidenceData.rooms; + } + /// <summary> + /// 鑾峰彇缃戝叧鎴块棿鍒楄〃 + /// </summary> + /// <returns></returns> + public static List<HDL_ON.Entity.Room> GetGatewayRoomList(string name) + { + + List<Entity.Room> roomList = new List<Entity.Room>(); + Entity.Room room1 = new Entity.Room(); + room1.name = name;//榛樿涓�涓埧闂村悕涓�:鍏ㄩ儴鍖哄煙 + room1.sid = "鍏ㄩ儴鍖哄煙";//榛樿sid鐢ㄨ瘑鍒鎴块棿 + roomList.Add(room1);//榛樿娣诲姞鍒版埧闂村垪琛ㄩ噷 + var roomLists = GetGatewayRoomList(); + foreach (var room in roomLists) + { + roomList.Add(room); + } + + return roomList; + } + /// <summary> + /// 鑾峰彇缃戝叧璁惧鍒楄〃 + /// </summary> + /// <returns></returns> + public static List<HDL_ON.Entity.Function> GetGatewayDeviceList() + { + + return HDL_ON.Entity.DB_ResidenceData.functionList.GetAllFunction(); + } + /// <summary> + /// 鑾峰彇缃戝叧鍦烘櫙鍒楄〃 + /// </summary> + /// <returns></returns> + public static List<HDL_ON.Entity.Scene> GetSceneList() + { + return HDL_ON.Entity.DB_ResidenceData.functionList.scenes; + } + /// <summary> + /// 鑾峰彇鎴块棿鐨勮澶囧垪琛� + /// </summary> + /// <param name="room">褰撳墠鎴块棿</param> + /// <returns></returns> + public static List<HDL_ON.Entity.Function> GetRoomDevice(HDL_ON.Entity.Room room) + { + List<HDL_ON.Entity.Function> deviceLists = new List<Entity.Function>(); + List<HDL_ON.Entity.Function> lists = GetGatewayDeviceList(); + foreach (var dev in lists) + { + if (dev.roomIdList.Find((id) => id == room.sid) != null) + { + deviceLists.Add(dev); + } + if (room.sid == "鍏ㄩ儴鍖哄煙") + { + //鎴块棿鍚嶄负鍏ㄩ儴鍖哄煙鏃讹紝鏄剧ず缃戝叧鍏ㄩ儴璁惧 + deviceLists = lists; + } + + } + return deviceLists; + } + /// <summary> + /// 鑾峰彇褰撲釜璁惧 + /// </summary> + /// <param name="sid">璁惧鍞竴鏍囪瘑</param> + /// <returns></returns> + public static HDL_ON.Entity.Function GetDevice(string sid) + { + HDL_ON.Entity.Function device = new Entity.Function() { name= "Unknown",sid="璁惧涓嶅瓨鍦�"}; + List<HDL_ON.Entity.Function> deviceLists = GetGatewayDeviceList(); + foreach (var dev in deviceLists) + { + if (dev.sid == sid) + { + device = dev; + break; + } + } + return device; + } + + /// <summary> + /// 鑾峰彇褰撲釜鍦烘櫙 + /// </summary> + /// <param name="sid">鍦烘櫙鍞竴鏍囪瘑</param> + /// <returns></returns> + public static HDL_ON.Entity.Scene GetSecne(string sid) + { + HDL_ON.Entity.Scene scene = new Entity.Scene() { name = "Unknown", sid = "鍦烘櫙涓嶅瓨鍦�" }; + List<HDL_ON.Entity.Scene> sceneLists = GetSceneList(); + foreach (var sce in sceneLists) + { + if (sce.sid == sid) + { + scene = sce; + break; + } + } + return scene; + } + /// <summary> + /// 鑾峰彇鎴块棿鍚�(鍗虫槸=鍖哄煙鍚嶇О) + /// </summary> + /// <param name="device">璁惧</param> + /// <returns></returns> + public static string GetGetRoomName(HDL_ON.Entity.Function device) + { + string roomName = ""; + List<HDL_ON.Entity.Room> roomLists = GetGatewayRoomList(); + + foreach (var dev in device.roomIdList) + { + var room = roomLists.Find((c) => c.sid == dev); + if (room != null) + { + roomName += room.floorName + "." + room.name + ","; + } + } + + return roomName.TrimEnd(','); + } + /// <summary> + /// 鑾峰彇璁惧绫诲瀷鍥炬爣 + /// </summary> + /// <param name="functionType">璁惧绫诲瀷</param> + /// <returns></returns> + public static string GetIconPath(FunctionType functionType) + { + string strPath = ""; + switch (functionType) + { + case FunctionType.Relay: + { + strPath = "LogicIcon/lightloguc.png"; + } + break; + + } + return strPath; + } + /// <summary> + /// 璁惧绫诲瀷鐨勫垪琛�(鐏厜绫伙紝绐楀笜绫汇�傘�傘��) + /// </summary> + /// <param name="deviceList">璁惧鍒楄〃</param> + /// <returns></returns> + public static List<string> GetDeviceTypeList(List<HDL_ON.Entity.Function> deviceList) + { + List<string> deviceStrTypeList = new List<string>(); + deviceStrTypeList.Clear(); + var lightjosn = deviceList.Find((device) => device.functionType == FunctionType.Relay || device.functionType == FunctionType.Dimmer); + if (lightjosn != null) + { + deviceStrTypeList.Add(Language.StringByID(StringId.Lights)); + } + + var curtainjosn = deviceList.Find((device) => device.functionType ==FunctionType.Curtain); + if (curtainjosn != null) + { + deviceStrTypeList.Add(Language.StringByID(StringId.Curtain)); + } + + var ac = deviceList.Find((device) => device.functionType == FunctionType.AC); + if (ac != null) + { + deviceStrTypeList.Add(Language.StringByID(StringId.AC)); + } + return deviceStrTypeList; + + } + /// <summary> + /// 璁惧绫诲瀷FunctionType鍒楄〃 + /// </summary> + /// <param name="deviceType">璁惧绫诲瀷(鐏厜绫伙紝绐楀笜绫汇��)</param> + /// <returns></returns> + public static List<FunctionType> GetDeviceTypeFunctionList(string deviceType) + { + List<FunctionType> functionTypeList = new List<FunctionType>(); + if (deviceType == Language.StringByID(StringId.Lights)) + { + functionTypeList.Add(FunctionType.Relay); + functionTypeList.Add(FunctionType.Dimmer); + } + else if (deviceType == Language.StringByID(StringId.Curtain)) + { + functionTypeList.Add(FunctionType.Curtain); + } + return functionTypeList; + + } + /// <summary> + /// 鏉′欢/鐩爣鏀寔璁惧 + /// </summary> + /// <returns></returns> + public static List<FunctionType> GetSupportEquipment(string if_type) + { + List<FunctionType> deviceTypeList = new List<FunctionType>(); + switch (if_type) { + case condition_if: { + deviceTypeList.Add(FunctionType.Relay); + } + break; + case target_if: + { + deviceTypeList.Add(FunctionType.Relay); + } + break; + } + return deviceTypeList; + } + /// <summary> + /// 鏄剧ず鐨勮澶囧垪琛� + /// </summary> + /// <param name="functionType">婧愭暟鎹垪琛�1</param> + /// <param name="deviceList">婧愭暟鎹垪琛�2</param> + /// <returns></returns> + public static List<Entity.Function> GetShowDeviceList(List<FunctionType> functionType, List<HDL_ON.Entity.Function> deviceList) + { + List<HDL_ON.Entity.Function> devList = new List<Entity.Function>(); + foreach (var dev in deviceList) + { + if (functionType.Contains(dev.functionType)) + { + ///杩囨护鎺変笉闇�瑕佹樉绀虹殑璁惧 + devList.Add(dev); + } + } + return devList; + } + /// <summary> + /// 杩斿洖鏈�缁堟敮鎸佹樉绀哄嚭鏉ョ殑璁惧鍒楄〃 + /// </summary> + /// <param name="room">褰撳墠鎴块棿</param> + /// <param name="str">鍒ゆ柇绗︼紙琛ㄧず=杈撳叆璁惧鍜岃緭鍑鸿澶囷級</param> + /// <returns></returns> + public static List<Entity.Function> GetFunctionDeviceList(Entity.Room room, string str) + { + List<FunctionType> functionTypeList = GetSupportEquipment(str); + //杩斿洖鎴块棿璁惧鍒楄〃 + var roomDeviceList = GetRoomDevice(room); + //杩斿洖鏈�缁堟敮鎸佹樉绀哄嚭鏉ョ殑璁惧鍒楄〃 + var list = GetShowDeviceList(functionTypeList, roomDeviceList); + return list; + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AddOutputInputTextView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AddOutputInputTextView.cs new file mode 100644 index 0000000..007edf4 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AddOutputInputTextView.cs @@ -0,0 +1,42 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class AddOutputInputTextView + { + /// <summary> + /// 涓绘帶浠� + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Height = Application.GetRealHeight(46), + }; + /// <summary> + /// 鏄剧ず锛堝鏋�/灏辨墽琛岋級 + /// </summary> + public Button btnIf = new Button + { + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.textColor, + Width = Application.GetRealWidth(32 + 32), + Height = Application.GetRealHeight(22), + Y = Application.GetRealHeight(12), + X = Application.GetRealWidth(TextSize.left16), + TextAlignment = TextAlignment.CenterLeft, + TextID = StringId.ifCondition, + IsBold = true, + }; + /// <summary> + /// 锛堝鏋�/灏辨墽琛岋級鐨勬柟娉� + /// </summary> + /// <returns></returns> + public FrameLayout FLayoutView(int flHeight,int btnY) + { + frameLayout.Height = Application.GetRealHeight(flHeight); + btnIf.Y= Application.GetRealHeight(btnY); + frameLayout.AddChidren(btnIf); + + return frameLayout; + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AddOutputInputView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AddOutputInputView.cs new file mode 100644 index 0000000..8fae4eb --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AddOutputInputView.cs @@ -0,0 +1,106 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class AddOutputInputView + { + /// <summary> + /// 涓绘帶浠禫iew + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Height = Application.GetRealHeight(44), + Width = Application.GetRealWidth(343), + BackgroundColor= CSS.CSS_Color.view, + X = Application.GetRealWidth(LogicView.TextSize.left16), + }; + /// <summary> + /// 锛堟潯浠舵垨鑰呯洰鏍囷級鍥炬爣 + /// </summary> + public Button btnIcon= new Button + { + Width= Application.GetMinRealAverage(28), + Height =Application.GetMinRealAverage(28), + //Y = Application.GetRealHeight(8), + X = Application.GetRealWidth(TextSize.left12), + + }; + /// <summary> + /// 锛堟潯浠舵垨鑰呯洰鏍囷級鏂囨湰鎻忚堪 + /// </summary> + public Button btnText= new Button + { + TextSize = TextSize.text14, + Width = Application.GetRealWidth(250), + Height = Application.GetRealHeight(20), + TextColor= CSS.CSS_Color.textColor, + //Y=Application.GetRealHeight(12), + X = Application.GetRealWidth(52), + }; + + /// <summary> + /// 锛堟潯浠舵垨鑰呯洰鏍囷級璁惧鐘舵�佹枃鏈弿杩� + /// </summary> + public Button btnState = new Button + { + TextSize = TextSize.text12, + Width = Application.GetRealWidth(130), + Height = Application.GetRealHeight(17), + TextColor = CSS.CSS_Color.textCancelColor, + Y=Application.GetRealHeight(14), + X = Application.GetRealWidth(165), + TextAlignment=TextAlignment.CenterRight, + }; + + /// <summary> + /// 锛堟潯浠舵垨鑰呯洰鏍囷級鍥炬爣 + /// </summary> + public Button btnNextIcon = new Button + { + Width = Application.GetMinRealAverage(16), + Height = Application.GetMinRealAverage(16), + UnSelectedImagePath = "LogicIcon/next.png", + //Y = Application.GetRealHeight(14), + X = Application.GetRealWidth(315), + + }; + + /// <summary> + /// 绾� + /// </summary> + public Button btnLine = new Button + { + Width=Application.GetRealWidth(279), + Y = Application.GetRealHeight(44-1), + X = Application.GetRealWidth(52), + Height = 1, + BackgroundColor = CSS.CSS_Color.viewLine, + + }; + + public Button btnClick = new Button + { + Height = Application.GetRealHeight(44), + Width = Application.GetRealWidth(343), + }; + /// <summary> + /// View鐨勬柟娉� + /// </summary> + /// <returns></returns> + public FrameLayout FLayoutView() + { + btnIcon.Gravity = Gravity.CenterVertical; + btnText.Gravity = Gravity.CenterVertical; + btnText.TextAlignment = TextAlignment.CenterLeft; + btnNextIcon.Gravity = Gravity.CenterVertical; + frameLayout.AddChidren(btnIcon); + frameLayout.AddChidren(btnText); + frameLayout.AddChidren(btnState); + frameLayout.AddChidren(btnNextIcon); + btnLine.Y = frameLayout.Height - 1; + frameLayout.AddChidren(btnLine); + frameLayout.AddChidren(btnClick); + return frameLayout; + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AreaView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AreaView.cs new file mode 100644 index 0000000..9f41dc9 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/AreaView.cs @@ -0,0 +1,57 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class AreaView + { + /// <summary> + /// 涓绘帶浠� + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Width = Application.GetRealWidth(144), + Height = Application.GetRealHeight(44), + }; + /// <summary> + /// 鎴块棿鍚� + /// </summary> + public Button btnRoomName = new Button + { + Width = Application.GetRealWidth(100), + Height = Application.GetRealHeight(20), + X = Application.GetRealWidth(16), + TextAlignment = TextAlignment.CenterLeft, + Gravity = Gravity.CenterVertical, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textColor, + + }; + /// <summary> + /// 绾� + /// </summary> + public Button btnLine = new Button + { + Width = Application.GetRealWidth(112), + X = Application.GetRealWidth(16), + Height = 1, + BackgroundColor = CSS.CSS_Color.viewLine, + }; + public Button btnClick = new Button + { + Width = Application.GetRealWidth(144), + Height = Application.GetRealHeight(44), + }; + /// <summary> + /// View鐨勬柟娉� + /// </summary> + /// <returns></returns> + public FrameLayout FLayoutView() + { + frameLayout.AddChidren(btnRoomName); + btnLine.Y = frameLayout.Height - 1; + frameLayout.AddChidren(btnLine); + frameLayout.AddChidren(btnClick); + return frameLayout; + } + } +} \ No newline at end of file diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/ConfirmPopView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/ConfirmPopView.cs new file mode 100644 index 0000000..b27bab0 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/ConfirmPopView.cs @@ -0,0 +1,10 @@ +锘縰sing System; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class ConfirmPopView + { + public ConfirmPopView() + { + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/DateView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/DateView.cs new file mode 100644 index 0000000..69dbc71 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/DateView.cs @@ -0,0 +1,82 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class DateView + { + /// <summary> + /// 涓绘帶浠� + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Y = Application.GetRealHeight(460), + Height = Application.GetRealHeight(56 + 150), + Width = Application.GetRealWidth(343), + X = Application.GetRealWidth(16), + BackgroundColor = CSS.CSS_Color.view, + Radius = (uint)Application.GetRealHeight(12), + }; + /// <summary> + /// 鏍囬Btn + /// </summary> + public Button btnTitle = new Button + { + TextID = StringId.timeHorizon, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.textColor, + IsBold = true, + Width = Application.GetRealWidth(343 - (52 + 4 + 10) * 2), + Height = Application.GetRealHeight(22), + Y = Application.GetRealHeight(17), + X = Application.GetRealWidth(52 + 4 + 10) + }; + /// <summary> + /// 鍙栨秷Btn + /// </summary> + public Button btnCancel = new Button + { + TextID = StringId.cancelSelected, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textCancelColor, + Width = Application.GetRealWidth(52), + Height = Application.GetRealHeight(32), + Y = Application.GetRealHeight(10), + X = Application.GetRealWidth(4) + }; + /// <summary> + /// 纭畾Btn + /// </summary> + public Button btnConfirm = new Button + { + TextID = StringId.confirmSelected, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textConfirmColor, + Width = Application.GetRealWidth(52), + Height = Application.GetRealHeight(32), + X = Application.GetRealWidth(343 - 4 - 52), + Y = Application.GetRealHeight(10), + }; + /// <summary> + /// View鐨勬柟娉� + /// </summary> + /// <param name="fLayout"></param> + /// <param name="i"></param> + public void FLayoutView(FrameLayout fLayout, int i) + { + frameLayout.Y = Application.GetRealHeight(667 - 20 - 56 - 50 * i); + frameLayout.Height = Application.GetRealHeight(56 + 50 * i); + frameLayout.AddChidren(btnTitle); + frameLayout.AddChidren(btnCancel); + frameLayout.AddChidren(btnConfirm); + fLayout.AddChidren(frameLayout); + ////鐣岄潰鐐瑰嚮浜嬩欢 + //fLayout.MouseUpEventHandler += (sender, e1) => + //{ + // //绉婚櫎fLayout鐣岄潰 + // fLayout.RemoveFromParent(); + //}; + //鍙栨秷鐐瑰嚮浜嬩欢 + + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/EditPopView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/EditPopView.cs new file mode 100644 index 0000000..febed1c --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/EditPopView.cs @@ -0,0 +1,10 @@ +锘縰sing System; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class EditPopView + { + public EditPopView() + { + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/FunAllAreaView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/FunAllAreaView.cs new file mode 100644 index 0000000..4381fa0 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/FunAllAreaView.cs @@ -0,0 +1,84 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class FunAllAreaView + { + /// <summary> + /// 涓绘帶浠禫iew + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Height = Application.GetRealHeight(53), + BackgroundColor = CSS.CSS_Color.view, + }; + /// <summary> + /// 绗竴涓笅鎷夊浘鏍� + /// </summary> + public Button btnIcon1 = new Button + { + Width = Application.GetMinRealAverage(16), + Height = Application.GetMinRealAverage(16), + Y = Application.GetRealHeight(19), + X = Application.GetRealWidth(TextSize.left16), + UnSelectedImagePath = "LogicIcon/down.png", + + }; + /// <summary> + /// 绗竴涓枃鏈弿杩� + /// </summary> + public Button btnText1 = new Button + { + TextSize = TextSize.text12, + Width = Application.GetRealWidth(70), + Height = Application.GetRealHeight(17), + TextColor = CSS.CSS_Color.textColor, + Y=Application.GetRealHeight(18), + X = Application.GetRealWidth(34), + TextAlignment = TextAlignment.CenterLeft, + TextID=StringId.allAreas, + + }; + + /// <summary> + /// 绗簩涓笅鎷夊浘鏍� + /// </summary> + public Button btnIcon2 = new Button + { + Width = Application.GetMinRealAverage(16), + Height = Application.GetMinRealAverage(16), + Y = Application.GetRealHeight(19), + X = Application.GetRealWidth(122), + UnSelectedImagePath = "LogicIcon/down.png", + + }; + /// <summary> + /// 绗簩涓枃鏈弿杩� + /// </summary> + public Button btnText2 = new Button + { + TextSize = TextSize.text12, + Width = Application.GetRealWidth(70), + Height = Application.GetRealHeight(17), + TextColor = CSS.CSS_Color.textColor, + Y=Application.GetRealHeight(18), + X = Application.GetRealWidth(140), + TextAlignment = TextAlignment.CenterLeft, + TextID = StringId.allFun, + }; + + /// <summary> + ///View鐨勬柟娉� + /// </summary> + /// <returns></returns> + public FrameLayout FLayoutView() + { + frameLayout.AddChidren(btnIcon1); + frameLayout.AddChidren(btnText1); + frameLayout.AddChidren(btnIcon2); + frameLayout.AddChidren(btnText2); + return frameLayout; + } + + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/LogicAddView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/LogicAddView.cs new file mode 100644 index 0000000..27619e5 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/LogicAddView.cs @@ -0,0 +1,45 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class LogicAddView + { + /// <summary> + /// 涓绘帶浠� + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Height = Application.GetRealHeight(80), + Width = Application.GetRealWidth(343), + BackgroundColor = CSS.CSS_Color.view, + X = Application.GetRealWidth(LogicView.TextSize.left16), + }; + /// <summary> + /// 娣诲姞璁惧绫诲瀷鐨勫浘鏍囨帶浠� + /// </summary> + public Button btnAddIcon= new Button + { + Width = Application.GetMinRealAverage(20), + Height = Application.GetMinRealAverage(20), + UnSelectedImagePath = "LogicIcon/addconditiontarget.png", + Y = Application.GetRealHeight(22), + X = Application.GetRealWidth(162), + }; + public Button btnClick = new Button + { + Height = Application.GetRealHeight(80), + Width = Application.GetRealWidth(343), + }; + + /// <summary> + /// 杩斿洖鐖舵帶浠剁殑鏂规硶 + /// </summary> + /// <returns></returns> + public FrameLayout FLayoutView() + { + frameLayout.AddChidren(btnAddIcon); + frameLayout.AddChidren(btnClick); + return frameLayout; + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/LogicTypeTitleView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/LogicTypeTitleView.cs new file mode 100644 index 0000000..6870204 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/LogicTypeTitleView.cs @@ -0,0 +1,79 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class LogicTypeTitleView + { + /// <summary> + /// 涓绘帶浠禫iew + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Height = Application.GetRealHeight(44), + Width = Application.GetRealWidth(343), + BackgroundColor= CSS.CSS_Color.view, + X=Application.GetRealWidth(LogicView.TextSize.left16), + // Radius=(uint)Application.GetRealHeight(12), + }; + /// <summary> + /// 鏂囨湰鎻忚堪 + /// </summary> + public Button btnText = new Button + { + TextSize = LogicView.TextSize.text14, + Width = Application.GetRealWidth(250), + Height = Application.GetRealHeight(20), + TextColor = CSS.CSS_Color.textColor, + //TextAlignment = TextAlignment.CenterLeft, + //Y = Application.GetRealHeight(12), + X = Application.GetRealWidth(12), + Gravity=Gravity.CenterVertical, + }; + /// <summary> + /// 鍥炬爣 + /// </summary> + public Button btnNextIcon = new Button + { + Width = Application.GetMinRealAverage(16), + Height = Application.GetMinRealAverage(16), + UnSelectedImagePath = "LogicIcon/next.png", + //Y = Application.GetRealHeight(14), + X = Application.GetRealWidth(315), + //Gravity = Gravity.CenterVertical, + + }; + + /// <summary> + /// 绾� + /// </summary> + public Button btnLine = new Button + { + Height = 1, + Width = Application.GetRealWidth(343 - 12 - 12), + X = Application.GetRealWidth(12), + BackgroundColor = CSS.CSS_Color.viewLine, + + }; + + public Button btnClick = new Button + { + Height = Application.GetRealHeight(44), + Width = Application.GetRealWidth(343), + }; + /// <summary> + /// View鐨勬柟娉� + /// </summary> + /// <returns></returns> + public FrameLayout FLayoutView() + { + btnText.TextAlignment = TextAlignment.BottomLeft; + btnNextIcon.Gravity = Gravity.CenterVertical; + frameLayout.AddChidren(btnText); + frameLayout.AddChidren(btnNextIcon); + btnLine.Y = frameLayout.Height - 1; + frameLayout.AddChidren(btnLine); + frameLayout.AddChidren(btnClick); + return frameLayout; + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/MonView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/MonView.cs new file mode 100644 index 0000000..f73e4d8 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/MonView.cs @@ -0,0 +1,71 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class MonView + { + /// <summary> + /// 涓绘帶浠� + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Y = Application.GetRealHeight(379), + Height = Application.GetRealHeight(268), + Width = Application.GetRealWidth(343), + X = Application.GetRealWidth(16), + BackgroundColor = CSS.CSS_Color.view, + Radius = (uint)Application.GetRealHeight(12), + }; + /// <summary> + /// 鏍囬Btn + /// </summary> + public Button btnTitle = new Button + { + TextID = StringId.timeHorizon, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.textColor, + IsBold = true, + Width = Application.GetRealWidth(343 - (52 + 4 + 10) * 2), + Height = Application.GetRealHeight(22), + Y = Application.GetRealHeight(17), + X = Application.GetRealWidth(52 + 4 + 10) + }; + /// <summary> + /// 鍙栨秷Btn + /// </summary> + public Button btnCancel = new Button + { + TextID = StringId.cancelSelected, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textCancelColor, + Width = Application.GetRealWidth(52), + Height = Application.GetRealHeight(32), + Y = Application.GetRealHeight(10), + X = Application.GetRealWidth(4) + }; + /// <summary> + /// 纭畾Btn + /// </summary> + public Button btnConfirm = new Button + { + TextID = StringId.confirmSelected, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textConfirmColor, + Width = Application.GetRealWidth(52), + Height = Application.GetRealHeight(32), + X = Application.GetRealWidth(343 - 4 - 52), + Y = Application.GetRealHeight(10), + }; + /// <summary> + /// View鐨勬柟娉� + /// </summary> + /// <param name="fLayout"></param> + public void FLayoutView(FrameLayout fLayout) + { + frameLayout.AddChidren(btnTitle); + frameLayout.AddChidren(btnCancel); + frameLayout.AddChidren(btnConfirm); + fLayout.AddChidren(frameLayout); + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SaveView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SaveView.cs new file mode 100644 index 0000000..6094c45 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SaveView.cs @@ -0,0 +1,51 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class SaveView + { + /// <summary> + /// 涓绘帶浠禫iew + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Y = Application.GetRealHeight(TextSize.view667 - 76), + Height = Application.GetRealHeight(76), + Width = Application.GetRealWidth(TextSize.view375), + Gravity=Gravity.BottomCenter,//缃簳鐨勫睘鎬� + BackgroundColor = CSS.CSS_Color.view, + + }; + /// <summary> + /// 锛堟潯浠舵垨鑰呯洰鏍囷級鏂囨湰鎻忚堪 + /// </summary> + public Button btnSave= new Button + { + Width = Application.GetRealWidth(220), + Height = Application.GetRealHeight(44), + Y = Application.GetRealHeight(12), + X = Application.GetRealWidth(78), + TextID = StringId.save, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.textWhiteColor, + TextAlignment = TextAlignment.Center, + BackgroundColor= CSS.CSS_Color.btnSaveBackgroundColor, + Radius = (uint)Application.GetRealHeight(44), + + }; + public Button btnClick = new Button + { + Height = Application.GetRealHeight(76), + }; + /// <summary> + /// 淇濆瓨 + /// </summary> + /// <returns></returns> + public FrameLayout FLayoutView() + { + frameLayout.AddChidren(btnSave); + frameLayout.AddChidren(btnClick); + return frameLayout; + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SelectTypeView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SelectTypeView.cs new file mode 100644 index 0000000..dc9ea5c --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SelectTypeView.cs @@ -0,0 +1,135 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class SelectTypeView + { + /// <summary> + /// 涓绘帶浠禫iew + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Height = Application.GetRealHeight(50), + BackgroundColor = CSS.CSS_Color.view, + }; + /// <summary> + /// 鍥炬爣 + /// </summary> + public Button btnIcon = new Button + { + Width = Application.GetMinRealAverage(28), + Height = Application.GetMinRealAverage(28), + //Y = Application.GetRealHeight(8), + X = Application.GetRealWidth(TextSize.left12), + + }; + /// <summary> + /// 鏂囨湰鎻忚堪 + /// </summary> + public Button btnText = new Button + { + TextSize = TextSize.text14, + Width = Application.GetRealWidth(250), + Height = Application.GetRealHeight(20), + TextColor = CSS.CSS_Color.textColor, + //Y=Application.GetRealHeight(12), + X = Application.GetRealWidth(52), + }; + + + /// <summary> + /// 璁惧鍚嶇О + /// </summary> + public Button btnDeviceName = new Button + { + Width = Application.GetRealWidth(250), + Height = Application.GetRealHeight(20), + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textColor, + Y =Application.GetRealHeight(6), + X = Application.GetRealWidth(52), + TextAlignment = TextAlignment.CenterLeft, + Visible =false, + + }; + /// <summary> + /// 鎴块棿鍚�(鍗虫槸=鍖哄煙鍚嶇О) + /// </summary> + public Button btnRoomName= new Button + { + Width = Application.GetRealWidth(250), + Height = Application.GetRealHeight(14), + TextSize = TextSize.text10, + TextColor = CSS.CSS_Color.textCancelColor, + Y=Application.GetRealHeight(30), + X = Application.GetRealWidth(52), + TextAlignment = TextAlignment.CenterLeft, + Visible = false, + }; + + /// <summary> + /// 锛堟潯浠舵垨鑰呯洰鏍囷級璁惧鐘舵�佹枃鏈弿杩� + /// </summary> + public Button btnState = new Button + { + TextSize = TextSize.text12, + Width = Application.GetRealWidth(130), + Height = Application.GetRealHeight(17), + TextColor = CSS.CSS_Color.textCancelColor, + Y = Application.GetRealHeight(17), + X = Application.GetRealWidth(375-48-130), + TextAlignment = TextAlignment.CenterRight, + Visible=false, + + }; + /// <summary> + /// 鍥炬爣 + /// </summary> + public Button btnNextIcon = new Button + { + Width = Application.GetMinRealAverage(16), + Height = Application.GetMinRealAverage(16), + UnSelectedImagePath = "LogicIcon/next.png", + X = Application.GetRealWidth(339), + + }; + + /// <summary> + /// 绾� + /// </summary> + public Button btnLine = new Button + { + Width = Application.GetRealWidth(307), + X = Application.GetRealWidth(52), + Height = 1, + BackgroundColor = CSS.CSS_Color.viewLine, + + }; + + public Button btnClick = new Button + { + Height = Application.GetRealHeight(50), + }; + /// <summary> + /// View鐨勬柟娉� + /// </summary> + /// <returns></returns> + public FrameLayout FLayoutView() + { + btnIcon.Gravity = Gravity.CenterVertical; + btnText.Gravity = Gravity.CenterVertical; + btnText.TextAlignment = TextAlignment.CenterLeft; + btnNextIcon.Gravity = Gravity.CenterVertical; + frameLayout.AddChidren(btnIcon); + frameLayout.AddChidren(btnText); + frameLayout.AddChidren(btnDeviceName); + frameLayout.AddChidren(btnRoomName); + frameLayout.AddChidren(btnState); + frameLayout.AddChidren(btnNextIcon); + btnLine.Y = frameLayout.Height - 1; + frameLayout.AddChidren(btnLine); + frameLayout.AddChidren(btnClick); + return frameLayout; + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SingleLogicView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SingleLogicView.cs new file mode 100644 index 0000000..32f8898 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SingleLogicView.cs @@ -0,0 +1,107 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class SingleLogicView + { + /// <summary> + /// 涓绘帶浠禫iew + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + X = Application.GetRealWidth(16), + Y = Application.GetRealHeight(12), + Width = Application.GetRealWidth(343), + Height = Application.GetRealHeight(102), + BackgroundColor = CSS.CSS_Color.view, + Radius = (uint)Application.GetRealHeight(12), + }; + /// <summary> + /// 閫昏緫鍚嶇О + /// </summary> + public Button btnLogicName = new Button + { + Width = Application.GetRealWidth(250), + Height = Application.GetRealHeight(20), + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textColor, + Y = Application.GetRealHeight(12), + X = Application.GetRealWidth(TextSize.left12), + TextAlignment = TextAlignment.CenterLeft, + + }; + /// <summary> + /// 鍛ㄦ湡閲嶅鏂囨湰 + /// </summary> + public Button btnWeekText = new Button + { + Width = Application.GetRealWidth(250), + Height = Application.GetRealHeight(14), + TextSize = TextSize.text12, + TextColor = CSS.CSS_Color.textCancelColor, + Y = Application.GetRealHeight(36), + X = Application.GetRealWidth(TextSize.left12), + TextAlignment = TextAlignment.CenterLeft, + }; + /// <summary> + /// 鍔熻兘鍥炬爣 + /// </summary> + public Button btnStateIcon = new Button + { + Width = Application.GetMinRealAverage(28), + Height = Application.GetMinRealAverage(28), + Y = Application.GetRealHeight(8), + X = Application.GetRealWidth(TextSize.left12), + + }; + /// <summary> + /// 杩炵嚎鍥炬爣 + /// </summary> + public Button btnLienIcon = new Button + { + + Width = Application.GetMinRealAverage(20), + Height = Application.GetMinRealAverage(20), + Y = Application.GetRealHeight(66), + X = Application.GetRealWidth(48), + + + }; + /// <summary> + /// 鍥炬爣寮�鍏� + /// </summary> + public Button btnSwitchIcon = new Button + { + Width = Application.GetMinRealAverage(36), + Height = Application.GetMinRealAverage(36), + Y = Application.GetRealHeight(58), + X = Application.GetRealWidth(295), + UnSelectedImagePath = "LogicIcon/off.png", + SelectedImagePath = "LogicIcon/on.png", + + }; + /// <summary> + /// 鍥炬爣寮�鍏� + /// </summary> + public Button btnclick= new Button + { + Width = Application.GetRealWidth(343), + Height = Application.GetRealHeight(102), + }; + + /// <summary> + /// View鐨勬柟娉� + /// </summary> + /// <returns></returns> + public FrameLayout FLayoutView() + { + frameLayout.AddChidren(btnLogicName); + frameLayout.AddChidren(btnWeekText); + frameLayout.AddChidren(btnStateIcon); + frameLayout.AddChidren(btnLienIcon); + frameLayout.AddChidren(btnclick); + frameLayout.AddChidren(btnSwitchIcon); + return frameLayout; + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SwitchView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SwitchView.cs new file mode 100644 index 0000000..881aa54 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/SwitchView.cs @@ -0,0 +1,55 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class SwitchView + { + + /// <summary> + /// 涓绘帶浠� + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.view, + Y = Application.GetRealHeight(515), + X = Application.GetRealWidth(16), + Height = Application.GetRealHeight(44*44), + Width = Application.GetRealWidth(343), + Radius=(uint)Application.GetRealHeight(12) + }; + /// <summary> + /// 鍙栨秷 + /// </summary> + public Button btnCancel = new Button + { + TextAlignment = TextAlignment.Center, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.textRedColor, + TextID=StringId.cancelSelected, + Y = Application.GetRealHeight(611), + X = Application.GetRealWidth(16), + Height = Application.GetRealHeight(44), + Width = Application.GetRealWidth(343), + BackgroundColor = CSS.CSS_Color.view, + Radius = (uint)Application.GetRealHeight(12) + }; + /// <summary> + /// View鐨勬柟娉� + /// </summary> + /// <param name="frame">鐖舵帶浠�</param> + /// <param name="i">鏄剧ずView鏁伴噺</param> + /// <returns></returns> + public void FLayoutView(FrameLayout frame,int i) + { + frameLayout.Y = Application.GetRealHeight(603 - (44 * i)); + frameLayout.Height = Application.GetRealHeight(44 * i); + frame.AddChidren(frameLayout); + frame.AddChidren(btnCancel); + btnCancel.MouseUpEventHandler += (sender1, e1) => + { + frame.RemoveFromParent(); + }; + + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TextSize.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TextSize.cs new file mode 100644 index 0000000..1196b10 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TextSize.cs @@ -0,0 +1,21 @@ +锘縰sing System; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public static class TextSize + { + public const int text10 = 10; + public const int text12 = 12; + public const int text14 = 14; + public const int text16 = 16; + public const int text18 = 18; + + public const int view375 = 375; + public const int view667 = 667; + + public const int left16 = 16; + public const int left12 = 12; + + public const int layout_Right16 = 16; + + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeHorizonView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeHorizonView.cs new file mode 100644 index 0000000..2d1aa45 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeHorizonView.cs @@ -0,0 +1,98 @@ +锘縰sing System; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class TimeHorizonView : FrameLayout + { + /// <summary> + /// 涓绘帶浠� + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Y = Application.GetRealHeight(460), + Height = Application.GetRealHeight(187), + Width = Application.GetRealWidth(343), + X = Application.GetRealWidth(16), + BackgroundColor = CSS.CSS_Color.view, + Radius=(uint)Application.GetRealHeight(12), + }; + /// <summary> + /// 鏍囬Btn + /// </summary> + public Button btnTitle = new Button + { + TextID = StringId.timeHorizon, + TextSize = TextSize.text16, + TextColor = CSS.CSS_Color.textColor, + IsBold = true, + Width = Application.GetRealWidth(343-(52 + 4 + 10)*2), + Height = Application.GetRealHeight(22), + Y = Application.GetRealHeight(15), + X = Application.GetRealWidth(52 + 4 + 10) + }; + /// <summary> + /// 鍙栨秷Btn + /// </summary> + public Button btnCancel = new Button + { + TextID = StringId.cancelSelected, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textCancelColor, + Width = Application.GetRealWidth(52), + Height = Application.GetRealHeight(32), + Y = Application.GetRealHeight(10), + X = Application.GetRealWidth(4) + }; + /// <summary> + /// 纭畾Btn + /// </summary> + public Button btnConfirm = new Button + { + TextID = StringId.confirmSelected, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textConfirmColor, + Width = Application.GetRealWidth(52), + Height = Application.GetRealHeight(32), + X = Application.GetRealWidth(343 - 4 - 52), + Y = Application.GetRealHeight(10), + }; + /// <summary> + /// 绾㈣壊鎻愮ず鏂囨湰 + /// </summary> + public Button btnTip = new Button + { + TextID = StringId.timeTipText, + TextSize = TextSize.text12, + TextColor = CSS.CSS_Color.textRedColor, + Width = Application.GetRealWidth(306), + Height = Application.GetRealHeight(17), + X = Application.GetRealWidth(20), + Y = Application.GetRealHeight(58), + }; + + /// <summary> + /// View鐨勬柟娉� + /// </summary> + /// <returns></returns> + public void FLayoutView(FrameLayout fLayout) + { + frameLayout.AddChidren(btnTitle); + frameLayout.AddChidren(btnTip); + frameLayout.AddChidren(btnCancel); + frameLayout.AddChidren(btnConfirm); + fLayout.AddChidren(frameLayout); + ////鐣岄潰鐐瑰嚮浜嬩欢 + //fLayout.MouseUpEventHandler += (sender, e1) => + //{ + // //绉婚櫎fLayout鐣岄潰 + // fLayout.RemoveFromParent(); + //}; + //鍙栨秷鐐瑰嚮浜嬩欢 + btnCancel.MouseUpEventHandler += (sender, e2) => + { + //绉婚櫎fLayout鐣岄潰 + fLayout.RemoveFromParent(); + }; + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs new file mode 100644 index 0000000..0fd5f05 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TimeView.cs @@ -0,0 +1,269 @@ +锘縰sing System; +using Shared; +using System.Collections.Generic; +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class TimeView + { + /// <summary> + /// 涓绘帶浠� + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + Y = Application.GetRealHeight(350), + Height = Application.GetRealHeight(297), + Width = Application.GetRealWidth(343), + X = Application.GetRealWidth(16), + BackgroundColor = CSS.CSS_Color.view, + Radius=(uint)Application.GetRealHeight(12), + }; + /// <summary> + /// 鏃堕棿鎺т欢UIPickerView + /// </summary> + public UIPickerView mUIPickerView = new UIPickerView + { + //Y = Application.GetRealHeight(44), + Height = Application.GetRealHeight(297), + Width = Application.GetRealWidth(343), + BackgroundColor = CSS.CSS_Color.viewTranslucence, + + }; + /// <summary> + /// 鍙栨秷Btn + /// </summary> + public Button btnCancel = new Button + { + TextID = StringId.cancelSelected, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textCancelColor, + Width = Application.GetRealWidth(52), + Height = Application.GetRealHeight(32), + Y = Application.GetRealHeight(6), + X = Application.GetRealWidth(8) + }; + /// <summary> + /// 纭畾Btn + /// </summary> + public Button btnConfirm = new Button + { + TextID = StringId.confirmSelected, + TextSize = TextSize.text14, + TextColor = CSS.CSS_Color.textConfirmColor, + Width = Application.GetRealWidth(52), + Height = Application.GetRealHeight(32), + X = Application.GetRealWidth(283), + Y = Application.GetRealHeight(6), + }; + /// <summary> + /// 绾� + /// </summary> + public Button btnLine = new Button + { + BackgroundColor = CSS.CSS_Color.viewLine, + Width = Application.GetRealWidth(343), + Height = 1, + Y = Application.GetRealWidth(44) + }; + /// <summary> + /// 鏃堕棿View鐨勬柟娉� + /// </summary> + /// <returns></returns> + public void FLayoutView(FrameLayout fLayout) + { + frameLayout.AddChidren(mUIPickerView); + frameLayout.AddChidren(btnCancel); + frameLayout.AddChidren(btnConfirm); + frameLayout.AddChidren(btnLine); + fLayout.AddChidren(frameLayout); + } + /// <summary> + /// 鑾峰彇1-24灏忔椂鍒楄〃 + /// </summary> + /// <returns></returns> + public List<string> GethStringList() + { + //鍒濆鍖栧垪琛� + var hList = new List<string>(); + for (int i = 1; i < 24; i++) + { + if (i < 10) + { + var a = "0" + i.ToString(); + //娣诲姞鏁版嵁 + hList.Add(a + " " + Language.StringByID(StringId.h)); + } + else + { + //娣诲姞鏁版嵁 + hList.Add(i.ToString() + " " + Language.StringByID(StringId.h)); + } + + } + return hList; + + + } + /// <summary> + /// 鑾峰彇0-23灏忔椂鍒楄〃 + /// </summary> + /// <returns></returns> + public List<string> GethStringList0() + { + //鍒濆鍖栧垪琛� + var hList = new List<string>(); + for (int i = 0; i < 23; i++) + { + if (i < 10) + { + var a = "0" + i.ToString(); + //娣诲姞鏁版嵁 + hList.Add(a + " " + Language.StringByID(StringId.h)); + } + else + { + //娣诲姞鏁版嵁 + hList.Add(i.ToString() + " " + Language.StringByID(StringId.h)); + } + + } + return hList; + + + } + /// <summary> + /// 鑾峰彇60鍒嗛挓鍒楄〃 + /// </summary> + /// <returns></returns> + public List<string> GetmStringList() + { + //鍒濆鍖栧垪琛� + var mList = new List<string>(); + for (int i = 0; i < 60; i++) + { + if (i < 10) + { + var a = "0" + i.ToString(); + //娣诲姞鏁版嵁 + mList.Add(a + " " + Language.StringByID(StringId.m)); + } + else + { + //娣诲姞鏁版嵁 + mList.Add(i.ToString() + " " + Language.StringByID(StringId.m)); + } + + } + + return mList; + } + + /// <summary> + /// 鑾峰彇023灏忔椂鍒楄〃 + /// </summary> + /// <returns></returns> + public List<int> GethIntList0() + { + //鍒濆鍖栧垪琛� + var hList = new List<int>(); + for (int i = 1; i < 24; i++) + { + //娣诲姞鏁版嵁 + hList.Add(i); + } + return hList; + + + } + /// <summary> + /// 鑾峰彇24灏忔椂鍒楄〃 + /// </summary> + /// <returns></returns> + public List<int> GethIntList() + { + //鍒濆鍖栧垪琛� + var hList = new List<int>(); + for (int i = 1; i < 24; i++) + { + //娣诲姞鏁版嵁 + hList.Add(i); + } + return hList; + + + } + /// <summary> + /// 鑾峰彇60鍒嗛挓鍒楄〃 + /// </summary> + /// <returns></returns> + public List<int> GetmIntList() + { + //鍒濆鍖栧垪琛� + var mList = new List<int>(); + for (int i = 0; i < 60; i++) + { + //娣诲姞鏁版嵁 + mList.Add(i); + } + return mList; + } + + /// <summary> + /// 杩斿洖鎸囧畾鍗曚綅鍒楄〃 + /// </summary> + /// <param name="min">鏈�灏忓��</param> + /// <param name="max">鏈�澶у��</param> + /// <param name="name">鍗曚綅(鏃讹紝鍒嗭紝绉�)</param> + /// <param name="digit">浣嶆暟(10浠ヤ笅鐢�(1浣嶈繕鏄�2浣�)鏄剧ず)</param> + /// <returns></returns> + public List<string> GetStringList(int min, int max, string name, int digit) + { + //鍒濆鍖栧垪琛� + var list = new List<string>(); + + for (int i = min; i < max; i++) + { + if (i < 10 && digit == 2) + { + var a = "0" + i.ToString(); + //娣诲姞鏁版嵁 + list.Add(a + " " + name); + } + else + { + //娣诲姞鏁版嵁 + list.Add(i.ToString() + " " + name); + } + + } + return list; + } + + /// <summary> + /// 鑾峰彇鏃堕棿鍊� + /// </summary> + /// <param name="str">婧愭暟鎹�</param> + /// <param name="digit">杩斿洖婧愭暟鎹暟缁勯噷闈㈡煇涓�肩储寮�</param> + /// <param name="startIndex"></param> + /// <param name="list"></param> + /// <returns></returns> + public int GetValueIndex(string str, int digit, int startIndex, List<int> list) + { + int index = 0; + int value = 0; + if (str.Contains(":")) + { + value = int.Parse(str.Split(':')[digit]); + } + for (int i = startIndex; i < list.Count; i++) + { + if (value == i) + { + index = i; + break; + } + } + return index; + } + + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TipPopView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TipPopView.cs new file mode 100644 index 0000000..9603b0c --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TipPopView.cs @@ -0,0 +1,569 @@ +锘縰sing System; +using System.Collections.Generic; +using HDL_ON.UI.CSS; +using Shared; + +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class TipPopView + { + /// <summary> + /// 澶ф鍦嗚鍊� + /// </summary> + public int RradiusFrameLayout = 15; + /// <summary> + /// 灏忔鍦嗚鍊� + /// </summary> + public int radiusEditFrameLayout = 4; + /// <summary> + /// 杈撳叆妗� + /// </summary> + /// <param name="titleId">鏍囬鏂囨湰</param> + /// <param name="tnputEditTxet">鏄剧ず鏂囨湰</param> + /// <param name="errorId_IsNullOrEmpty">杈撳叆妗嗘枃鏈负绌鸿嚜瀹氫箟鎻愮ず閿欒鏂囨湰</param> + /// <param name="errorId_PresenceP">妫�绱㈠凡瀛樺湪鍚嶇О鑷畾涔夋彁绀洪敊璇枃鏈�</param> + /// <param name="confirmAction">鍥炶皟鍑芥暟</param> + /// <param name="List">琚绱㈠垪琛�</param> + /// <param name="confirmAction">鍥炶皟鍑芥暟</param> + public void InputBox(int titleId, string tnputEditTxet, int errorId_IsNullOrEmpty, int errorId_PresenceP, List<string> List, Action<string> confirmAction) + { + Dialog dialog = new Dialog() + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + + FrameLayout whiteView = new FrameLayout() + { + //Gravity = Gravity.Center, + X = Application.GetRealWidth(53), + Y = Application.GetRealHeight(264), + Width = Application.GetRealWidth(270), + Height = Application.GetRealHeight(172), + BackgroundColor = CSS_Color.view, + BorderColor = CSS_Color.viewTranslucence, + BorderWidth = 0, + Radius = (uint)Application.GetRealHeight(RradiusFrameLayout), + }; + dialog.AddChidren(whiteView); + + Button btnTitle = new Button() + { + Y = Application.GetRealHeight(20), + X = Application.GetRealWidth(35), + Height = Application.GetRealHeight(22), + Width = Application.GetRealWidth(200), + TextColor =CSS_Color.textConfirmColor, + TextSize = TextSize.text16, + TextAlignment = TextAlignment.Center, + TextID = titleId, + + }; + whiteView.AddChidren(btnTitle); + + FrameLayout editBjView = new FrameLayout() + { + // Gravity = Gravity.CenterHorizontal, + Y = btnTitle.Bottom + Application.GetRealHeight(16), + X = Application.GetRealWidth(24), + Width = Application.GetRealWidth(222), + Height = Application.GetRealHeight(40), + BackgroundColor = CSS_Color.viewMiddle, + BorderColor = CSS_Color.viewTranslucence, + BorderWidth = 0, + Radius = (uint)Application.GetMinRealAverage(radiusEditFrameLayout), + }; + whiteView.AddChidren(editBjView); + + EditText editText = new EditText() + { + X = Application.GetRealWidth(12), + Y = Application.GetRealHeight(10), + Width = Application.GetRealWidth(160), + Height = Application.GetRealHeight(20), + Text = tnputEditTxet, + TextColor = CSS_Color.textColor, + TextSize = TextSize.text14, + TextAlignment = TextAlignment.CenterLeft, + + }; + editBjView.AddChidren(editText); + + Button clearIconBtn = new Button + { + X = Application.GetRealWidth(194), + Y = Application.GetRealHeight(8), + Width = Application.GetMinRealAverage(24), + Height = Application.GetMinRealAverage(24), + UnSelectedImagePath = "MusicIcon/clear.png", + }; + editBjView.AddChidren(clearIconBtn); + clearIconBtn.MouseUpEventHandler += (sender, e) => + { + editText.Text = ""; + }; + + Button btnLine = new Button() + { + Y = whiteView.Height - Application.GetRealHeight(44 + 1), + Height = Application.GetRealHeight(1), + BackgroundColor = CSS_Color.viewLine, + }; + whiteView.AddChidren(btnLine); + + Button btnCancel = new Button() + { + Y = btnLine.Bottom, + Width = Application.GetRealWidth(135), + Height = Application.GetRealHeight(44), + TextAlignment = TextAlignment.Center, + TextColor =CSS_Color.textTipColor, + TextSize = TextSize.text16, + TextID = StringId.cancelMusic, + Gravity = Gravity.BottomLeft, + }; + whiteView.AddChidren(btnCancel); + btnCancel.SetCornerWithSameRadius(Application.GetRealHeight(RradiusFrameLayout), HDLUtils.RectCornerBottomLeft); + Button btnConfirm = new Button() + { + X = btnCancel.Right, + Y = btnLine.Bottom, + Width = Application.GetRealWidth(135), + Height = Application.GetRealHeight(44), + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.view, + IsBold = true, + TextSize = TextSize.text16, + TextID = StringId.confirmMusic, + BackgroundColor = CSS_Color.textConfirmColor, + Gravity = Gravity.BottomRight, + }; + whiteView.AddChidren(btnConfirm); + btnConfirm.SetCornerWithSameRadius(Application.GetRealHeight(RradiusFrameLayout), HDLUtils.RectCornerBottomRight); + + dialog.Show(); + btnCancel.MouseUpEventHandler += (sender, e) => + { + dialog.Close(); + }; + Button btnTip = new Button + { + Width = Application.GetRealWidth(0), + }; + whiteView.AddChidren(btnTip);//涓�鐩撮敊璇紝涓�鐩寸寷鐐癸紝涓�鐩村姞鎺т欢 + btnConfirm.MouseUpEventHandler += (sender, e) => + { + string listNameText = editText.Text.Trim(); + if (string.IsNullOrEmpty(listNameText) || List.Contains(listNameText)) + { + string tipMsgString = ""; + if (string.IsNullOrEmpty(editText.Text.Trim())) + { + tipMsgString = Language.StringByID(errorId_IsNullOrEmpty); + } + else + { + tipMsgString = Language.StringByID(errorId_PresenceP); + } + + whiteView.Height = Application.GetRealHeight(183); + btnLine.Y = whiteView.Height - Application.GetRealHeight(44 + 1); + btnCancel.Y = btnLine.Bottom; + btnCancel.Gravity = Gravity.BottomLeft; + btnConfirm.Y = btnLine.Bottom; + btnConfirm.Gravity = Gravity.BottomRight; + + btnTip.X = Application.GetRealWidth(24); + btnTip.Y = editBjView.Bottom + Application.GetRealHeight(12); + btnTip.Width = Application.GetRealWidth(222); + btnTip.Height = Application.GetRealHeight(17); + btnTip.Text = tipMsgString; + btnTip.TextColor = CSS_Color.textRedColor; + btnTip.TextSize = TextSize.text12; + btnTip.TextAlignment = TextAlignment.CenterLeft; + + return; + } + + + confirmAction(editText.Text.Trim()); + dialog.Close(); + }; + + } + + /// <summary> + /// 杈撳叆妗� + /// </summary> + /// <param name="titleId">鏍囬鏂囨湰</param> + /// <param name="tnputEditTxet">鏄剧ず鏂囨湰</param> + /// <param name="errorId_IsNullOrEmpty">杈撳叆妗嗘湰鏂囦负绌鸿嚜瀹氫箟鎻愮ず閿欒鏂囨湰</param> + /// <param name="confirmAction">鍥炶皟鍑芥暟</param> + public void InputBox(int titleId, string tnputEditTxet, int errorId_IsNullOrEmpty, Action<string> confirmAction) + { + Dialog dialog = new Dialog() + { + BackgroundColor = CSS_Color.viewTrans60lucence, + }; + + FrameLayout whiteView = new FrameLayout() + { + //Gravity = Gravity.Center, + X = Application.GetRealWidth(53), + Y = Application.GetRealHeight(264), + Width = Application.GetRealWidth(270), + Height = Application.GetRealHeight(172), + BackgroundColor = CSS_Color.view, + BorderColor = CSS_Color.viewTranslucence, + BorderWidth = 0, + Radius = (uint)Application.GetRealHeight(RradiusFrameLayout), + }; + dialog.AddChidren(whiteView); + + Button btnTitle = new Button() + { + Y = Application.GetRealHeight(20), + X = Application.GetRealWidth(35), + Height = Application.GetRealHeight(22), + Width = Application.GetRealWidth(200), + TextColor = CSS_Color.textConfirmColor, + TextSize = TextSize.text16, + TextAlignment = TextAlignment.Center, + TextID = titleId, + + }; + whiteView.AddChidren(btnTitle); + + FrameLayout editBjView = new FrameLayout() + { + // Gravity = Gravity.CenterHorizontal, + Y = btnTitle.Bottom + Application.GetRealHeight(16), + X = Application.GetRealWidth(24), + Width = Application.GetRealWidth(222), + Height = Application.GetRealHeight(40), + BackgroundColor = CSS_Color.viewMiddle, + BorderColor = CSS_Color.viewTranslucence, + BorderWidth = 0, + Radius = (uint)Application.GetMinRealAverage(radiusEditFrameLayout), + }; + whiteView.AddChidren(editBjView); + + EditText editText = new EditText() + { + X = Application.GetRealWidth(12), + Y = Application.GetRealHeight(10), + Width = Application.GetRealWidth(160), + Height = Application.GetRealHeight(20), + Text = tnputEditTxet, + TextColor = CSS_Color.textColor, + TextSize = TextSize.text14, + TextAlignment = TextAlignment.CenterLeft, + }; + editBjView.AddChidren(editText); + + Button clearIconBtn = new Button + { + X = Application.GetRealWidth(194), + Y = Application.GetRealHeight(8), + Width = Application.GetMinRealAverage(24), + Height = Application.GetMinRealAverage(24), + UnSelectedImagePath = "MusicIcon/clear.png", + }; + editBjView.AddChidren(clearIconBtn); + clearIconBtn.MouseUpEventHandler += (sender, e) => + { + editText.Text = ""; + }; + + Button btnLine = new Button() + { + Y = whiteView.Height - Application.GetRealHeight(44 + 1), + Height = Application.GetRealHeight(1), + BackgroundColor = CSS_Color.viewLine, + }; + whiteView.AddChidren(btnLine); + + Button btnCancel = new Button() + { + Y = btnLine.Bottom, + Width = Application.GetRealWidth(135), + Height = Application.GetRealHeight(44), + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.textTipColor, + TextSize = TextSize.text16, + TextID = StringId.cancelMusic, + Gravity = Gravity.BottomLeft, + }; + whiteView.AddChidren(btnCancel); + btnCancel.SetCornerWithSameRadius(Application.GetRealHeight(RradiusFrameLayout), HDLUtils.RectCornerBottomLeft); + + Button btnConfirm = new Button() + { + X = btnCancel.Right, + Y = btnLine.Bottom, + Width = Application.GetRealWidth(135), + Height = Application.GetRealHeight(44), + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.view, + IsBold = true, + TextSize = TextSize.text16, + TextID = StringId.confirmMusic, + BackgroundColor = CSS_Color.textConfirmColor, + Gravity = Gravity.BottomRight, + }; + whiteView.AddChidren(btnConfirm); + btnConfirm.SetCornerWithSameRadius(Application.GetRealHeight(RradiusFrameLayout), HDLUtils.RectCornerBottomRight); + dialog.Show(); + btnCancel.MouseUpEventHandler += (sender, e) => + { + dialog.Close(); + }; + + Button btnTip = new Button + { + Width = Application.GetRealWidth(0), + }; + whiteView.AddChidren(btnTip);//涓�鐩撮敊璇紝涓�鐩寸寷鐐癸紝涓�鐩村姞鎺т欢 + + btnConfirm.MouseUpEventHandler += (sender, e) => + { + if (string.IsNullOrEmpty(editText.Text.Trim())) + { + + whiteView.Height = Application.GetRealHeight(183); + btnLine.Y = whiteView.Height - Application.GetRealHeight(44 + 1); + btnCancel.Y = btnLine.Bottom; + btnCancel.Gravity = Gravity.BottomLeft; + btnConfirm.Y = btnLine.Bottom; + btnConfirm.Gravity = Gravity.BottomRight; + + btnTip.X = Application.GetRealWidth(24); + btnTip.Y = editBjView.Bottom + Application.GetRealHeight(12); + btnTip.Width = Application.GetRealWidth(222); + btnTip.Height = Application.GetRealHeight(17); + btnTip.Text = Language.StringByID(errorId_IsNullOrEmpty); + btnTip.TextColor = CSS_Color.textRedColor; + btnTip.TextSize = TextSize.text12; + btnTip.TextAlignment = TextAlignment.CenterLeft; + return; + } + + + confirmAction(editText.Text.Trim()); + dialog.Close(); + }; + + } + + + /// <summary> + /// 纭畾鎻愮ず妗� + /// </summary> + /// <param name="titleId">鏍囬鏂囨湰</param> + /// <param name="tipTxet">鑷畾涔夋彁绀烘枃鏈�</param> + /// <param name="confirmAction">鍥炶皟鍑芥暟</param> + public void TipBox(int titleId, int tipTxet, Action confirmAction) + { + Dialog dialog = new Dialog() + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + + FrameLayout whiteView = new FrameLayout() + { + //Gravity = Gravity.Center, + X = Application.GetRealWidth(53), + Y = Application.GetRealHeight(264), + Width = Application.GetRealWidth(270), + Height = Application.GetRealHeight(140), + BackgroundColor = CSS_Color.view, + BorderColor = CSS_Color.viewTranslucence, + BorderWidth = 0, + Radius = (uint)Application.GetRealHeight(RradiusFrameLayout), + }; + dialog.AddChidren(whiteView); + + Button titleBtn = new Button() + { + Y = Application.GetRealHeight(20), + X = Application.GetRealWidth(35), + Height = Application.GetRealHeight(22), + Width = Application.GetRealWidth(270 - 35 * 2), + TextColor = CSS_Color.textConfirmColor, + TextSize = TextSize.text16, + TextAlignment = TextAlignment.Center, + TextID = titleId, + }; + whiteView.AddChidren(titleBtn); + + Button tipBtn = new Button() + { + Y = titleBtn.Bottom + Application.GetRealHeight(8), + X = Application.GetRealWidth(20), + Height = Application.GetRealHeight(22), + Width = Application.GetRealWidth(270 - 20 * 2), + TextColor =CSS_Color.textTipColor, + TextSize = TextSize.text12, + TextAlignment = TextAlignment.Center, + TextID = tipTxet, + }; + whiteView.AddChidren(tipBtn); + + + Button btnLine = new Button() + { + Y = whiteView.Height - Application.GetRealHeight(44 + 1), + Height = Application.GetRealHeight(1), + BackgroundColor = CSS_Color.viewLine, + }; + whiteView.AddChidren(btnLine); + + Button btnCancel = new Button() + { + Y = btnLine.Bottom, + Width = Application.GetRealWidth(135), + Height = Application.GetRealHeight(44), + TextAlignment = TextAlignment.Center, + TextColor =CSS_Color.textTipColor, + TextSize = TextSize.text16, + TextID = StringId.cancelMusic, + Gravity = Gravity.BottomLeft, + }; + whiteView.AddChidren(btnCancel); + btnCancel.SetCornerWithSameRadius(Application.GetRealHeight(RradiusFrameLayout), HDLUtils.RectCornerBottomLeft); + Button btnConfirm = new Button() + { + X = btnCancel.Right, + Y = btnLine.Bottom, + Width = Application.GetRealWidth(135), + Height = Application.GetRealHeight(44), + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.view, + IsBold = true, + TextSize = TextSize.text16, + TextID = StringId.confirmMusic, + BackgroundColor = CSS_Color.textConfirmColor, + Gravity = Gravity.BottomRight, + }; + whiteView.AddChidren(btnConfirm); + btnConfirm.SetCornerWithSameRadius(Application.GetRealHeight(RradiusFrameLayout), HDLUtils.RectCornerBottomRight); + dialog.Show(); + btnCancel.MouseUpEventHandler += (sender, e) => + { + dialog.Close(); + }; + + btnConfirm.MouseUpEventHandler += (sender, e) => + { + confirmAction(); + dialog.Close(); + }; + + } + + /// <summary> + /// 纭畾鎻愮ず妗� + /// </summary> + /// <param name="titleId">鏍囬鏂囨湰</param> + /// <param name="tipTxet">鑷畾涔夋彁绀烘枃鏈�(鎹㈣)</param> + /// <param name="confirmAction">鍥炶皟鍑芥暟</param> + public void TipBox1(int titleId, int tipTxet, Action confirmAction) + { + Dialog dialog = new Dialog() + { + BackgroundColor = CSS_Color.viewTrans60lucence, + }; + + FrameLayout whiteView = new FrameLayout() + { + //Gravity = Gravity.Center, + X = Application.GetRealWidth(53), + Y = Application.GetRealHeight(264), + Width = Application.GetRealWidth(270), + Height = Application.GetRealHeight(155), + BackgroundColor = CSS_Color.view, + BorderColor = CSS_Color.viewTranslucence, + BorderWidth = 0, + Radius = (uint)Application.GetRealHeight(RradiusFrameLayout), + }; + dialog.AddChidren(whiteView); + + Button titleBtn = new Button() + { + Y = Application.GetRealHeight(20), + X = Application.GetRealWidth(35), + Height = Application.GetRealHeight(22), + Width = Application.GetRealWidth(270 - 35 * 2), + TextColor = CSS_Color.textConfirmColor, + TextSize = TextSize.text16, + TextAlignment = TextAlignment.Center, + TextID = titleId, + }; + whiteView.AddChidren(titleBtn); + + Button tipBtn = new Button() + { + Y = titleBtn.Bottom + Application.GetRealHeight(8), + X = Application.GetRealWidth(20), + Height = Application.GetRealHeight(22 + 15), + Width = Application.GetRealWidth(270 - 20 * 2), + TextColor = CSS_Color.textTipColor, + TextSize = TextSize.text12, + TextAlignment = TextAlignment.Center, + Text = Language.StringByID(tipTxet).Replace("{\\r\\n}", "\r\n"), + IsMoreLines = true, + }; + whiteView.AddChidren(tipBtn); + + + Button btnLine = new Button() + { + Y = whiteView.Height - Application.GetRealHeight(44 + 1), + Height = Application.GetRealHeight(1), + BackgroundColor = CSS_Color.viewLine, + }; + whiteView.AddChidren(btnLine); + + Button btnCancel = new Button() + { + Y = btnLine.Bottom, + Width = Application.GetRealWidth(135), + Height = Application.GetRealHeight(44), + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.viewLine, + TextSize = TextSize.text16, + TextID = StringId.cancelMusic, + Gravity = Gravity.BottomLeft, + }; + whiteView.AddChidren(btnCancel); + btnCancel.SetCornerWithSameRadius(Application.GetRealHeight(RradiusFrameLayout), HDLUtils.RectCornerBottomLeft); + Button btnConfirm = new Button() + { + X = btnCancel.Right, + Y = btnLine.Bottom, + Width = Application.GetRealWidth(135), + Height = Application.GetRealHeight(44), + TextAlignment = TextAlignment.Center, + TextColor = CSS_Color.view, + IsBold = true, + TextSize = TextSize.text16, + TextID = StringId.confirmMusic, + BackgroundColor = CSS_Color.textConfirmColor, + Gravity = Gravity.BottomRight, + }; + whiteView.AddChidren(btnConfirm); + btnConfirm.SetCornerWithSameRadius(Application.GetRealHeight(RradiusFrameLayout), HDLUtils.RectCornerBottomRight); + dialog.Show(); + btnCancel.MouseUpEventHandler += (sender, e) => + { + dialog.Close(); + }; + + btnConfirm.MouseUpEventHandler += (sender, e) => + { + confirmAction(); + dialog.Close(); + }; + + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TopView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TopView.cs new file mode 100644 index 0000000..28aac76 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/LogicView/TopView.cs @@ -0,0 +1,87 @@ +锘縰sing System; +using Shared; + +namespace HDL_ON.UI.UI2.Intelligence.Automation.LogicView +{ + public class TopView + { + #region 鏈�涓婇潰閭e潡鎺т欢 + /// <summary> + /// 鏈�涓婇潰鍧梀iew + /// </summary> + public FrameLayout frameLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTop, + Height = Application.GetRealHeight(64), + Width = Application.GetRealWidth(375), + }; + /// <summary> + /// 鏍囬Btn + /// </summary> + public Button topNameBtn = new Button + { + TextSize = TextSize.text18, + TextColor = CSS.CSS_Color.textColor, + Width = Application.GetRealWidth(TextSize.view375-60-60), + Height = Application.GetRealHeight(25), + Y = Application.GetRealHeight(30), + X = Application.GetRealWidth(60) + }; + /// <summary> + /// 鍚庨��Btn + /// </summary> + public Button backBtn = new Button + { + Width = Application.GetRealWidth(12), + Height = Application.GetRealHeight(20), + X = Application.GetRealWidth(TextSize.left16), + Y = Application.GetRealHeight(32), + UnSelectedImagePath = "LogicIcon/back.png", + + }; + /// <summary> + /// 璁剧疆鍥炬爣Btn + /// </summary> + public Button setBtn = new Button + { + Y = Application.GetRealHeight(28), + X = Application.GetRealWidth(337), + Width = Application.GetMinRealAverage(32), + Height = Application.GetMinRealAverage(32), + UnSelectedImagePath = "LogicIcon/set.png", + Visible = false, + }; + /// <summary> + /// 澧炲姞鐑敭澶у皬Btn + /// </summary> + public Button clickBackBtn = new Button + { + Width = Application.GetRealWidth(16 + 12 + 16), + Height = Application.GetRealHeight(64), + }; + /// <summary> + /// 璁剧疆鍥炬爣澧炲姞鐑敭澶у皬 + /// </summary> + public Button clickSetBtn = new Button + { + X = Application.GetRealWidth(337 - 37), + Width = Application.GetMinRealAverage(28 + 37), + Height = Application.GetMinRealAverage(28 + 7 + 29), + }; + /// <summary> + /// 鏈�涓婇潰鐨勯偅鍧楁柟娉� + /// </summary> + /// <returns></returns> + public FrameLayout FLayoutView() + { + frameLayout.AddChidren(topNameBtn); + frameLayout.AddChidren(backBtn); + frameLayout.AddChidren(setBtn); + frameLayout.AddChidren(clickBackBtn); + frameLayout.AddChidren(clickSetBtn); + return frameLayout; + } + #endregion + } +} + diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs new file mode 100644 index 0000000..ecfd441 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/MainView.cs @@ -0,0 +1,193 @@ +锘縰sing System; +using HDL_ON.UI.UI2.Intelligence.Automation.LogicView; +using Shared; +using System.Collections.Generic; +namespace HDL_ON.UI.UI2.Intelligence.Automation +{ + public class MainView + { + /// <summary> + /// 璁板綍閫昏緫鑷姩鍖栫埗鎺т欢 + /// </summary> + public static FrameLayout automationPage; + /// <summary> + /// 鍔犺浇閫昏緫鍒楄〃鏄剧ず鐣岄潰 + /// </summary> + public static void MainShow() + { + automationPage.RemoveAll(); + VerticalScrolViewLayout vv = new VerticalScrolViewLayout(); + automationPage.AddChidren(vv); + + for (int i = 0; i < Logic.LogicList.Count; i++) + { + var currLogic = Logic.LogicList[i]; + ///涓婁笅闂撮殧12鍍忕礌 + vv.AddChidren(new FrameLayout { Height = Application.GetRealHeight(12) }); + LogicView.SingleLogicView logicView = new LogicView.SingleLogicView(); + vv.AddChidren(logicView.FLayoutView()); + logicView.btnLogicName.Text = currLogic.name; + logicView.btnWeekText.Text = GetWeekText(currLogic); + logicView.btnclick.MouseUpEventHandler += (sen, e) => + { + Logic.currlogic = currLogic; + var addLogic = new AddLogic(); + MainPage.BasePageView.AddChidren(addLogic); + addLogic.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }; + logicView.btnSwitchIcon.MouseUpEventHandler += (sender1, e1) => + { + logicView.btnSwitchIcon.IsSelected = !logicView.btnSwitchIcon.IsSelected; + if (logicView.btnSwitchIcon.IsSelected) + { + logicView.btnSwitchIcon.IsSelected = true; + } + else + { + logicView.btnSwitchIcon.IsSelected = false; + } + }; + if (currLogic.enable == "true") + { + logicView.btnSwitchIcon.IsSelected = true; + } + else + { + logicView.btnSwitchIcon.IsSelected = false; + } + } + + if (Logic.LogicList.Count == 0) + { + Button btnTipNot = new Button() + { + Gravity = Gravity.CenterHorizontal, + Y = Application.GetRealHeight(120), + Width = Application.GetRealWidth(180), + Height = Application.GetRealWidth(180), + UnSelectedImagePath = "TipNot.png", + }; + automationPage.AddChidren(btnTipNot); + Button btnTipNotText = new Button() + { + Y = btnTipNot.Bottom, + Height = Application.GetRealWidth(100), + TextID = StringId.TipNotOpen, + TextAlignment = TextAlignment.Center, + TextColor = CSS.CSS_Color.TextualColor, + TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel, + }; + automationPage.AddChidren(btnTipNotText); + } + } + /// <summary> + /// 鎸�+璺宠浆鍒伴�昏緫鐣岄潰鐨勬柟娉� + /// </summary> + public static void SkipAddLogicPage() + { + Logic.currlogic = new Logic(); + var addLogic = new AddLogic(); + MainPage.BasePageView.AddChidren(addLogic); + addLogic.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + } + /// <summary> + ///杩斿洖寰幆鎻忚堪鏂囨湰 + /// </summary> + /// <param name="logic"></param> + public static string GetWeekText(Logic logic) + { + + string weekName = ""; + /// (鎵ц涓�娆�:once锛屾瘡澶�:day锛屾瘡鏈�:mon锛屾槦鏈�:week锛屾棩鏈熸:date_to_date) + switch (logic.cycle.type) + { + case "once": + { + weekName = Language.StringByID(StringId.performA); + } + break; + case "day": + { + weekName = Language.StringByID(StringId.days); + } + break; + case "week": + { + + weekName = GetWeekString(logic.cycle.value); + + } + break; + case "mon": + { + weekName = GetMonString(logic.cycle.value); + } + break; + } + return weekName; + } + /// <summary> + /// 鑾峰彇鏄熸湡鐨勫瓧绗︿覆 + /// </summary> + /// <param name="weekList"></param> + /// <returns></returns> + public static string GetWeekString(List<string> weekList) + { + string weekTextName = ""; + + if (weekList.Contains("0")) + { + weekTextName += Language.StringByID(StringId.monday) + ","; + } + if (weekList.Contains("1")) + { + weekTextName += Language.StringByID(StringId.tuesday) + ","; + } + if (weekList.Contains("2")) + { + weekTextName += Language.StringByID(StringId.wednesday) + ","; + } + if (weekList.Contains("3")) + { + weekTextName += Language.StringByID(StringId.thursday) + ","; + } + if (weekList.Contains("4")) + { + weekTextName += Language.StringByID(StringId.friday) + ","; + } + if (weekList.Contains("5")) + { + weekTextName += Language.StringByID(StringId.saturday) + ","; + } + if (weekList.Contains("6")) + { + weekTextName += Language.StringByID(StringId.sunday) + ","; + } + if (weekTextName == "") + { + return ""; + } + return weekTextName.TrimEnd(','); + } + /// <summary> + /// 鑾峰彇姣忔湀鐨勫瓧绗︿覆 + /// </summary> + /// <param name="monList"></param> + /// <returns></returns> + public static string GetMonString(List<string> monList) + { + string monTextName = Language.StringByID(StringId.monthly); + + for (int i = 1; i < 32; i++) + { + if (monList.Contains(i.ToString())) + { + monTextName += i.ToString() + ","; + } + } + return monTextName.TrimEnd(','); + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs new file mode 100644 index 0000000..6f61531 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Send.cs @@ -0,0 +1,263 @@ +锘縰sing System; +using System.IO; +using System.Net; +using HDL_ON.DAL.Server; +using Newtonsoft.Json.Linq; +using System.Collections.Generic; + +namespace HDL_ON.UI.UI2.Intelligence.Automation +{ + public class Send + { + ///// <summary> + ///// 浣忓畢ID + ///// </summary> + //public static string homeId = Entity.DB_ResidenceData.residenceData.CurReginID; + ///// <summary> + ///// 缃戝叧ID + ///// </summary> + //public static string gatewayId = DriverLayer.Control.Ins.GatewayId; + + /// <summary> + /// 浣忓畢ID + /// </summary> + public static string homeId = "1333681497069043713"; + /// <summary> + /// 缃戝叧ID + /// </summary> + public static string gatewayId = "1333682616549752834"; + /// <summary> + /// 鑾峰彇閫昏緫ID鍒楄〃 + /// </summary> + /// <returns></returns> + public static ResponsePackNew getLogicIdList() + { + var jObject = new JObject { { "homeId", homeId } }; + var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_List); + return responsePackNew; + } + /// <summary> + /// 鑾峰彇閫昏緫 + /// </summary> + /// <returns></returns> + public static ResponsePackNew getLogic(Logic logic) + { + var jArray = new JArray { }; + jArray.Add(logic.sid); + var jObject = new JObject { { "userLogicIds", jArray } }; + var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Info); + return responsePackNew; + } + /// <summary> + /// 娣诲姞鑷姩鍖栧懡浠� + /// </summary> + /// <param name="logic"></param> + /// <returns></returns> + public static ResponsePackNew AddLogic(Logic logic) + { + ResponsePackNew responsePackNew = null; + try + { + var cycleJObject = new JObject { }; + var cyclevaluejArray = new JArray { }; + cycleJObject.Add("type", logic.cycle.type); + foreach (var dictionary in logic.cycle.value) + { + cyclevaluejArray.Add(dictionary); + } + cycleJObject.Add("value", cyclevaluejArray); + + var inputArray = new JArray { }; + foreach (var dictionary in logic.input) + { + var inputTypeJOb = new JObject { }; + inputTypeJOb.Add("sid", dictionary.sid); + inputTypeJOb.Add("condition_type", dictionary.condition_type); + + var conditionArray = new JArray { }; + foreach (var dic in dictionary.condition) + { + var conditionJOb = new JObject { }; + conditionJOb.Add("key", dic["key"]); + conditionJOb.Add("comparator", dic["comparator"]); + conditionJOb.Add("data_type", dic["data_type"]); + conditionJOb.Add("value", dic["value"]); + conditionArray.Add(conditionJOb); + } + inputTypeJOb.Add("condition",conditionArray); + inputArray.Add(inputTypeJOb); + } + + var outputArray = new JArray { }; + foreach (var dictionary in logic.output) + { + var outputTypeJOb = new JObject { }; + outputTypeJOb.Add("sid", dictionary.sid); + outputTypeJOb.Add("target_type", dictionary.target_type); + var statusArray = new JArray { }; + foreach (var dic in dictionary.status) + { + var statusJOb = new JObject { }; + statusJOb.Add("key", dic["key"]); + statusJOb.Add("value", dic["value"]); + statusArray.Add(statusJOb); + } + outputTypeJOb.Add("status", statusArray); + outputArray.Add(outputTypeJOb); + } + + var logicjArray = new JArray { }; + var logicIfon = new JObject { }; + logicIfon.Add("sid", logic.sid); + logicIfon.Add("gatewayId", gatewayId); + logicIfon.Add("name", logic.name); + logicIfon.Add("relation", logic.relation); + logicIfon.Add("enable", logic.enable); + logicIfon.Add("cycle", cycleJObject); + logicIfon.Add("input", inputArray); + logicIfon.Add("output", outputArray); + logicjArray.Add(logicIfon); + var jObject = new JObject { { "homeId", homeId }, { "logics", logicjArray } }; + responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Add); + + } + catch (Exception e) + { + var dd = e.Message; + } + + + return responsePackNew; + } + + /// <summary> + /// 缂栬緫鏇存柊閫昏緫 + /// </summary> + /// <param name="logic"></param> + /// <returns></returns> + public static ResponsePackNew updateLogic(Logic logic) + { + ResponsePackNew responsePackNew = null; + try + { + var cycleJObject = new JObject { }; + var cyclevaluejArray = new JArray { }; + cycleJObject.Add("type", logic.cycle.type); + foreach (var dictionary in logic.cycle.value) + { + cyclevaluejArray.Add(dictionary); + } + cycleJObject.Add("value", cyclevaluejArray); + + var inputArray = new JArray { }; + foreach (var dictionary in logic.input) + { + var inputTypeJOb = new JObject { }; + inputTypeJOb.Add("sid", dictionary.sid); + inputTypeJOb.Add("condition_type", dictionary.condition_type); + + var conditionArray = new JArray { }; + foreach (var dic in dictionary.condition) + { + var conditionJOb = new JObject { }; + conditionJOb.Add("key", dic["key"]); + conditionJOb.Add("comparator", dic["comparator"]); + conditionJOb.Add("data_type", dic["data_type"]); + conditionJOb.Add("value", dic["value"]); + conditionArray.Add(conditionJOb); + } + inputTypeJOb.Add("condition", conditionArray); + inputArray.Add(inputTypeJOb); + } + + var outputArray = new JArray { }; + foreach (var dictionary in logic.output) + { + var outputTypeJOb = new JObject { }; + outputTypeJOb.Add("sid", dictionary.sid); + outputTypeJOb.Add("target_type", dictionary.target_type); + var statusArray = new JArray { }; + foreach (var dic in dictionary.status) + { + var statusJOb = new JObject { }; + statusJOb.Add("key", dic["key"]); + statusJOb.Add("value", dic["value"]); + statusArray.Add(statusJOb); + } + outputTypeJOb.Add("status", statusArray); + outputArray.Add(outputTypeJOb); + } + + var logicjArray = new JArray { }; + var logicIfon = new JObject { }; + logicIfon.Add("sid", logic.sid); + logicIfon.Add("gatewayId", gatewayId); + logicIfon.Add("name", logic.name); + logicIfon.Add("relation", logic.relation); + logicIfon.Add("enable", logic.enable); + logicIfon.Add("cycle", cycleJObject); + logicIfon.Add("input", inputArray); + logicIfon.Add("output", outputArray); + logicjArray.Add(logicIfon); + var jObject = new JObject { { "homeId", homeId }, { "logics", logicjArray } }; + responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Update); + + } + catch (Exception e) + { + var dd = e.Message; + } + + + return responsePackNew; + } + /// <summary> + /// 鍒犻櫎閫昏緫 + /// </summary> + /// <returns></returns> + public static ResponsePackNew delLogic(Logic logic) + { + var jArray = new JArray { }; + jArray.Add(logic.sid); + var jObject = new JObject { { "userLogicIds", jArray } }; + var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Delete); + return responsePackNew; + } + /// <summary> + /// 閫昏緫寮�鍏� + /// </summary> + /// <returns></returns> + public static ResponsePackNew switchLogic(Logic logic) + { + logic.enable ="false"; + var jArray = new JArray { }; + var job = new JObject { { "userLogicId", logic.sid } , { "enable", logic.enable } }; + jArray.Add(job); + var jObject = new JObject { { "logics", jArray } }; + var responsePackNew = RequestServerhomeId(jObject, NewAPI.API_POST_Logic_Enable); + return responsePackNew; + } + /// <summary> + ///璇锋眰鏈嶅姟鍣紙涓庝綇瀹呮湁鍏�:渚嬪锛沨omeId锛� + /// </summary> + /// <returns></returns> + public static ResponsePackNew RequestServerhomeId(object o, string api_Url, int mTimeout = 10) + { + var requestJson = HttpUtil.GetSignRequestJson(o); + return HttpUtil.RequestHttpsPostFroHome(api_Url, requestJson, mTimeout); + + } + + /// <summary> + /// 璇锋眰鏈嶅姟鍣� + /// </summary> + /// <returns></returns> + public static ResponsePackNew RequestServer(object o, string api_Url) + { + var requestJson = HttpUtil.GetSignRequestJson(o); + return HttpUtil.RequestHttpsPost(api_Url, requestJson); + + } + + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/Set.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/Set.cs new file mode 100644 index 0000000..94c4318 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/Set.cs @@ -0,0 +1,114 @@ +锘縰sing System; +using System.Collections.Generic; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation +{ + public class Set:FrameLayout + { + public Set() + { + Tag = "Logic"; + } + + public void Show() + { + + this.BackgroundColor = CSS.CSS_Color.viewMiddle; + LogicView.TopView topView = new LogicView.TopView(); + this.AddChidren(topView.FLayoutView()); + topView.clickBackBtn.MouseUpEventHandler += (e, sen) => + { + RemoveFromParent(); + }; + topView.topNameBtn.TextID = StringId.setlogic; + FrameLayout viewLayout = new FrameLayout + { + Y = Application.GetRealHeight(64), + Width = Application.GetRealWidth(LogicView.TextSize.view375), + Height = Application.GetRealHeight(LogicView.TextSize.view667 - 64 - 76), + BackgroundColor = CSS.CSS_Color.viewMiddle, + }; + this.AddChidren(viewLayout); + + LogicView.SelectTypeView nameView = new LogicView.SelectTypeView(); + nameView.btnText.X = Application.GetRealWidth(16); + nameView.btnText.Height = Application.GetRealHeight(22); + nameView.btnText.TextID = StringId.namelogic; + nameView.btnIcon.Visible = false; + nameView.btnNextIcon.Height = Application.GetMinRealAverage(28); + nameView.btnNextIcon.Width = Application.GetMinRealAverage(28); + nameView.btnNextIcon.UnSelectedImagePath = "LogicIcon/editname.png"; + viewLayout.AddChidren(nameView.FLayoutView()); + + Button btnAutomationName = new Button + { + TextSize = LogicView.TextSize.text14, + Width = Application.GetRealWidth(375 - 40 - 52), + Height = Application.GetRealHeight(20), + TextColor = CSS.CSS_Color.textCancelColor, + X = Application.GetRealWidth(40), + Gravity = Gravity.CenterVertical, + TextAlignment = TextAlignment.CenterRight, + Text =Logic.currlogic.name, + }; + nameView.frameLayout.AddChidren(btnAutomationName); + + + EventHandler<MouseEventArgs> editClick = (sender, e) => + { + List<string> list = new List<string>(); + foreach (var logic in Logic.LogicList) { + list.Add(logic.name); + } + + new LogicView.TipPopView().InputBox(StringId.editName, Logic.currlogic.name, StringId.nameNull, StringId.NameAlreadyExists, list, (logicName) => + { + btnAutomationName.Text = logicName; + Logic.currlogic.name = logicName; + + }); + }; + nameView.btnClick.MouseUpEventHandler += editClick; + btnAutomationName.MouseUpEventHandler += editClick; + + + #region 鍒犻櫎 + FrameLayout frameLayout = new FrameLayout + { + Y = Application.GetRealHeight(LogicView.TextSize.view667 - 50), + Height = Application.GetRealHeight(50), + BackgroundColor = CSS.CSS_Color.view, + Gravity = Gravity.BottomCenter,//缃簳鐨勫睘鎬� + }; + this.AddChidren(frameLayout); + Button btnDel = new Button + { + TextSize = LogicView.TextSize.text16, + Width = Application.GetRealWidth(50), + Height = Application.GetRealHeight(22), + TextColor = CSS.CSS_Color.textRedColor, + Gravity = Gravity.Center, + TextID = StringId.Del, + }; + frameLayout.AddChidren(btnDel); + + + EventHandler<MouseEventArgs> delClick = (sender, e) => + { + + new LogicView.TipPopView().TipBox(StringId.tip, StringId.delAutomation, () => + { + LogicMethod.RemoveAllView(); + Logic.LogicList.Remove(Logic.currlogic); + MainView.MainShow(); + //鍙戦�佸垹闄ら�昏緫鍛戒护锛� + }); + + }; + btnDel.MouseUpEventHandler += delClick; + frameLayout.MouseUpEventHandler += delClick; + #endregion + + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/TimeTpye.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/TimeTpye.cs new file mode 100644 index 0000000..634e7b0 --- /dev/null +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/TimeTpye.cs @@ -0,0 +1,386 @@ +锘縰sing System; +using System.Collections.Generic; +using Shared; +namespace HDL_ON.UI.UI2.Intelligence.Automation +{ + public class TimeTpye : FrameLayout + { + public TimeTpye() + { + 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.selectionTimeCondition; + + 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 timepointView = new LogicView.SelectTypeView(); + timepointView.btnIcon.Visible = false; + timepointView.btnText.X = Application.GetRealWidth(16); + timepointView.btnLine.X = Application.GetRealWidth(16); + timepointView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16); + timepointView.btnText.TextID = StringId.hour; + viewLayout.AddChidren(timepointView.FLayoutView()); + + //鏃堕棿鑼冨洿 + LogicView.SelectTypeView timeHorizonView = new LogicView.SelectTypeView(); + timeHorizonView.frameLayout.Y = timepointView.frameLayout.Bottom; + timeHorizonView.btnIcon.Visible = false; + timeHorizonView.btnText.X = Application.GetRealWidth(16); + timeHorizonView.btnLine.X = Application.GetRealWidth(16); + timeHorizonView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16); + timeHorizonView.btnText.TextID = StringId.timeHorizon; + viewLayout.AddChidren(timeHorizonView.FLayoutView()); + + #endregion + + #region 鏃堕棿鐐� 鏃堕棿鑼冨洿鐐瑰嚮浜嬩欢 + //鏃堕棿鐐圭偣鍑讳簨浠� + timepointView.btnClick.MouseUpEventHandler += (sen, e) => + { + //涓荤晫闈㈡帶浠� + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + this.AddChidren(fLayout); + TimePoint(fLayout, false, 100); + + }; + //鏃堕棿鑼冨洿鐐瑰嚮浜嬩欢 + timeHorizonView.btnClick.MouseUpEventHandler += (sen, e) => + { + //涓荤晫闈㈡帶浠� + FrameLayout fLayout = new FrameLayout + { + BackgroundColor = CSS.CSS_Color.viewTrans60lucence, + }; + //娣诲姞涓荤晫闈� + this.AddChidren(fLayout); + TimeHorizon(fLayout, false, 0); + }; + + #endregion + } + + /// <summary> + /// 鏃堕棿鐐规柟娉� + /// </summary> + /// <param name="fLayout">鍦ㄥ摢涓晫闈㈡樉绀�</param> + /// <param name="edit">锛坱rue=缂栬緫锛沠alse=鏂板缓锛�</param> + /// <param name="index">缂栬緫鏉′欢鐨勭储寮�</param> + public void TimePoint(FrameLayout fLayout, bool edit, int index) + { + LogicView.TimeView timePointView = new LogicView.TimeView(); + timePointView.FLayoutView(fLayout); + EventHandler<MouseEventArgs> RemovefLayout = (sender, e1) => + { + //绉婚櫎fLayout鐣岄潰 + fLayout.RemoveFromParent(); + }; + //鍙栨秷鐐瑰嚮浜嬩欢 + timePointView.btnCancel.MouseUpEventHandler += RemovefLayout; + + //鍔犺浇鏁版嵁鐣岄潰鐨勮缃柟娉�(鍒楄〃浜掍笉鑱斿姩) + timePointView.mUIPickerView.setNPicker(timePointView.GethStringList(), timePointView.GetmStringList(), null); + //榛樿鍒濆閫変腑鐘舵�� + timePointView.mUIPickerView.setCurrentItems(0, 30, 0); + //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鏃堕棿 + string timepoint = "01:30"; + + if (edit) + { + Input inputs = Logic.currlogic.input[index]; + if (inputs.condition_type == "1") + { + List<Dictionary<string, string>> dicList = inputs.condition as List<Dictionary<string, string>>; + foreach (var dic in dicList) + { + string timeValue = dic["value"]; + int hIndex = timePointView.GetValueIndex(timeValue, 0, 1, timePointView.GethIntList()); + int mIndex = timePointView.GetValueIndex(timeValue, 1, 0, timePointView.GetmIntList()); + //鏇存柊鍒濆鐘舵�� + timePointView.mUIPickerView.setCurrentItems(hIndex - 1, mIndex, 0); + timepoint = timeValue; + } + } + } + + + //閫変腑鏃堕棿鍥炶皟鏂规硶,鏃堕棿鍙樺寲涓�娆″洖璋冧竴娆� + timePointView.mUIPickerView.OnSelectChangeEvent += (index1, index2, index3) => + { + string hour = timePointView.GethStringList()[index1].Split(' ')[0]; + string minuet = timePointView.GetmStringList()[index2].Split(' ')[0]; + timepoint = hour + ":" + minuet; + }; + //纭畾鐐瑰嚮浜嬩欢 + timePointView.btnConfirm.MouseUpEventHandler += (sender, e3) => + { + Input inputTime = new Input(); + inputTime.sid = LogicMethod.NewSid(); + inputTime.condition_type = "1"; + Dictionary<string, string> dic = new Dictionary<string, string>(); + LogicMethod.dictionary(dic, "key", "timepoint"); + LogicMethod.dictionary(dic, "comparator", "="); + LogicMethod.dictionary(dic, "data_type", "string"); + LogicMethod.dictionary(dic, "value", timepoint); + inputTime.condition.Add(dic); + if (edit) + { + //绉婚櫎鏃ф暟鎹� + Logic.currlogic.input.RemoveAt(index); + //鏂版暟鎹彃鍏ユ棫鏁版嵁鐨勪綅缃�; + Logic.currlogic.input.Insert(index, inputTime); + } + else + { + //娣诲姞涓�涓柊鐨勬椂闂寸偣鏉′欢 + Logic.currlogic.input.Add(inputTime); + } + LogicMethod.RemoveAllView(); + AddLogic addLogic = new AddLogic(); + MainPage.BasePageView.AddChidren(addLogic); + addLogic.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + + }; + } + /// <summary> + /// 鏃堕棿鑼冨洿鏂规硶 + /// </summary> + /// <param name="fLayout">鍦ㄥ摢涓晫闈㈡樉绀�</param> + /// <param name="edit">锛坱rue=缂栬緫锛沠alse=鏂板缓锛�</param> + /// <param name="index">缂栬緫鏉′欢鐨勭储寮�</param> + public void TimeHorizon(FrameLayout fLayout,bool edit,int index) + { + #region 鐣岄潰甯冨眬 + LogicView.TimeHorizonView timeHorizonView = new LogicView.TimeHorizonView(); + timeHorizonView.FLayoutView(fLayout); + //寮�濮嬫椂闂� + LogicView.SelectTypeView startTimeView = new LogicView.SelectTypeView(); + startTimeView.frameLayout.Y = Application.GetRealHeight(87); + startTimeView.btnIcon.Visible = false; + startTimeView.btnText.X = Application.GetRealWidth(16); + startTimeView.btnText.TextID = StringId.startTime; + startTimeView.btnLine.X = Application.GetRealWidth(16); + startTimeView.btnLine.Width = Application.GetRealWidth(375 - 16 - 16); + startTimeView.btnNextIcon.X = Application.GetRealWidth(307); + timeHorizonView.frameLayout.AddChidren(startTimeView.FLayoutView()); + //鏄剧ず寮�濮嬫椂闂存枃鏈� + Button btnStartTimeText = new Button + { + TextSize = LogicView.TextSize.text12, + Width = Application.GetRealWidth(32 + 3), + Height = Application.GetRealHeight(20), + TextColor = CSS.CSS_Color.textCancelColor, + Y = Application.GetRealHeight(17), + X = Application.GetRealWidth(260), + Tag = "0", + }; + startTimeView.frameLayout.AddChidren(btnStartTimeText); + + //缁撴潫鏃堕棿 + LogicView.SelectTypeView endTimeView = new LogicView.SelectTypeView(); + endTimeView.frameLayout.SetCornerWithSameRadius(Application.GetRealHeight(12), HDLUtils.RectCornerBottomLeft | HDLUtils.RectCornerBottomRight); + endTimeView.frameLayout.Y = startTimeView.frameLayout.Bottom; + endTimeView.btnIcon.Visible = false; + endTimeView.btnLine.Visible = false; + endTimeView.btnText.X = Application.GetRealWidth(16); + endTimeView.btnText.TextID = StringId.endTime; + endTimeView.btnNextIcon.X = Application.GetRealWidth(307); + timeHorizonView.frameLayout.AddChidren(endTimeView.FLayoutView()); + //鏄剧ず缁撴潫鏃堕棿鏂囨湰 + Button btnEndTimeText = new Button + { + TextSize = LogicView.TextSize.text12, + Width = Application.GetRealWidth(32 + 3), + Height = Application.GetRealHeight(20), + TextColor = CSS.CSS_Color.textCancelColor, + Y = Application.GetRealHeight(17), + X = Application.GetRealWidth(260), + Tag = "0", + }; + endTimeView.frameLayout.AddChidren(btnEndTimeText); + + #endregion + + #region 鐐瑰嚮浜嬩欢 + //寮�濮嬫椂闂寸偣鍑讳簨浠� + startTimeView.btnClick.MouseUpEventHandler += (sender, e) => + { + SelectedTimeHorizon(fLayout, btnStartTimeText); + }; + //缁撴潫鏃堕棿鐐瑰嚮浜嬩欢 + endTimeView.btnClick.MouseUpEventHandler += (sender, e) => + { + SelectedTimeHorizon(fLayout, btnEndTimeText); + }; + //纭畾鐐瑰嚮浜嬩欢 + timeHorizonView.btnConfirm.MouseUpEventHandler += (sender, e) => + { + if (btnStartTimeText.Tag.ToString() == "0") + { + //鎻愮ず锛氳閫変腑寮�濮嬫椂闂� + return; + } + if (btnEndTimeText.Tag.ToString() == "0") + { + //鎻愮ず锛氳閫変腑缁撴潫鏃堕棿 + return; + } + if (btnStartTimeText.Tag.ToString() == btnEndTimeText.Tag.ToString()) + { + //鎻愮ず锛氭椂闂翠竴鏍风殑 + return; + } + if (int.Parse(btnStartTimeText.Tag.ToString()) > int.Parse(btnEndTimeText.Tag.ToString())) + { + //鎻愮ず锛氬紑濮嬫椂闂翠笉鑳藉ぇ浜庣粨鏉熸椂闂� + return; + } + + Input inputTime = new Input(); + inputTime.sid = LogicMethod.NewSid(); + inputTime.condition_type = "2"; + Dictionary<string, string> dic = new Dictionary<string, string>(); + LogicMethod.dictionary(dic, "key", "timesection"); + LogicMethod.dictionary(dic, "comparator", "="); + LogicMethod.dictionary(dic, "data_type", "string"); + LogicMethod.dictionary(dic, "value", btnStartTimeText.Text+"~"+btnEndTimeText.Text); + inputTime.condition.Add(dic); + if (edit) + { + //绉婚櫎鏃ф暟鎹� + Logic.currlogic.input.RemoveAt(index); + //鏂版暟鎹彃鍏ユ棫鏁版嵁鐨勪綅缃� + Logic.currlogic.input.Insert(index, inputTime); + fLayout.RemoveFromParent(); + } + else + { + //娣诲姞涓�涓柊鐨勬椂闂寸偣鏉′欢 + Logic.currlogic.input.Add(inputTime); + } + LogicMethod.RemoveAllView(); + AddLogic addLogic = new AddLogic(); + MainPage.BasePageView.AddChidren(addLogic); + addLogic.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + + + }; + #endregion + + if (edit) + { + Input inputs = Logic.currlogic.input[index]; + if (inputs.condition_type == "2") + { + List<Dictionary<string, string>> dicList = inputs.condition as List<Dictionary<string, string>>; + foreach (var dic in dicList) + { + string value = dic["value"]; + string startTime = value.Split('~')[0]; + string endtTime = value.Split('~')[1]; + btnStartTimeText.Text = startTime; + btnStartTimeText.Tag = int.Parse(startTime.Split(':')[0]) * 60 + int.Parse(startTime.Split(':')[1]); + btnEndTimeText.Text = endtTime; + btnEndTimeText.Tag = int.Parse(endtTime.Split(':')[0]) * 60 + int.Parse(endtTime.Split(':')[1]); + } + } + } + } + /// <summary> + /// 璁剧疆鏃堕棿娈垫椂闂寸殑鏂规硶 + /// </summary> + /// <param name="fLayout"></param> + /// <param name="btn"></param> + public void SelectedTimeHorizon(FrameLayout fLayout, Button btn) + { + + LogicView.TimeView timePointView = new LogicView.TimeView(); + timePointView.FLayoutView(fLayout); + EventHandler<MouseEventArgs> RemovefLayout = (sender, e1) => + { + //鍙Щ闄ゆ椂闂村脊绐楃晫闈� + timePointView.frameLayout.RemoveFromParent(); + }; + //鍙栨秷鐐瑰嚮浜嬩欢 + timePointView.btnCancel.MouseUpEventHandler += RemovefLayout; + //鍔犺浇鏁版嵁鐣岄潰鐨勮缃柟娉�(鍒楄〃浜掍笉鑱斿姩) + timePointView.mUIPickerView.setNPicker(timePointView.GethStringList(), timePointView.GetmStringList(), null); + //榛樿鍒濆閫変腑鐘舵�� + timePointView.mUIPickerView.setCurrentItems(0, 30, 0); + //瀹氫箟涓�涓眬閮ㄥ彉閲忚褰曢�変腑鏃堕棿 + string timepoint = "01:30"; + int sumTime = 90; + + if (btn.Tag.ToString() != "0") + { + string h = "", m = ""; + sumTime = int.Parse(btn.Tag.ToString()); + if ((sumTime / 60) < 10) + { + h = "0" + (sumTime / 60).ToString(); + } + else + { + h = (sumTime / 60).ToString(); + } + + if ((sumTime % 60) < 10) + { + m = "0" + (sumTime % 60).ToString(); + } + else + { + m = (sumTime % 60).ToString(); + } + timepoint = h + ":" + m; + + int hourIndex = timePointView.GetValueIndex(timepoint, 0, 1, timePointView.GethIntList()); + int minuteIndex = timePointView.GetValueIndex(timepoint, 1, 0, timePointView.GetmIntList()); + //鏇存柊鐘舵�� + timePointView.mUIPickerView.setCurrentItems(hourIndex - 1, minuteIndex, 0); + } + + //閫変腑鏃堕棿鍥炶皟鏂规硶,鏃堕棿鍙樺寲涓�娆″洖璋冧竴娆� + timePointView.mUIPickerView.OnSelectChangeEvent += (index1, index2, index3) => + { + + string hour = timePointView.GethStringList()[index1].Split(' ')[0]; + string minuet = timePointView.GetmStringList()[index2].Split(' ')[0]; + timepoint = hour + ":" + minuet; + sumTime = int.Parse(hour) * 60 + int.Parse(minuet); + + + }; + //纭畾鐐瑰嚮浜嬩欢 + timePointView.btnConfirm.MouseUpEventHandler += (sender1, e3) => + { + btn.Tag = sumTime; + btn.Text = timepoint; + //鍙Щ闄ゆ椂闂村脊绐楃晫闈� + timePointView.frameLayout.RemoveFromParent(); + }; + } + } +} diff --git a/HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs b/HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs index db28d94..72c5ce7 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs @@ -4,7 +4,7 @@ using HDL_ON.UI.CSS; using Shared; -namespace HDL_ON.UI +namespace HDL_ON.UI { public partial class IntelligencePage : FrameLayout { @@ -177,7 +177,8 @@ #endregion - sceneFunctionView = new VerticalScrolViewLayout() { + sceneFunctionView = new VerticalScrolViewLayout() + { Y = floorChangeView.Bottom, Height = Application.GetRealHeight(667 - 64 - 49 - 52 + 30), }; @@ -365,30 +366,11 @@ void LoadAutomationPageView() { //btnAddIcon.RemoveFromParent(); - automationPage = new FrameLayout(); contentPageView.AddChidren(automationPage); + HDL_ON.UI.UI2.Intelligence.Automation.MainView.automationPage = automationPage; + HDL_ON.UI.UI2.Intelligence.Automation.MainView.MainShow(); - Button btnTipNot = new Button() - { - Gravity = Gravity.CenterHorizontal, - Y = Application.GetRealHeight(120), - Width = Application.GetRealWidth(180), - Height = Application.GetRealWidth(180), - UnSelectedImagePath = "TipNot.png", - }; - automationPage.AddChidren(btnTipNot); - - Button btnTipNotText = new Button() - { - Y = btnTipNot.Bottom, - Height = Application.GetRealWidth(100), - TextID = StringId.TipNotOpen, - TextAlignment = TextAlignment.Center, - TextColor = CSS_Color.TextualColor, - TextSize = CSS_FontSize.PromptFontSize_FirstLevel, - }; - automationPage.AddChidren(btnTipNotText); } #endregion } @@ -441,9 +423,9 @@ btnSceneTilte.TextSize = CSS_FontSize.HeadlineFontSize; btnAutomationTitle.IsSelected = false; btnAutomationTitle.TextSize = CSS_FontSize.TextFontSize; - contentPageView.PageIndex = 0; }; + //閫昏緫鐐瑰嚮浜嬩欢 btnAutomationTitle.MouseUpEventHandler = (sender, e) => { if (btnAutomationTitle.IsSelected) { @@ -454,6 +436,7 @@ btnSceneTilte.IsSelected = false; btnSceneTilte.TextSize = CSS_FontSize.TextFontSize; contentPageView.PageIndex = 1; + }; } #endregion @@ -465,13 +448,22 @@ { btnAddIcon.MouseUpEventHandler = (sender, e) => { - Action action = () => { - LoadSceneFunctionControlZone(); - }; - var aep = new NewSceneMenuListPage(action); - MainPage.BasePageView.AddChidren(aep); - aep.LoadPage(); - MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + if (!btnAutomationTitle.IsSelected) + { + Action action = () => + { + LoadSceneFunctionControlZone(); + }; + var aep = new NewSceneMenuListPage(action); + MainPage.BasePageView.AddChidren(aep); + aep.LoadPage(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + } + else + { + //璺宠浆鍒伴�昏緫鐣岄潰 + HDL_ON.UI.UI2.Intelligence.Automation.MainView.SkipAddLogicPage(); + } }; } @@ -492,6 +484,7 @@ btnName.MouseUpEventHandler = eventHandler; btnZone.MouseUpEventHandler = eventHandler; } + } } -- Gitblit v1.8.0