From eda3fb873e59544ff36301b51e05aef64f87b0f9 Mon Sep 17 00:00:00 2001 From: wei <kaede@kaededeMacBook-Air.local> Date: 星期五, 27 八月 2021 13:21:21 +0800 Subject: [PATCH] Merge branch 'newBranch1' of http://172.16.1.23:6688/r/~wxr/HDL_APP_Project into newBranch1 --- HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs | 98 ++++++++++++++++++++++++++++++++++++++++--------- 1 files changed, 80 insertions(+), 18 deletions(-) diff --git a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs index 6ba1356..ba94b4d 100644 --- a/HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs +++ b/HDL_ON/UI/UI2/3-Intelligence/Automation/AddTarget.cs @@ -36,18 +36,25 @@ viewLayout.AddChidren(functionView.FLayoutView()); //鍦烘櫙 - LogicView.SelectTypeView sceneView = new LogicView.SelectTypeView(); + 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 securityView = new LogicView.SelectTypeView(); + securityView.frameLayout.Y = sceneView.frameLayout.Bottom; + securityView.btnText.TextID = StringId.anfang; + securityView.btnIcon.UnSelectedImagePath = "LogicIcon/security.png"; + viewLayout.AddChidren(securityView.FLayoutView()); //寤舵椂 LogicView.SelectTypeView delayView = new LogicView.SelectTypeView(); delayView.frameLayout.Y = sceneView.frameLayout.Bottom; delayView.btnText.TextID = StringId.delayLogic; delayView.btnIcon.UnSelectedImagePath = "LogicIcon/time.png"; - viewLayout.AddChidren(delayView.FLayoutView()); + //viewLayout.AddChidren(delayView.FLayoutView()); #endregion #region 鎵�鏈夌偣鍑讳簨浠� @@ -64,6 +71,16 @@ sceneView.btnClick.MouseUpEventHandler += (sen, e) => { SceneMethod(); + }; + //瀹夐槻鐐瑰嚮浜嬩欢 + securityView.btnClick.MouseUpEventHandler += (sen, e) => + { + Security security = new Security(); + MainPage.BasePageView.AddChidren(security); + security.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + + //SecurityMethod(this); }; //寤舵椂鐐瑰嚮浜嬩欢 delayView.btnClick.MouseUpEventHandler += (sen, e) => @@ -85,14 +102,14 @@ /// </summary> public void SceneMethod() { - var sceneList = LogicMethod.GetSceneList(); + var sceneList = LogicMethod.CurrLogicMethod.GetSceneList(); List<string> nameList = new List<string>(); for (int i = 0; i < sceneList.Count; i++) { var scene = sceneList[i]; nameList.Add(scene.name); } PublicInterface publicInterface = new PublicInterface(); - publicInterface.FrameOrVv(this, nameList, StringId.addSceneLogic, (index) => + publicInterface.FrameOrVv(this, nameList,new List<string> { }, StringId.addSceneLogic, (index) => { var sceneSelecetd = sceneList[index]; Output outputDevice = new Output(); @@ -101,14 +118,48 @@ //娌″暐浣滅敤锛屼负浜嗗彂閫佹暟鎹牸寮忕粺涓�; outputDevice.status = new List<Dictionary<string, string>> { new Dictionary<string, string> { { "key", "scene" }, { "value", "0" } } }; AddOutput(outputDevice); - LogicMethod.RemoveAllView(); + LogicMethod.CurrLogicMethod.RemoveAllView(); AddLogic addLogic = new AddLogic(); MainPage.BasePageView.AddChidren(addLogic); addLogic.Show(); MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; }); } - + /// <summary> + /// 娣诲姞瀹夐槻 + /// </summary> + public void SecurityMethod(FrameLayout frameLayout, bool edit=false, int index1=-1) + { + List<string> stateList = new List<string>(); + if (edit&& index1 != -1) { + Output output = Logic.currlogic.output[index1]; + var security = LogicMethod.CurrLogicMethod.GetSecurity(output.sid); + stateList.Add(security.name); + } + var securityList = LogicMethod.CurrLogicMethod.GetSecurityList(); + List<string> nameList = new List<string>(); + for (int i = 0; i < securityList.Count; i++) + { + var security = securityList[i]; + nameList.Add(security.name); + } + PublicInterface publicInterface = new PublicInterface(); + publicInterface.FrameOrVv(frameLayout, nameList, stateList, StringId.addSecurityLogic,(index) => + { + var securitySelecetd = securityList[index]; + Output outputDevice = new Output(); + outputDevice.target_type = "3"; + outputDevice.sid = securitySelecetd.sid; + //娌″暐浣滅敤锛屼负浜嗗彂閫佹暟鎹牸寮忕粺涓�; + outputDevice.status = new List<Dictionary<string, string>> { new Dictionary<string, string> { { "key", "security" }, { "value", "0" } } }; + AddOutput(outputDevice,true); + LogicMethod.CurrLogicMethod.RemoveAllView(); + AddLogic addLogic = new AddLogic(); + MainPage.BasePageView.AddChidren(addLogic); + addLogic.Show(); + MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; + }); + } /// <summary> /// 寤舵椂鏃堕棿鏂规硶 /// </summary> @@ -137,7 +188,7 @@ if (edit) { Output output = Logic.currlogic.output[index]; - if (output.target_type == "3") + if (output.target_type == "4") { List<Dictionary<string, string>> dicList = output.status as List<Dictionary<string, string>>; foreach (var dic in dicList) @@ -168,11 +219,11 @@ return; } Output outputTime= new Output(); - outputTime.sid = LogicMethod.NewSid(); - outputTime.target_type = "3"; + outputTime.sid = LogicMethod.CurrLogicMethod.NewSid(); + outputTime.target_type = "4"; Dictionary<string, string> dic = new Dictionary<string, string>(); - LogicMethod.dictionary(dic, "key", "delay"); - LogicMethod.dictionary(dic, "value", timepoint); + LogicMethod.CurrLogicMethod.dictionary(dic, "key", "delay"); + LogicMethod.CurrLogicMethod.dictionary(dic, "value", timepoint); outputTime.status.Add(dic); if (edit) { @@ -187,7 +238,7 @@ AddOutput(outputTime); } fLayout.RemoveFromParent(); - LogicMethod.RemoveAllView(); + LogicMethod.CurrLogicMethod.RemoveAllView(); AddLogic addLogic = new AddLogic(); MainPage.BasePageView.AddChidren(addLogic); addLogic.Show(); @@ -195,23 +246,34 @@ }; } - /// <summary> /// 娣诲姞鐩爣 /// </summary> /// <param name="target"></param> - private void AddOutput(Output target) + /// <param name="bool_if">琛ㄧず鍚敤涓嶅悓鏉′欢</param> + private void AddOutput(Output target,bool bool_if=false) { int indexValue = -1; for (int i = 0; i < Logic.currlogic.output.Count; i++) { - if (Logic.currlogic.output[i].sid == target.sid) + if (bool_if) { - indexValue = i; - break; + ///瀹夐槻鍏佽涓�绉� + if (Logic.currlogic.output[i].target_type == target.target_type) + { + indexValue = i; + break; + } + } + else + { + if (Logic.currlogic.output[i].sid == target.sid) + { + indexValue = i; + break; + } } } - if (indexValue != -1) { Logic.currlogic.output.RemoveAt(indexValue); -- Gitblit v1.8.0