From f9181a9c8125136f597add7c30cb2ff508d54ba7 Mon Sep 17 00:00:00 2001
From: mac <user@users-MacBook-Pro.local>
Date: 星期四, 25 七月 2024 17:34:32 +0800
Subject: [PATCH] 2024年07月25日17:33:40

---
 HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs |  673 +++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 660 insertions(+), 13 deletions(-)

diff --git a/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs b/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs
index 01c9940..66a4f2a 100644
--- a/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs
+++ b/HDL_ON/UI/UI2/4-PersonalCenter/Visitor/VisitorQRCodePage.cs
@@ -1,31 +1,678 @@
-锘縰sing System;
+锘�#if __Android__
+
+using System;
 using HDL_ON.UI.CSS;
 using Shared;
+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
 {
     public class VisitorQRCodePage : FrameLayout
     {
-        /// <summary>
-        /// 椤堕儴title
-        /// </summary>
-        FrameLayout topView;
         FrameLayout bodyView;
+        VerticalScrolViewLayout bodyScrolView;
+        private EditText phoneNumberEditText;// 鐢佃瘽鍙风爜EditText
+        private EditText pwdEditText;// 瀵嗙爜EditText
+        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()
         {
-            Action click = () =>
+            bodyView = this;
+        }
+
+        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 || tempPassword.id == null)
             {
-                VisitorHistoryPage page = new VisitorHistoryPage();
-                MainPage.BasePageView.AddChidren(page);
-                page.LoadPage();
-                MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                tempPassword = new VisitorTempPassword();
+
+                Action click = () =>
+                {
+                    Action action = () =>
+                    {
+                        LoadPage();
+                    };
+                    VisitorHistoryPage page = new VisitorHistoryPage(action);
+                    MainPage.BasePageView.AddChidren(page);
+                    page.LoadPage();
+                    MainPage.BasePageView.PageIndex = MainPage.BasePageView.ChildrenCount - 1;
+                };
+
+                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
+
+            bodyScrolView = new VerticalScrolViewLayout()
+            {
+                Y = Application.GetRealHeight(64),
+                VerticalScrollBarEnabled = false,
+                BackgroundColor = CSS_Color.MainBackgroundColor,
+            };
+            bodyView.AddChidren(bodyScrolView);
+
+            // 鎻愮ず鏂囧瓧
+            bodyScrolView.AddChidren(new Button()
+            {
+                Text = Language.StringByID(StringId.VisitorTip),
+                IsMoreLines = true,
+                TextSize = CSS_FontSize.PromptFontSize_FirstLevel,
+                TextColor = CSS_Color.PromptingColor1,
+                TextAlignment = TextAlignment.Center,
+                Padding = new Padding(0, Application.GetRealWidth(20), 0, Application.GetRealWidth(20)),
+                Height = Application.GetRealHeight(60),
+            });
+
+#region 鎵嬫満鍙�
+            bodyScrolView.AddChidren(new Button()
+            {
+                Text = Language.StringByID(StringId.PhoneNumber),
+                Y = Application.GetRealWidth(10),
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                Height = Application.GetRealHeight(20),
+                Padding = new Padding(0, Application.GetRealWidth(20), 0, Application.GetRealWidth(20)),
+                TextAlignment = TextAlignment.CenterLeft,
+            });
+
+            phoneNumberEditText = new EditText()
+            {
+                Height = Application.GetRealHeight(45),
+                X = Application.GetRealWidth(20),
+                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()
+            {
+                X = Application.GetRealWidth(20),
+                Width = Application.GetRealWidth(335),
+                Height = Application.GetRealHeight(1),
+                BackgroundColor = CSS_Color.DividingLineColor,
+            });
+#endregion
+
+#region 鍔ㄦ�佸瘑鐮�
+            bodyScrolView.AddChidren(new Button() { Height = Application.GetRealWidth(10), });
+            bodyScrolView.AddChidren(new Button()
+            {
+                Text = Language.StringByID(StringId.linshimima),
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                Height = Application.GetRealHeight(20),
+                Padding = new Padding(0, Application.GetRealWidth(20), 0, Application.GetRealWidth(20)),
+                TextAlignment = TextAlignment.CenterLeft,
+            });
+
+            FrameLayout pwdLayout = new FrameLayout()
+            {
+                Height = Application.GetRealHeight(40),
             };
 
-            bodyView.BackgroundColor = CSS_Color.BackgroundColor;
-            new TopViewDiv(bodyView, Language.StringByID(StringId.MemberPermissionManagement)).LoadTopView_SettingText(click, "");
+            // 瀵嗙爜杈撳叆妗�
+            pwdEditText = new EditText()
+            {
+                X = Application.GetRealWidth(20),
+                TextSize = CSS_FontSize.TextFontSize,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                Width = Application.GetRealWidth(335),
+                PlaceholderText = Language.StringByID(StringId.Input6_DigitsTemporaryPassword),
+                IsNumberKeyboardType = true,
+                PlaceholderTextColor = CSS_Color.PromptingColor1,
+            };
+            pwdLayout.AddChidren(pwdEditText);
 
-            //
+            //闅忔満瀵嗙爜Btn
+            randomBtn = new Button()
+            {
+                X = Application.GetRealWidth(275),
+                Width = Application.GetRealWidth(80),
+                Text = Language.StringByID(StringId.RandomGeneration),
+                TextAlignment = TextAlignment.CenterRight,
+                TextColor = CSS_Color.MainColor,
+                TextSize = CSS_FontSize.TextFontSize,
+            };
+            pwdLayout.AddChidren(randomBtn);
+            bodyScrolView.AddChidren(pwdLayout);
+
+            // 鍒嗗壊绾�
+            bodyScrolView.AddChidren(new Button()
+            {
+                X = Application.GetRealWidth(20),
+                Width = Application.GetRealWidth(335),
+                Height = Application.GetRealHeight(1),
+                BackgroundColor = CSS_Color.DividingLineColor,
+            });
+#endregion
+
+#region 浜岀淮鐮佺敓鏁堟椂闂�
+            FrameLayout startLayout = new FrameLayout()
+            {
+                Height = Application.GetRealHeight(40),
+                Y = Application.GetRealWidth(10),
+            };
+
+            startLayout.AddChidren(new Button()
+            {
+                Text = Language.StringByID(StringId.EffectiveTime),
+                X = Application.GetRealWidth(20),
+                Width = Application.GetRealWidth(130),
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextAlignment = TextAlignment.CenterLeft,
+                Enable = false,
+            });
+            Button startTimeText = new Button()
+            {
+                X = Application.GetRealWidth(159),
+                Width = Application.GetRealWidth(150),
+                TextAlignment = TextAlignment.CenterRight,
+                TextSize = CSS_FontSize.TextFontSize,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+            };
+            if (tempPassword.tempPwd == null || tempPassword.tempPwd == "")
+            {
+                startTimeText.Text = "";// System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
+            }
+            else
+            {
+                startTimeText.Text = tempPassword.validBeginTime;
+            }
+
+            startLayout.AddChidren(startTimeText);
+            startLayout.AddChidren(new Button()
+            {
+                X = Application.GetRealWidth(339),
+                Gravity = Gravity.CenterVertical,
+                Width = Application.GetMinRealAverage(16),
+                Height = Application.GetMinRealAverage(16),
+                UnSelectedImagePath = "Public/Right.png",
+                Enable = false,
+            });
+            Button startTimeBtn = new Button();
+            startLayout.AddChidren(startTimeBtn);
+            // dialog鍥炶皟
+            Action<string> startTimeAction = (str) =>
+            {
+                startTimeText.Text = str + ":00";
+            };
+            startTimeBtn.MouseUpEventHandler += (sender, e) =>
+            {
+                try
+                {
+                    new LpTimeDialog(Application.Activity, new LpTimeDialogCallBak(startTimeAction)).Show();
+                }
+                catch (Exception ex)
+                {
+                    string error = ex.Message;
+                }
+            };
+            bodyScrolView.AddChidren(startLayout);
+            // 鍒嗗壊绾�
+            bodyScrolView.AddChidren(new Button()
+            {
+                X = Application.GetRealWidth(20),
+                Width = Application.GetRealWidth(335),
+                Height = Application.GetRealHeight(1),
+                BackgroundColor = CSS_Color.DividingLineColor,
+            });
+
+#endregion
+
+#region 浜岀淮鐮佸け鏁堟椂闂�
+            FrameLayout endLayout = new FrameLayout()
+            {
+                Height = Application.GetRealHeight(40),
+                Y = Application.GetRealWidth(10),
+            };
+
+            endLayout.AddChidren(new Button()
+            {
+                Text = Language.StringByID(StringId.FailureTime),
+                X = Application.GetRealWidth(20),
+                Width = Application.GetRealWidth(130),
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                TextAlignment = TextAlignment.CenterLeft,
+                Enable = false,
+            });
+            Button endTimeText = new Button()
+            {
+                X = Application.GetRealWidth(159),
+                Width = Application.GetRealWidth(150),
+                TextAlignment = TextAlignment.CenterRight,
+                TextSize = CSS_FontSize.TextFontSize,
+                TextColor = CSS_Color.FirstLevelTitleColor,
+                Enable = false,
+            };
+            if (tempPassword.tempPwd == null || tempPassword.tempPwd == "")
+            {
+                endTimeText.Text = "";// System.DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss");
+            }
+            else
+            {
+                endTimeText.Text = tempPassword.validEndTime;
+            }
+            endLayout.AddChidren(endTimeText);
+            endLayout.AddChidren(new Button()
+            {
+                X = Application.GetRealWidth(339),
+                Gravity = Gravity.CenterVertical,
+                Width = Application.GetMinRealAverage(16),
+                Height = Application.GetMinRealAverage(16),
+                UnSelectedImagePath = "Public/Right.png",
+                Enable = false,
+            });
+            Button endTimeBtn = new Button();
+            endLayout.AddChidren(endTimeBtn);
+            bodyScrolView.AddChidren(endLayout);
+            // 鍒嗗壊绾�
+            bodyScrolView.AddChidren(new Button()
+            {
+                X = Application.GetRealWidth(20),
+                Width = Application.GetRealWidth(335),
+                Height = Application.GetRealHeight(1),
+                BackgroundColor = CSS_Color.DividingLineColor,
+            });
+            // dialog鍥炶皟
+            Action<string> endTimeAction = (str) =>
+            {
+                endTimeText.Text = str + ":00";
+            };
+            endTimeBtn.MouseUpEventHandler += (sender, e) =>
+            {
+                try
+                {
+                    new LpTimeDialog(Application.Activity, new LpTimeDialogCallBak(endTimeAction)).Show();
+                }
+                catch (Exception ex)
+                {
+                    string error = ex.Message;
+                }
+            };
+#endregion
+
+#region 浜岀淮鐮�
+            bodyScrolView.AddChidren(new Button() { Height = Application.GetRealWidth(33), });
+            codeLayout = new FrameLayout()
+            {
+                X = Application.GetRealWidth(117),
+                Width = Application.GetRealWidth(142),
+                Height = Application.GetRealWidth(142),
+            };
+            bodyScrolView.AddChidren(codeLayout);
+
+            // 浜岀淮鐮両magView
+            codeIV = new ImageView()
+            {
+                BackgroundColor = CSS_Color.BackgroundColor,
+            };
+            codeLayout.AddChidren(codeIV);
+
+            bodyScrolView.AddChidren(new Button() { Height = Application.GetRealWidth(20), });
+            codeSaveTipBtn = new Button()
+            {
+                X = Application.GetRealWidth(16),
+                Width = Application.GetRealWidth(343),
+                Height = Application.GetRealWidth(20),
+                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), });
+            visitorVoucherBtn = new Button()
+            {
+                X = Application.GetRealWidth(78),
+                Width = Application.GetRealWidth(220),
+                Height = Application.GetRealWidth(44),
+                BackgroundColor = CSS_Color.MainColor,
+                Radius = (uint)Application.GetRealWidth(44),
+                TextSize = CSS_FontSize.SubheadingFontSize,
+                TextAlignment = TextAlignment.Center,
+                TextColor = CSS_Color.textWhiteColor,
+            };
+            bodyScrolView.AddChidren(visitorVoucherBtn);
+
+            Action voucher_action = () =>
+            {
+                if (codeIV.ImageBytes == null)
+                {
+                    // 璇锋眰鏈嶅姟绔紝鐢熸垚涓存椂瀵嗙爜
+                    tempPassword.homeId = Entity.DB_ResidenceData.Instance.CurrentRegion.id;
+                    tempPassword.phone = phoneNumberEditText.Text;
+                    tempPassword.tempPwd = pwdEditText.Text;
+                    tempPassword.validBeginTime = startTimeText.Text;
+                    tempPassword.validEndTime = endTimeText.Text;
+                    tempPassword.useCount = 1000;
+                    CreateVisitorPassword(tempPassword);
+                }
+                else
+                {
+                    // 鍒犻櫎璁垮涓存椂瀵嗙爜
+                    DelVisitorPassword(tempPassword);
+                }
+            };
+            visitorVoucherBtn.MouseUpEventHandler += (sender, e) =>
+            {
+                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)
+                {
+                    tip = Language.StringByID(StringId.tip);
+                    message = Language.StringByID(StringId.VisitorTipContent);
+                }
+                else
+                {
+                    tip = Language.StringByID(StringId.tip);
+                    message = Language.StringByID(StringId.VisitorDelTipContent);
+                }
+                new LpTipDialog(Application.Activity, tip, message, new LpTipDialogCallBack(voucher_action)).Show();
+            };
+
+            //灏嗕簩缁寸爜淇濆瓨鍒版湰鍦扮浉鍐�
+            codeIV.MouseLongEventHandler += (sender, e) =>
+            {
+#if __Android__
+                bool bol = HDLImageUtils.SaveImageToGallery(Application.Activity,
+                    Scan.BytesFromText(tempPassword.tempPwd, codeIV.Width, codeIV.Height));
+
+                string msg = "";
+                if (bol)
+                {
+                    msg = Language.StringByID(StringId.SavedSuccessfully);
+                }
+                else
+                {
+                    msg = Language.StringByID(StringId.saveFail);
+                }
+
+                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();
+        }
+
+        /// <summary>
+        /// 鍒锋柊VisitorVoucherBtn鐘舵��
+        /// </summary>
+        private void RefreshVisitorVoucherBtn()
+        {
+            if (tempPassword == null) return;
+
+            if (tempPassword.tempPwd != null && tempPassword.tempPwd != "")
+            {
+                codeIV.ImageBytes = Scan.BytesFromText(tempPassword.tempPwd, codeIV.Width, codeIV.Height);
+                //鍒ゆ柇浜岀淮鐮佹槸鍚﹀け鏁�
+                DateTime endTime = DateTime.Parse(tempPassword.validEndTime);
+                DateTime currentTime = DateTime.Now;
+                if (currentTime > endTime || !tempPassword.status)
+                {
+                    // 浜岀淮鐮佹湁鏁堟湡鎻愮ず
+                    codeTip = new Button()
+                    {
+                        TextAlignment = TextAlignment.Center,
+                        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);
+            }
+        }
+
+        /// <summary>
+        /// 娣诲姞涓存椂瀵嗙爜锛堣瀹㈠嚟璇侊級
+        /// </summary>
+        /// <param name="homeId">浣忓畢id</param>
+        /// <param name="phone">璁垮鎵嬫満鍙�</param>
+        /// <param name="tempPwd">涓存椂瀵嗙爜</param>
+        /// <param name="validBeginTime">寮�濮嬫椂闂�</param>
+        /// <param name="validEndTime">缁撴潫鏃堕棿</param>
+        /// <param name="useCount">浣跨敤娆℃暟锛岄粯璁や竴涓暟鍊煎ぇ涓�浜涚殑</param>
+        /// <returns></returns>
+        private bool CreateVisitorPassword(VisitorTempPassword pwd)
+        {
+            var result = false;
+            Dictionary<string, object> dictionary = new Dictionary<string, object>();
+            dictionary.Add("homeId", pwd.homeId);
+            dictionary.Add("phone", pwd.phone);
+            dictionary.Add("tempPwd", pwd.tempPwd);
+            dictionary.Add("validBeginTime", pwd.validBeginTime);
+            dictionary.Add("validEndTime", pwd.validEndTime);
+            dictionary.Add("useCount", pwd.useCount);
+
+            var requestJson = HttpUtil.GetSignRequestJson(dictionary);
+            var pack = HttpUtil.RequestHttpsPost(NewAPI.API_POST_ADD_TEMP_PASSWORD, requestJson);
+            if (pack != null)
+            {
+                if (pack.Code == StateCode.SUCCESS)
+                {
+                    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);
+                }
+            }
+            return result;
+        }
+
+        /// <summary>
+        /// 鍒犻櫎涓存椂瀵嗙爜(璁垮鍑瘉)
+        /// </summary>
+        /// <param name="home_id">浣忓畢id</param>
+        /// <param name="pwd_id">涓存椂瀵嗙爜id</param>
+        private bool DelVisitorPassword(VisitorTempPassword pwd)
+        {
+            Dictionary<string, object> dictionary = new Dictionary<string, object>();
+            dictionary.Add("homeId", pwd.homeId);
+            dictionary.Add("id", pwd.id);
+            var result = false;
+            var requestJson = HttpUtil.GetSignRequestJson(dictionary);
+            var pack = HttpUtil.RequestHttpsPost(NewAPI.API_POST_DEL_TEMP_PASSWORD, requestJson);
+            if (pack != null)
+            {
+                if (pack.Code == StateCode.SUCCESS)
+                {
+                    // 鍏抽棴褰撳墠鐣岄潰
+                    RemoveFromParent();
+                }
+            }
+            RefreshVisitorVoucherBtn();
+            return result;
+        }
+
+        /// <summary>
+        /// 鐢熸垚6浣嶉殢鏈哄瘑鐮�
+        /// </summary>
+        /// <returns></returns>
+        private string getRandomPwd()
+        {
+            string pwd = "";
+            for (int i = 0; i < 6; i++)
+            {
+                int math = new Random().Next(0, 9);
+                pwd += math;
+            }
+            return pwd;
         }
     }
 }
+#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