From cbc156bc38d8b8eae7aef60cb186ab2b52fa701f Mon Sep 17 00:00:00 2001
From: wxr <wxr@hdlchina.com.cn>
Date: 星期二, 16 七月 2024 13:59:56 +0800
Subject: [PATCH] 增加全部挂断

---
 HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/VideoDoorLockPage.cs |  156 +++++++++++++++++++++++++++++++++++++++++++--------
 1 files changed, 130 insertions(+), 26 deletions(-)

diff --git a/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/VideoDoorLockPage.cs b/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/VideoDoorLockPage.cs
index 409c93e..d86a322 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/VideoDoorLockPage.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/VideoDoorLockPage.cs
@@ -60,6 +60,7 @@
         /// 闂ㄩ攣鐘舵��
         /// </summary>
         private Button btnDoorLockIcon;
+            Button btnDoorlockStatus;
         /// <summary>
         /// 瀹炴椂瑙嗛
         /// </summary>
@@ -216,15 +217,17 @@
             };
             cellFrame.AddChidren(btnCell);
 
+
 #if __IOS__
+//btnCell.Padding = new Padding(0,0,0,0);
             btnCell.Width += 5;
             cellFrame.Width += 5;
 #else
 #endif
 
 
-                        //闂ㄩ攣鐘舵��
-                        btnDoorLockIcon = new Button
+            //闂ㄩ攣鐘舵��
+            btnDoorLockIcon = new Button
             {
                 X = Application.GetRealWidth(65),
                 Y = Application.GetRealHeight(108),
@@ -237,37 +240,77 @@
 
             this.CalculatedPosition();//閲嶆柊璁$畻瀹藉害
 
-            int heightY = btnDoorLockIcon.Bottom + Application.GetRealHeight(70);
+            btnDoorlockStatus = new Button()
+            {
+                Width = Application.GetRealWidth(200),
+                Height = Application.GetRealHeight(62),
+                Y = btnDoorLockIcon.Bottom,
+                TextAlignment = TextAlignment.Center,
+                Gravity = Gravity.CenterHorizontal,
+                TextID = StringId.DoorlockOpen,
+                TextColor = CSS_Color.WarningColor,
+                TextSize = 16,
+            };
+            whiteFl.AddChidren(btnDoorlockStatus);
+            
+            int heightY = btnDoorLockIcon.Bottom + Application.GetRealHeight(133);
             //瀹炴椂瑙嗛
             rtvFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout);
             whiteFl.AddChidren(rtvFL);
             rtvFL.Y = heightY;
-            rtvFL.X = Application.GetRealWidth(41);
+            rtvFL.X = Application.GetRealWidth(26);
             rtvFL.AddImageView();
             rtvFL.AddTextButtonView();
             rtvFL.GetImageButton().UnSelectedImagePath = "FunctionIcon/DoorLock/RTV.png";
             rtvFL.GetTextButton().TextID = StringId.shishishipin;
-            //鍘嗗彶璁板綍
-            recordFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout);
-            whiteFl.AddChidren(recordFL);
-            recordFL.Y = heightY;
-            recordFL.X = rtvFL.Right + Application.GetRealWidth(CustomFrameLayout.interval);
-            recordFL.AddImageView();
-            recordFL.AddTextButtonView();
-            recordFL.GetImageButton().UnSelectedImagePath = "FunctionIcon/DoorLock/HistoryList.png";
-            recordFL.GetTextButton().TextID = StringId.lishijilu;
+            
+            
             //涓存椂瀵嗙爜
             pswFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout);
             whiteFl.AddChidren(pswFL);
             pswFL.Y = heightY;
-            pswFL.X = recordFL.Right + Application.GetRealWidth(CustomFrameLayout.interval);
+            pswFL.X = rtvFL.Right + Application.GetRealWidth(CustomFrameLayout.interval);
             pswFL.AddImageView();
             pswFL.AddTextButtonView();
             pswFL.GetImageButton().UnSelectedImagePath = "FunctionIcon/DoorLock/OneOpenLock.png";
             pswFL.GetTextButton().TextID = StringId.linshimima1;
+            if (device.omodel.Contains("CS-DL30F-V100"))
+            {
+                rtvFL.Visible = rtvFL.Enable = false;
+                pswFL.X = Application.GetRealWidth(26);
+            }
 
+            //鍘嗗彶璁板綍
+            recordFL = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout);
+            whiteFl.AddChidren(recordFL);
+            recordFL.Y = heightY;
+            recordFL.X = pswFL.Right + Application.GetRealWidth(CustomFrameLayout.interval);
+            recordFL.AddImageView();
+            recordFL.AddTextButtonView();
+            recordFL.GetImageButton().UnSelectedImagePath = "FunctionIcon/DoorLock/HistoryList.png";
+            recordFL.GetTextButton().TextID = StringId.lishijilu;
 
+            if (!DB_ResidenceData.Instance.CurrentRegion.isOtherShare)
+            {
+                //鐢ㄦ埛绠$悊
+                CustomFrameLayout userManagerView = new CustomFrameLayout(CustomFrameLayout.widthFrameLayout, CustomFrameLayout.heightFrameLayout);
+                whiteFl.AddChidren(userManagerView);
+                userManagerView.Y = heightY;
+                userManagerView.X = recordFL.Right + Application.GetRealWidth(CustomFrameLayout.interval);
+                userManagerView.AddImageView();
+                userManagerView.AddTextButtonView();
+                userManagerView.GetImageButton().UnSelectedImagePath = "FunctionIcon/DoorLock/DoorlockUserManager.png";
+                userManagerView.GetTextButton().TextID = StringId.UserManagement;
 
+                userManagerView.SetClickListener((fl, btnImage, btnText) =>
+                {
+                    var page = new VideoDoorlockUserListPage(device);
+                    MainPage.BasePageView.AddChidren(page);
+                    page.LoadPage();
+                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+
+                });
+            }
             #endregion
 
 
