From 987933326b9620e29f7c4acac808ec3b8d958642 Mon Sep 17 00:00:00 2001
From: wjc <1243177876@qq.com>
Date: 星期三, 19 七月 2023 10:41:47 +0800
Subject: [PATCH] 2023年07月19日10:41:42
---
HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs | 218 ++++++++++++++++++++++++++++++++++++++++++++---------
1 files changed, 179 insertions(+), 39 deletions(-)
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs
index 2f90442..66a4f2a 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs
@@ -1,10 +1,12 @@
-锘縰sing System;
+锘�#if __Android__
+
+using System;
using HDL_ON.UI.CSS;
using Shared;
-using Com.Hdl.Hdllinphonesdk.Dialog;
using HDL_ON.DAL.Server;
using System.Collections.Generic;
using Com.Hdl.Hdllinphonesdk.Utils;
+using Com.Hdl.Hdllinphonesdk.Dialog;
namespace HDL_ON.UI.UI2.PersonalCenter.Visitor
{
@@ -17,31 +19,46 @@
private Button randomBtn;//闅忔満瀵嗙爜Btn
private FrameLayout codeLayout;
private ImageView codeIV;// 浜岀淮鐮�
+ private Button codeSaveTipBtn;
private Button codeTip;//浜岀淮鐮佹湁鏁堟湡鎻愮ず
private Button visitorVoucherBtn;
private VisitorTempPassword tempPassword;
+
+ Action backAction;// 鍚庨��鎸夐敭锛屽埛鏂癠I
public VisitorQRCodePage()
{
bodyView = this;
}
- public VisitorQRCodePage(VisitorTempPassword pwd)
+ public VisitorQRCodePage(Action action,VisitorTempPassword pwd)
{
bodyView = this;
this.tempPassword = pwd;
+ backAction = action;
+ }
+
+ public override void RemoveFromParent()
+ {
+ this.tempPassword = null;
+ backAction?.Invoke();
+ base.RemoveFromParent();
}
public void LoadPage()
{
- #region 椤堕儴瀵艰埅鏍�
- if (tempPassword == null)
+#region 椤堕儴瀵艰埅鏍�
+ if (tempPassword == null || tempPassword.id == null)
{
tempPassword = new VisitorTempPassword();
Action click = () =>
{
- VisitorHistoryPage page = new VisitorHistoryPage();
+ Action action = () =>
+ {
+ LoadPage();
+ };
+ VisitorHistoryPage page = new VisitorHistoryPage(action);
MainPage.BasePageView.AddChidren(page);
page.LoadPage();
MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
@@ -50,14 +67,13 @@
bodyView.BackgroundColor = CSS_Color.BackgroundColor;
new TopViewDiv(bodyView, Language.StringByID(StringId.VisitorInvitation))
.LoadTopView_SettingText(click, Language.StringByID(StringId.VisitorRecord));
-
}
else
{
bodyView.BackgroundColor = CSS_Color.BackgroundColor;
new TopViewDiv(bodyView, Language.StringByID(StringId.VisitorInvitation)).LoadTopView();
}
- #endregion
+#endregion
bodyScrolView = new VerticalScrolViewLayout()
{
@@ -79,7 +95,7 @@
Height = Application.GetRealHeight(60),
});
- #region 鎵嬫満鍙�
+#region 鎵嬫満鍙�
bodyScrolView.AddChidren(new Button()
{
Text = Language.StringByID(StringId.PhoneNumber),
@@ -98,12 +114,15 @@
Width = Application.GetRealWidth(335),
TextSize = CSS_FontSize.TextFontSize,
TextColor = CSS_Color.FirstLevelTitleColor,
+
PlaceholderText = Language.StringByID(StringId.InputPhoneNumberOfTheVisitor),
Text = tempPassword.phone,
IsNumberKeyboardType = true,
PlaceholderTextColor = CSS_Color.PromptingColor1,
};
bodyScrolView.AddChidren(phoneNumberEditText);
+ //phoneNumberEditText.Foucs = true;
+
// 鍒嗗壊绾�
bodyScrolView.AddChidren(new Button()
{
@@ -112,9 +131,9 @@
Height = Application.GetRealHeight(1),
BackgroundColor = CSS_Color.DividingLineColor,
});
- #endregion
+#endregion
- #region 鍔ㄦ�佸瘑鐮�
+#region 鍔ㄦ�佸瘑鐮�
bodyScrolView.AddChidren(new Button() { Height = Application.GetRealWidth(10), });
bodyScrolView.AddChidren(new Button()
{
@@ -139,7 +158,7 @@
TextColor = CSS_Color.FirstLevelTitleColor,
Width = Application.GetRealWidth(335),
PlaceholderText = Language.StringByID(StringId.Input6_DigitsTemporaryPassword),
- Text = tempPassword.tempPwd,
+ IsNumberKeyboardType = true,
PlaceholderTextColor = CSS_Color.PromptingColor1,
};
pwdLayout.AddChidren(pwdEditText);
@@ -156,11 +175,6 @@
};
pwdLayout.AddChidren(randomBtn);
bodyScrolView.AddChidren(pwdLayout);
- randomBtn.MouseUpEventHandler += (sender, e) =>
- {
- string tPwd = getRandomPwd();
- pwdEditText.Text = tPwd;
- };
// 鍒嗗壊绾�
bodyScrolView.AddChidren(new Button()
@@ -170,14 +184,13 @@
Height = Application.GetRealHeight(1),
BackgroundColor = CSS_Color.DividingLineColor,
});
- #endregion
+#endregion
- #region 浜岀淮鐮佺敓鏁堟椂闂�
+#region 浜岀淮鐮佺敓鏁堟椂闂�
FrameLayout startLayout = new FrameLayout()
{
Height = Application.GetRealHeight(40),
Y = Application.GetRealWidth(10),
- BackgroundColor = CSS_Color.BackgroundColor,
};
startLayout.AddChidren(new Button()
@@ -200,7 +213,7 @@
};
if (tempPassword.tempPwd == null || tempPassword.tempPwd == "")
{
- startTimeText.Text = System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
+ startTimeText.Text = "";// System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
}
else
{
@@ -222,7 +235,7 @@
// dialog鍥炶皟
Action<string> startTimeAction = (str) =>
{
- startTimeText.Text = str +":00";
+ startTimeText.Text = str + ":00";
};
startTimeBtn.MouseUpEventHandler += (sender, e) =>
{
@@ -245,9 +258,9 @@
BackgroundColor = CSS_Color.DividingLineColor,
});
- #endregion
+#endregion
- #region 浜岀淮鐮佸け鏁堟椂闂�
+#region 浜岀淮鐮佸け鏁堟椂闂�
FrameLayout endLayout = new FrameLayout()
{
Height = Application.GetRealHeight(40),
@@ -275,7 +288,7 @@
};
if (tempPassword.tempPwd == null || tempPassword.tempPwd == "")
{
- endTimeText.Text = System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
+ endTimeText.Text = "";// System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
}
else
{
@@ -318,9 +331,9 @@
string error = ex.Message;
}
};
- #endregion
+#endregion
- #region 浜岀淮鐮�
+#region 浜岀淮鐮�
bodyScrolView.AddChidren(new Button() { Height = Application.GetRealWidth(33), });
codeLayout = new FrameLayout()
{
@@ -338,7 +351,7 @@
codeLayout.AddChidren(codeIV);
bodyScrolView.AddChidren(new Button() { Height = Application.GetRealWidth(20), });
- bodyScrolView.AddChidren(new Button()
+ codeSaveTipBtn = new Button()
{
X = Application.GetRealWidth(16),
Width = Application.GetRealWidth(343),
@@ -346,8 +359,10 @@
Text = Language.StringByID(StringId.LongPressQRCodeSave),
TextAlignment = TextAlignment.Center,
TextColor = CSS_Color.FirstLevelTitleColor,
- });
- #endregion
+ Visible = false,
+ };
+ bodyScrolView.AddChidren(codeSaveTipBtn);
+#endregion
bodyScrolView.AddChidren(new Button() { Height = Application.GetRealWidth(28), });
visitorVoucherBtn = new Button()
@@ -363,7 +378,6 @@
};
bodyScrolView.AddChidren(visitorVoucherBtn);
- //
Action voucher_action = () =>
{
if (codeIV.ImageBytes == null)
@@ -385,10 +399,56 @@
};
visitorVoucherBtn.MouseUpEventHandler += (sender, e) =>
{
- if (phoneNumberEditText.Text == "" || pwdEditText.Text == "")
+ if (startTimeText.Text.Trim() == "")
{
+ var tip_dialog = new Tip()
+ {
+ Text = Language.StringByID(StringId.VisitorStartTime),
+ CloseTime = 2,
+ Direction = AMPopTipDirection.None
+ };
+ tip_dialog.Show(MainPage.BaseView);
return;
}
+
+ if (endTimeText.Text.Trim() == "")
+ {
+ var tip_dialog = new Tip()
+ {
+ Text = Language.StringByID(StringId.VisitorEndTime),
+ CloseTime = 2,
+ Direction = AMPopTipDirection.None
+ };
+ tip_dialog.Show(MainPage.BaseView);
+ return;
+ }
+
+ if (phoneNumberEditText.Text.Trim() == "" || phoneNumberEditText.Text.Trim().Length != 11)
+ {
+ var tip_dialog = new Tip()
+ {
+ Text = Language.StringByID(StringId.PhoneNumberErrorTip),
+ CloseTime = 2,
+ Direction = AMPopTipDirection.None
+ };
+ tip_dialog.Show(MainPage.BaseView);
+ phoneNumberEditText.Foucs = true;
+ return;
+ }
+
+ if (pwdEditText.Text.Trim() == "" || pwdEditText.Text.Trim().Length != 6)
+ {
+ var tip_dialog = new Tip()
+ {
+ Text = Language.StringByID(StringId.Input6_DigitsTemporaryPassword),
+ CloseTime = 2,
+ Direction = AMPopTipDirection.None
+ };
+ tip_dialog.Show(MainPage.BaseView);
+ pwdEditText.Foucs = true;
+ return;
+ }
+
string tip = "";
string message = "";
if (codeIV.ImageBytes == null)
@@ -420,11 +480,68 @@
{
msg = Language.StringByID(StringId.saveFail);
}
- EmptyTipView tipView = new EmptyTipView(msg, 160);
- tipView.Gravity = Gravity.CenterHorizontal;
- bodyView.AddChidren(tipView);
+
+ var tip_dialog = new Tip()
+ {
+ Text = msg,
+ CloseTime = 2,
+ Direction = AMPopTipDirection.None
+ };
+ tip_dialog.Show(MainPage.BaseView);
#endif
};
+
+ if (tempPassword != null && tempPassword.id != null && tempPassword.id != "")
+ {
+ pwdEditText.Text = tempPassword.tempPwd;
+ pwdEditText.PlaceholderText = Language.StringByID(StringId.TemporaryPasswordInvalid);
+ pwdEditText.Enable = false;
+ phoneNumberEditText.Enable = false;
+ randomBtn.Visible = false;
+ startTimeBtn.Enable = false;
+ endTimeBtn.Enable = false;
+ }
+ else
+ {
+ pwdEditText.FoucsChanged = (sender, e) =>
+ {
+ if (!pwdEditText.Foucs)
+ {
+ // 6浣嶅瘑鐮侀獙璇�
+ var tip_dialog = new Tip()
+ {
+ Text = Language.StringByID(StringId.Input6_DigitsTemporaryPassword),
+ CloseTime = 2,
+ Direction = AMPopTipDirection.None
+ };
+ tip_dialog.Show(MainPage.BaseView);
+ }
+ };
+
+ randomBtn.MouseUpEventHandler += (sender, e) =>
+ {
+ string tPwd = getRandomPwd();
+ pwdEditText.Text = tPwd;
+ };
+
+ phoneNumberEditText.FoucsChanged = (sender, e) =>
+ {
+ if (!phoneNumberEditText.Foucs)
+ {
+ //鎵嬫満鍙风爜閿欒鎻愮ず
+ if (!Utlis.CheckPhoneNumber(phoneNumberEditText.Text.Trim(), "86"))
+ {
+ var tip_dialog = new Tip()
+ {
+ Text = Language.StringByID(StringId.PhoneNumberErrorTip),
+ CloseTime = 2,
+ Direction = AMPopTipDirection.None
+ };
+ tip_dialog.Show(MainPage.BaseView);
+ }
+ }
+ };
+ }
RefreshVisitorVoucherBtn();
}
@@ -434,9 +551,11 @@
/// </summary>
private void RefreshVisitorVoucherBtn()
{
+ if (tempPassword == null) return;
+
if (tempPassword.tempPwd != null && tempPassword.tempPwd != "")
{
- codeIV.ImageBytes = Scan.BytesFromText(pwdEditText.Text, codeIV.Width, codeIV.Height);
+ codeIV.ImageBytes = Scan.BytesFromText(tempPassword.tempPwd, codeIV.Width, codeIV.Height);
//鍒ゆ柇浜岀淮鐮佹槸鍚﹀け鏁�
DateTime endTime = DateTime.Parse(tempPassword.validEndTime);
DateTime currentTime = DateTime.Now;
@@ -449,13 +568,15 @@
TextColor = CSS_Color.textWhiteColor,
BackgroundColor = CSS_Color.DialogTransparentColor1,
Text = Language.StringByID(StringId.QRcodeIsInvalid),
- };
+ };
codeLayout.AddChidren(codeTip);
+ visitorVoucherBtn.Visible = false;
}
visitorVoucherBtn.Text = Language.StringByID(StringId.CancleVisitorCredentials);
}
else
{
+ visitorVoucherBtn.Visible = true;
visitorVoucherBtn.Text = Language.StringByID(StringId.GenerateVisitorCredentials);
}
}
@@ -489,9 +610,19 @@
{
pwd.id = pack.Data.ToString();
codeIV.ImageBytes = Scan.BytesFromText(pwdEditText.Text, codeIV.Width, codeIV.Height);
+ codeSaveTipBtn.Visible = true;
+ RefreshVisitorVoucherBtn();
+ }
+ else {
+ var tip_dialog = new Tip()
+ {
+ Text = pack.message,
+ CloseTime = 2,
+ Direction = AMPopTipDirection.None
+ };
+ tip_dialog.Show(MainPage.BaseView);
}
}
- RefreshVisitorVoucherBtn();
return result;
}
@@ -535,4 +666,13 @@
return pwd;
}
}
-}
\ No newline at end of file
+}
+#else
+using Shared;
+
+namespace HDL_ON.UI.UI2.PersonalCenter.Visitor
+{
+ public class VisitorQRCodePage : FrameLayout
+ { }
+}
+#endif
\ No newline at end of file
--
Gitblit v1.8.0