From dd7e4794fd611de967c6322dd0bb7ffda41c2f7b Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期一, 29 十一月 2021 16:32:55 +0800
Subject: [PATCH] 增加了安防相关功能

---
 HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmCenterPage.cs |   82 +++++++++++++++++++++++++++++++++++-----
 1 files changed, 71 insertions(+), 11 deletions(-)

diff --git a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmCenterPage.cs b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmCenterPage.cs
index c56f5c7..6f549d2 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmCenterPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/ArmCenter/ArmCenterPage.cs
@@ -45,22 +45,31 @@
         /// </summary>
         List<ArmDiyView> armDiyViewList = new List<ArmDiyView>();
 
+
+        Action refreshAction = null;
+
+        public ArmCenterPage(Action action)
+        {
+            refreshAction = action;
+            bodyView = this;
+        }
         public ArmCenterPage()
         {
             bodyView = this;
         }
 
-        public void LoadPage()
+        public void LoadPage(bool addNav = true)
         {
             Action skipAction = () => {
 
             };
-
-            new TopViewDiv(bodyView, Language.StringByID(StringId.SecurityCenter)).LoadTopView_ArmCenter(skipAction);
-
+            if (addNav)
+            {
+                new TopViewDiv(bodyView, Language.StringByID(StringId.SecurityCenter)).LoadTopView_ArmCenter(skipAction);
+            }
             VerticalScrolViewLayout contentView = new VerticalScrolViewLayout()
             {
-                Y = Application.GetRealHeight(64),
+                Y = addNav? Application.GetRealHeight(64):0,
                 Height = Application.GetRealHeight(667 - 64),
                 BackgroundColor = CSS_Color.MainBackgroundColor,
                 ScrollEnabled = false,
@@ -186,6 +195,8 @@
                 Height = Application.GetRealHeight(20),
             });
 
+
+
             #region 鍥哄畾甯冮槻鍖哄煙
             /*
             var fixedDeploymentView = new FrameLayout()
@@ -231,11 +242,26 @@
                 Width = Application.GetRealWidth(24),
             });
 
-            #endregion
 
 
             //鐏惧鎶ヨ
             var disasterAlarmView = new FixedArmView("FunctionIcon/ArmCenter/DisasterAlarmIcon.png", Language.StringByID(StringId.DisasterDefense), Language.StringByID(StringId.Defense24Hour));
+            EventHandler<MouseEventArgs> disasterAlarmViewClick = (sender, e) => {
+                var disasterAlarm = FunctionList.List.securities.Find((obj) => obj.type == "all_day");
+                if (disasterAlarm == null)
+                {
+                    disasterAlarm = new SecurityAlarm() { name = "alldaydefense", type = "all_day" };
+                }
+                else
+                {
+                    disasterAlarm = disasterAlarm.RefeshData();
+                }
+                var addDefensePage = new AddAlarmDeploymentPage(disasterAlarm, null);
+                MainPage.BasePageView.AddChidren(addDefensePage);
+                addDefensePage.LoadPage(Language.StringByID(StringId.DisasterDefense));
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            };
+            disasterAlarmView.SetClick(disasterAlarmViewClick);
             fixedDeploymentTypeView.AddChidren(disasterAlarmView);
 
             fixedDeploymentTypeView.AddChidren(new Button()
@@ -245,6 +271,22 @@
 
             //闃茬洍鎶ヨ
             var burglarAlarmView = new FixedArmView("FunctionIcon/ArmCenter/BurglarAlarmIcon.png", Language.StringByID(StringId.BurglarAlarm), Language.StringByID(StringId.AlarmMute));
+            EventHandler<MouseEventArgs> burglarAlarmViewClick = (sender, e) => {
+                var burglarAlarm = FunctionList.List.securities.Find((obj) => obj.type == "mute");
+                if (burglarAlarm == null)
+                {
+                    burglarAlarm = new SecurityAlarm() { name = "mutedefense", type = "mute" };
+                }
+                else
+                {
+                    burglarAlarm = burglarAlarm.RefeshData();
+                }
+                var addDefensePage = new AddAlarmDeploymentPage(burglarAlarm, null);
+                MainPage.BasePageView.AddChidren(addDefensePage);
+                addDefensePage.LoadPage(Language.StringByID(StringId.BurglarAlarm));
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+            };
+            disasterAlarmView.SetClick(disasterAlarmViewClick);
             fixedDeploymentTypeView.AddChidren(burglarAlarmView);
             */
             #endregion
@@ -315,12 +357,12 @@
                 customDeploymentView.AddChidren(view);
                 EventHandler<MouseEventArgs> event1 = (sender, e) =>
                 {
-                    Action refreshAction = () =>
+                    Action addDefenseRefreshAction = () =>
                     {
                         iniCustomDeploymentView();
                     };
 
-                    var addDefensePage = new AddAlarmDeploymentPage(new SecurityAlarm(), refreshAction);
+                    var addDefensePage = new AddAlarmDeploymentPage(new SecurityAlarm(), addDefenseRefreshAction);
                     MainPage.BasePageView.AddChidren(addDefensePage);
                     addDefensePage.LoadPage();
                     MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
@@ -416,6 +458,8 @@
                 {
                     iniCustomDeploymentView();
                 };
+
+                    alarm = alarm.RefeshData();
                 var armSetPage = new AddAlarmDeploymentPage(alarm,refreshAction);
                 MainPage.BasePageView.AddChidren(armSetPage);
                 armSetPage.LoadPage();
@@ -437,6 +481,8 @@
                 {
                     if (bodyView != null)
                     {
+                        bodyView.refreshAction?.Invoke();
+
                         //甯冮槻
                         if (updataTemp.status == "enable")
                         {
@@ -562,6 +608,10 @@
     /// </summary>
     public class FixedArmView : FrameLayout
     {
+        Button btnIcon;
+        Button btnTitle;
+        Button btnTitleTip;
+
         /// <summary>
         /// 鍥哄畾甯冮槻鎺т欢
         /// </summary>
@@ -576,7 +626,7 @@
             this.BorderColor = CSS_Color.MainColor;
             this.BorderWidth = 1;
 
-            var btnIcon = new Button()
+            btnIcon = new Button()
             {
                 X = Application.GetRealWidth(15),
                 Width = Application.GetRealWidth(24),
@@ -586,7 +636,7 @@
             };
             this.AddChidren(btnIcon);
 
-            var btnTitle = new Button()
+            btnTitle = new Button()
             {
                 X = Application.GetRealWidth(55),
                 Width = Application.GetRealWidth(89),
@@ -599,7 +649,7 @@
             };
             this.AddChidren(btnTitle);
 
-            var btnTitleTip = new Button()
+            btnTitleTip = new Button()
             {
                 X = Application.GetRealWidth(55),
                 Y = Application.GetRealHeight(23),
@@ -609,10 +659,20 @@
                 TextColor = CSS_Color.PromptingColor1,
                 TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                 Text = titleTip,
+                IsMoreLines = true,
             };
             this.AddChidren(btnTitleTip);
 
         }
+
+        /// <summary>
+        /// 璁剧疆鐐瑰嚮浜嬩欢
+        /// </summary>
+        /// <param name="handler"></param>
+        public void  SetClick(EventHandler<MouseEventArgs> handler)
+        {
+            btnTitleTip.MouseUpEventHandler = btnIcon.MouseUpEventHandler = handler;
+        }
     }
 
 }

--
Gitblit v1.8.0