using System;
|
using System.Collections.Generic;
|
using HDL_ON.DAL.Server;
|
using HDL_ON.DriverLayer;
|
using HDL_ON.Entity;
|
using HDL_ON.UI.CSS;
|
using Newtonsoft.Json.Linq;
|
using Shared;
|
|
namespace HDL_ON.UI
|
{
|
public partial class FunctionBaseInfoSetPage : FrameLayout
|
{
|
#region 控件列表
|
FrameLayout bodyView;
|
/// <summary>
|
/// 功能名称显示按钮
|
/// </summary>
|
Button btnFunctionName;
|
/// <summary>
|
/// 功能名称编辑按钮
|
/// </summary>
|
Button btnEditName;
|
/// <summary>
|
/// 位置信息显示按钮
|
/// </summary>
|
Button btnLocationValues;
|
/// <summary>
|
/// 位置信息跳转编辑按钮
|
/// </summary>
|
Button btnLocationInfoRight;
|
|
#endregion
|
|
#region 局部变量
|
Function function;
|
/// <summary>
|
/// 后退时,刷新之前界面的显示信息
|
/// </summary>
|
Action actionRefresh;
|
#endregion
|
|
public FunctionBaseInfoSetPage(Function func, Action action)
|
{
|
bodyView = this;
|
function = func;
|
actionRefresh = action;
|
}
|
|
public override void RemoveFromParent()
|
{
|
new System.Threading.Thread(() =>
|
{
|
Application.RunOnMainThread(() =>
|
{
|
actionRefresh?.Invoke();
|
});
|
})
|
{ IsBackground = true }.Start();
|
base.RemoveFromParent();
|
}
|
|
/// <summary>
|
/// 加载界面
|
/// </summary>
|
public void LoadPage(bool locationSetting = true)
|
{
|
bodyView.BackgroundColor = CSS_Color.BackgroundColor;
|
new TopViewDiv(bodyView, Language.StringByID(StringId.Setting)).LoadTopView(actionRefresh);
|
|
var contentView = new VerticalScrolViewLayout()
|
{
|
Y = Application.GetRealHeight(64),
|
Height = Application.GetRealHeight(600),
|
ScrollEnabled = false,
|
};
|
bodyView.AddChidren(contentView);
|
|
#region name view
|
var nameView = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(50),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(nameView);
|
|
var btnNameText = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(160),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.Name,
|
};
|
nameView.AddChidren(btnNameText);
|
|
btnFunctionName = new Button()
|
{
|
X = Application.GetRealWidth(86),
|
Width = Application.GetRealWidth(237),
|
TextAlignment = TextAlignment.CenterRight,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.TextFontSize,
|
Text = function.name,
|
};
|
nameView.AddChidren(btnFunctionName);
|
|
btnEditName = new Button()
|
{
|
X = Application.GetRealWidth(333),
|
Gravity = Gravity.CenterVertical,
|
Width = Application.GetMinRealAverage(28),
|
Height = Application.GetMinRealAverage(28),
|
UnSelectedImagePath = "Public/Edit.png",
|
};
|
nameView.AddChidren(btnEditName);
|
|
//nameView.AddChidren(
|
// new Button()
|
// {
|
// Gravity = Gravity.CenterHorizontal,
|
// Y = Application.GetRealHeight(49),
|
// BackgroundColor = CSS_Color.DividingLineColor,
|
// Width = Application.GetRealWidth(343),
|
// Height = Application.GetRealHeight(1)
|
// });
|
|
#endregion
|
if (locationSetting)
|
{
|
#region 位置管理
|
var locationMagtView = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(55),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(locationMagtView);
|
|
var btnLocationMagtTitle = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(160),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.LocationManagement,
|
};
|
locationMagtView.AddChidren(btnLocationMagtTitle);
|
|
btnLocationValues = new Button()
|
{
|
X = Application.GetRealWidth(86),
|
Width = Application.GetRealWidth(237),
|
TextAlignment = TextAlignment.CenterRight,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.TextFontSize,
|
Text = function.GetRoomListName(),
|
};
|
locationMagtView.AddChidren(btnLocationValues);
|
|
btnLocationInfoRight = new Button()
|
{
|
X = Application.GetRealWidth(339),
|
Gravity = Gravity.CenterVertical,
|
Width = Application.GetMinRealAverage(16),
|
Height = Application.GetMinRealAverage(16),
|
UnSelectedImagePath = "Public/RightIcon.png",
|
};
|
locationMagtView.AddChidren(btnLocationInfoRight);
|
|
locationMagtView.AddChidren(
|
new Button()
|
{
|
Gravity = Gravity.CenterHorizontal,
|
BackgroundColor = CSS_Color.DividingLineColor,
|
Width = Application.GetRealWidth(343),
|
Height = Application.GetRealHeight(1)
|
});
|
#endregion
|
}
|
#region 共享
|
//var sharedView = new FrameLayout()
|
//{
|
// Height = Application.GetRealHeight(55),
|
// BackgroundColor = CSS_Color.MainBackgroundColor,
|
//};
|
//contentView.AddChidren(sharedView);
|
|
//var btnSharedText = new Button()
|
//{
|
// X = Application.GetRealWidth(16),
|
// Width = Application.GetRealWidth(160),
|
// TextAlignment = TextAlignment.CenterLeft,
|
// TextColor = CSS_Color.FirstLevelTitleColor,
|
// TextSize = CSS_FontSize.SubheadingFontSize,
|
// TextID = StringId.Shared,
|
//};
|
//sharedView.AddChidren(btnSharedText);
|
|
//var btnSharedRight = new Button()
|
//{
|
// X = Application.GetRealWidth(339),
|
// Gravity = Gravity.CenterVertical,
|
// Width = Application.GetMinRealAverage(16),
|
// Height = Application.GetMinRealAverage(16),
|
// UnSelectedImagePath = "Public/RightIcon.png",
|
//};
|
//sharedView.AddChidren(btnSharedRight);
|
|
//sharedView.AddChidren(
|
// new Button()
|
// {
|
// Gravity = Gravity.CenterHorizontal,
|
// Y = Application.GetRealHeight(54),
|
// BackgroundColor = CSS_Color.DividingLineColor,
|
// Width = Application.GetRealWidth(343),
|
// Height = Application.GetRealHeight(1)
|
// });
|
#endregion
|
|
#if stage2
|
#region 添加到桌面
|
var addToDesktopView = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(55),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(addToDesktopView);
|
|
var btnAddToDesktopText = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(160),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.AddToDesktop,
|
};
|
addToDesktopView.AddChidren(btnAddToDesktopText);
|
|
var btnAddToDesktopRight = new Button()
|
{
|
X = Application.GetRealWidth(339),
|
Gravity = Gravity.CenterVertical,
|
Width = Application.GetMinRealAverage(16),
|
Height = Application.GetMinRealAverage(16),
|
UnSelectedImagePath = "Public/RightIcon.png",
|
};
|
addToDesktopView.AddChidren(btnAddToDesktopRight);
|
|
#endregion
|
#endif
|
|
if (function.spk == SPK.ElectricEnergy)
|
{
|
#region 能源数据
|
var energyView1 = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(55),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(energyView1);
|
|
var btnEnergyText1 = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(160),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.RealTimeEnergyConsumption,
|
};
|
energyView1.AddChidren(btnEnergyText1);
|
|
|
double realTimePower = 0;
|
double.TryParse(function.GetAttrState(FunctionAttributeKey.Power), out realTimePower);
|
realTimePower /= 1000;
|
|
var energyValue1 = new Button()
|
{
|
Width = Application.GetRealWidth(355),
|
TextAlignment = TextAlignment.CenterRight,
|
TextSize = CSS_FontSize.TextFontSize,
|
TextColor = CSS_Color.PromptingColor1,
|
Text = realTimePower + "kW",
|
};
|
energyView1.AddChidren(energyValue1);
|
|
energyView1.AddChidren(
|
new Button()
|
{
|
Gravity = Gravity.CenterHorizontal,
|
//Y = Application.GetRealHeight(54),
|
BackgroundColor = CSS_Color.DividingLineColor,
|
Width = Application.GetRealWidth(343),
|
Height = Application.GetRealHeight(1)
|
});
|
//-----------------
|
|
var energyView2 = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(55),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(energyView2);
|
|
var btnEnergyText2 = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(160),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.EnergyConsumptionOfThisMonth,
|
};
|
energyView2.AddChidren(btnEnergyText2);
|
|
var btnEnergyValue2 = new Button()
|
{
|
Width = Application.GetRealWidth(355),
|
TextAlignment = TextAlignment.CenterRight,
|
TextSize = CSS_FontSize.TextFontSize,
|
TextColor = CSS_Color.PromptingColor1,
|
Text = "--kW",
|
};
|
energyView2.AddChidren(btnEnergyValue2);
|
|
energyView2.AddChidren(
|
new Button()
|
{
|
Gravity = Gravity.CenterHorizontal,
|
Y = Application.GetRealHeight(54),
|
BackgroundColor = CSS_Color.DividingLineColor,
|
Width = Application.GetRealWidth(343),
|
Height = Application.GetRealHeight(1)
|
});
|
|
new System.Threading.Thread(() =>
|
{
|
var pm = new HttpServerRequest();
|
var data = pm.GetLastMonthHistory(function.deviceId, FunctionAttributeKey.TotalElectricity);
|
if (data != null)
|
{
|
if (data.Code == StateCode.SUCCESS)
|
{
|
var dataPack = Newtonsoft.Json.JsonConvert.DeserializeObject<JObject>(data.Data.ToString());
|
if (dataPack != null)
|
{
|
try
|
{
|
var dataValue = dataPack.GetValue("monthDiff").ToString();
|
if (!string.IsNullOrEmpty(dataValue))
|
{
|
Application.RunOnMainThread(() =>
|
{
|
btnEnergyValue2.Text = dataValue + "kW‧h";
|
});
|
}
|
}
|
catch
|
{
|
|
}
|
}
|
}
|
}
|
|
})
|
{ IsBackground = true }.Start();
|
|
#endregion
|
}
|
|
|
else if (function.spk == SPK.HvacCac)
|
{
|
|
|
#region 露点温度
|
if (function.GetAttribute(FunctionAttributeKey.dew_point_temp) != null)
|
{
|
contentView.AddChidren(new Button
|
{
|
Height = Application.GetRealHeight(10),
|
});
|
|
var row = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(55),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(row);
|
|
var btnText = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(260),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.DewPointTemp,
|
};
|
row.AddChidren(btnText);
|
|
var btnValue = new Button()
|
{
|
Width = Application.GetRealWidth(355),
|
TextAlignment = TextAlignment.CenterRight,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.TextFontSize,
|
Text = function.GetAttrState(FunctionAttributeKey.dew_point_temp) + "°C",
|
};
|
row.AddChidren(btnValue);
|
}
|
#endregion
|
|
|
#region 表面温度
|
if (function.GetAttribute(FunctionAttributeKey.surface_temp) != null)
|
{
|
contentView.AddChidren(new Button
|
{
|
Height = Application.GetRealHeight(10),
|
});
|
|
var surfaceTempRow = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(55),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(surfaceTempRow);
|
|
var btnSurfacaTempText = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(260),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.SurfaceTemperature,
|
};
|
surfaceTempRow.AddChidren(btnSurfacaTempText);
|
|
var btnSurfaceTempValue = new Button()
|
{
|
Width = Application.GetRealWidth(355),
|
TextAlignment = TextAlignment.CenterRight,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.TextFontSize,
|
Text = function.GetAttrState(FunctionAttributeKey.surface_temp) + "°C",
|
};
|
surfaceTempRow.AddChidren(btnSurfaceTempValue);
|
}
|
#endregion
|
|
|
#region 温度校准
|
if (function.GetAttribute(FunctionAttributeKey.room_temp_cc) != null)
|
{
|
contentView.AddChidren(new Button
|
{
|
Height = Application.GetRealHeight(10),
|
});
|
|
var tempCCrow = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(55),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(tempCCrow);
|
|
var btnTempCcText = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(260),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.TemperatureCalibration,
|
};
|
tempCCrow.AddChidren(btnTempCcText);
|
|
var btnTempCcValue = new Button()
|
{
|
Width = Application.GetRealWidth(335),
|
TextAlignment = TextAlignment.CenterRight,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.TextFontSize,
|
Text = function.GetAttrState(FunctionAttributeKey.room_temp_cc) + "°C",
|
};
|
tempCCrow.AddChidren(btnTempCcValue);
|
|
var btnRightTempCc = new Button()
|
{
|
X = Application.GetRealWidth(339),
|
Gravity = Gravity.CenterVertical,
|
Width = Application.GetMinRealAverage(16),
|
Height = Application.GetMinRealAverage(16),
|
UnSelectedImagePath = "Public/RightIcon.png",
|
};
|
tempCCrow.AddChidren(btnRightTempCc);
|
|
btnTempCcValue.MouseUpEventHandler = (sender, e) =>
|
{
|
LoadEditDialog(-10, 10, Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.room_humidity_cc)), (reslut) =>
|
{
|
btnTempCcValue.Text = reslut + "°C";
|
Dictionary<string, string> dic = new Dictionary<string, string>();
|
dic.Add(FunctionAttributeKey.room_temp_cc, reslut);
|
Control.Ins.SendWriteCommand(function, dic);
|
});
|
};
|
}
|
#endregion
|
|
|
#region 湿度校准
|
if (function.GetAttribute(FunctionAttributeKey.room_humidity_cc) != null)
|
{
|
contentView.AddChidren(new Button
|
{
|
Height = Application.GetRealHeight(10),
|
});
|
|
var humidityCCrow = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(55),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(humidityCCrow);
|
|
var btnHumidityCcText = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(260),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.HumidityCalibration,
|
};
|
humidityCCrow.AddChidren(btnHumidityCcText);
|
|
var btnHumidityCcValue = new Button()
|
{
|
Width = Application.GetRealWidth(335),
|
TextAlignment = TextAlignment.CenterRight,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.TextFontSize,
|
Text = function.GetAttrState(FunctionAttributeKey.room_humidity_cc) + "%",
|
};
|
humidityCCrow.AddChidren(btnHumidityCcValue);
|
|
|
var btnRightHumidityCc = new Button()
|
{
|
X = Application.GetRealWidth(339),
|
Gravity = Gravity.CenterVertical,
|
Width = Application.GetMinRealAverage(16),
|
Height = Application.GetMinRealAverage(16),
|
UnSelectedImagePath = "Public/RightIcon.png",
|
};
|
humidityCCrow.AddChidren(btnRightHumidityCc);
|
|
btnHumidityCcValue.MouseUpEventHandler = (sender, e) =>
|
{
|
LoadEditDialog(-20, 20, Convert.ToInt32(function.GetAttrState(FunctionAttributeKey.room_humidity_cc)), (reslut) =>
|
{
|
btnHumidityCcValue.Text = reslut + "%";
|
Dictionary<string, string> dic = new Dictionary<string, string>();
|
dic.Add(FunctionAttributeKey.room_humidity_cc, reslut);
|
Control.Ins.SendWriteCommand(function, dic);
|
});
|
};
|
|
}
|
#endregion
|
|
|
#region 毛细阀门
|
if (function.GetAttribute(FunctionAttributeKey.cac_valve) != null)
|
{
|
contentView.AddChidren(new Button
|
{
|
Height = Application.GetRealHeight(10),
|
});
|
|
var cacValveRow = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(55),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(cacValveRow);
|
|
var btnCacValveText = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(260),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.CapillaryValve,
|
};
|
cacValveRow.AddChidren(btnCacValveText);
|
|
var btnCacValvaValue = new Button()
|
{
|
Width = Application.GetRealWidth(355),
|
TextAlignment = TextAlignment.CenterRight,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.TextFontSize,
|
TextID = function.GetAttrState(FunctionAttributeKey.cac_valve) == "on"? StringId.On:StringId.OFF,
|
};
|
cacValveRow.AddChidren(btnCacValvaValue);
|
}
|
#endregion
|
|
#region 地暖阀门
|
if (function.GetAttribute(FunctionAttributeKey.fh_valve) != null)
|
{
|
contentView.AddChidren(new Button
|
{
|
Height = Application.GetRealHeight(10),
|
});
|
|
var fhValveRow = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(55),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(fhValveRow);
|
|
var btnFhValveText = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(260),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.FloorHeatingValve,
|
};
|
fhValveRow.AddChidren(btnFhValveText);
|
|
var btnFhValvaValue = new Button()
|
{
|
Width = Application.GetRealWidth(355),
|
TextAlignment = TextAlignment.CenterRight,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.TextFontSize,
|
TextID = function.GetAttrState(FunctionAttributeKey.fh_valve) == "on"? StringId.On:StringId.OFF,
|
};
|
fhValveRow.AddChidren(btnFhValvaValue);
|
}
|
#endregion
|
|
|
|
}
|
|
else if(function.spk == SPK.SenesorMegahealth || function.spk == SPK.SensorMmvPose)
|
{
|
contentView.AddChidren(new Button
|
{
|
Height = Application.GetRealHeight(8),
|
});
|
#region 推送开关
|
var viewRow0 = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(55),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(viewRow0);
|
|
|
var btnRowTitle0 = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(160),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.AlarmFunction,
|
};
|
viewRow0.AddChidren(btnRowTitle0);
|
|
var btnSwtichIcon0 = new Button()
|
{
|
X = Application.GetRealWidth(322),
|
Gravity = Gravity.CenterVertical,
|
Width = Application.GetMinRealAverage(36),
|
Height = Application.GetMinRealAverage(36),
|
UnSelectedImagePath = "Public/Switch_2.png",
|
SelectedImagePath = "Public/SwitchOn_2.png",
|
};
|
viewRow0.AddChidren(btnSwtichIcon0);
|
|
DeviceMessageRules deviceMessageRules = new DeviceMessageRules()
|
{
|
deviceId = function.deviceId
|
};
|
|
btnSwtichIcon0.MouseUpEventHandler = (sender, e) => {
|
var push = btnSwtichIcon0.IsSelected = !btnSwtichIcon0.IsSelected;
|
new System.Threading.Thread(() => {
|
var result = new HttpServerRequest().DeviceMessageRulesSet(function.deviceId, deviceMessageRules.conditionIdentify, push);//设置推送信息
|
Application.RunOnMainThread(() =>
|
{
|
if (result != null && result.Code == StateCode.SUCCESS)
|
{
|
deviceMessageRules.push = push;
|
}
|
else
|
{
|
btnSwtichIcon0.IsSelected = deviceMessageRules.push;
|
}
|
});
|
})
|
{ IsBackground = true }.Start();
|
};
|
|
|
Loading waitView = new Loading();
|
viewRow0.AddChidren(waitView);
|
new System.Threading.Thread(() => {
|
Application.RunOnMainThread(() => {
|
waitView.Start("");
|
});
|
var result = new HttpServerRequest().GetDeviceMessageRulesSet(function.deviceId);
|
//var result1 = new HttpServerRequest().DeviceMessageRulesSet(function.deviceId);//设置推送信息
|
Application.RunOnMainThread(() =>
|
{
|
if (result != null && result.Code == StateCode.SUCCESS && result.Data != null)
|
{
|
var data = Newtonsoft.Json.JsonConvert.DeserializeObject<List<DeviceMessageRules>>(result.Data.ToString());
|
if (data.Count > 0)
|
{
|
deviceMessageRules = data[0];
|
btnSwtichIcon0.IsSelected = deviceMessageRules.push;
|
}
|
}
|
else
|
{
|
btnSwtichIcon0.IsSelected = false;
|
}
|
waitView.Hide();
|
waitView.RemoveFromParent();
|
});
|
})
|
{ IsBackground = true }.Start();
|
|
viewRow0.AddChidren(new Button()
|
{
|
Gravity = Gravity.CenterHorizontal,
|
Y = Application.GetRealHeight(54),
|
BackgroundColor = CSS_Color.DividingLineColor,
|
Width = Application.GetRealWidth(343),
|
Height = Application.GetRealHeight(1)
|
});
|
#endregion
|
|
#region 演示模式
|
var viewRow = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(55),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(viewRow);
|
|
|
var btnRowTitle = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(160),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.LaboratoryMode,
|
};
|
viewRow.AddChidren(btnRowTitle);
|
|
var btnSwtichIcon = new Button()
|
{
|
X = Application.GetRealWidth(322),
|
Gravity = Gravity.CenterVertical,
|
Width = Application.GetMinRealAverage(36),
|
Height = Application.GetMinRealAverage(36),
|
UnSelectedImagePath = "Public/Switch_2.png",
|
SelectedImagePath = "Public/SwitchOn_2.png",
|
IsSelected = function.extSet.labModel
|
};
|
viewRow.AddChidren(btnSwtichIcon);
|
|
btnSwtichIcon.MouseUpEventHandler = (sender, e) =>
|
{
|
btnSwtichIcon.IsSelected = function.extSet.labModel = !btnSwtichIcon.IsSelected;
|
new System.Threading.Thread(() =>
|
{
|
var result = new HttpServerRequest().DeviceExtSet(function.deviceId, function.extSet);
|
Application.RunOnMainThread(() =>
|
{
|
if (result != null && result.Code == StateCode.SUCCESS)
|
{
|
if (Convert.ToBoolean( result.Data ))
|
{
|
function.extSet.labModel = btnSwtichIcon.IsSelected;
|
}
|
else
|
{
|
btnSwtichIcon.IsSelected = function.extSet.labModel = !btnSwtichIcon.IsSelected;
|
}
|
}
|
else
|
{
|
btnSwtichIcon.IsSelected = function.extSet.labModel = !btnSwtichIcon.IsSelected;
|
}
|
});
|
})
|
{ IsBackground = true }.Start();
|
};
|
|
#endregion
|
|
}
|
|
LoadEventList();
|
}
|
|
|
|
/// <summary>
|
/// 加载选择弹窗
|
/// </summary>
|
void LoadEditDialog(int min ,int max,int curValue,Action<string> action)
|
{
|
|
List<string> pickerItems = new List<string>();
|
|
Dialog dialog = new Dialog();
|
|
var pView = new FrameLayout()
|
{
|
BackgroundColor = CSS_Color.DialogTransparentColor1,
|
};
|
dialog.AddChidren(pView);
|
|
var optionBaseView = new FrameLayout()
|
{
|
Y = Application.GetRealHeight(456 - 60),
|
Gravity = Gravity.CenterHorizontal,
|
Width = Application.GetRealWidth(343),
|
Height = Application.GetRealHeight(260),
|
AnimateSpeed = 0.3f,
|
Animate = Animate.DownToUp,
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
Radius = (uint)Application.GetRealWidth(12),
|
};
|
pView.AddChidren(optionBaseView);
|
|
var topView = new FrameLayout()
|
{
|
Gravity = Gravity.CenterHorizontal,
|
Width = Application.GetRealWidth(343),
|
Height = Application.GetRealHeight(40),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
Radius = (uint)Application.GetRealWidth(12),
|
};
|
optionBaseView.AddChidren(topView);
|
topView.AddChidren(new Button() { Y = Application.GetRealHeight(39), Height = Application.GetRealHeight(1), BackgroundColor = CSS_Color.DividingLineColor });
|
|
var btnCancel = new Button()
|
{
|
X = Application.GetRealWidth(21),
|
Width = Application.GetRealWidth(100),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.TextFontSize,
|
TextID = StringId.Cancel,
|
};
|
topView.AddChidren(btnCancel);
|
|
var btnConfrim = new Button()
|
{
|
X = Application.GetRealWidth(160),
|
Width = Application.GetRealWidth(160),
|
TextAlignment = TextAlignment.CenterRight,
|
TextColor = CSS_Color.MainColor,
|
TextSize = CSS_FontSize.TextFontSize,
|
TextID = StringId.Confirm,
|
};
|
topView.AddChidren(btnConfrim);
|
|
UIPickerView uIPickerView = new UIPickerView()
|
{
|
Y = Application.GetRealHeight(40),
|
Height = Application.GetRealHeight(210),
|
Radius = (uint)Application.GetRealWidth(12),
|
};
|
for (int i = min; i <= max; i += 1)
|
{
|
pickerItems.Add(i.ToString());
|
}
|
uIPickerView.setNPicker(pickerItems, null, null);
|
optionBaseView.AddChidren(uIPickerView);
|
uIPickerView.setCurrentItems(pickerItems.IndexOf(curValue.ToString()), 4, 5);
|
|
string selectItem = pickerItems[0];
|
if (pickerItems.Contains(curValue.ToString()))
|
{
|
selectItem = curValue.ToString();
|
}
|
|
dialog.Show();
|
|
pView.MouseUpEventHandler = (sender, e) => {
|
dialog.Close();
|
};
|
|
btnCancel.MouseUpEventHandler = (sender, e) => {
|
dialog.Close();
|
};
|
uIPickerView.OnSelectChangeEvent = (int1, int2, int3) => {
|
selectItem = pickerItems[int1];
|
};
|
btnConfrim.MouseUpEventHandler = (sender, e) => {
|
dialog.Close();
|
action?.Invoke(selectItem);
|
};
|
|
}
|
|
|
|
}
|
}
|