From 592974441a4df95fffd9167c90192da1a390b1c2 Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期二, 06 六月 2023 11:51:12 +0800
Subject: [PATCH] Merge branch 'Dev-Branch'

---
 HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs |  184 +++++++++++++++++++++++++++++++---------------
 1 files changed, 124 insertions(+), 60 deletions(-)

diff --git a/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs b/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs
index 1d9736b..1392b63 100644
--- a/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs
+++ b/HDL_ON/UI/UI2/FuntionControlView/VideoDoorLock/CommonMethod.cs
@@ -2,7 +2,9 @@
 using HDL_ON.Entity;
 using System.Collections.Generic;
 using Shared;
+using HDL_ON.DAL.Server;
 #if __IOS__
+using Foundation;
 #else
 using Com.Videogo.Hdl;
 #endif
@@ -14,6 +16,7 @@
     /// </summary>
     public class CommonMethod
     {
+        
         private Loading loading;
         /// <summary>
         /// 璁板綍褰撳墠鐣岄潰绱㈠紩鍊�
@@ -49,34 +52,45 @@
 
             this.InitializationAndroidData((isEzChildAccessToken) =>
             {
-
-                this.MainThread(() =>
+                this.SunThread(() =>
                 {
-#if __IOS__
-                    //璺宠浆娣诲姞钀ょ煶璁惧
-                    ezsdkDelegate = new IosIHdlInterface();
-                    ezsdkDelegate.mAction += (serials) =>
+                    var list = this.GetVideoDoorLockLockModelsList("notAllowedConfigNetworkModels");
+
+                    this.MainThread(() =>
                     {
-                        this.GetYingshiDeviceList(serials);
-                    };
-                    EZSDK.IOS.EZSDK.SharedInstance().Delegate = ezsdkDelegate;
-                    EZSDK.IOS.EZSDK.SharedInstance().AddEzvizMonitorWithDeviceType(spk);
+#if __IOS__
+                        //璺宠浆娣诲姞钀ょ煶璁惧
+                        ezsdkDelegate = new IosIHdlInterface();
+                        ezsdkDelegate.mAction += (serials) =>
+                        {
+                            this.GetYingshiDeviceList(serials);
+                        };
+                        EZSDK.IOS.EZSDK.SharedInstance().Delegate = ezsdkDelegate;
+                        NSObject[] nSObject = new NSObject[list.Count];
+                        for (int i = 0; i < list.Count; i++)
+                        {
+                            string strValue = list[i];
+                            nSObject[i] = new NSString(strValue);
+                        }
+                        EZSDK.IOS.EZSDK.SharedInstance().ConnectTipModels = nSObject;
+                        EZSDK.IOS.EZSDK.SharedInstance().AddEzvizMonitorWithDeviceType(spk);
 
 #else
-                HDLEzvizSdk.Instance.JumpToEZScanActivity(Application.Activity,spk);
-                HDLEzvizSdk.SetAddCallback(new AndroidIHdlInterface((isBool, serials) =>
-                {
-                    if (isBool)
+                    HDLEzvizSdk.Instance.JumpToEZScanActivity(Application.Activity, spk,list);
+                        HDLEzvizSdk.SetAddCallback(new AndroidIHdlInterface((isBool, serials) =>
                     {
-                        this.GetYingshiDeviceList(serials);
-                    }
+                        if (isBool)
+                        {
+                            this.GetYingshiDeviceList(serials);
+                        }
 
-                }));
+                    }));
 #endif
 
+                    });
+
+
                 });
-
-
             });
 
 