@@ -320,20 +363,75 @@
                 btnCollectIcon.IsSelected = this.device.collect = !btnCollectIcon.IsSelected;
                 this.device.CollectFunction();
             };
+
+            int delayTimeMaxValue = 0;//
+            var startTime = DateTime.Now;
             //瀹炴椂瑙嗛
             this.rtvFL.SetClickListener((fl, btnStateImage, btnStateText) =>
             {
+                bool isDeyayClick = false;
+                var clickTime = DateTime.Now;
+                if ((clickTime - startTime).TotalMilliseconds > delayTimeMaxValue)
+                {
+                    delayTimeMaxValue = 2*1000;
+                    startTime = clickTime;
+                    isDeyayClick = true;
+                }
+                if (!isDeyayClick)
+                {
+                    return;
+                }
                 CommonMethod.Current.SkipRTVActivity(this.device.sid, this.device.deviceId, this.device.spk, false);
+
             });
+            var lastClickTime = DateTime.MinValue;
             //涓存椂瀵嗙爜
             this.pswFL.SetClickListener((fl, btnStateImage, btnStateText) =>
             {
+                if (lastClickTime.AddSeconds(3) > DateTime.Now)
+                {
+                    return;
+                }
+                lastClickTime = DateTime.Now;
                 CommonMethod.Current.SkipPSWActivity(this.device.deviceId);
             });
+
             //鍘嗗彶璁板綍
             this.recordFL.SetClickListener((fl, btnStateImage, btnStateText) =>
             {
-                CommonMethod.Current.SkipRecordActivity(this.device.deviceId);
+                if (lastClickTime.AddSeconds(3) > DateTime.Now)
+                {
+                    return;
+                }
+                lastClickTime = DateTime.Now;
+
+                //VideoDoorlockHistoryPage historyPage = new VideoDoorlockHistoryPage(device);
+                //MainPage.BasePageView.AddChidren(historyPage);
+                //historyPage.LoadPage();
+                //MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                var waitPage = new Loading();
+                this.AddChidren(waitPage);
+                waitPage.Start("");
+                new System.Threading.Thread(() =>
+                {
+                    try
+                    {
+                        Application.RunOnMainThread(() =>
+                        {
+                            CommonMethod.Current.SkipRecordActivity(this.device.deviceId);
+                        });
+                    }catch(Exception ex)
+                    {
+
+                    }
+                    finally
+                    {
+                        Application.RunOnMainThread(() => {
+                            waitPage.Hide();
+                        });
+                    }
+                })
+                { IsBackground = true }.Start();
             });
 
 
@@ -355,7 +453,18 @@
                         //this.cellDiyArcSeekBar.Progress = i;
                         //鏇存柊鐢甸噺鍊�
                         this.btnCell.Text = cellInfo.remain + "%";
-                        this.btnDoorLockIcon.IsSelected = videoDoorLockInfo.doorStatus == "open";
+                        if(videoDoorLockInfo.doorStatus == "open")
+                        {
+                            this.btnDoorLockIcon.IsSelected = true;
+                            this.btnDoorlockStatus.TextID = StringId.DoorlockOpen;
+                            this.btnDoorlockStatus.TextColor = CSS_Color.WarningColor;
+                        }
+                        else
+                        {
+                            this.btnDoorLockIcon.IsSelected = false;
+                            this.btnDoorlockStatus.TextID = StringId.DoorlockClose;
+                            this.btnDoorlockStatus.TextColor = 0xFF000000;
+                        }
                     });
                 }
                 catch { }
@@ -377,7 +486,7 @@
         private void CalculatedPosition()
         {
             this.btnCurrDeviceName.Width = this.btnCurrDeviceName.GetTextWidth();
-            this.btnCurrDeviceName.Width += 10;
+            this.btnCurrDeviceName.Width += 10; 
             if (this.btnCurrDeviceName.GetTextWidth() > this.btnCollectIcon.X)
             {
                 //閲嶆柊璁$畻瀹藉害
@@ -428,9 +537,9 @@
     {
         public const int widthFrameLayout = 48;
         public const int heightFrameLayout = 53;
-        public const int yFrameLayout = 378;
+        public const int yFrameLayout = 442;
         public const int xFrameLayout = 41;
-        public const int interval = 51;//琛屼腑鐨勫垪闂撮殧鍊�
+        public const int interval = 30;//琛屼腑鐨勫垪闂撮殧鍊�
 
         public CustomFrameLayout(int width, int height, int x = 0, int y = 0)
         {
@@ -458,7 +567,8 @@
             TextColor = MusicColor.TextCancelColor,
             TextAlignment = TextAlignment.Center,
             Gravity = Gravity.CenterHorizontal,
-            Name = "btnStateText"
+            Name = "btnStateText",
+            IsMoreLines = true,
         };
         public void AddImageView()
         {
@@ -538,11 +648,5 @@
             return false;
 
         }
-
-
-
-
     }
-
-
 }

--
Gitblit v1.8.0