From 49efa3357155ea569282d8e5a4883c5dd28a545a Mon Sep 17 00:00:00 2001
From: lss <lsc@hdlchina.com.cn>
Date: 星期五, 10 六月 2022 16:55:38 +0800
Subject: [PATCH] 2022-6-10 送测

---
 HDL-ON_Android/Assets/Language.ini                           |   52 ++++++++++
 HDL_ON/Common/R.cs                                           |  108 ++++++++++++++++----
 HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs  |   97 ++++++++++++++-----
 HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorHistoryPage.cs |    8 
 4 files changed, 209 insertions(+), 56 deletions(-)

diff --git a/HDL-ON_Android/Assets/Language.ini b/HDL-ON_Android/Assets/Language.ini
index a48482d..8f1e0e0 100644
--- a/HDL-ON_Android/Assets/Language.ini
+++ b/HDL-ON_Android/Assets/Language.ini
@@ -518,6 +518,22 @@
 530=In order to prevent the wrong touch and click of opening and closing the door and ensure family safety, please enter your door lock password.
 531=Password free unlocking within five minutes
 532=The device is offline and cannot be operated temporarily
+533=Visitor management
+534=Visitor Invitation
+535=Record
+536=*After you initiate the visitor certificate, you can  unlock the door by password or swipe the code  freely within the validity period you set. Please share the certificate carefully.
+537=Input phone number of the visitor
+538=Input 6-digits temporary password
+539=Random Generation
+540=After confirmation, the visitor QR code will be generated, and the 6-digit dynamic digital password SMS will also be sent to the visitor mobile phone.
+541=Are you sure to delete visitor credentials?
+542=Long press the QR code to save the QR code to the album
+543=QR code is invalid
+544=Generate Visitor Credentials
+545=Cancle Visitor Credentials
+546=Visitor QR Code
+547=Phone Number
+548=Please enter a correct phone number
 
 
 1000=Room Humidity
@@ -1660,6 +1676,25 @@
 531=浜斿垎閽熷唴鍏嶅瘑鐮佸紑閿�
 532=璁惧绂荤嚎涓紝鏆傛椂鏃犳硶鎿嶄綔
 533=璁垮绠$悊
+534=璁垮閭�璇�
+535=璁垮璁板綍
+536=*鎮ㄥ彂璧疯瀹㈠嚟璇佸悗锛岃鍑瘉灏嗗湪鎮ㄨ缃殑鏈夋晥鏈熷唴锛屽彲鑷敱鍒风爜鎴栧瘑鐮佸紑閿佽繘琛岃繘鍑猴紝璇疯皑鎱庡垎浜鍑瘉銆�
+537=杈撳叆璁垮鎵嬫満鍙风爜
+538=杈撳叆6浣嶅姩鎬佸瘑鐮�
+539=闅忔満鐢熸垚
+
+540=纭鍚庯紝浼氱敓鎴愯瀹簩缁寸爜锛屽悓鏃朵篃浼氬皢6浣嶅姩鎬佹暟瀛楀瘑鐮佺煭淇″彂閫佸埌璁垮鎵嬫満涓娿��
+541=纭畾鍒犻櫎璁垮鍑瘉锛�
+
+542=闀挎寜浜岀淮鐮佸彲浠ュ皢浜岀淮鐮佷繚瀛樺埌鐩稿唽
+543=浜岀淮鐮佸凡澶辨晥
+544=鐢熸垚璁垮鍑瘉
+545=鍙栨秷璁垮鍑瘉
+546=璁垮浜岀淮鐮�
+547=鎵嬫満鍙�
+548=璇疯緭鍏ユ纭殑鎵嬫満鍙风爜
+
+
 
 1000=瀹ゅ唴婀垮害
 1001=绔ラ攣
@@ -2782,7 +2817,22 @@
 530=In order to prevent the wrong touch and click of opening and closing the door and ensure family safety, please enter your door lock password.
 531=Password free unlocking within five minutes
 532=The device is offline and cannot be operated temporarily
-
+533=Visitor management
+534=Visitor Invitation
+535=Record
+536=*After you initiate the visitor certificate, you can  unlock the door by password or swipe the code  freely within the validity period you set. Please share the certificate carefully.
+537=Input phone number of the visitor
+538=Input 6-digits temporary password
+539=Random Generation
+540=After confirmation, the visitor QR code will be generated, and the 6-digit dynamic digital password SMS will also be sent to the visitor mobile phone.
+541=Are you sure to delete visitor credentials?
+542=Long press the QR code to save the QR code to the album
+543=QR code is invalid
+544=Generate Visitor Credentials
+545=Cancle Visitor Credentials
+546=Visitor QR Code
+547=Phone Number
+548=Please enter a correct phone number
 
 
 1000=袙谢邪卸薪芯褋褌褜 胁 袩芯屑械褖械薪懈懈
