From 7ddc5830cc495d69119b9b0ae33353397bd0521f Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 22 十二月 2020 10:42:10 +0800
Subject: [PATCH] Merge branch 'CJL' into NewFilePath
---
HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs | 134 ++++++++++++++++++++++++++++++++++++++++----
1 files changed, 121 insertions(+), 13 deletions(-)
diff --git a/HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs b/HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs
old mode 100755
new mode 100644
index 6f1aa84..00e6b30
--- a/HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs
+++ b/HDL_ON/UI/UI2/3-Intelligence/IntelligencePage.cs
@@ -1,4 +1,5 @@
锘縰sing System;
+using System.Collections.Generic;
using HDL_ON.DriverLayer;
using HDL_ON.Entity;
using HDL_ON.UI.CSS;
@@ -20,6 +21,10 @@
/// 鍦烘櫙鍐呭鏄剧ず鍖哄煙
/// </summary>
FrameLayout floorChangeView;
+ /// <summary>
+ /// 妤煎眰鎴块棿閫夋嫨鐨勪笅鎷夊璞�
+ /// </summary>
+ FloorRoomSelectPopupView floorRoomSelectView = null;
Button btnSceneTilte;
#region 鍦烘櫙搴曢儴鍒囨崲鏄剧ず鍖哄煙
@@ -70,7 +75,9 @@
bodyView.AddChidren(topView);
//涓嶆槸A缃戝叧鎴栬�呮槸鎴愬憳 鍙厑璁告坊鍔犲満鏅殣钘忚嚜鍔ㄥ寲
- if (DB_ResidenceData.Instance.GatewayType != 1 || DB_ResidenceData.Instance.CurrentRegion.IsOthreShare)
+ var HideAutoPage = DB_ResidenceData.Instance.GatewayType != 1 || DB_ResidenceData.Instance.CurrentRegion.IsOthreShare;
+ //鍒ゆ柇鏄惁闇�瑕侀殣钘忚嚜鍔ㄥ寲
+ if (HideAutoPage)
{
btnSceneTilte = new Button()
{
@@ -147,7 +154,11 @@
bodyView.AddChidren(contentPageView);
LoadScenePageView();
- LoadAutomationPageView();
+ //鍒ゆ柇鏄惁闇�瑕侀殣钘忚嚜鍔ㄥ寲
+ if (!HideAutoPage)
+ {
+ LoadAutomationPageView();
+ }
LoadEventList();
}
@@ -202,23 +213,40 @@
TextAlignment = TextAlignment.CenterLeft,
Text = DB_ResidenceData.Instance.CurFloor.roomName,
};
- floorChangeView.AddChidren(btnFloor);
+ floorChangeView.AddChidren(btnFloor);
+
+ string nowSelectId = null;
+ btnFloor.MouseUpEventHandler += (sender, e) =>
+ {
+ if (this.floorRoomSelectView == null)
+ {
+ //鍏堝垵濮嬪寲
+ this.floorRoomSelectView = new FloorRoomSelectPopupView();
+ }
+ //鏄剧ず涓嬫媺鍒楄〃
+ this.floorRoomSelectView.ShowSceneView(btnFloor, (selectId, listScene) =>
+ {
+ nowSelectId = selectId;
+ //閲嶆柊鍒锋柊鍦烘櫙鍒楄〃
+ this.LoadSceneFunctionControlZone(listScene);
+ }, nowSelectId);
+ };
#endregion
-
+
sceneFunctionView = new VerticalScrolViewLayout()
{
Y = floorChangeView.Bottom,
Height = Application.GetRealHeight(667 - 64 - 49 - 52 + 30),
};
scenePageView.AddChidren(sceneFunctionView);
- LoadSceneFunctionControlZone();
+ LoadSceneFunctionControlZone(null);
}
/// <summary>
/// 鍔犺浇鍦烘櫙鍔熻兘鏄剧ず鍖哄煙
/// </summary>
- void LoadSceneFunctionControlZone()
+ void LoadSceneFunctionControlZone(List<Scene> listScene)
{
//topView.AddChidren(btnAddIcon);
@@ -227,7 +255,18 @@
try
{
int index = 0;
- foreach (var scene in FunctionList.List.scenes)
+ //鑾峰彇鑳藉鏄剧ず鐨勫満鏅�
+ if (listScene == null)
+ {
+ //鍒濆鍊�
+ if (this.floorRoomSelectView == null)
+ {
+ //鍏堝垵濮嬪寲
+ this.floorRoomSelectView = new FloorRoomSelectPopupView();
+ }
+ listScene = this.floorRoomSelectView.GetCanShowListScene();
+ }
+ foreach (var scene in listScene)
{
//if (scene.roomIds.Count == 0)//濡備綍鍦ㄦ埧闂村凡缁忕Щ闄や簡杩欎釜鍔熻兘锛屽垯鏀惰棌鐣岄潰涔熶笉浼氬啀鏄剧ず
//{
@@ -310,6 +349,19 @@
};
view.AddChidren(btnCoverd);
+ Button btnShowDelay;
+ btnShowDelay = new Button()
+ {
+ X = Application.GetRealWidth(40),
+ Y = Application.GetRealWidth(4),
+ Height = Application.GetRealWidth(32),
+ Width = Application.GetRealWidth(100),
+ TextColor = CSS_Color.AuxiliaryColor1,
+ TextAlignment = TextAlignment.CenterLeft,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ };
+ view.AddChidren(btnShowDelay);
+
Button btnName;
btnName = new Button()
{
@@ -371,10 +423,10 @@
scene.collect = btnCollection.IsSelected = !btnCollection.IsSelected;
scene.CollectScene();
};
- LoadEvent_ControlScene(btnCoverd,btnName,btnZone, scene);
+ LoadEvent_ControlScene(btnCoverd, btnName, btnZone, btnShowDelay, scene);
btnSettingIcon.MouseUpEventHandler = (sender, e) => {
Action backAction = () => {
- LoadSceneFunctionControlZone();
+ LoadSceneFunctionControlZone(null);
};
Action refreshAction = () => {
btnName.Text = scene.name;
@@ -387,6 +439,53 @@
aep.LoadPage(refreshAction);
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
};
+ //鍦烘櫙姝e湪鍊掕鏃舵墽琛屼腑
+ scene.SceneCountDown(btnShowDelay);
+
+ //if (scene.LastExecutionTime == "" || Convert.ToDouble(scene.LastExecutionTime) + Convert.ToDouble(scene.delay) < Convert.ToDouble(Utlis.GetTimestamp(false)))
+ //{
+ // int time = 0;
+ // int.TryParse(Convert.ToInt32(
+ // Convert.ToDouble(scene.LastExecutionTime) + Convert.ToDouble(scene.delay) - Convert.ToDouble(Utlis.GetTimestamp(false))
+ // ).ToString(),out time);
+ // if (time > 0)
+ // {
+ // new System.Threading.Thread(() =>
+ // {
+ // //int time = Convert.ToInt32(scene.delay);
+ // if (time > 0)
+ // {
+ // while (time > 0)
+ // {
+ // Application.RunOnMainThread(() =>
+ // {
+ // if (time / 60 > 1)
+ // {
+ // btnShowDelay.Text = (time / 60).ToString() + "min";
+ // }
+ // else
+ // {
+ // btnShowDelay.Text = (time--).ToString() + "s";
+ // }
+ // });
+ // if (time / 60 > 1)
+ // {
+ // System.Threading.Thread.Sleep(time / 60 * 60000);
+ // }
+ // else
+ // {
+ // System.Threading.Thread.Sleep(1000);
+ // }
+ // }
+ // Application.RunOnMainThread(() =>
+ // {
+ // btnShowDelay.Text = "";
+ // });
+ // }
+ // })
+ // { IsBackground = true, Priority = System.Threading.ThreadPriority.BelowNormal }.Start();
+ // }
+ //}
}
catch (Exception ex)
{
@@ -401,12 +500,11 @@
/// </summary>
void LoadAutomationPageView()
{
- //btnAddIcon.RemoveFromParent();
automationPage = new FrameLayout();
contentPageView.AddChidren(automationPage);
UI2.Intelligence.Automation.MainView.automationPage = automationPage;
UI2.Intelligence.Automation.MainView.MainShow();
- }
+ }
#endregion
}
@@ -499,7 +597,7 @@
Action action = () =>
{
- LoadSceneFunctionControlZone();
+ LoadSceneFunctionControlZone(null);
};
var aep = new NewSceneMenuListPage(action);
MainPage.BasePageView.AddChidren(aep);
@@ -518,14 +616,24 @@
/// <summary>
/// 鍔犺浇鍦烘櫙鎺у埗浜嬩欢
/// </summary>
- void LoadEvent_ControlScene(Button btnCoverd, Button btnName, Button btnZone, Scene scene)
+ void LoadEvent_ControlScene(Button btnCoverd, Button btnName, Button btnZone,Button btnShowDelay, Scene scene)
{
EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
{
+ //鍦烘櫙姝e湪鍊掕鏃舵墽琛屼腑锛屼笉鍏佽鍐嶇偣鍑�
+ if (scene.LastExecutionTime == "" || Convert.ToDouble(scene.LastExecutionTime) + Convert.ToDouble(scene.delay) < Convert.ToDouble(Utlis.GetTimestamp(false)))
+ {
+ scene.LastExecutionTime = Utlis.GetTimestamp(false);
+ }
+ else
+ {
+ return;
+ }
string msg = scene.name + Language.StringByID(StringId.AlreadyOpened);
new PublicAssmebly().TipMsgAutoClose(msg, true);
Control.Ins.ControlScene(scene);
+ scene.SceneCountDown(btnShowDelay);
};
btnCoverd.MouseUpEventHandler = eventHandler;
btnName.MouseUpEventHandler = eventHandler;
--
Gitblit v1.8.0