wjc
2023-03-28 a9d1161b1df96e7ddad566335989a1444e433ef5
HDL_ON/UI/UI0-Public/PublicAssmeblyBLL.cs
@@ -1,5 +1,6 @@
using System;
using System.Threading;
using HDL_ON.DAL.Server;
using HDL_ON.Entity;
using Shared;
@@ -38,6 +39,12 @@
                        rgbView.LoadPage(btnCollectionIcon, btnName, btnFromFloor);
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                        break;
                    case SPK.LightRGBW:
                        var rgbwView = new RGBWPage(function);
                        MainPage.BasePageView.AddChidren(rgbwView);
                        rgbwView.LoadPage(btnCollectionIcon, btnName, btnFromFloor);
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                        break;
                    case SPK.LightDimming:
                        var dimmerView = new DimmerPage(function);
                        MainPage.BasePageView.AddChidren(dimmerView);
@@ -60,6 +67,18 @@
                        var rollingShutterView = new RollingShutterPage(function);
                        MainPage.BasePageView.AddChidren(rollingShutterView);
                        rollingShutterView.LoadPage(btnCollectionIcon, btnName, btnFromFloor);
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                        break;
                    case SPK.CurtainShades:
                        var curtainShadesView = new VenetianBlindsPage(function);
                        MainPage.BasePageView.AddChidren(curtainShadesView);
                        curtainShadesView.LoadPage(btnCollectionIcon, btnName, btnFromFloor);
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                        break;
                    case SPK.CurtainDream:
                        var curtainDreamView = new CurtainDreamPage(function);
                        MainPage.BasePageView.AddChidren(curtainDreamView);
                        curtainDreamView.LoadPage(btnCollectionIcon, btnName, btnFromFloor);
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                        break;
                    case SPK.FloorHeatStandard:
@@ -117,6 +136,10 @@
                    case SPK.ElectricTuyaWaterValve2:
                        var tyWaterValve = new TuyaWaterValvePage();
                        tyWaterValve.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                        break;
                    case SPK.MechanicalArm:
                        var mechanicalArmPage = new MechanicalArmPage();
                        mechanicalArmPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                        break;
                    case SPK.ElectricTuyaWeepRobot:
                    case SPK.ElectricTuyaWeepRobot2:
@@ -142,6 +165,11 @@
                        pirPage.ShowColltionButton = false;
                        pirPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                        break;
                    case SPK.SensorHelp:
                        var helpPage = new PanelHelpPage();
                        helpPage.ShowColltionButton = false;
                        helpPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                        break;
                    case SPK.SensorWater:
                        var waterPage = new SensorWaterImmersionPage();
                        waterPage.ShowColltionButton = false;
@@ -157,10 +185,10 @@
                        doorwindowPage.ShowColltionButton = false;
                        doorwindowPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                        break;
                    case SPK.SensorMmvPose:
                    case SPK.SenesorMegahealth:
                    case SPK.SenesorMegahealth2:
                        var smPage = new SenesorMegahealthPage();
                        smPage.ShowColltionButton = false;
                        smPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                        break;
                    case SPK.SensorGas:
@@ -204,11 +232,96 @@
                        var doorLockPage = new DoorLockPage();
                        doorLockPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                        break;
                    case SPK.SensorHelp:
                        var panelHelpPage = new HDL_ON.UI.UI2.FuntionControlView.Panel.PanelHelpPage();
                        panelHelpPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                    case SPK.IpCam_Imou:
#if __IOS__
                        if (Shared.IOS.HDLCNVRSDK.HDLLCNVRSDK.SharedInstance().AccessToken==null) {//未初始化摄像头
                            Shared.IOS.HDLCNVRSDK.HDLLCNVRSDK.SharedInstance().InitSDKWithAppKey("HDL-HOME-APP-TEST", "WeJ8TY88vbakCcnvH8G1tDUqzLWY8yss", OnAppConfig.Instance.RequestHttpsHost);
                            Shared.IOS.HDLCNVRSDK.HDLLCNVRSDK.SharedInstance().AccessToken = UserInfo.Current.LoginTokenString;
                            Shared.IOS.HDLCNVRSDK.HDLLCNVRSDK.SharedInstance().RefreshToken = UserInfo.Current.RefreshToken;
                            Shared.IOS.HDLCNVRSDK.HDLLCNVRSDK.SharedInstance().HomeId = DB_ResidenceData.Instance.CurrentRegion.id;
                            Shared.IOS.HDLCNVRSDK.HDLLCNVRSDK.SharedInstance().RefreshDeviceList();
                        }
                        //跳转大华摄像头
                        Shared.IOS.HDLCNVRSDK.HDLLCNVRSDK.SharedInstance().RefreshDeviceList();
                        //Shared.IOS.HDLCNVRSDK.HDLLCNVRSDK.SharedInstance().ToMonitorViewWithDeviceId(function.extDevId, function.name);
                        Shared.IOS.HDLCNVRSDK.HDLLCNVRSDK.SharedInstance().ToMonitorViewWithDeviceId(function.extDevId, function.name, Shared.Application.currentVC);
#else
                        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
                                {
                                    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.huoqushujushibao));
                                            });
                                        }
                                        Application.RunOnMainThread(() =>{
                                            try
                                            {
                                                Com.Utils.HdlToLcUtils.Instance.SubAccessToken = pack.Data.ToString();
                                                Com.Utils.HdlToLcUtils.Instance.Play(function.extDevId, function.name);
                                            }
                                            catch (Exception ex)
                                            {
                                            }
                                        });
                                    }
                                    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
                        {
                            try
                            {
                                Com.Utils.HdlToLcUtils.Instance.Play(function.extDevId, function.name);
                            }
                            catch (Exception ex)
                            {
                            }
                        }
#endif
                        break;
                }
            };
            return eventHandler;