diff --git a/HDL_ON/Common/R.cs b/HDL_ON/Common/R.cs
index b290247..7e0e5a5 100644
--- a/HDL_ON/Common/R.cs
+++ b/HDL_ON/Common/R.cs
@@ -5,6 +5,66 @@
     public static class StringId
     {
         /// <summary>
+        /// 鎵嬫満鍙�
+        /// </summary>
+        public const int PhoneNumberErrorTip = 548;
+        /// <summary>
+        /// 鎵嬫満鍙�
+        /// </summary>
+        public const int PhoneNumber = 547;
+        /// <summary>
+        /// 璁垮浜岀淮鐮�
+        /// </summary>
+        public const int VisitorQRCode = 546;
+        /// <summary>
+        /// 鍙栨秷璁垮鍑瘉
+        /// </summary>
+        public const int CancleVisitorCredentials = 545;
+        /// <summary>
+        /// 鐢熸垚璁垮鍑瘉
+        /// </summary>
+        public const int GenerateVisitorCredentials = 544;
+        /// <summary>
+        /// 浜岀淮鐮佸凡澶辨晥
+        /// </summary>
+        public const int QRcodeIsInvalid = 543;
+        /// <summary>
+        /// 闀挎寜浜岀淮鐮佸彲浠ュ皢浜岀淮鐮佷繚瀛樺埌鐩稿唽
+        /// </summary>
+        public const int LongPressQRCodeSave = 542;
+        /// <summary>
+        /// 澶辨晥鏃堕棿
+        /// </summary>
+        public const int VisitorDelTipContent = 541;
+        /// <summary>
+        /// 澶辨晥鏃堕棿
+        /// </summary>
+        public const int VisitorTipContent = 540;
+        /// <summary>
+        /// 闅忔満鐢熸垚
+        /// </summary>
+        public const int RandomGeneration = 539;
+        /// <summary>
+        /// 杈撳叆6浣嶅姩鎬佸瘑鐮�
+        /// </summary>
+        public const int Input6_DigitsTemporaryPassword = 538;
+        /// <summary>
+        /// 杈撳叆璁垮鎵嬫満鍙风爜
+        /// </summary>
+        public const int InputPhoneNumberOfTheVisitor = 537;
+        /// <summary>
+        /// 鎮ㄥ彂璧疯瀹㈠嚟璇佸悗锛岃鍑瘉灏嗗湪鎮ㄨ缃殑鏈夋晥鏈熷唴锛屽彲鑷敱鍒风爜鎴栧瘑鐮佸紑閿佽繘琛岃繘鍑猴紝璇疯皑鎱庡垎浜鍑瘉
+        /// </summary>
+        public const int VisitorTip = 536;
+        /// <summary>
+        /// 璁垮璁板綍
+        /// </summary>
+        public const int VisitorRecord = 535;
+        /// <summary>
+        /// 璁垮閭�璇�
+        /// </summary>
+        public const int VisitorInvitation = 534;
+        /// <summary>
         /// 璁垮绠$悊
         /// </summary>
         public const int VisitorManage = 533;
@@ -260,7 +320,7 @@
         /// <summary>
         /// 闃叉姢涓�
         /// </summary>
-        public const int UnderProtection=470;
+        public const int UnderProtection = 470;
         /// <summary>
         /// 鏈変汉杩涘叆
         /// </summary>
@@ -304,7 +364,7 @@
         /// <summary>
         /// 瀹炴椂鑳借��
         /// </summary>
-        public const int RealTimeEnergyConsumption=459;
+        public const int RealTimeEnergyConsumption = 459;
         /// <summary>
         /// 鏃ユ湡
         /// </summary>
@@ -504,7 +564,7 @@
         public const int VerificationCodePrompt = 274;
         public const int ChangeTheVerificationMethod = 273;
         public const int ModifyBindingEmail = 272;
-        public const int CurrentEmail =271;
+        public const int CurrentEmail = 271;
         public const int Unbind = 270;
         public const int ModifyBinding = 269;
         public const int EmailAddress = 268;
@@ -526,14 +586,14 @@
         public const int SavedSuccessfully = 252;
         public const int AddFailedInsufficientPermissions = 251;
         public const int OperationFailed = 250;
-        public const int MemberAccountHasBeenAddedAndCannotBeAddedAgain =249;
+        public const int MemberAccountHasBeenAddedAndCannotBeAddedAgain = 249;
         public const int ThisHomeDoesNotExistForTheUser = 248;
         public const int FailedToAddUnableToAddYourself = 247;
         public const int FailedToAddTheMemberAccountIsNotRegistered = 246;
         public const int DataExceptionPleaseTryAgain = 245;
         public const int MemberAddedSuccessfully = 244;
         public const int AccountErrorPlsC = 243;
-        public const int ConfirmInvitation =242;
+        public const int ConfirmInvitation = 242;
         public const int ScanQRCoden = 241;
         public const int NewMemberAccount = 240;
         public const int AddMember = 239;
@@ -629,7 +689,7 @@
         public const int AtStartup = 149;
         public const int Unprotected = 148;
         public const int VerificationCodeError = 147;
-        public const int MultipleChoicesOfPagesYouNeedToProtect= 146;
+        public const int MultipleChoicesOfPagesYouNeedToProtect = 146;
         public const int PleaseSelectThePageToBeUnlocked = 145;
         public const int UesrName = 144;
         public const int UesrNameCannotBeEmpty = 143;
@@ -681,7 +741,7 @@
         public const int DefaultGallery = 97;
         public const int DeleteRoom = 96;
         public const int Save = 95;
-        public const int FunctionManagement=94;
+        public const int FunctionManagement = 94;
         public const int Floor = 93;
         public const int RoomName = 92;
 
@@ -698,7 +758,7 @@
         public const int DelFloorTip = 88;
         public const int Tip = 87;
         public const int Del = 86;
-        public const int Scenes=85;
+        public const int Scenes = 85;
         public const int AddFloorFailed_FloorAlreadyExist = 84;
         public const int EditFloorName = 83;
         public const int AddFloors = 82;
@@ -736,12 +796,12 @@
         public const int BoundMobileInfo = 50;
         public const int MyQRcode = 49;
         public const int Name = 48;
-        public const int PersonalCenter=47;
+        public const int PersonalCenter = 47;
         public const int InvalidLoginCertificate = 46;
         public const int AccountNotExist = 45;
         public const int ConfirmReset = 44;
         public const int RegistrationFailedPleaseTryAgain = 43;
-        public const int NetworkAnomaly=42;
+        public const int NetworkAnomaly = 42;
         public const int FailedToSendVerificationCode = 41;
         public const int LoginFailed_AccountOrPasswordError = 40;
         public const int Personal = 39;
@@ -762,7 +822,7 @@
         public const int PlsEntryCorrectEmailAddress = 24;
         public const int VerificationCodeWrong = 23;
         public const int AccountAlreadyUse = 22;
-        public const int PasswordIsUnqualified=21;
+        public const int PasswordIsUnqualified = 21;
         public const int IncorrectRepeatPassword = 20;
         public const int PlsEntryCorrectMobilNeumber = 19;
         public const int PlsEntryVerificationCode = 18;
@@ -1773,7 +1833,7 @@
         /// <summary>
         /// 鍦ㄧ嚎
         /// </summary>
-        public const int zaixianhwb= 6015;
+        public const int zaixianhwb = 6015;
         /// <summary>
         /// 绂荤嚎
         /// </summary>
@@ -1801,7 +1861,7 @@
         /// <summary>
         /// 涓嬩竴姝�
         /// </summary>
-        public const int xiayibu= 6022;
+        public const int xiayibu = 6022;
         /// <summary>
         /// 鐢垫簮
         /// </summary>
@@ -2029,7 +2089,7 @@
         /// <summary>
         /// 閫夋嫨绾㈠鍝佺墝
         /// </summary>
-        public const int xuanzehongwaipinpai= 6081;
+        public const int xuanzehongwaipinpai = 6081;
         /// <summary>
         /// 鎽囧ご
         /// </summary>
@@ -2306,11 +2366,11 @@
         /// <summary>
         /// 鏆傚仠
         /// </summary>
-        public const int stop= 7054;
+        public const int stop = 7054;
         /// <summary>
         /// 浜害
         /// </summary>
-        public const int brightnesLogic= 7055;
+        public const int brightnesLogic = 7055;
         /// <summary>
         /// 鐧惧垎姣�
         /// </summary>
@@ -2322,7 +2382,7 @@
         /// <summary>
         /// 鍒跺喎
         /// </summary>
-        public const int coolLogic= 7058;
+        public const int coolLogic = 7058;
         /// <summary>
         /// 鍒剁儹
         /// </summary>
@@ -2438,7 +2498,7 @@
         /// <summary>
         /// 瀹ゅ鍙樺寲
         /// </summary>
-        public const int shiwaibainhua=7087;
+        public const int shiwaibainhua = 7087;
         /// <summary>
         /// 閫夋嫨瀹ゅ鍙樺寲鏉′欢
         /// </summary>
@@ -2482,11 +2542,11 @@
         /// <summary>
         /// 鏅村ぉ
         /// </summary>
-        public const int clearday =7098;
+        public const int clearday = 7098;
         /// <summary>
         /// 澶氫簯
         /// </summary>
-        public const int cloudy= 7099;
+        public const int cloudy = 7099;
         /// <summary>
         /// 涓嬮洦
         /// </summary>
@@ -2510,7 +2570,7 @@
         /// <summary>
         /// 杞诲害姹℃煋:76~115ug/m鲁
         /// </summary>
-        public const int pmqingdu= 7105;
+        public const int pmqingdu = 7105;
         /// <summary>
         /// 涓害姹℃煋:116~150ug/m鲁
         /// </summary>
@@ -2518,11 +2578,11 @@
         /// <summary>
         /// 閲嶅害姹℃煋:>150ug/m鲁
         /// </summary>
-        public const int pmzhongduwuran= 7107;
+        public const int pmzhongduwuran = 7107;
         /// <summary>
         /// 娉勬紡/鏃犳硠婕�
         /// </summary>
-        public const int xieluoandwuxieluo=7108;
+        public const int xieluoandwuxieluo = 7108;
         /// <summary>
         /// 娉勬紡
         /// </summary>
@@ -2586,7 +2646,7 @@
         /// <summary>
         /// 浼�
         /// </summary>
-        public const int kongqiyou= 7124;
+        public const int kongqiyou = 7124;
         /// <summary>
         /// 鑹�
         /// </summary>
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorHistoryPage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorHistoryPage.cs
index b403b25..1f36b2b 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorHistoryPage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorHistoryPage.cs
@@ -28,9 +28,9 @@
                 page.LoadPage();
                 MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
             };
