wxr
2022-12-01 8301df084faa8f43f4b9cb7f92088e5fd9e64524
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);
@@ -57,9 +64,21 @@
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                        break;
                    case SPK.CurtainRoller:
                        var rollingShutterView = new RollingShutterPage(function);
                        var rollingShutterView = new VenetianBlindsPage(function);
                        MainPage.BasePageView.AddChidren(rollingShutterView);
                        rollingShutterView.LoadPage(btnCollectionIcon, btnName, btnFromFloor);
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                        break;
                    case SPK.CurtainShades:
                        var curtainShadesView = new RollingShutterPage(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:
@@ -125,11 +148,11 @@
                        break;
                    case SPK.MusicStandard:
                    case SPK.AvMusic:
                        Music.A31MusicModel.Current.functionMusic =function;//当前播放器
                        var a31PlayMusicPage = new Music.A31PlayMusicPage();
                        MainPage.BasePageView.AddChidren(a31PlayMusicPage);
                        a31PlayMusicPage.Show();
                        MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                        //Music.A31MusicModel.Current= new Music.A31MusicModel { functionMusic = function };//当前播放器
                        //var a31PlayMusicPage = new Music.A31PlayMusicPage();
                        //MainPage.BasePageView.AddChidren(a31PlayMusicPage);
                        //a31PlayMusicPage.Show();
                        //MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
                        break;
                    case SPK.LightCCT:
                        var TureView = new ColorTureLampPage(function);
@@ -141,6 +164,11 @@
                        var pirPage = new SensorPirPage();
                        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();
@@ -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:
@@ -182,6 +210,10 @@
                        var acPage = new AcControlPage();
                        acPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                        break;
                    case SPK.HvacCac:
                        var cacPage = new CacControlPage();
                        cacPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                        break;
                    case SPK.IrLearn:
                        var irLearinPage = new IrLearnPage();
                        irLearinPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
@@ -197,12 +229,74 @@
                        airFresh2.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                        break;
                    case SPK.DoorLock:
                        var doorLockPage = new DoorLockListPage();
                        var doorLockPage = new DoorLockPage();
                        doorLockPage.AddForm(function, btnCollectionIcon, btnName, btnFromFloor);
                        break;
                    case SPK.IpCam_Imou:
                        FunctionList.List.GetIpCamImouList();
                        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("", $"获取乐橙数据失败");
                                        });
                                    }
#if __ANDROID__
                                    Application.RunOnMainThread(() =>
                                    {
                                        try
                                        {
                                            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();
                                            Com.Utils.HdlToLcUtils.Instance.Play(function.extDevId, function.name);
                                        }
                                        catch (Exception ex)
                                        {
                                        }
                                    });
#endif
                                }
                                else
                                {
                                    Application.RunOnMainThread(() =>
                                    {
                                        new PublicAssmebly().TipMsg("", $"获取乐橙数据失败({pack.Code})");
                                    });
                                }
                            }catch(Exception ex)
                            {
                                MainPage.Log("加载乐橙摄像头异常");
                            }
                            finally
                            {
                                Application.RunOnMainThread(() => {
                                    if (waitPage != null)
                                    {
                                        waitPage.RemoveFromParent();
                                        waitPage = null;
                                    }
                                });
                            }
                        })
                        { IsBackground = true }.Start();
                        break;
                }
            };
            return eventHandler;
        }
    }
}
}