using System;
|
using System.Collections.Generic;
|
using HDL_ON.DAL.Server;
|
using HDL_ON.Entity;
|
using HDL_ON.UI.CSS;
|
using Shared;
|
|
namespace HDL_ON.UI
|
{
|
/// <summary>
|
/// 第三方品牌列表界面
|
/// </summary>
|
public class Iot_BrandListPage : FrameLayout
|
{
|
FrameLayout bodyView;
|
|
VerticalScrolViewLayout contentView;//VerticalRefreshLayout
|
|
List<IntegratedBrand_Iot> brandList;
|
|
public Iot_BrandListPage()
|
{
|
bodyView = this;
|
brandList = new List<IntegratedBrand_Iot>();
|
}
|
|
public void LoadPage()
|
{
|
|
|
new TopViewDiv(bodyView, Language.StringByID(StringId.Bind3thIotAccount)).LoadTopView(CSS_Color.MainBackgroundColor);
|
|
bodyView.BackgroundColor = CSS_Color.MainBackgroundColor;
|
|
bodyView.AddChidren(new Button
|
{
|
Y = Application.GetRealHeight(64),
|
Height = Application.GetRealHeight(1),
|
BackgroundColor = CSS_Color.DividingLineColor,
|
});
|
|
Button btnTipText = new Button()
|
{
|
Y = Application.GetRealHeight(80),
|
Width = Application.GetRealWidth(347),
|
Height = Application.GetRealHeight(65),
|
Gravity = Gravity.CenterHorizontal,
|
Radius = (uint)Application.GetRealWidth(5),
|
BackgroundColor = 0x194484F4,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
Padding = new Padding(12, Application.GetRealWidth(16), 12, Application.GetRealWidth(16)),
|
TextSize = CSS_FontSize.TextFontSize,
|
Text = "通过绑定第三方平台账号寄哪里云端连接,将您在三方平台的设备同步到On Pro进行控制",
|
IsMoreLines = true,
|
TextAlignment = TextAlignment.CenterLeft,
|
};
|
bodyView.AddChidren(btnTipText);
|
if (Language.CurrentLanguage != "Chinese")
|
{
|
btnTipText.Text = "Synchronize your devices on the third-party platform to on Pro for control by binding the third-party platform account to the cloud connection";
|
}
|
|
|
contentView = new VerticalScrolViewLayout()
|
{
|
Y = Application.GetRealHeight(150),
|
Height = Application.GetRealHeight(573),
|
};
|
bodyView.AddChidren(contentView);
|
|
|
|
|
GetBindList();
|
|
//contentView.BeginHeaderRefreshingAction = () =>
|
//{
|
// contentView.EndHeaderRefreshing();
|
// GetBindList();
|
//};
|
|
}
|
/// <summary>
|
/// 获取列表
|
/// </summary>
|
void GetBindList()
|
{
|
var waitPage = new Loading();
|
waitPage.Start();
|
new System.Threading.Thread(() => {
|
try
|
{
|
var pm = new DAL.Server.HttpServerRequest();
|
var pack = pm.Get3tyIotBrandList();
|
if (pack.Code == DAL.Server.StateCode.SUCCESS)
|
{
|
brandList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<IntegratedBrand_Iot>>(pack.Data.ToString());
|
if (brandList.Count > 0)
|
{
|
Application.RunOnMainThread(() =>
|
{
|
LoadRow();
|
});
|
}
|
else
|
{
|
Application.RunOnMainThread(() =>
|
{
|
//NotListTipView();
|
LoadRow();
|
});
|
}
|
}
|
else
|
{
|
IMessageCommon.Current.ShowErrorInfoAlter(pack.Code);
|
}
|
}
|
catch (Exception ex)
|
{
|
MainPage.Log("2--::" + ex.Message);
|
}
|
finally
|
{
|
Application.RunOnMainThread(() => { waitPage.Hide(); });
|
}
|
})
|
{ IsBackground = true }.Start();
|
}
|
|
|
void LoadRow()
|
{
|
contentView.RemoveAll();
|
//brandList.Add(new IntegratedBrand_Iot
|
//{
|
// authBrandNameCn = "Test Hdl",
|
// authBrandNameEn = "Test Hdl",
|
// hasAuthorization = false
|
//});
|
|
foreach (var brand in brandList)
|
{
|
var row = new RowLayout()
|
{
|
Height = Application.GetRealHeight(87),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
LineColor = 0x00000000,
|
};
|
contentView.AddChidren(row);
|
|
Button btnLine = new Button()
|
{
|
Y = Application.GetRealWidth(86),
|
Gravity = Gravity.CenterHorizontal,
|
Width = Application.GetRealWidth(343),
|
Height = 1,
|
BackgroundColor = CSS_Color.DividingLineColor,
|
};
|
row.AddChidren(btnLine);
|
|
ImageView btnIcon = new ImageView()
|
{
|
X = Application.GetRealWidth(12),
|
Gravity = Gravity.CenterVertical,
|
Width = Application.GetRealWidth(47),
|
Height = Application.GetRealWidth(47),
|
Radius = (uint)Application.GetRealWidth(9),
|
BackgroundColor = CSS_Color.PromptingColor1
|
};
|
row.AddChidren(btnIcon);
|
|
Button btnBindTip = new Button()
|
{
|
Width = Application.GetRealWidth(326),
|
TextAlignment = TextAlignment.CenterRight,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = brand.hasAuthorization ? StringId.Bound : StringId.Unbound,
|
};
|
row.AddChidren(btnBindTip);
|
|
|
Button btnRight = new Button()
|
{
|
X = Application.GetRealWidth(339),
|
Gravity = Gravity.CenterVertical,
|
Width = Application.GetMinRealAverage(16),
|
Height = Application.GetMinRealAverage(16),
|
UnSelectedImagePath = "Public/Right.png",
|
};
|
row.AddChidren(btnRight);
|
|
Button btnName = new Button()
|
{
|
X = Application.GetRealWidth(83),
|
Width = Application.GetRealWidth(310),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.TextFontSize,
|
Text = brand.authBrandNameCn,
|
};
|
row.AddChidren(btnName);
|
//下载第三方品牌icon
|
ImageUtlis.Current.Load3tyBrandIconImages(brand.brandName, brand.authBrandIconUrl, btnIcon);
|
EventHandler<MouseEventArgs> eventHandler = (sender, e) => {
|
if (brand.hasAuthorization)
|
{
|
Action unboundAction = () =>
|
{
|
brand.hasAuthorization = false;
|
btnBindTip.TextID = StringId.Unbound;
|
};
|
var page = new Iot_BrandFunctionListPage(brand);
|
MainPage.BasePageView.AddChidren(page);
|
page.unboundAction = unboundAction;
|
page.LoadPage();
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
}
|
else
|
{
|
Action action = () => {
|
brand.hasAuthorization = true;
|
btnBindTip.TextID = StringId.Bound;
|
};
|
Action action2 = () => {
|
brand.hasAuthorization = false;
|
btnBindTip.TextID = StringId.Unbound;
|
};
|
var page = new iot_BindTipPage();
|
MainPage.BasePageView.AddChidren(page);
|
page.boundAction = action;
|
page.unboundAction = action2;
|
page.LoadPage(brand);
|
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
|
}
|
};
|
|
btnRight.MouseUpEventHandler = eventHandler;
|
row.MouseUpEventHandler = eventHandler;
|
btnName.MouseUpEventHandler = eventHandler;
|
btnBindTip.MouseUpEventHandler = eventHandler;
|
}
|
|
}
|
|
}
|
}
|