wxr
2021-11-30 38a11bcfaf3cf703e38201c9c6cd6631354ea243
HDL-ON_iOS/Other/SkipControl.cs
@@ -1,8 +1,11 @@
using System;
using CoreGraphics;
using Foundation;
using HDL_ON.Entity;
using HDLSceneSiri;
using Intents;
using IntentsUI;
using Shared;
using UIKit;
namespace Other
@@ -24,20 +27,104 @@
            var sDM = new SiriKit.SceneDateManager();
            Console.WriteLine($"IsLogin:{sDM.IsLgoin};accessToken:{sDM.AccessToken};refreshToken:{sDM.RefreshToken};RegionUrl:{sDM.RegionUrl};HomeId:{sDM.HomeId}");
            //NSMutableArray list = new NSMutableArray();
            //foreach (var localScene in HDL_ON.Entity.FunctionList.List.scenes)
            //{
            //    list.Add(new HDLSceneSiri.HDLSiriControlModel()
            //    {
            //        UserSceneId = localScene.userSceneId,
            //        Name = localScene.name,
            //    });
            //}
            //var vc = new HDLSceneSiri.HDLSiriSceneListViewController();
            //vc.DataSource = list;
            ////vc.TitleName
            ////PresentViewController(vc, true, null);
            //HDL_ON_iOS.AppDelegate.rootViewController.PushViewController(vc, true);
            //1.初始化dataList
            NSMutableArray dataSourceList = new NSMutableArray();
            //2.初始化场景列表数据
            HDLSiriShortcutModel sceneModel = new HDLSiriShortcutModel();
            if (Language.CurrentLanguage == "Chinese")
            {
                sceneModel.Title = "场景";
                sceneModel.Content = "将场景添加到快捷指令,即可通过Siri执行";
            }
            else
            {
                sceneModel.Title = "Scenes";
                sceneModel.Content = "Add the scene to the shortcut, which can be executed through Siri";
            }
            NSMutableArray list = new NSMutableArray();
            foreach (var localScene in HDL_ON.Entity.FunctionList.List.scenes)
            {
                list.Add(new HDLSceneSiri.HDLSiriSceneModel()
                list.Add(new HDLSiriControlModel()
                {
                    UserSceneId = localScene.userSceneId,
                    Name = localScene.name,
                    ControlId = localScene.userSceneId,//不能为空
                    ControlName = localScene.name,//不能为空
                    ControlType = "1",//不能为空
                    ControlJSONStr = "1",//不能为空
                    ActionName = Language.CurrentLanguage == "Chinese"? "场景": "Scene"//不能为空
                });
            }
            var vc = new HDLSceneSiri.HDLSiriSceneListViewController();
            vc.DataSource = list;
            //vc.TitleName
            //PresentViewController(vc, true, null);
            sceneModel.List = NSArray.FromArray<HDLSiriControlModel>(list);
            dataSourceList.Add(sceneModel);
            //3.初始化安防列表数据
            HDLSiriShortcutModel securityModel = new HDLSiriShortcutModel();
            if (Language.CurrentLanguage == "Chinese")
            {
                securityModel.Title = "安防";
                securityModel.Content = "将安防添加到快捷指令,即可通过Siri执行";
            }else
            {
                securityModel.Title = "Security";
                securityModel.Content = "Add security to the shortcut, which can be executed through Siri";
            }
            NSMutableArray list2 = new NSMutableArray();
            foreach (var temp in HDL_ON.Entity.FunctionList.List.securities)
            {
                SecurityState securityState = new SecurityState()
                {
                    gatewayId = DB_ResidenceData.Instance.HomeGateway.gatewayId,
                    sid = temp.sid,
                    status = "enable",
                    userSecurityId = temp.userSecurityId
                };
                var ControlJSONStr = Newtonsoft.Json.JsonConvert.SerializeObject(securityState);
                list2.Add(new HDLSiriControlModel()
                {
                    ControlId = temp.userSecurityId,//不能为空
                    ControlName = temp.name,//不能为空
                    ControlType = "2",//不能为空
                    ControlJSONStr = ControlJSONStr,//不能为空
                    ActionName = Language.CurrentLanguage == "Chinese" ? "安防" : "Security"//不能为空
                });
            }
            securityModel.List = NSArray.FromArray<HDLSiriControlModel>(list2);
            dataSourceList.Add(securityModel);
            //4.跳转Siri添加或者编辑管理页面
            HDLSceneSiri.HDLSiriSceneListViewController vc = new HDLSceneSiri.HDLSiriSceneListViewController();
            vc.DataSource = dataSourceList;
            vc.HomeId = DB_ResidenceData.Instance.CurrentRegion.id;//不能为空
            if (Language.CurrentLanguage == "Chinese")
            {
                vc.TitleName = "快捷指令";
            }
            else
            {
                vc.TitleName = "Shortcut instruction";
            }
            HDL_ON_iOS.AppDelegate.rootViewController.PushViewController(vc, true);
        }
        public void SetData(bool isLogin, string accessToken, string refreshToken, string regionUrl, string homeId)