using System;
using System.Collections.Generic;
using System.Text;
namespace Shared.Phone.UserCenter.Safety
{
///
/// 各防区的设置内容的菜单界面
///
public class GarrisonAreaSettionMenuForm : EditorCommonForm
{
#region ■ 变量声明___________________________
///
/// 防区ID
///
private int zoonID = 0;
///
/// 防区名字
///
private string SectorsName = string.Empty;
#endregion
#region ■ 初始化_____________________________
///
/// 画面显示(底层会固定调用此方法,借以完成画面创建)
///
/// 防区名字
/// 防区ID
public void ShowForm(string i_SectorsName, int i_zoonID)
{
this.zoonID = i_zoonID;
this.SectorsName = i_SectorsName;
//设置头部信息
base.SetTitleText(SectorsName);
//初始化中部信息
this.InitMiddleFrame();
}
///
/// 初始化中部信息
///
private void InitMiddleFrame()
{
//清空bodyFrame
this.ClearBodyFrame();
var listView = new VerticalListControl(29);
listView.Y = Application.GetRealHeight(-6);
listView.Height = zoonID == 3 ? Application.GetRealHeight(639) : Application.GetRealHeight(481);
listView.BackgroundColor = UserCenterColor.Current.White;
bodyFrameLayout.AddChidren(listView);
//初始化【传感器设置】行
var row1 = new FrameRowControl(listView.rowSpace / 2);
listView.AddChidren(row1);
row1.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uSensorSettion), 500);
row1.AddRightArrow();
row1.AddBottomLine();
row1.ButtonClickEvent += (sender, e) =>
{
var form = new GarrisonAreaExistSensorForm();
form.AddForm(this.SectorsName, this.zoonID);
};
//初始化【报警目标设置】行
var row2 = new FrameRowControl(listView.rowSpace / 2);
listView.AddChidren(row2);
row2.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uAlarmTargetSettion), 500);
row2.AddRightArrow();
row2.AddBottomLine();
row2.ButtonClickEvent += (sender, e) =>
{
var form = new AlarmTargetExistSettionForm();
form.AddForm(this.zoonID);
};
//出入防区的时候才显示
if (zoonID == 3)
{
//初始化【延时设置】行
var row3 = new FrameRowControl(listView.rowSpace / 2);
listView.AddChidren(row3);
row3.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uDelayedSettion), 500);
row3.AddRightArrow();
row3.AddBottomLine();
row3.ButtonClickEvent += (sender, e) =>
{
var form = new GarrisonAreaDelayedSettionForm();
form.AddForm();
};
}
//初始化【信息通知】的行
var row4 = new FrameRowControl(listView.rowSpace / 2);
row4.UseClickStatu = false;
listView.AddChidren(row4);
row4.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uInformationPush), 500);
//开关图标
var btnSwicth = row4.AddMostRightSwitchIcon();
btnSwicth.IsSelected = HdlSafeguardLogic.Current.GetGarrisonInformationPushStatu(this.zoonID) == 0;
btnSwicth.ButtonClickEvent += (sender, e) =>
{
//设置信息通知的状态
this.SetInformationPush(btnSwicth);
};
//初始化提示信息
this.InitTipControl();
}
#endregion
#region ■ 设置信息推送的状态_________________
///
/// 设置信息推送的状态
///
///
private async void SetInformationPush(MostRightIconControl btnswich)
{
//获取状态(取反)
int statu = btnswich.IsSelected == true ? 1 : 0;
//执行修改
var result = await HdlSafeguardLogic.Current.SetGarrisonInformationPushStatu(this.zoonID, statu);
if (result == false)
{
return;
}
btnswich.IsSelected = !btnswich.IsSelected;
}
#endregion
#region ■ 初始化提示信息_____________________
///
/// 初始化提示信息
///
private void InitTipControl()
{
var btnIcon = new IconViewControl(58);
btnIcon.Y = Application.GetRealHeight(1426);
btnIcon.UnSelectedImagePath = "Item/Tips.png";
bodyFrameLayout.AddChidren(btnIcon);
string msg = string.Empty;
//24小时防区
if (zoonID == 1)
{
//24小时防区不受布防、撤防影响{0}防区被触发立即报警{0}一般设置烟雾、燃气、水浸等传感器
msg = Language.StringByID(R.MyInternationalizationString.u24HourSectorsTipMsg);
}
//静音防区
else if (zoonID == 2)
{
//静音防区不受布防、撤防影响,防区被{0}触发立即报警,通常不产生声音或{0}其他提示,只发送信息到特定的接收者
msg = Language.StringByID(R.MyInternationalizationString.uMuteSectorsTipMsg);
}
//内部防区
else if (zoonID == 4)
{
//在离家布防模式下,内部防区传感器触发{0}立即报警。在在家布防模式下{0}内部防区所有传感器不参与报警
msg = Language.StringByID(R.MyInternationalizationString.uInteriorSectorsTipMsg);
}
//周界防区
else if (zoonID == 5)
{
//离家布防模式或在家布防模式下{0}周界防区传感器触发立即报警
msg = Language.StringByID(R.MyInternationalizationString.uPerimeterSectorsTipMsg);
}
//出入防区
else
{
//在布防后系统提供一定的延迟时间。出门时{0}外出延时结束后,系统触发目标报警{0}回家时,进入延时结束后,系统触发目标报警
msg = Language.StringByID(R.MyInternationalizationString.uInAndOutSectorsTipMsg);
}
var ArryMsg = msg.Split(new string[] { "{0}" }, StringSplitOptions.RemoveEmptyEntries);
int yy = Application.GetRealHeight(1428);
int firstXX = 0;
for (int i = 0; i < ArryMsg.Length; i++)
{
var btnTip = new NormalViewControl(100, 50, true);
btnTip.Y = yy;
btnTip.TextAlignment = TextAlignment.Center;
btnTip.TextColor = UserCenterColor.Current.TextGrayColor1;
btnTip.TextSize = 12;
btnTip.Text = ArryMsg[i];
btnTip.Width = btnTip.GetRealWidthByText();
btnTip.Gravity = Gravity.CenterHorizontal;
bodyFrameLayout.AddChidren(btnTip);
yy = btnTip.Bottom;
if (i == 0)
{
//记录第一条msg的X轴
firstXX = btnTip.X;
}
}
btnIcon.X = firstXX - Application.GetRealWidth(23) - btnIcon.Width;
}
#endregion
}
}