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 |  220 +++++++++++++++++++++++--------------------------------
 1 files changed, 92 insertions(+), 128 deletions(-)

diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/AddFunction/DeviceListPage.cs
index 2d623a6..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,132 +29,20 @@
         {
             Action<string, string> action = (s, a) =>
             {
-                if (brand.productBrand == "IMOU")
-                {
-#if __ANDROID__
-
-                    FunctionList.List.GetIpCamImouList();
-
-
-                    if (string.IsNullOrEmpty(Com.Utils.HdlToLcUtils.Instance.SubAccessToken))
-                    {
-
-                        var waitPage = new Loading();
-                        MainPage.BaseView.AddChidren(waitPage);
-                        waitPage.Start("");
-                        new System.Threading.Thread(() =>
-                        {
-                            try
-                            {
-
-#if DEBUG
-                                Com.Utils.HdlToLcUtils.Instance.ShowErrorInfo(true);
-#endif
-
-                                var http = new HttpServerRequest();
-                                var pack = http.GetLcSubAccountToken();
-                                if (pack.Code == StateCode.SUCCESS)
-                                {
-                                    if (pack.Data == null || string.IsNullOrEmpty(pack.Data.ToString()))
-                                    {
-                                        Application.RunOnMainThread(() =>
-                                        {
-                                            new PublicAssmebly().TipMsg(Language.StringByID(StringId.Tip), Language.StringByID(StringId.Get3tyIotInfoFailed));
-                                            return;
-                                        });
-                                    }
-                                    Com.Utils.HdlToLcUtils.Instance.InitData(Shared.Application.Activity, "HDL-HOME-APP-TEST", "WeJ8TY88vbakCcnvH8G1tDUqzLWY8yss", OnAppConfig.Instance.RequestHttpsHost);
-                                    Com.Utils.HdlToLcUtils.Instance.HomeId = DB_ResidenceData.Instance.CurrentRegion.id;
-                                    Com.Utils.HdlToLcUtils.Instance.Token = UserInfo.Current.AccessToken;
-                                    Com.Utils.HdlToLcUtils.Instance.SubAccessToken = pack.Data.ToString();
-#if __ANDROID__
-                                    Application.RunOnMainThread(() =>
-                                    {
-                                        try
-                                        {
-                                            
-                                            var result = Com.Utils.HdlToLcUtils.Instance.CheckCameraPermissions();
-                                            if (result)
-                                            {
-                                                var backTemp = new AddLcCam();
-                                                backTemp.backAction = () =>
-                                                {
-                                                    Load3tyBrandDeviceList();
-                                                };
-                                                Com.Utils.HdlToLcUtils.Instance.AddCamera(backTemp);
-                                            }
-                                            else
-                                            {
-                                                Com.Utils.HdlToLcUtils.Instance.RequestCameraPermissions();
-                                            }
-                                        }
-                                        catch (Exception ex)
-                                        {
-
-                                        }
-                                    });
-#endif
-                                }
-                                else
-                                {
-                                    Application.RunOnMainThread(() =>
-                                    {
-                                        new PublicAssmebly().TipMsg(Language.StringByID(StringId.Tip), Language.StringByID(StringId.huoqushujushibao) + $"({pack.Code})");
-                                    });
-                                }
-                            }
-                            catch (Exception ex)
-                            {
-                                MainPage.Log("鍔犺浇涔愭鎽勫儚澶村紓甯�");
-                            }
-                            finally
-                            {
-                                Application.RunOnMainThread(() =>
-                                {
-                                    if (waitPage != null)
-                                    {
-                                        waitPage.RemoveFromParent();
-                                        waitPage = null;
-                                    }
-                                });
-                            }
-                        })
-                        { IsBackground = true }.Start();
-                    }
-                    else
-                    {
-                        var result = Com.Utils.HdlToLcUtils.Instance.CheckCameraPermissions();
-                        if (result)
-                        {
-                            var backTemp = new AddLcCam();
-                            backTemp.backAction = () =>
-                            {
-                                Load3tyBrandDeviceList();
-                            };
-                            Com.Utils.HdlToLcUtils.Instance.AddCamera(backTemp);
-                        }
-                        else
-                        {
-                            Com.Utils.HdlToLcUtils.Instance.RequestCameraPermissions();
-                        }
-                    }
-#endif
-                }
-                else
-                {
-                    var page = new AddDevciePage(brand);
-                    MainPage.BasePageView.AddChidren(page);
-                    page.LoadPage(contentView);
-                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
-                }
+                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);
@@ -171,7 +62,8 @@
         {
             var waitPage = new Loading();
             waitPage.Start();
-            new System.Threading.Thread(() => {
+            new System.Threading.Thread(() =>
+            {
                 try
                 {
                     var pm = new HttpServerRequest();
@@ -189,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,
                                 };
@@ -208,7 +100,8 @@
                 }
                 finally
                 {
-                    Application.RunOnMainThread(() => {
+                    Application.RunOnMainThread(() =>
+                    {
                         if (waitPage != null)
                         {
                             waitPage.RemoveFromParent();
@@ -225,6 +118,10 @@
             bool isFrist = true;
             foreach (var device in deviceList)
             {
+                //if (!this.CheckSupportDevice(device))
+                //{
+                //    continue;
+                //}
                 var row = new RowLayout()
                 {
                     Height = Application.GetRealHeight(50),
@@ -280,7 +177,8 @@
                 };
                 row.AddChidren(btnName);
 
-                btnName.MouseUpEventHandler = (sender, e) => {
+                btnName.MouseUpEventHandler = (sender, e) =>
+                {
                     switch (device.spk)
                     {
                         case SPK.IrModule:
@@ -299,7 +197,8 @@
                                 contentView.BeginHeaderRefreshing();
                             };
                             break;
-                        case SPK.SensorEnvironment:case SPK.SensorEnvironmentHailin:
+                        case SPK.SensorEnvironment:
+                        case SPK.SensorEnvironmentHailin:
                         case SPK.SensorEnvironment2:
                         case SPK.SensorEnvironment3:
                             var smPage1 = new SensorEnvironmentManagerPage();
@@ -308,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;
                     }
                 };
@@ -379,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))
@@ -449,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;
+
+        }
+
     }
 
 
@@ -463,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
     {
 
@@ -523,6 +472,17 @@
         {
         }
     }
+
+    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
     {
@@ -534,4 +494,8 @@
         }
     }
 #endif
+
+
+
+
 }

--
Gitblit v1.8.0