@@ -115,11 +129,12 @@
         /// <param name="isDialog">鏄惁闇�瑕佸脊妗�</param>
         public void SkipRTVActivity(string deviceSerial, string deviceId, string spk, bool isDialog)
         {
-
+            this.Loading.Start();
             this.InitializationAndroidData((isEzChildAccessToken) =>
             {
                 this.MainThread(() =>
                 {
+                    this.Loading.Hide();
                     if (isDialog)
                     {
                         Video.View.ShowDialog.Currnet.ClickBox(Language.StringByID(StringId.laizimenlinghujiao), (dialog) =>
@@ -202,6 +217,7 @@
         public void InitializationAndroidData(Action<bool> action)
         {
             bool isBool = true;
+            //this.Loading.Start();
             this.SunThread(() =>
             {
                 try
@@ -214,14 +230,21 @@
                         {
                             //Token
                             isBool = false;
-                            this.ShowTip("鍏堣幏鍙栬悿鐭充簯瀛愯处鍙穞oken澶辫触銆�");
+                            //this.ShowTip("鑾峰彇钀ょ煶浜戝瓙璐﹀彿token澶辫触銆�");
                             return;
                         }
+
+                        string appKey = "1aa98a90489b4838b966b57018b4b04b";//姝e紡鏈嶅姟鍣�
+                        //if (OnAppConfig.Instance.RequestHttpsHost == "https://test-gz.hdlcontrol.com")
+                        //{
+                        //    appKey = "941b1b72b6294998acfd36c14931b675";//鐢ㄥ湪娴嬭瘯鏈嶅姟鍣ㄦ帹閫佺殑
+                        //}
+
 
 #if __IOS__
                         //iOS
                         //鍒濆鍖栬悿鐭充簯SDK锛屼腑鏂囧浗鍐卥ey銆佽嫳鏂囨捣澶杒ey 寮�鍙戣�呰处鍙蜂娇鐢ㄥ簲鐢ㄥ寘鍚嶇敵璇风殑APPKEY锛屼笉鍚屽寘鍚嶅簲鐢ㄩ渶閰嶇疆涓嶅悓鐨凙PPKEY
-                        EZSDK.IOS.EZSDK.SharedInstance().InitLibWithAppKey("1aa98a90489b4838b966b57018b4b04b", "1aa98a90489b4838b966b57018b4b04b");
+                        EZSDK.IOS.EZSDK.SharedInstance().InitLibWithAppKey(appKey, appKey);
                         //1.璁剧疆鎵�闇�娌充笢鐨凙ccessToken鍜孯efreshToken銆佸煙鍚嶅湴鍧�
                         EZSDK.IOS.EZSDK.SharedInstance().SetHDlAccessToken(UserInfo.Current.LoginTokenString, UserInfo.Current.RefreshToken);
                         EZSDK.IOS.EZSDK.SharedInstance().SetRequestHttpsHostAndPlatform(OnAppConfig.Instance.RequestHttpsHost, 1, DB_ResidenceData.Instance.CurrentRegion.id);
@@ -233,7 +256,8 @@
                         //info.de
                         //EZSDK.IOS.EZSDK.Play(info);
 #else
-                            HDLEzvizSdk.Instance.Init(Application.Activity.Application, ezChildAccessToken, UserInfo.Current.LoginTokenString, UserInfo.Current.RefreshToken, OnAppConfig.Instance.RequestHttpsHost, "1aa98a90489b4838b966b57018b4b04b", 1, DB_ResidenceData.Instance.CurrentRegion.id);
+
+                            HDLEzvizSdk.Instance.Init(Application.Activity.Application, ezChildAccessToken, UserInfo.Current.LoginTokenString, UserInfo.Current.RefreshToken, OnAppConfig.Instance.RequestHttpsHost, appKey, 1, DB_ResidenceData.Instance.CurrentRegion.id);
 
 #endif
 
@@ -248,6 +272,7 @@
                 {
                     this.MainThread(() =>
                     {
+                        //this.Loading.Hide();
                         action?.Invoke(isBool);
                     });
                 }
@@ -274,11 +299,77 @@
         /// 鑾峰彇銆愰棬閿佸瀷鍙枫�戝垪琛�
         /// </summary>
         /// <returns>杩斿洖缁撴灉涓嶄細涓簄ull</returns>
-        public List<string> GetVideoDoorLockLockModelsList()
+        public List<string> GetVideoDoorLockLockModelsList(string mode = "lockModels")
         {
-            return VideDoorLockSend.Current.GetVideoDoorLockLockModelsList();
+            var lockModels = VideDoorLockSend.Current.GetVideoDoorLockLockModelsList();
+            if (mode == "lockModels")
+            {
+                return lockModels.lockModels;
+            }
+            else
+            {
+                return lockModels.notAllowedConfigNetworkModels;
+            }
         }
+        /// <summary>
+        /// 闂ㄩ攣鎺ㄩ��
+        /// </summary>
+        /// <param name="pushMessageType"></param>
+        /// <param name="jPushMessageInfo"></param>
+        public void DoorLockPush(JPushMessageInfo jpushMessageInfo)
+        {
+            this.MainThread(() =>
+            {
+                if (string.IsNullOrEmpty(jpushMessageInfo.expantContent)) return;
+                //{ "deviceSid":"J92513662","type":"opendoormsg","extDevId":"J92513662","deviceId":"1641010144999936001","spk":"security.door.ezviz"}
+                var expantContent = Newtonsoft.Json.JsonConvert.DeserializeObject<ExpantContent>(jpushMessageInfo.expantContent);
+                if (expantContent == null)
+                {
+                    return;
+                }
+                if (expantContent.spk != SPK.VideoDoorLock)
+                {
+                    return;
+                }
+                if (jpushMessageInfo.messageType.Contains(PushMessageType.DOOR_BELL.ToString()))
+                {
+                    ///鎵撳紑瑙嗛闂ㄩ攣
+                    this.SkipRTVActivity(expantContent.devSerial, expantContent.deviceId, expantContent.spk, true);
+                }
+                else if (jpushMessageInfo.messageType.Contains(PushMessageType.Alarm.ToString()))
+                {
+                    //浣庣數閲忔帹閫�
+                    this.UpdateDoorLockState(PushMessageType.Alarm);
+                }
+                else if (jpushMessageInfo.messageType.Contains(PushMessageType.Prompt.ToString()))
+                {
+                    //寮�闂ㄦ帹閫�
+                    this.UpdateDoorLockState(PushMessageType.Prompt);
+                }
+            });
 
+        }
+        /// <summary>
+        /// 鏇存柊寮�閿佸浘鏍囧拰鐢垫睜鐘舵��
+        /// </summary>
+        private void UpdateDoorLockState(PushMessageType pushMessageType)
+        {
+            int childrenCount = MainPage.BasePageView.ChildrenCount - 1;
+            for (int i = childrenCount; childrenCount > i; i--)
+            {
+                View view = MainPage.BasePageView.GetChildren(i);
+                if (view is VideoDoorLockPage)
+                {
+                    VideoDoorLockPage videoDoorLockPage = (VideoDoorLockPage)view;
+                    if (videoDoorLockPage != null)
+                    {
+                        videoDoorLockPage.UpdateState(pushMessageType);
+                    }
+
+                }
+            }
+
+        }
         /// <summary>
         /// 鑾峰彇钀ょ煶瑙嗛銆愰棬閿併�戝垪琛�
         /// </summary>
@@ -292,37 +383,6 @@
 #endif
             return list;
         }
-
-        /// <summary>
-        /// 鏇存柊寮�閿佸浘鏍囧拰鐢垫睜鐘舵��
-        /// </summary>
-        public void UpdateDoorLockState(PushMessageType pushMessageType, string homeId, string spk, string stateContent)
-        {
-            if (spk != SPK.VideoDoorLock)
-            {
-                return;
-            }
-            this.MainThread(() =>
-            {
-                int childrenCount = MainPage.BasePageView.ChildrenCount - 1;
-                for (int i = childrenCount; childrenCount > i; i--)
-                {
-                    View view = MainPage.BasePageView.GetChildren(i);
-                    if (view is VideoDoorLockPage)
-                    {
-                        VideoDoorLockPage videoDoorLockPage = (VideoDoorLockPage)view;
-                        if (videoDoorLockPage != null)
-                        {
-                            videoDoorLockPage.UpdateState(pushMessageType);
-                        }
-
-                    }
-                }
-            });
-
-        }
-
-
         #region  --------- 鍔熻兘鏂囦欢淇濆瓨锛屽垹闄� --------
         /// <summary>
         /// 淇濆瓨鏈湴鏂囦欢
@@ -354,13 +414,14 @@
         /// </summary>
         public string GetVideoDoorLockIcon(Comerom comerom)
         {
+
             if (comerom == Comerom.collect)
             {
-                return "FunctionIcon/DoorLock/VideoDoorLockOpen.png";
+                return "FunctionIcon/DoorLock/VideoDoorLockOpen1.png";
             }
             else
             {
-                return "FunctionIcon/DoorLock/VideoDoorlockClose.png";
+                return "FunctionIcon/DoorLock/VideoDoorlockClose1.png";
             }
 
         }
@@ -482,6 +543,8 @@
                 new PublicAssmebly().TipMsgAutoClose(msg, false, time * 1000);
             });
         }
+
+     
         #endregion
         /// <summary>
         /// 寮规绫诲瀷
@@ -501,12 +564,13 @@
             collect,//鏀惰棌
             room,//鎴块棿
             push,//鎺ㄩ��
+            sanfan,//娣诲姞绗笁鏂硅澶�
         }
 
 #if __IOS__
         IosIHdlInterface ezsdkDelegate;
         /// <summary>
-        /// 涓撻棬瀹氫箟缁橧os鍥炶皟鐢ㄧ潃,娌℃湁鐗规畩鍚箟
+        /// 涓撻棬瀹氫箟缁橧os鍥炶皟鐢�,娌℃湁鐗规畩鍚箟
         /// </summary>
         public class IosIHdlInterface : EZSDK.IOS.EZSDKDelegate
         {
@@ -527,7 +591,7 @@
         }
 #else
         /// <summary>
-        /// 涓撻棬瀹氫箟缁欏畨鍗撳洖璋冪敤鐫�,娌℃湁鐗规畩鍚箟
+        /// 涓撻棬瀹氫箟缁欏畨鍗撳洖璋冪敤,娌℃湁鐗规畩鍚箟
         /// </summary>
         public class AndroidIHdlInterface : Java.Lang.Object, IHdlInterface
         {

--
Gitblit v1.8.0