| | |
| | | using System;
|
| | | using System; |
| | | using System.Collections.Generic; |
| | | using System.Text; |
| | | using HDL_ON.DAL; |
| | | using HDL_ON.DriverLayer; |
| | | using HDL_ON.Entity; |
| | | using HDL_ON.UI.CSS; |
| | | using Newtonsoft.Json; |
| | |
| | | /// <summary> |
| | | /// 当前温度信息 |
| | | /// </summary> |
| | | Button btnTempValues; |
| | | TextButton btnTempValues; |
| | | /// <summary> |
| | | /// 当前湿度信息 |
| | | /// </summary> |
| | | Button btnHumidityValues; |
| | | TextButton btnHumidityValues; |
| | | /// <summary> |
| | | /// 当前pm2.5状态 |
| | | /// </summary> |
| | | Button btnPm25Values; |
| | | TextButton btnPm25Values; |
| | | /// <summary> |
| | | /// 切换显示功能类型区域 |
| | | /// </summary> |
| | |
| | | bool CurShowTypeIsFunction = true; |
| | | #endregion |
| | | |
| | | #region 报警信息 |
| | | Button btnMsgBg; |
| | | Button btnMsgTime; |
| | | Button btnMsg; |
| | | Button btnMsgIcon; |
| | | #endregion |
| | | |
| | | public HomePage() |
| | | { |
| | | bodyView = this; |
| | | bodyView.BackgroundColor = CSS_Color.BackgroundColor; |
| | | } |
| | | |
| | | public override void RemoveFromParent() |
| | | { |
| | | UnregisterGetPushMessageAction(); |
| | | base.RemoveFromParent(); |
| | | } |
| | | |
| | | public void LoadPage() |
| | |
| | | topView = new FrameLayout() |
| | | { |
| | | Height = Application.GetRealHeight(216), |
| | | BackgroundImagePath = DB_ResidenceData.residenceData.residenceImage, |
| | | BackgroundImagePath = DB_ResidenceData.Instance.residenceImage, |
| | | }; |
| | | bodyView.AddChidren(topView); |
| | | |
| | |
| | | Radius = (uint)Application.GetRealWidth(3), |
| | | }; |
| | | topView.AddChidren(btnLinkStateTip); |
| | | //更新链接状态icon颜色 |
| | | CheckLinkStatus();//2020-12-22 |
| | | //LoadEvent_CheckLinkStatus(); |
| | | |
| | | btnResidenceName = new Button() |
| | | { |
| | | X = Application.GetRealWidth(26), |
| | | Y = Application.GetRealHeight(32), |
| | | Width = Application.GetRealWidth(400), |
| | | Width = Application.GetRealWidth(300), |
| | | Height = Application.GetRealHeight(33), |
| | | TextColor = CSS_Color.MainBackgroundColor, |
| | | TextSize = CSS_FontSize.EmphasisFontSize_FirstLevel, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | Text = DB_ResidenceData.residenceData.residecenInfo.Name, |
| | | Text = DB_ResidenceData.Instance.CurrentRegion.Name, |
| | | IsBold = true |
| | | }; |
| | | topView.AddChidren(btnResidenceName); |
| | |
| | | { |
| | | System.Threading.Tasks.Task.Run(() => |
| | | { |
| | | DriverLayer.Control.Ins.SearchLoaclGateway(); |
| | | //DriverLayer.Control.Ins.SearchLoaclGateway(); |
| | | //MainPage.InitializationData(); |
| | | //DriverLayer.Control.Ins.IsRemote = true; |
| | | }); |
| | | }; |
| | | #endif |
| | |
| | | }; |
| | | environmentalView.AddChidren(btnTempIcon); |
| | | |
| | | btnTempValues = new Button() |
| | | btnTempValues = new TextButton() |
| | | { |
| | | X = btnTempIcon.Right + Application.GetRealWidth(4), |
| | | Width = Application.GetRealWidth(30), |
| | |
| | | }; |
| | | environmentalView.AddChidren(btnHumidityIcon); |
| | | |
| | | btnHumidityValues = new Button() |
| | | btnHumidityValues = new TextButton() |
| | | { |
| | | X = btnHumidityIcon.Right + Application.GetRealWidth(4), |
| | | Width = Application.GetRealWidth(30), |
| | |
| | | }; |
| | | environmentalView.AddChidren(btnPm25Icon); |
| | | |
| | | btnPm25Values = new Button() |
| | | btnPm25Values = new TextButton() |
| | | { |
| | | X = btnPm25Icon.Right + Application.GetRealWidth(4), |
| | | Width = Application.GetRealWidth(130), |
| | |
| | | }; |
| | | topView.AddChidren(msgView); |
| | | |
| | | var btngb = new Button() |
| | | btnMsgBg = new Button() |
| | | { |
| | | BackgroundColor = CSS_Color.MainColor,//0x3F4484F4, |
| | | Alpha = 0.4f, |
| | | }; |
| | | msgView.AddChidren(btngb); |
| | | msgView.AddChidren(btnMsgBg); |
| | | |
| | | Button btnMsgIcon; |
| | | |
| | | btnMsgIcon = new Button() |
| | | { |
| | | X = Application.GetRealWidth(12), |
| | |
| | | }; |
| | | msgView.AddChidren(btnMsgIcon); |
| | | |
| | | Button btnMsg; |
| | | |
| | | btnMsg = new Button() |
| | | { |
| | | X = Application.GetRealWidth(10) + btnMsgIcon.Right, |
| | | Width = Application.GetRealWidth(240), |
| | | Text = "无", |
| | | Text = "...", |
| | | TextColor = CSS_Color.MainBackgroundColor, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | }; |
| | | msgView.AddChidren(btnMsg); |
| | | |
| | | Button btnMsgTime; |
| | | |
| | | btnMsgTime = new Button() |
| | | { |
| | | X = Application.GetRealWidth(299), |
| | |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | }; |
| | | msgView.AddChidren(btnMsgTime); |
| | | |
| | | LoadEvent_GotoMessageCenterPage(); |
| | | |
| | | #endregion |
| | | |
| | | #endregion |
| | |
| | | #region ContextView |
| | | contentView = new PageLayout() |
| | | { |
| | | Y = changeView.Bottom , |
| | | Y = changeView.Bottom, |
| | | Height = Application.GetRealHeight(310 + 30 + 10), //20为超出部分 |
| | | }; |
| | | bodyView.AddChidren(contentView); |
| | | |
| | | functionViews = new List<FrameLayout>(); |
| | | |
| | | deviceFunctionView = new VerticalScrolViewLayout(); |
| | | contentView.AddChidren(deviceFunctionView); |
| | | LoadDeviceFunctionControlZone(); |
| | | sceneFunctionView = new VerticalScrolViewLayout(); |
| | | contentView.AddChidren(sceneFunctionView); |
| | | LoadSceneFunctionControlZone(); |
| | | contentView.PageIndex = 0; |
| | | |
| | | if (!Common.ApiUtlis.Ins.DownloadDataComplete) |
| | | { |
| | | var waitPage = new Loading(); |
| | | MainPage.BaseView.AddChidren(waitPage); |
| | | waitPage.Start(Language.StringByID(StringId.PleaseWait)); |
| | | |
| | | new System.Threading.Thread(() => |
| | | { |
| | | while (!Common.ApiUtlis.Ins.DownloadDataComplete) |
| | | { |
| | | System.Threading.Thread.Sleep(400); |
| | | } |
| | | Application.RunOnMainThread(() => |
| | | { |
| | | |
| | | deviceFunctionView = new VerticalScrolViewLayout(); |
| | | contentView.AddChidren(deviceFunctionView); |
| | | LoadDeviceFunctionControlZone(); |
| | | sceneFunctionView = new VerticalScrolViewLayout(); |
| | | contentView.AddChidren(sceneFunctionView); |
| | | LoadSceneFunctionControlZone(); |
| | | contentView.PageIndex = 0; |
| | | |
| | | |
| | | LoadEvent_ChangeShowedFunctionType(); |
| | | |
| | | // 查询未读消息并显示 |
| | | GetUnreadPushMessages(); |
| | | RegisterGetPushMessageAction(); |
| | | |
| | | waitPage.Hide(); |
| | | }); |
| | | }) |
| | | { IsBackground = true }.Start(); |
| | | } |
| | | else |
| | | { |
| | | |
| | | deviceFunctionView = new VerticalScrolViewLayout(); |
| | | contentView.AddChidren(deviceFunctionView); |
| | | LoadDeviceFunctionControlZone(); |
| | | sceneFunctionView = new VerticalScrolViewLayout(); |
| | | contentView.AddChidren(sceneFunctionView); |
| | | LoadSceneFunctionControlZone(); |
| | | contentView.PageIndex = 0; |
| | | |
| | | |
| | | LoadEvent_ChangeShowedFunctionType(); |
| | | |
| | | // 查询未读消息并显示 |
| | | GetUnreadPushMessages(); |
| | | RegisterGetPushMessageAction(); |
| | | |
| | | } |
| | | #endregion |
| | | |
| | | LoadEvent_ChangeShowedFunctionType(); |
| | | } |
| | | catch (Exception ex) |
| | | { |
| | | MainPage.Log($"HomePage LoadPage Error : {ex.Message}"); |
| | | } |
| | | |
| | | |
| | | System.Threading.Tasks.Task.Run(() => |
| | | { |
| | | //DriverLayer.Control.Ins.SearchLoaclGateway(); |
| | | }); |
| | | } |
| | | |
| | | /// <summary> |
| | |
| | | /// </summary> |
| | | void LoadDeviceFunctionControlZone() |
| | | { |
| | | |
| | | #region ContextView |
| | | deviceFunctionView.RemoveAll(); |
| | | functionViews.Clear(); |
| | |
| | | try |
| | | { |
| | | int index = 0; |
| | | foreach (var function in DB_ResidenceData.functionList.GetAllDeviceFunctionList()) |
| | | foreach (var function in FunctionList.List.GetDeviceFunctionList()) |
| | | { |
| | | //音乐模块有主从关系,需要特殊处理 |
| | | if (function.functionCategory == FunctionCategory.Music) |
| | |
| | | } |
| | | else |
| | | { |
| | | if (!music.collection) |
| | | if (!music.collect) |
| | | { |
| | | continue; |
| | | } |
| | |
| | | } |
| | | else |
| | | { |
| | | if (!function.collection) |
| | | if (!function.collect) |
| | | continue; |
| | | //if (function.roomIdList.Count == 0)//如何在房间已经移除了这个功能,则收藏界面也不会再显示 |
| | | //{ |
| | |
| | | try |
| | | { |
| | | int index = 0; |
| | | foreach (var function in DB_ResidenceData.functionList.scenes) |
| | | foreach (var scene in FunctionList.List.scenes) |
| | | { |
| | | if (!function.collection) |
| | | if (!scene.collect) |
| | | continue; |
| | | if (function.roomIdList.Count == 0)//如何在房间已经移除了这个功能,则收藏界面也不会再显示 |
| | | { |
| | | function.collection = false; |
| | | continue; |
| | | } |
| | | //if (scene.roomIds.Count == 0)//如何在房间已经移除了这个功能,则收藏界面也不会再显示 |
| | | //{ |
| | | // scene.collect = false; |
| | | // continue; |
| | | //} |
| | | if (index % 2 == 0) |
| | | { |
| | | sceneFunctionView.AddChidren(new Button() { Height = Application.GetRealHeight(7) }); |
| | |
| | | X = functionView_X, |
| | | Width = Application.GetRealWidth(164), |
| | | Height = Application.GetRealWidth(122), |
| | | Tag = function.sid, |
| | | BackgroundImagePath = (function as Scene).ImagePath, |
| | | Tag = scene.sid, |
| | | BackgroundImagePath = scene.ImagePath, |
| | | }; |
| | | rowView.AddChidren(functionView); |
| | | |
| | | LoadSceneFunctionDiv( functionView, function); |
| | | //2020-12-03 修改图片加载方法 |
| | | ImageUtlis.Current.LoadLocalOrNetworkImages((scene as Scene).ImagePath, functionView); |
| | | |
| | | LoadSceneFunctionDiv( functionView, scene); |
| | | index++; |
| | | } |
| | | |
| | |
| | | SelectedImagePath = "Collection/CollectionWhiteIcon.png", |
| | | UnSelectedImagePath = "Collection/CollectionIcon.png", |
| | | }; |
| | | view.AddChidren(btnCollection); |
| | | LoadEvent_FunctionCollection(btnCollection, function, true); |
| | | //view.AddChidren(btnCollection); |
| | | //2020-12-16 如果是成员隐藏收藏功能 |
| | | if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare) |
| | | { |
| | | view.AddChidren(btnCollection); |
| | | } |
| | | |
| | | LoadEvent_FunctionCollection(btnCollection, function); |
| | | |
| | | if (function.functionCategory == FunctionCategory.Curtain) |
| | | { |
| | |
| | | } |
| | | LoadEvent_SwitchFunction(function, btnSwitch); |
| | | } |
| | | var skipControlPageEvent = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, new Button(), new Button(), new Button()); |
| | | //取消收藏事件 |
| | | Action cannelCollect = () => { |
| | | function.collect = false; |
| | | if (function.functionCategory == FunctionCategory.Music)//处理音乐主从关系 |
| | | { |
| | | if ((function as Music.A31MusicModel).ServerClientType == 1) |
| | | { |
| | | (function as Music.A31MusicModel).MainPlayCollection = false; |
| | | Music.A31MusicModel.Save(); |
| | | } |
| | | } |
| | | string msg = function.name + Language.StringByID(StringId.CollectionCancelled); |
| | | LoadDeviceFunctionControlZone(); |
| | | function.SaveFunctionData(true); |
| | | }; |
| | | |
| | | var skipControlPageEvent = new PublicAssmebly().LoadEvent_SkipFunctionControlPage(function, btnCollection, btnName, btnZone); |
| | | view.MouseUpEventHandler = skipControlPageEvent; |
| | | btnName.MouseUpEventHandler = skipControlPageEvent; |
| | | btnIcon.MouseUpEventHandler = skipControlPageEvent; |
| | |
| | | /// <summary> |
| | | /// 加载场景控制卡片 |
| | | /// </summary> |
| | | void LoadSceneFunctionDiv(FrameLayout view, Function function) |
| | | void LoadSceneFunctionDiv(FrameLayout view, Scene scene) |
| | | { |
| | | try |
| | | { |
| | |
| | | }; |
| | | view.AddChidren(btnCoverd); |
| | | |
| | | Button btnShowDelay; |
| | | btnShowDelay = new Button() |
| | | { |
| | | X = Application.GetRealWidth(40), |
| | | Y = Application.GetRealWidth(4), |
| | | Height = Application.GetRealWidth(32), |
| | | Width = Application.GetRealWidth(100), |
| | | TextColor = CSS_Color.AuxiliaryColor1, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | TextSize = CSS_FontSize.PromptFontSize_FirstLevel, |
| | | }; |
| | | view.AddChidren(btnShowDelay); |
| | | |
| | | Button btnSettingIcon; |
| | | btnSettingIcon = new Button() |
| | | { |
| | |
| | | Y = Application.GetRealWidth(4), |
| | | Height = Application.GetRealWidth(32), |
| | | Width = Application.GetRealWidth(32), |
| | | //UnSelectedImagePath = "FunctionIcon/Scene/DelayIcon.png", |
| | | UnSelectedImagePath = "Public/FuncInfoSetIcon_white.png", |
| | | }; |
| | | view.AddChidren(btnSettingIcon); |
| | |
| | | Y = Application.GetRealWidth(68), |
| | | Width = Application.GetRealWidth(150), |
| | | Height = Application.GetRealHeight(24), |
| | | Text = function.name, |
| | | Text = scene.name, |
| | | TextSize = CSS_FontSize.TextFontSize, |
| | | TextColor = CSS_Color.MainBackgroundColor, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | |
| | | TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel, |
| | | TextAlignment = TextAlignment.CenterLeft, |
| | | SelectedTextColor = CSS_Color.MainBackgroundColor, |
| | | Text = function.GetRoomListName(), |
| | | Text = scene.GetRoomListName(), |
| | | }; |
| | | view.AddChidren(btnZone); |
| | | |
| | |
| | | SelectedImagePath = "Collection/CollectionWhiteIcon.png", |
| | | UnSelectedImagePath = "Collection/CollectionIcon.png", |
| | | }; |
| | | view.AddChidren(btnCollection); |
| | | LoadEvent_FunctionCollection(btnCollection, function, false); |
| | | |
| | | LoadEvent_ControlScene(btnCoverd,btnName,btnZone, function); |
| | | //view.AddChidren(btnCollection); |
| | | //2020-12-16 如果是成员隐藏收藏功能 |
| | | if (!DB_ResidenceData.Instance.CurrentRegion.IsOthreShare) |
| | | { |
| | | view.AddChidren(btnCollection); |
| | | } |
| | | |
| | | LoadEvent_SceneCollection(btnCollection, scene); |
| | | |
| | | LoadEvent_ControlScene(btnCoverd, btnName, btnZone, btnShowDelay, scene); |
| | | |
| | | btnSettingIcon.MouseUpEventHandler = (sender, e) => { |
| | | Action backAction = () => { |
| | | //LoadSceneFunctionControlZone(); |
| | | }; |
| | | Action refreshAction = () => { |
| | | btnName.Text = function.name; |
| | | btnZone.Text = function.GetRoomListName(); |
| | | view.BackgroundImagePath = (function as Scene).ImagePath; |
| | | btnName.Text = scene.name; |
| | | btnZone.Text = scene.GetRoomListName(); |
| | | //view.BackgroundImagePath = (scene as Scene).ImagePath; |
| | | //2020-12-03 修改图片加载方法 |
| | | ImageUtlis.Current.LoadLocalOrNetworkImages((scene as Scene).ImagePath, view); |
| | | }; |
| | | var aep = new SceneEditPage(function as Scene, backAction); |
| | | var aep = new SceneEditPage(scene, backAction); |
| | | MainPage.BasePageView.AddChidren(aep); |
| | | aep.LoadPage(StringId.EditScene, refreshAction); |
| | | aep.LoadPage( refreshAction); |
| | | MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1; |
| | | }; |
| | | //场景正在倒计时执行中 |
| | | scene.SceneCountDown(btnShowDelay); |
| | | } |
| | | catch (Exception ex) |
| | | { |