using System;
|
namespace Shared.SimpleControl.Phone
|
{
|
public class RemoteUnLockPasswordSetOrModify : FrameLayout
|
{
|
|
DoorLock doorLock;
|
public RemoteUnLockPasswordSetOrModify (DoorLock doorLock)
|
{
|
this.doorLock = doorLock;
|
BackgroundColor = SkinStyle.Current.MainColor;
|
}
|
|
/// <summary>
|
/// 读门锁时钟
|
/// </summary>
|
/// <param name="door_lock">Door lock.</param>
|
void readStatus (DoorLock door_lock)
|
{
|
System.Threading.Tasks.Task.Run (() => {
|
byte [] resultBytes = Control.ControlBytesSendHasReturn (Command.ReadDoorLockClock, door_lock.SubnetID, door_lock.DeviceID, new byte [] { door_lock.PhysicsLoopID });
|
IO.FileUtils.SaveEquipmentMessage (door_lock, door_lock.PhysicsLoopID.ToString ());
|
});
|
}
|
|
public void ShowShowUserRemoteUnLock ()
|
{
|
#region 标题
|
var topView = new FrameLayout () {
|
Y = Application.GetRealHeight (36),
|
Height = Application.GetRealHeight (90),
|
BackgroundColor = SkinStyle.Current.MainColor,
|
};
|
AddChidren (topView);
|
|
var title = new Button () {
|
TextAlignment = TextAlignment.Center,
|
TextID = R.MyInternationalizationString.RemoteUnLockPasswordSetOrModify,
|
TextColor = SkinStyle.Current.TextColor1,
|
TextSize = 19,
|
};
|
topView.AddChidren (title);
|
|
var logo = new Button () {
|
Width = Application.GetRealWidth (154),
|
Height = Application.GetRealHeight (90),
|
X = Application.GetRealWidth (486),
|
UnSelectedImagePath = MainPage.LogoString,
|
Gravity = Gravity.CenterVertical,
|
};
|
topView.AddChidren (logo);
|
var back = new Button () {
|
Height = Application.GetRealHeight (90),
|
Width = Application.GetRealWidth (85),
|
UnSelectedImagePath = "Item/Back.png",
|
SelectedImagePath = "Item/BackSelected.png",
|
Gravity = Gravity.CenterVertical,
|
};
|
topView.AddChidren (back);
|
back.MouseUpEventHandler += (sender, e) => {
|
this.RemoveFromParent ();
|
};
|
#endregion
|
|
#region bodyScrolView
|
VerticalScrolViewLayout bodyFrameLayout = new VerticalScrolViewLayout () {
|
Height = Application.GetRealHeight (Application.DesignHeight - 126),
|
BackgroundColor = SkinStyle.Current.ViewColor,
|
Y = topView.Bottom,
|
};
|
AddChidren (bodyFrameLayout);
|
|
for (int i = 0; i < 2; i++) {
|
|
FrameLayout RowView = new FrameLayout () {
|
Height = Application.GetRealHeight (110),
|
BackgroundColor = SkinStyle.Current.ViewColor,
|
};
|
bodyFrameLayout.AddChidren (RowView);
|
|
Button btnIcon = new Button () {
|
Width = Application.GetRealHeight (13),
|
Height = Application.GetRealHeight (13),
|
X = Application.GetRealWidth (40),
|
UnSelectedImagePath = "Item/Point.png",
|
SelectedImagePath = "Item/PointSelected.png",
|
Gravity = Gravity.CenterVertical,
|
};
|
RowView.AddChidren (btnIcon);
|
|
Button UserManagement = new Button () {
|
X = btnIcon.Right + Application.GetRealWidth (20),
|
Width = Application.GetRealWidth (300),
|
Height = Application.GetRealHeight (110),
|
TextAlignment = TextAlignment.CenterLeft,
|
TextColor = SkinStyle.Current.TextColor1,
|
};
|
RowView.AddChidren (UserManagement);
|
if (i == 0) {
|
UserManagement.TextID = R.MyInternationalizationString.ResetPassword;
|
} else if (i == 1) {
|
UserManagement.TextID = R.MyInternationalizationString.SetPassword;
|
}
|
|
var btnRight = new Button () {
|
Width = Application.GetRealWidth (28),
|
Height = Application.GetRealHeight (40),
|
X = UserManagement.Right + Application.GetRealWidth (200),
|
UnSelectedImagePath = "Item/Right.png",
|
SelectedImagePath = "Item/RightSelected.png",
|
Gravity = Gravity.CenterVertical,
|
};
|
RowView.AddChidren (btnRight);
|
|
var line2 = new Button () {
|
Y = RowView.Height - 1,
|
Height = 1,
|
BackgroundColor = SkinStyle.Current.TitileView,
|
};
|
RowView.AddChidren (line2);
|
|
int currentIndex = i;
|
EventHandler<MouseEventArgs> eHandler = (sender, e) => {
|
if (currentIndex == 0) {
|
if (doorLock.GetDoorLockPassword () != null) {
|
this.RemoveFromParent ();
|
RemoteUnLockPasswordReset unlockView = new RemoteUnLockPasswordReset (doorLock);
|
UserMiddle.DevicePageView.AddChidren (unlockView);
|
unlockView.showRemoteUnLockPasswordReset ();
|
UserMiddle.DevicePageView.PageIndex = UserMiddle.DevicePageView.ChildrenCount - 1;
|
} else {
|
new Tip () { MaxWidth = 150, Text = Language.StringByID (R.MyInternationalizationString.NoPassword), Direction = AMPopTipDirection.Down, CloseTime = 2 }.Show ((View)sender);
|
}
|
} else if (currentIndex == 1) {
|
if (doorLock.GetDoorLockPassword () == null) {
|
this.RemoveFromParent ();
|
RemoteUnlockPasswordSet unlockView = new RemoteUnlockPasswordSet (doorLock);
|
UserMiddle.DevicePageView.AddChidren (unlockView);
|
unlockView.ShowDoorLockRemoteSetPassword ();
|
UserMiddle.DevicePageView.PageIndex = UserMiddle.DevicePageView.ChildrenCount - 1;
|
} else {
|
new Tip () { MaxWidth = 150, Text = Language.StringByID (R.MyInternationalizationString.RemoteUnLockPasswordExist), Direction = AMPopTipDirection.Down, CloseTime = 2 }.Show ((View)sender);
|
|
}
|
}
|
};
|
btnRight.MouseUpEventHandler += eHandler;
|
btnIcon.MouseUpEventHandler += eHandler;
|
RowView.MouseUpEventHandler += eHandler;
|
UserManagement.MouseUpEventHandler += eHandler;
|
if (doorLock.GetDoorLockPassword () != null) {
|
i++;
|
}
|
}
|
#endregion
|
}
|
|
void ResetPassword ()
|
{
|
Dialog dialog = new Dialog ();
|
var dialogBodyView = new FrameLayout () {
|
Width = Application.GetRealWidth (400),
|
Height = Application.GetRealHeight (402),
|
//BackgroundColor = SkinStyle.Current.DialogColor,
|
BackgroundColor = 0xff000000,
|
Radius = 5,
|
BorderColor = SkinStyle.Current.Transparent,
|
BorderWidth = 0,
|
Gravity = Gravity.Center
|
};
|
dialog.AddChidren (dialogBodyView);
|
|
var btnTitle = new Button () {
|
Height = Application.GetRealHeight (80),
|
BackgroundColor = SkinStyle.Current.DialogTitle,
|
TextAlignment = TextAlignment.Center,
|
TextID = R.MyInternationalizationString.ResetPassword,
|
};
|
dialogBodyView.AddChidren (btnTitle);
|
|
var oldPassword = new EditText () {
|
X = Application.GetRealWidth (30),
|
Y = btnTitle.Bottom + Application.GetRealHeight (25),
|
Height = Application.GetRealHeight (85),
|
Width = Application.GetRealWidth (340),
|
Gravity = Gravity.CenterHorizontal,
|
TextSize = 15,
|
UnSelectedImagePath = "Register/Register_Password_kuang.png",
|
PlaceholderText = Language.StringByID (R.MyInternationalizationString.PleaseEnterOldPassword),
|
PlaceholderTextColor = SkinStyle.Current.PlaceholderTextColor,
|
TextAlignment = TextAlignment.Center,
|
Radius = (uint)Application.GetRealHeight (0),
|
TextColor = SkinStyle.Current.TextColor1,
|
};
|
dialogBodyView.AddChidren (oldPassword);
|
|
var newPassword = new EditText () {
|
X = Application.GetRealWidth (30),
|
Y = oldPassword.Bottom + Application.GetRealHeight (25),
|
Height = Application.GetRealHeight (85),
|
Width = Application.GetRealWidth (340),
|
TextSize = 15,
|
Gravity = Gravity.CenterHorizontal,
|
UnSelectedImagePath = "Register/Register_Password_kuang.png",
|
PlaceholderText = Language.StringByID (R.MyInternationalizationString.NewPassword),
|
PlaceholderTextColor = SkinStyle.Current.PlaceholderTextColor,
|
TextAlignment = TextAlignment.Center,
|
Radius = (uint)Application.GetRealHeight (0),
|
TextColor = SkinStyle.Current.TextColor1,
|
};
|
dialogBodyView.AddChidren (newPassword);
|
|
var bottomView = new FrameLayout () {
|
Y = dialogBodyView.Height - Application.GetRealHeight (80),
|
Height = Application.GetRealHeight (80),
|
BackgroundColor = SkinStyle.Current.DialogTitle,
|
};
|
dialogBodyView.AddChidren (bottomView);
|
|
var btnBack = new Button () {
|
Width = Application.GetRealWidth (119),
|
UnSelectedImagePath = "Item/PositioningDialogBack.png",
|
SelectedImagePath = "Item/PositioningDialogBack.png",
|
};
|
bottomView.AddChidren (btnBack);
|
btnBack.MouseUpEventHandler += (sender1, e1) => {
|
dialog.Close ();
|
};
|
var btnLineH = new Button () {
|
Width = 1,
|
Height = LayoutParams.MatchParent,
|
BackgroundColor = SkinStyle.Current.White20Transparent,
|
X = btnBack.Right,
|
};
|
bottomView.AddChidren (btnLineH);
|
|
Button btnSave = new Button () {
|
Width = Application.GetRealWidth (280),
|
X = btnLineH.Right,
|
TextID = R.MyInternationalizationString.SAVE,
|
TextAlignment = TextAlignment.Center,
|
Radius = 1,
|
};
|
bottomView.AddChidren (btnSave);
|
btnSave.MouseUpEventHandler += (sender, e) => {
|
if (oldPassword.Text != doorLock.GetDoorLockPassword ()) {
|
new Tip () { MaxWidth = 150, Text = Language.StringByID (R.MyInternationalizationString.OldPasswordIsError), Direction = AMPopTipDirection.Down, CloseTime = 2 }.Show ((View)sender);
|
return;
|
}
|
|
if (string.IsNullOrEmpty (newPassword.Text.Trim ())) {
|
new Tip () { MaxWidth = 150, Text = Language.StringByID (R.MyInternationalizationString.NewPasswordIsEmpty), Direction = AMPopTipDirection.Down, CloseTime = 2 }.Show ((View)sender);
|
return;
|
}
|
|
//if (newPassword.Text.Trim ().Length != 6) {
|
// new Tip () { MaxWidth = 150, Text = Language.StringByID (R.MyInternationalizationString.PasswordNotFormedFromSixDigitalCodes), Direction = AMPopTipDirection.Down, CloseTime = 4 }.Show ((View)sender);
|
// return;
|
//}
|
|
//string SuID = newPassword.Text;
|
//Regex reg = new Regex ("^[0-9]+$"); //判断是不是数据,要不是就表示没有选择,则从隐藏域里读出来
|
//Match ma = reg.Match (SuID);
|
//if (ma.Success) {
|
// //是数字时的操作
|
//} else {
|
// new Tip () { MaxWidth = 150, Text = Language.StringByID (R.MyInternationalizationString.PasswordNotFormedFromSixDigitalCodes), Direction = AMPopTipDirection.Down, CloseTime = 4 }.Show ((View)sender);
|
// return;
|
//}
|
|
doorLock.AddDoorLockPassword (newPassword.Text.Trim ());
|
dialog.Close ();
|
};
|
dialog.Show ();
|
}
|
}
|
}
|