-
             bodyView.BackgroundColor = CSS_Color.BackgroundColor;
-            new TopViewDiv(bodyView, "璁垮璁板綍").LoadTopView(click);
+            new TopViewDiv(bodyView, Language.StringByID(StringId.VisitorInvitation))
+                   .LoadTopView_SettingText(click, "");
             #endregion
 
             bodyScrolView = new VerticalScrolViewLayout()
@@ -55,7 +55,7 @@
                 {
                     Height = Application.GetRealWidth(20),
                     Y = Application.GetRealWidth(6),
-                    Text = "璁垮浜岀淮鐮�",
+                    Text = Language.StringByID(StringId.VisitorQRCode),
                     TextAlignment = TextAlignment.CenterLeft,
                     TextColor = CSS_Color.text1Color,
                     TextSize = CSS_FontSize.TextFontSize,
@@ -68,7 +68,7 @@
                 {
                     Height = Application.GetRealWidth(14),
                     Y = Application.GetRealWidth(30),
-                    Text = "鏃堕棿锛�" + startTime + " - " + endTime,
+                    Text = Language.StringByID(StringId.Time) + "锛�" + startTime + " - " + endTime,
                     TextAlignment = TextAlignment.CenterLeft,
                     TextColor = CSS_Color.PromptingColor1,
                     TextSize = CSS_FontSize.PromptFontSize_SecondaryLevel,
diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs
index 68285b6..97bc8c8 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs
@@ -17,6 +17,7 @@
         private Button randomBtn;//闅忔満瀵嗙爜Btn
         private FrameLayout codeLayout;
         private ImageView codeIV;// 浜岀淮鐮�
+        private Button codeSaveTipBtn;
         private Button codeTip;//浜岀淮鐮佹湁鏁堟湡鎻愮ず
         private Button visitorVoucherBtn;
         private VisitorTempPassword tempPassword;
@@ -48,13 +49,14 @@
                 };
 
                 bodyView.BackgroundColor = CSS_Color.BackgroundColor;
-                new TopViewDiv(bodyView, "璁垮閭�璇�").LoadTopView_SettingText(click, "娴嬭瘯璁板綍");
+                new TopViewDiv(bodyView, Language.StringByID(StringId.VisitorInvitation))
+                    .LoadTopView_SettingText(click, Language.StringByID(StringId.VisitorRecord));
 
             }
             else
             {
                 bodyView.BackgroundColor = CSS_Color.BackgroundColor;
-                new TopViewDiv(bodyView, "璁垮閭�璇�").LoadTopView();
+                new TopViewDiv(bodyView, Language.StringByID(StringId.VisitorInvitation)).LoadTopView();
             }
             #endregion
 
