From 3f6685c77beeb12baf840733fb890860f4c26e7c Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期四, 25 七月 2024 17:25:59 +0800
Subject: [PATCH] 2024年07月25日17:24:45

---
 HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs |  111 ++++++++++++++++++++++++++++++++++++++++++++++---------
 1 files changed, 92 insertions(+), 19 deletions(-)

diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs
index abaab54..2bcf880 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs
@@ -3,13 +3,16 @@
 using HDL_ON.DAL.Server;
 using HDL_ON.Entity;
 using HDL_ON.UI.CSS;
+using HDL_ON.UI.UI2.FuntionControlView.VideoDoorLock;
 #if __Android__
 using Java.Interop;
+using Android.Content;
+using Hdl.Onpro;
 #endif
 using Shared;
 namespace HDL_ON.UI
 {
-    public class DeviceListPage  : FrameLayout
+    public class DeviceListPage : FrameLayout
     {
         FrameLayout bodyView;
         VerticalRefreshLayout contentView;
@@ -26,23 +29,20 @@
         {
             Action<string, string> action = (s, a) =>
             {
-                //var page = new AddDevciePage(brand);
-                //MainPage.BasePageView.AddChidren(page);
-                //page.LoadPage(contentView);
-                //MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-                var backTemp = new AddLcCam();
-                backTemp.backAction = () => {
-                    Load3tyBrandDeviceList();
-                };
-                Com.Utils.HdlToLcUtils.Instance.AddCamera(backTemp);
+                var page = new AddDevciePage(brand);
+                MainPage.BasePageView.AddChidren(page);
+                page.LoadPage(contentView);
+                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
             };
-            new TopViewDiv(bodyView, Language.StringByID(StringId.Devices)).LoadTopView_AddIcon("3ty", action);
+            var topView = new TopViewDiv(bodyView, Language.StringByID(StringId.Devices));
+            topView.maginY = 10;
+            topView.LoadTopView_AddIcon("3ty", action);
             bodyView.BackgroundColor = CSS_Color.BackgroundColor;
 
             contentView = new VerticalRefreshLayout()
             {
-                Y = Application.GetRealHeight(64),
-                Height = Application.GetRealHeight(667 - 64),
+                Y = Application.GetRealHeight(64+10),
+                Height = Application.GetRealHeight(667 - 64-10),
                 VerticalScrollBarEnabled = false,
             };
             bodyView.AddChidren(contentView);
@@ -62,7 +62,8 @@
         {
             var waitPage = new Loading();
             waitPage.Start();
-            new System.Threading.Thread(() => {
+            new System.Threading.Thread(() =>
+            {
                 try
                 {
                     var pm = new HttpServerRequest();
@@ -80,7 +81,7 @@
                             }
                             else
                             {
-                                var tipView = new EmptyTipView(Language.StringByID(StringId.NotAddedAnyDevices),160)
+                                var tipView = new EmptyTipView(Language.StringByID(StringId.NotAddedAnyDevices), 160)
                                 {
                                     Gravity = Gravity.CenterHorizontal,
                                 };
@@ -99,7 +100,8 @@
                 }
                 finally
                 {
-                    Application.RunOnMainThread(() => {
+                    Application.RunOnMainThread(() =>
+                    {
                         if (waitPage != null)
                         {
                             waitPage.RemoveFromParent();
@@ -116,6 +118,10 @@
             bool isFrist = true;
             foreach (var device in deviceList)
             {
+                //if (!this.CheckSupportDevice(device))
+                //{
+                //    continue;
+                //}
                 var row = new RowLayout()
                 {
                     Height = Application.GetRealHeight(50),
@@ -171,7 +177,8 @@
                 };
                 row.AddChidren(btnName);
 
-                btnName.MouseUpEventHandler = (sender, e) => {
+                btnName.MouseUpEventHandler = (sender, e) =>
+                {
                     switch (device.spk)
                     {
                         case SPK.IrModule:
@@ -191,6 +198,7 @@
                             };
                             break;
                         case SPK.SensorEnvironment:
+                        case SPK.SensorEnvironmentHailin:
                         case SPK.SensorEnvironment2:
                         case SPK.SensorEnvironment3:
                             var smPage1 = new SensorEnvironmentManagerPage();
@@ -199,6 +207,21 @@
                             {
                                 contentView.BeginHeaderRefreshing();
                             };
+                            break;
+                        case SPK.VideoDoorLock:
+                            {
+                                CommonMethod.Current.MainThread(() =>
+                                {
+                                    //钀ょ煶瑙嗛闂ㄩ攣
+                                    var form = new VideoDoorLockPage(device, btnName, new Button(), CommonMethod.Comerom.sanfan, () =>
+                                    {
+                                        row.RemoveFromParent();
+                                    });
+                                    MainPage.BasePageView.AddChidren(form);
+                                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                                    form.Show();
+                                });
+                            }
                             break;
                     }
                 };
@@ -270,7 +293,8 @@
                         Width = Application.GetRealWidth(150),
                     };
                     row.AddChidren(btnEdit);
-                    btnEdit.MouseUpEventHandler = (sender, e) =>{
+                    btnEdit.MouseUpEventHandler = (sender, e) =>
+                    {
                         Action<string> callBack = (str) =>
                         {
                             if (string.IsNullOrEmpty(str))
@@ -340,6 +364,23 @@
 
         }
 
+        /// <summary>
+        /// 妫�鏌ユ槸鍚︽敮鎸�
+        /// </summary>
+        /// <param name="function"></param>
+        /// <returns></returns>
+        bool CheckSupportDevice(Function function)
+        {
+
+            if (function == null) return false;
+            if (function.spk == SPK.VideoDoorLock)
+            {
+                return false;
+            }
+            return true;
+
+        }
+
     }
 
 
@@ -354,6 +395,23 @@
 
 
 #if __Android__
+
+    //[Android.Content.BroadcastReceiver(Enabled = true, Exported = false)]
+    //public class ImouReceiver : Android.Content.BroadcastReceiver
+    //{
+    //    public override void OnReceive(Context context, Intent intent)
+    //    {
+    //        if (intent != null)
+    //        {
+    //            string action = intent.Action;
+    //            if (action == "hdlUserDeviceBind")
+    //            {
+    //                string value = intent.GetStringExtra("data");
+    //            }
+    //        }
+    //    }
+    //}
+
     public class AddLcCam : Java.Lang.Object, Com.CallBack.IAddCamera
     {
 
@@ -414,8 +472,19 @@
         {
         }
     }
+
+    public class BindDeviceFeedback : Java.Lang.Object, Hdl.Onpro.IRegisterDeviceFeedback
+    {
+        public Action<string,string> tipAction;
+
+        public void Feedback(string method, string msg)
+        {
+            tipAction?.Invoke(method, msg);
+        }
+    }
+
 #else
-    public class AddLcCam()
+    public class AddLcCam
     {
         public Action backAction;
 
@@ -425,4 +494,8 @@
         }
     }
 #endif
+
+
+
+
 }

--
Gitblit v1.8.0