From af1cb3ecd0f4b0589e00b28f7f9edccf39e6e12b Mon Sep 17 00:00:00 2001
From: wxr <464027401@qq.com>
Date: 星期四, 10 九月 2020 16:15:11 +0800
Subject: [PATCH] 202009101
---
HDL_ON/UI/UI2/1-HomePage/HomePage.cs | 334 +++++++++++++++++++++++++++++++++++++++++++-----------
1 files changed, 263 insertions(+), 71 deletions(-)
diff --git a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
index d53cdaf..2fdd1b4 100644
--- a/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
+++ b/HDL_ON/UI/UI2/1-HomePage/HomePage.cs
@@ -1,7 +1,11 @@
锘縰sing System;
using System.Collections.Generic;
+using System.Text;
+using HDL_ON.DAL;
using HDL_ON.Entity;
using HDL_ON.UI.CSS;
+using Newtonsoft.Json;
+using Newtonsoft.Json.Linq;
using Shared;
namespace HDL_ON.UI
@@ -15,6 +19,10 @@
/// 椤堕儴淇℃伅鍖哄煙
/// </summary>
FrameLayout topView;
+ /// <summary>
+ /// 杩炴帴鐘舵�佹彁绀�
+ /// </summary>
+ Button btnLinkStateTip;
/// <summary>
///浣忓畢鍚嶇О鏄剧ず
/// </summary>
@@ -97,19 +105,40 @@
};
topView.AddChidren(btnTop);
- btnResidenceName = new Button()
+ btnLinkStateTip = new Button()
{
X = Application.GetRealWidth(16),
+ Y = Application.GetRealHeight(46),
+ Width = Application.GetRealWidth(6),
+ Height = Application.GetRealWidth(6),
+ BackgroundColor = CSS_Color.MainColor,
+ Radius = (uint)Application.GetRealWidth(3),
+ };
+ topView.AddChidren(btnLinkStateTip);
+
+ btnResidenceName = new Button()
+ {
+ X = Application.GetRealWidth(26),
Y = Application.GetRealHeight(32),
- Width = Application.GetRealWidth(200),
+ Width = Application.GetRealWidth(400),
Height = Application.GetRealHeight(33),
- TextColor = CSS.CSS_Color.MainBackgroundColor,
- TextSize = CSS.CSS_FontSize.EmphasisFontSize_FirstLevel,
+ TextColor = CSS_Color.MainBackgroundColor,
+ TextSize = CSS_FontSize.EmphasisFontSize_FirstLevel,
TextAlignment = TextAlignment.CenterLeft,
- Text = DB_ResidenceData.residenceData.residenceName,
+ Text = DB_ResidenceData.residenceData.residecenInfo.Name,
IsBold = true
};
topView.AddChidren(btnResidenceName);
+
+#if DEBUG
+ //鍚姩a缃戝叧mqtt
+ //btnResidenceName.MouseUpEventHandler = (sender, e) =>
+ //{
+ // System.Threading.Tasks.Task.Run(
+ // async () => { await Mqtt_A_Protocol.StartMqtt();
+ // });
+ //};
+#endif
environmentalView = new FrameLayout()
{
@@ -133,9 +162,9 @@
X = btnTempIcon.Right + Application.GetRealWidth(4),
Width = Application.GetRealWidth(30),
Gravity = Gravity.CenterVertical,
- TextColor = CSS.CSS_Color.MainBackgroundColor,
- TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel,
- Text = MainPage.cityInfo.temperature,
+ TextColor = CSS_Color.MainBackgroundColor,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ Text = MainPage.cityInfo.temperature + "掳",
TextAlignment = TextAlignment.CenterLeft,
};
environmentalView.AddChidren(btnTempValues);
@@ -155,9 +184,9 @@
X = btnHumidityIcon.Right + Application.GetRealWidth(4),
Width = Application.GetRealWidth(30),
Gravity = Gravity.CenterVertical,
- TextColor = CSS.CSS_Color.MainBackgroundColor,
- TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel,
- Text = MainPage.cityInfo.humidity,
+ TextColor = CSS_Color.MainBackgroundColor,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ Text = MainPage.cityInfo.humidity + "%",
TextAlignment = TextAlignment.CenterLeft,
};
environmentalView.AddChidren(btnHumidityValues);
@@ -175,10 +204,10 @@
btnPm25Values = new Button()
{
X = btnPm25Icon.Right + Application.GetRealWidth(4),
- Width = Application.GetRealWidth(30),
+ Width = Application.GetRealWidth(130),
Gravity = Gravity.CenterVertical,
- TextColor = CSS.CSS_Color.MainBackgroundColor,
- TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel,
+ TextColor = CSS_Color.MainBackgroundColor,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
Text = MainPage.cityInfo.pm25,
TextAlignment = TextAlignment.CenterLeft,
};
@@ -198,7 +227,7 @@
var btngb = new Button()
{
- BackgroundColor = CSS.CSS_Color.MainColor,//0x3F4484F4,//
+ BackgroundColor = CSS_Color.MainColor,//0x3F4484F4,
Alpha = 0.4f,
};
msgView.AddChidren(btngb);
@@ -221,8 +250,8 @@
X = Application.GetRealWidth(10) + btnMsgIcon.Right,
Width = Application.GetRealWidth(240),
Text = "鏃�",
- TextColor = CSS.CSS_Color.MainBackgroundColor,
- TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel,
+ TextColor = CSS_Color.MainBackgroundColor,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
TextAlignment = TextAlignment.CenterLeft,
};
msgView.AddChidren(btnMsg);
@@ -233,7 +262,7 @@
X = Application.GetRealWidth(299),
Width = Application.GetRealWidth(44),
Text = "00:00",
- TextSize = CSS.CSS_FontSize.PromptFontSize_FirstLevel,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
TextAlignment = TextAlignment.CenterLeft,
};
msgView.AddChidren(btnMsgTime);
@@ -256,9 +285,9 @@
{
Width = Application.GetRealWidth(114),
TextID = StringId.Functions,
- SelectedTextColor = CSS.CSS_Color.MainColor,
- TextColor = CSS.CSS_Color.PromptingColor1,
- TextSize = CSS.CSS_FontSize.HeadlineFontSize,
+ SelectedTextColor = CSS_Color.MainColor,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.HeadlineFontSize,
TextAlignment = TextAlignment.Center,
IsSelected = true,
IsBold = true
@@ -271,7 +300,7 @@
Gravity = Gravity.CenterVertical,
Width = Application.GetRealWidth(1),
Height = Application.GetRealHeight(14),
- BackgroundColor = CSS.CSS_Color.PromptingColor1,
+ BackgroundColor = CSS_Color.PromptingColor1,
};
changeView.AddChidren(btnLine);
@@ -280,22 +309,19 @@
X = btnLine.Right,
Width = Application.GetRealWidth(114),
TextID = StringId.Scenes,
- SelectedTextColor = CSS.CSS_Color.MainColor,
- TextColor = CSS.CSS_Color.PromptingColor1,
- TextSize = CSS.CSS_FontSize.TextFontSize,
+ SelectedTextColor = CSS_Color.MainColor,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.TextFontSize,
TextAlignment = TextAlignment.Center,
};
changeView.AddChidren(btnChangeScene);
#endregion
- //bodyView.AddChidren(new Button() { Y = changeView.Bottom, Height = Application.GetRealHeight(10), BackgroundColor = 0xAAF2F3F7 });
-
-
#region ContextView
contentView = new PageLayout()
{
Y = changeView.Bottom ,
- Height = Application.GetRealHeight(310 + 30), //20涓鸿秴鍑洪儴鍒�
+ Height = Application.GetRealHeight(310 + 30 + 10), //20涓鸿秴鍑洪儴鍒�
};
bodyView.AddChidren(contentView);
@@ -310,7 +336,6 @@
contentView.PageIndex = 0;
#endregion
- bodyView.AddChidren(new Button() { Y = changeView.Bottom, Height = Application.GetRealHeight(7), BackgroundColor = 0xAAF2F3F7 });
LoadEvent_ChangeShowedFunctionType();
}
@@ -332,14 +357,40 @@
try
{
int index = 0;
- foreach (var function in DB_ResidenceData.residenceData.functionList.GetAllDeviceFunctionList())
+ foreach (var function in DB_ResidenceData.functionList.GetAllDeviceFunctionList())
{
- if (!function.collection)
- continue;
- if (function.roomIdList.Count == 0)//濡備綍鍦ㄦ埧闂村凡缁忕Щ闄や簡杩欎釜鍔熻兘锛屽垯鏀惰棌鐣岄潰涔熶笉浼氬啀鏄剧ず
+ //闊充箰妯″潡鏈変富浠庡叧绯伙紝闇�瑕佺壒娈婂鐞�
+ if (function.functionCategory == FunctionCategory.Music)
{
- function.collection = false;
- continue;
+ var music = function as Music.A31MusicModel;
+ if (music.ServerClientType == -1)
+ {
+ continue;
+ }
+ else if (music.ServerClientType == 1)
+ {
+ if (!music.MainPlayCollection)
+ {
+ continue;
+ }
+ }
+ else
+ {
+ if (!music.collection)
+ {
+ continue;
+ }
+ }
+ }
+ else
+ {
+ if (!function.collection)
+ continue;
+ if (function.roomIdList.Count == 0)//濡備綍鍦ㄦ埧闂村凡缁忕Щ闄や簡杩欎釜鍔熻兘锛屽垯鏀惰棌鐣岄潰涔熶笉浼氬啀鏄剧ず
+ {
+ function.collection = false;
+ continue;
+ }
}
if (index % 2 == 0)
{
@@ -363,6 +414,7 @@
Tag = function.sid
};
rowView.AddChidren(functionView);
+
var btnbg = new Button()
{
UnSelectedImagePath = "Collection/Functionbg.png",
@@ -373,6 +425,33 @@
functionViews.Add(functionView);
LoadDeviceFunctionDiv(functionView, function);
index++;
+ }
+
+ if (index == 0)
+ {
+ var view = new FrameLayout();
+ deviceFunctionView.AddChidren(view);
+
+ var btnNoCollectionBg = new Button()
+ {
+ Y = Application.GetRealHeight(20),
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(180),
+ Height = Application.GetRealWidth(180),
+ UnSelectedImagePath = "Collection/NoCollectionBg.png",
+ };
+ view.AddChidren(btnNoCollectionBg);
+
+ var btnNoCollectionTip = new Button()
+ {
+ Height = Application.GetRealHeight(42),
+ Y = btnNoCollectionBg.Bottom,
+ TextAlignment = TextAlignment.Center,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ TextID = StringId.TipNoFunctionCollcetion,
+ };
+ view.AddChidren(btnNoCollectionTip);
}
}
catch (Exception ex)
@@ -393,7 +472,7 @@
try
{
int index = 0;
- foreach (var function in DB_ResidenceData.residenceData.functionList.scenes)
+ foreach (var function in DB_ResidenceData.functionList.scenes)
{
if (!function.collection)
continue;
@@ -424,8 +503,35 @@
};
rowView.AddChidren(functionView);
- LoadSceneFunctionDiv(functionView, function);
+ LoadSceneFunctionDiv( functionView, function);
index++;
+ }
+
+ if (index == 0)
+ {
+ var view = new FrameLayout();
+ sceneFunctionView.AddChidren(view);
+
+ var btnNoCollectionBg = new Button()
+ {
+ Y = Application.GetRealHeight(20),
+ Gravity = Gravity.CenterHorizontal,
+ Width = Application.GetRealWidth(180),
+ Height = Application.GetRealWidth(180),
+ UnSelectedImagePath = "Collection/NoCollectionBg.png",
+ };
+ view.AddChidren(btnNoCollectionBg);
+
+ var btnNoCollectionTip = new Button()
+ {
+ Height = Application.GetRealHeight(42),
+ Y = btnNoCollectionBg.Bottom,
+ TextAlignment = TextAlignment.Center,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+ TextID = StringId.TipNoSceneCollcetion,
+ };
+ view.AddChidren(btnNoCollectionTip);
}
}
catch (Exception ex)
@@ -460,8 +566,8 @@
Y = Application.GetRealWidth(10) + btnIcon.Bottom,
Text = function.name,
IsBold = true,
- TextColor = CSS.CSS_Color.FirstLevelTitleColor,
- TextSize = CSS.CSS_FontSize.TextFontSize,
+ TextColor = CSS_Color.FirstLevelTitleColor,
+ TextSize = CSS_FontSize.TextFontSize,
Height = Application.GetRealWidth(24),
Width = Application.GetRealWidth(140),
TextAlignment = TextAlignment.CenterLeft,
@@ -475,10 +581,10 @@
Y = btnName.Bottom,
Height = Application.GetRealWidth(18),
Width = Application.GetRealWidth(113),
- TextColor = CSS.CSS_Color.PromptingColor1,
- TextSize = CSS.CSS_FontSize.PromptFontSize_SecondaryLevel,
+ TextColor = CSS_Color.PromptingColor1,
+ TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
TextAlignment = TextAlignment.CenterLeft,
- SelectedTextColor = CSS.CSS_Color.MainBackgroundColor,
+ SelectedTextColor = CSS_Color.MainBackgroundColor,
Text = function.GetRoomListName()
};
view.AddChidren(btnZone);
@@ -490,9 +596,9 @@
Y = btnZone.Bottom,
Height = Application.GetRealWidth(18),
Width = Application.GetRealWidth(113),
- SelectedTextColor = CSS.CSS_Color.MainBackgroundColor,
+ SelectedTextColor = CSS_Color.MainBackgroundColor,
TextColor = 0x00000000,
- TextSize = CSS.CSS_FontSize.PromptFontSize_SecondaryLevel,
+ TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
TextAlignment = TextAlignment.CenterLeft,
Tag = "state",
Text = function.lastState
@@ -542,6 +648,65 @@
LoadEvent_ControlCurtain(function as Curtain, btnCurtainClose, btnCurtainOpen);
}
+
+ else if (function.functionType == FunctionType.TV)
+ {
+ btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/TVIcon.png";
+ Button btnPower;
+ btnPower = new Button()
+ {
+ X = Application.GetRealWidth(131),
+ Y = Application.GetRealHeight(86),
+ Width = Application.GetRealWidth(32),
+ Height = Application.GetRealWidth(32),
+ UnSelectedImagePath = "Public/PowerClose.png",
+ };
+ view.AddChidren(btnPower);
+ LoadEvent_ControlTV(function as TV, btnPower);
+ }
+
+ else if (function.functionCategory == FunctionCategory.Music)
+ {
+ btnIcon.UnSelectedImagePath = "FunctionIcon/Music/MusicIcon.png";
+ btnIcon.SelectedImagePath = "FunctionIcon/Music/MusicOnIcon.png";
+ Button btnPower;
+ btnPower = new Button()
+ {
+ X = Application.GetRealWidth(118),
+ Y = Application.GetRealWidth(83),
+ Width = Application.GetRealWidth(44),
+ Height = Application.GetRealWidth(44),
+ UnSelectedImagePath = "FunctionIcon/Music/MusicPlayIcon.png",
+ SelectedImagePath = "FunctionIcon/Music/MusicPlayOnIcon.png",
+ };
+ view.AddChidren(btnPower);
+ var a31player = (function as UI.Music.A31MusicModel);
+ btnState.Text = a31player.A31PlayStatus.Title;
+
+ btnState.SelectedTextColor = CSS_Color.MainBackgroundColor;
+ btnState.TextColor = CSS_Color.MainBackgroundColor;//PromptingColor1
+
+ //Music.SendMethod.ReadStatus(a31player);
+
+ btnPower.MouseUpEventHandler = (sender, e) => {
+ if (btnPower.IsSelected)
+ {
+ btnPower.IsSelected = false;
+ Music.SendMethod.Pause(a31player);
+ a31player.A31PlayStatus.status = "pause";
+ a31player.trait_on_off.value = "off";
+ }
+ else
+ {
+ btnPower.IsSelected = true;
+ Music.SendMethod.Play(a31player);
+ a31player.A31PlayStatus.status = "play";
+ a31player.trait_on_off.value = "on";
+ }
+ UpdataFunctionStates(a31player);
+ };
+ }
+
else
{
Button btnSwitch;
@@ -582,6 +747,24 @@
break;
}
break;
+ case FunctionCategory.SwitchDevice:
+ switch (function.functionType)
+ {
+ case FunctionType.Socket:
+ btnIcon.UnSelectedImagePath = "FunctionIcon/Socket/SocketIcon.png";
+ btnIcon.SelectedImagePath = "FunctionIcon/Socket/SocketOnIcon.png";
+ break;
+ }
+ break;
+ case FunctionCategory.Electrical:
+ switch (function.functionType)
+ {
+ case FunctionType.Fan:
+ btnIcon.UnSelectedImagePath = "FunctionIcon/Electrical/FanIcon.png";
+ btnIcon.SelectedImagePath = "FunctionIcon/Electrical/FanOnIcon.png";
+ break;
+ }
+ break;
}
LoadEvent_SwitchFunction(function, btnSwitch);
}
@@ -590,14 +773,17 @@
btnName.MouseUpEventHandler = skipControlPageEvent;
btnIcon.MouseUpEventHandler = skipControlPageEvent;
btnState.MouseUpEventHandler = skipControlPageEvent;
- UpdataFunctionStates(function);
+ //鐢佃涓嶉渶瑕佹洿鏂扮姸鎬�
+ if(function.functionType!= FunctionType.TV)
+ {
+ UpdataFunctionStates(function);
+ }
}
catch (Exception ex)
{
MainPage.Log("homepage LoadControlView error : " + ex.Message);
}
}
-
/// <summary>
/// 鍔犺浇鍦烘櫙鎺у埗鍗$墖
@@ -611,31 +797,19 @@
UnSelectedImagePath = "Collection/SceneCovered.png",
};
view.AddChidren(btnCoverd);
- LoadEvent_ControlScene(btnCoverd, function);
- Button btnDelayIcon;
- btnDelayIcon = new Button()
+ Button btnSettingIcon;
+ btnSettingIcon = new Button()
{
- X = Application.GetRealWidth(12),
- Y = Application.GetRealWidth(12),
- Height = Application.GetRealWidth(24),
- Width = Application.GetRealWidth(24),
- UnSelectedImagePath = "FunctionIcon/Scene/DelayIcon.png"
+ X = Application.GetRealWidth(4),
+ Y = Application.GetRealWidth(4),
+ Height = Application.GetRealWidth(32),
+ Width = Application.GetRealWidth(32),
+ //UnSelectedImagePath = "FunctionIcon/Scene/DelayIcon.png",
+ UnSelectedImagePath = "Public/FuncInfoSetIcon_white.png",
};
- view.AddChidren(btnDelayIcon);
+ view.AddChidren(btnSettingIcon);
- Button btnCollection;
- btnCollection = new Button()
- {
- X = Application.GetRealWidth(116),
- Y = Application.GetRealWidth(8),
- Width = Application.GetMinRealAverage(32),
- Height = Application.GetMinRealAverage(32),
- SelectedImagePath = "Collection/CollectionWhiteIcon.png",
- UnSelectedImagePath = "Collection/CollectionIcon.png",
- };
- view.AddChidren(btnCollection);
- LoadEvent_FunctionCollection(btnCollection, function, false);
Button btnName;
btnName = new Button()
{
@@ -657,15 +831,33 @@
Y = btnName.Bottom,
Height = Application.GetRealWidth(18),
Width = Application.GetRealWidth(113),
- TextColor = CSS.CSS_Color.MainBackgroundColor,
- TextSize = CSS.CSS_FontSize.PromptFontSize_SecondaryLevel,
+ TextColor = CSS_Color.MainBackgroundColor,
+ TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
TextAlignment = TextAlignment.CenterLeft,
- SelectedTextColor = CSS.CSS_Color.MainBackgroundColor,
+ SelectedTextColor = CSS_Color.MainBackgroundColor,
Text = function.GetRoomListName(),
};
view.AddChidren(btnZone);
+ Button btnCollection;
+ btnCollection = new Button()
+ {
+ X = Application.GetRealWidth(116),
+ Y = Application.GetRealWidth(8),
+ Width = Application.GetMinRealAverage(32),
+ Height = Application.GetMinRealAverage(32),
+ SelectedImagePath = "Collection/CollectionWhiteIcon.png",
+ UnSelectedImagePath = "Collection/CollectionIcon.png",
+ };
+ view.AddChidren(btnCollection);
+ LoadEvent_FunctionCollection(btnCollection, function, false);
+
+ LoadEvent_ControlScene(btnCoverd,btnName,btnZone, function);
+
+ btnSettingIcon.MouseUpEventHandler = (sender, e) => {
+
+ };
}
catch (Exception ex)
{
--
Gitblit v1.8.0