@@ -69,7 +71,7 @@
             // 鎻愮ず鏂囧瓧
             bodyScrolView.AddChidren(new Button()
             {
-                Text = "*鎮ㄥ彂璧疯瀹簩缁寸爜鍚庯紝璇ヤ簩缁寸爜灏嗗湪鎮ㄨ缃殑鏈夋晥鏈熷唴锛屽彲鑷敱鍒风爜杩涜杩涘嚭锛岃璋ㄦ厧鍒嗕韩璇ヤ簩缁寸爜銆�",
+                Text = Language.StringByID(StringId.VisitorTip),
                 IsMoreLines = true,
                 TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
                 TextColor = CSS_Color.PromptingColor1,
@@ -81,7 +83,7 @@
             #region 鎵嬫満鍙�
             bodyScrolView.AddChidren(new Button()
             {
-                Text = "鎵嬫満鍙�",
+                Text = Language.StringByID(StringId.PhoneNumber),
                 Y = Application.GetRealWidth(10),
                 TextSize = CSS_FontSize.SubheadingFontSize,
                 TextColor = CSS_Color.FirstLevelTitleColor,
@@ -97,7 +99,8 @@
                 Width = Application.GetRealWidth(335),
                 TextSize = CSS_FontSize.TextFontSize,
                 TextColor = CSS_Color.FirstLevelTitleColor,
-                PlaceholderText = "杈撳叆璁垮鎵嬫満鍙�",
+                
+                PlaceholderText = Language.StringByID(StringId.InputPhoneNumberOfTheVisitor),
                 Text = tempPassword.phone,
                 IsNumberKeyboardType = true,
                 PlaceholderTextColor = CSS_Color.PromptingColor1,
@@ -117,7 +120,7 @@
             bodyScrolView.AddChidren(new Button() { Height = Application.GetRealWidth(10), });
             bodyScrolView.AddChidren(new Button()
             {
-                Text = "鍔ㄦ�佸瘑鐮�",
+                Text = Language.StringByID(StringId.linshimima),
                 TextSize = CSS_FontSize.SubheadingFontSize,
                 TextColor = CSS_Color.FirstLevelTitleColor,
                 Height = Application.GetRealHeight(20),
@@ -137,7 +140,7 @@
                 TextSize = CSS_FontSize.TextFontSize,
                 TextColor = CSS_Color.FirstLevelTitleColor,
                 Width = Application.GetRealWidth(335),
-                PlaceholderText = "杈撳叆璁�6浣嶅瘑鐮�",
+                PlaceholderText = Language.StringByID(StringId.Input6_DigitsTemporaryPassword),
                 Text = tempPassword.tempPwd,
                 PlaceholderTextColor = CSS_Color.PromptingColor1,
             };
@@ -148,7 +151,7 @@
             {
                 X = Application.GetRealWidth(275),
                 Width = Application.GetRealWidth(80),
-                Text = "闅忔満鐢熸垚",
+                Text = Language.StringByID(StringId.RandomGeneration),
                 TextAlignment = TextAlignment.CenterRight,
                 TextColor = CSS_Color.MainColor,
                 TextSize = CSS_FontSize.TextFontSize,
@@ -181,7 +184,7 @@
 
             startLayout.AddChidren(new Button()
             {
-                Text = "浜岀淮鐮佺敓鏁堟椂闂�",
+                Text = Language.StringByID(StringId.EffectiveTime),
                 X = Application.GetRealWidth(20),
                 Width = Application.GetRealWidth(130),
                 TextSize = CSS_FontSize.SubheadingFontSize,
@@ -199,7 +202,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
             {
@@ -221,7 +224,7 @@
             // dialog鍥炶皟
             Action<string> startTimeAction = (str) =>
             {
-                startTimeText.Text = str +":00";
+                startTimeText.Text = str + ":00";
             };
             startTimeBtn.MouseUpEventHandler += (sender, e) =>
             {
@@ -255,7 +258,7 @@
 
             endLayout.AddChidren(new Button()
             {
-                Text = "浜岀淮鐮佸け鏁堟椂闂�",
+                Text = Language.StringByID(StringId.FailureTime),
                 X = Application.GetRealWidth(20),
                 Width = Application.GetRealWidth(130),
                 TextSize = CSS_FontSize.SubheadingFontSize,
@@ -274,7 +277,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
             {
@@ -337,15 +340,17 @@
             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),
                 Height = Application.GetRealWidth(20),
-                Text = "闀挎寜鍙互鎶婁簩缁寸爜淇濆瓨鍒扮浉鍐�",
+                Text = Language.StringByID(StringId.LongPressQRCodeSave),
                 TextAlignment = TextAlignment.Center,
                 TextColor = CSS_Color.FirstLevelTitleColor,
-            });
+                Visible = false,
+            };
+            bodyScrolView.AddChidren(codeSaveTipBtn);
             #endregion
 
             bodyScrolView.AddChidren(new Button() { Height = Application.GetRealWidth(28), });
@@ -384,21 +389,49 @@
             };
             visitorVoucherBtn.MouseUpEventHandler += (sender, e) =>
             {
-                if (phoneNumberEditText.Text == "" || pwdEditText.Text == "")
+                if (phoneNumberEditText.Text.Trim() == "" || pwdEditText.Text.Trim() == ""
+                || startTimeText.Text.Trim() == "" || endTimeText.Text.Trim() == "")
                 {
                     return;
                 }
+
+                if (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().Length != 6)
+                {
+                    var tip_dialog = new Tip()
+                    {
+                        Text = Language.StringByID(StringId.linshimima),
+                        CloseTime = 2,
+                        Direction = AMPopTipDirection.None
+                    };
+                    tip_dialog.Show(MainPage.BaseView);
+                    pwdEditText.Foucs = true;
+                    return;
+                }
+
                 string tip = "";
                 string message = "";
                 if (codeIV.ImageBytes == null)
                 {
-                    tip = "璁垮鍑瘉";
-                    message = "鐢熸垚璁垮浜岀淮鐮佸苟灏嗕复鏃跺瘑鐮佸彂閫佽嚦璁垮鎵嬫満.";
+                    tip = Language.StringByID(StringId.tip);
+                    message = Language.StringByID(StringId.VisitorTipContent);
                 }
                 else
                 {
-                    tip = "璁垮鍑瘉";
-                    message = "纭畾鍒犻櫎璁垮鍑瘉锛�";
+                    tip = Language.StringByID(StringId.tip);
+                    message = Language.StringByID(StringId.VisitorDelTipContent);
                 }
                 new LpTipDialog(Application.Activity, tip, message, new LpTipDialogCallBack(voucher_action)).Show();
             };
@@ -413,11 +446,11 @@
                 string msg = "";
                 if (bol)
                 {
-                    msg = "淇濆瓨鎴愬姛锛�";
+                    msg = Language.StringByID(StringId.SavedSuccessfully);
                 }
                 else
                 {
-                    msg = "淇濆瓨澶辫触锛�";
+                    msg = Language.StringByID(StringId.saveFail);
                 }
                 EmptyTipView tipView = new EmptyTipView(msg, 160);
                 tipView.Gravity = Gravity.CenterHorizontal;
@@ -447,15 +480,15 @@
                         TextAlignment = TextAlignment.Center,
                         TextColor = CSS_Color.textWhiteColor,
                         BackgroundColor = CSS_Color.DialogTransparentColor1,
-                        Text = "浜岀淮鐮佸凡澶辨晥",
+                        Text = Language.StringByID(StringId.QRcodeIsInvalid),
                     };
                     codeLayout.AddChidren(codeTip);
                 }
-                visitorVoucherBtn.Text = "鍒犻櫎璁垮鍑瘉";
+                visitorVoucherBtn.Text = Language.StringByID(StringId.CancleVisitorCredentials);
             }
             else
             {
-                visitorVoucherBtn.Text = "鐢熸垚璁垮鍑瘉";
+                visitorVoucherBtn.Text = Language.StringByID(StringId.GenerateVisitorCredentials);
             }
         }
 
@@ -488,9 +521,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;
         }
 

--
Gitblit v1.8.0