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
|
{
|
public class ArmDeploymentSettingPage : FrameLayout
|
{
|
FrameLayout bodyView;
|
SecurityAlarm securityAlarm;
|
|
public ArmDeploymentSettingPage(SecurityAlarm alarm )
|
{
|
bodyView = this;
|
securityAlarm = alarm;
|
}
|
|
public void LoadPage()
|
{
|
new TopViewDiv(bodyView, Language.StringByID(StringId.Setting)).LoadTopView();
|
|
bodyView.BackgroundColor = CSS_Color.BackgroundColor;
|
|
VerticalScrolViewLayout contentView = new VerticalScrolViewLayout()
|
{
|
Y = Application.GetRealHeight(64),
|
Height = Application.GetRealHeight(667 - 64),
|
};
|
bodyView.AddChidren(contentView);
|
|
#region 布防信息
|
var deploymentTitleRow = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(44),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(deploymentTitleRow);
|
|
var btnDeploymentTitle = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
TextColor = CSS_Color.MainColor,
|
TextAlignment = TextAlignment.CenterLeft,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.DeploymentInformation,
|
IsBold = true,
|
};
|
deploymentTitleRow.AddChidren(btnDeploymentTitle);
|
|
deploymentTitleRow.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(43), Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
|
|
#region 布防名称
|
var deploymentNameRow = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(50),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(deploymentNameRow);
|
|
var btnDeploymentNameTitle = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Width = Application.GetRealWidth(72),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.TextFontSize,
|
TextID = StringId.Name,
|
};
|
deploymentNameRow.AddChidren(btnDeploymentNameTitle);
|
btnDeploymentNameTitle.Text += ":";
|
|
var btnDeploymentName = new Button()
|
{
|
X = Application.GetRealWidth(88),
|
Width = Application.GetRealWidth(230),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.TextualColor,
|
TextSize = CSS_FontSize.TextFontSize,
|
Text = securityAlarm.name
|
};
|
deploymentNameRow.AddChidren(btnDeploymentName);
|
deploymentNameRow.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(49), Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
|
|
LoadEvent_EditSecurityAlarmName(btnDeploymentName);
|
#endregion
|
|
#region 触发延时
|
//var delayedRow = new FrameLayout()
|
//{
|
// Height = Application.GetRealHeight(50),
|
// BackgroundColor = CSS_Color.MainBackgroundColor,
|
//};
|
//contentView.AddChidren(delayedRow);
|
|
//var btnDelayedTitle = new Button()
|
//{
|
// X = Application.GetRealWidth(16),
|
// Width = Application.GetRealWidth(72),
|
// TextAlignment = TextAlignment.CenterLeft,
|
// TextColor = CSS_Color.FirstLevelTitleColor,
|
// TextSize = CSS_FontSize.TextFontSize,
|
// TextID = StringId.Name,
|
//};
|
//delayedRow.AddChidren(btnDelayedTitle);
|
|
//var btnDelayedText = new Button()
|
//{
|
// X = Application.GetRealWidth(88),
|
// Width = Application.GetRealWidth(230),
|
// TextAlignment = TextAlignment.CenterLeft,
|
// TextColor = CSS_Color.TextualColor,
|
// TextSize = CSS_FontSize.TextFontSize,
|
// Text = securityAlarm.name
|
//};
|
//delayedRow.AddChidren(btnDelayedText);
|
|
//var btnDelayedRight = new Button()
|
//{
|
// X = Application.GetRealWidth(343),
|
// Gravity = Gravity.CenterVertical,
|
// Width = Application.GetMinRealAverage(16),
|
// Height = Application.GetMinRealAverage(16),
|
// UnSelectedImagePath = "Public/RightIcon.png",
|
//};
|
//delayedRow.AddChidren(btnDelayedRight);
|
|
////delayedRow.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(49), Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
|
//LoadEvent_EditSecurityAlarmName(btnDelayedTitle);
|
#endregion
|
|
#endregion
|
contentView.AddChidren(new Button() { Height = Application.GetRealHeight(8), BackgroundColor = CSS_Color.BackgroundColor });
|
|
#region 布防功能\报警状态
|
var deploymentFunctionRow = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(44),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(deploymentFunctionRow);
|
|
var btnFunctionTitle = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
TextColor = CSS_Color.MainColor,
|
TextAlignment = TextAlignment.CenterLeft,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.DefenseFunctionArmState,
|
IsBold = true,
|
};
|
deploymentFunctionRow.AddChidren(btnFunctionTitle);
|
|
var btnAddTarget = new Button()
|
{
|
X = Application.GetRealWidth(337),
|
Y = Application.GetRealHeight(6),
|
Width = Application.GetRealWidth(32),
|
Height = Application.GetRealWidth(32),
|
UnSelectedImagePath = "FunctionIcon/ArmCenter/AddTargetIcon.png",
|
};
|
deploymentFunctionRow.AddChidren(btnAddTarget);
|
|
deploymentFunctionRow.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(43), Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
|
|
var inputTargetView = new VerticalScrolViewLayout()
|
{
|
ScrollEnabled = false,
|
};
|
contentView.AddChidren(inputTargetView);
|
foreach (var target in securityAlarm.input)
|
{
|
inputTargetView.AddChidren(new InputRow(target.GetFunction().name, target.GetFunction().GetRoomListName()));
|
}
|
inputTargetView.Height = Application.GetRealHeight(65 * securityAlarm.input.Count);
|
|
#endregion
|
contentView.AddChidren(new Button() { Height = Application.GetRealHeight(8), BackgroundColor = CSS_Color.BackgroundColor });
|
|
|
#region 告警目标
|
var outputRow = new FrameLayout()
|
{
|
Height = Application.GetRealHeight(44),
|
BackgroundColor = CSS_Color.MainBackgroundColor,
|
};
|
contentView.AddChidren(outputRow);
|
|
var btnOutputRowTitle = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
TextColor = CSS_Color.MainColor,
|
TextAlignment = TextAlignment.CenterLeft,
|
TextSize = CSS_FontSize.SubheadingFontSize,
|
TextID = StringId.AlarmTargetAfterTriggering,
|
IsBold = true,
|
};
|
outputRow.AddChidren(btnOutputRowTitle);
|
|
var btnAddOutTarget = new Button()
|
{
|
X = Application.GetRealWidth(337),
|
Y = Application.GetRealHeight(6),
|
Width = Application.GetRealWidth(32),
|
Height = Application.GetRealWidth(32),
|
UnSelectedImagePath = "FunctionIcon/ArmCenter/AddTargetIcon.png",
|
};
|
outputRow.AddChidren(btnAddOutTarget);
|
outputRow.AddChidren(new Button() { Gravity = Gravity.CenterHorizontal, Y = Application.GetRealHeight(43), Height = 1, BackgroundColor = CSS_Color.DividingLineColor });
|
|
|
var outputTargetView = new VerticalScrolViewLayout()
|
{
|
ScrollEnabled = false,
|
};
|
contentView.AddChidren(outputTargetView);
|
foreach(var outTarget in securityAlarm.output)
|
{
|
inputTargetView.AddChidren(new OutputRow(outTarget.GetFunction().name, outTarget.GetFunction().GetRoomListName(),""));
|
}
|
outputTargetView.Height = Application.GetRealHeight(65 * securityAlarm.output.Count);
|
#endregion
|
|
}
|
|
/// <summary>
|
/// 修改安防名称
|
/// </summary>
|
void LoadEvent_EditSecurityAlarmName(Button btnDeploymentName)
|
{
|
EventHandler<MouseEventArgs> eventHandler = (sender, e) =>
|
{
|
Action<string> callBack = (str) =>
|
{
|
var waitPage = new Loading();
|
bodyView.AddChidren(waitPage);
|
waitPage.Start(Language.StringByID(StringId.PleaseWait));
|
new System.Threading.Thread(() =>
|
{
|
try
|
{
|
securityAlarm.name = str;
|
var responsePack = new HttpServerRequest().EditSecurity(new List<SecurityAlarm>() { securityAlarm});
|
|
if (responsePack.Code == StateCode.SUCCESS)
|
{
|
Application.RunOnMainThread(() =>
|
{
|
btnDeploymentName.Text = str;
|
});
|
}
|
else
|
{
|
IMessageCommon.Current.ShowErrorInfoAlter(responsePack.Code);
|
}
|
}
|
catch (Exception ex)
|
{
|
MainPage.Log($"update user name error : {ex.Message}");
|
}
|
finally
|
{
|
Application.RunOnMainThread(() =>
|
{
|
if (waitPage != null)
|
{
|
waitPage.RemoveFromParent();
|
waitPage = null;
|
}
|
});
|
}
|
})
|
{ IsBackground = true }.Start();
|
};
|
new PublicAssmebly().LoadDialog_EditParater(StringId.Name, securityAlarm.name, callBack, StringId.NameCannotBeEmpty, 0, new List<string>());
|
};
|
btnDeploymentName.MouseUpEventHandler = eventHandler;
|
}
|
|
|
}
|
|
/// <summary>
|
/// 输入条件行控件
|
/// </summary>
|
public class InputRow : RowLayout
|
{
|
Button btnTitle;
|
|
Button btnSubTitle;
|
|
public InputRow(string title,string subtitle)
|
{
|
this.LineColor = 0x00000000;
|
this.Height = Application.GetRealHeight(65);
|
this.BackgroundColor = CSS_Color.MainBackgroundColor;
|
|
btnTitle = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Height = Application.GetRealHeight(44),
|
Width = Application.GetRealWidth(320),
|
Text = title,
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.TextFontSize,
|
};
|
this.AddChidren(btnTitle);
|
|
btnSubTitle = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Y = Application.GetRealHeight(24),
|
Height = Application.GetRealHeight(44),
|
Width = Application.GetRealWidth(320),
|
Text = subtitle,
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
|
};
|
this.AddChidren(btnSubTitle);
|
|
}
|
|
public void SetClickEvent(EventHandler<MouseEventArgs> eventHandler)
|
{
|
this.MouseUpEventHandler = eventHandler;
|
btnTitle.MouseUpEventHandler = eventHandler;
|
btnSubTitle.MouseUpEventHandler = eventHandler;
|
}
|
}
|
|
/// <summary>
|
/// 输出条件控件
|
/// </summary>
|
public class OutputRow : RowLayout
|
{
|
Button btnTitle;
|
|
Button btnSubTitle;
|
|
Button btnState;
|
|
Button btnRightIcon;
|
|
public OutputRow(string title, string subtitle,string state)
|
{
|
this.LineColor = 0x00000000;
|
this.Height = Application.GetRealHeight(65);
|
this.BackgroundColor = CSS_Color.MainBackgroundColor;
|
|
btnTitle = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Height = Application.GetRealHeight(44),
|
Width = Application.GetRealWidth(320),
|
Text = title,
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.FirstLevelTitleColor,
|
TextSize = CSS_FontSize.TextFontSize,
|
};
|
this.AddChidren(btnTitle);
|
|
btnSubTitle = new Button()
|
{
|
X = Application.GetRealWidth(16),
|
Y = Application.GetRealHeight(24),
|
Height = Application.GetRealHeight(44),
|
Width = Application.GetRealWidth(320),
|
Text = subtitle,
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = CSS_Color.PromptingColor1,
|
TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
|
};
|
this.AddChidren(btnSubTitle);
|
|
btnState = new Button()
|
{
|
Width = Application.GetRealWidth(323),
|
TextAlignment = TextAlignment.CenterRight,
|
TextSize = CSS_FontSize.TextFontSize,
|
TextColor = CSS_Color.PromptingColor1,
|
Text = state
|
};
|
this.AddChidren(btnState);
|
|
btnRightIcon = new Button()
|
{
|
X = Application.GetRealWidth(339),
|
Gravity = Gravity.CenterHorizontal,
|
Width = Application.GetRealWidth(16),
|
Height = Application.GetRealWidth(16),
|
UnSelectedImagePath = "FunctionIcon/ArmCenter/RightIcon.png",
|
};
|
this.AddChidren(btnRightIcon);
|
}
|
|
public void SetClickEvent(EventHandler<MouseEventArgs> eventHandler)
|
{
|
btnState.MouseUpEventHandler = eventHandler;
|
btnTitle.MouseUpEventHandler = eventHandler;
|
btnSubTitle.MouseUpEventHandler = eventHandler;
|
}
|
}
|
}
|