黄学彪
2020-12-17 9f326f4000847e6167d8166fa2f6a66f53cb3734
ZigbeeApp/Shared/Phone/UserCenter/HideOption/HideOptionMainForm.cs
@@ -27,7 +27,7 @@
        public void ShowForm()
        {
            //设置头部信息
            base.SetTitleText("隐匿主界面");
            base.SetTitleText("调试菜单界面");
            listView = new VerticalListRefreshControl(23);
            listView.BackgroundColor = UserCenterColor.Current.White;
@@ -42,6 +42,15 @@
            //初始化中部信息
            this.InitMiddleFrame();
            if (HdlUserCenterResourse.HideOption.StartDebugApp == 1)
            {
                //开启调试时,不允许关闭这个界面
                this.BackButtonClickEvent += (sender) =>
                {
                    return;
                };
            }
        }
        /// <summary>
@@ -51,45 +60,56 @@
        {
            listView.RemoveAll();
            this.AddNormalRowControl("当前身份", 400, UserCenterResourse.UserInfo.AuthorityText, 400);
            var rowTemp = this.AddNormalRowControl(string.Empty, 400, string.Empty, 400);
            var btnTemp = new NormalViewControl(600, 100, true);
            btnTemp.Text = "一般信息部分";
            btnTemp.Gravity = Gravity.Center;
            btnTemp.TextSize = 16;
            btnTemp.IsBold = true;
            btnTemp.TextAlignment = TextAlignment.Center;
            rowTemp.AddChidren(btnTemp);
            this.AddTopButtomRowControl("住宅ID", 400, Common.Config.Instance.Home.Id, 900);
            this.AddNormalRowControl("当前身份", 400, HdlUserCenterResourse.ResidenceOption.AuthorityText, 400);
            this.AddTopButtomRowControl("账号GUID", 400, Common.Config.Instance.Home.MainUserDistributedMark, 900);
            //this.AddTopButtomRowControl("住宅ID", 400, Common.Config.Instance.Home.Id, 900);
            this.AddNormalRowControl("住宅分享", 400, Common.Config.Instance.Home.IsOthreShare == true ? "是" : "否", 400);
            //this.AddTopButtomRowControl("账号GUID", 400, string.IsNullOrEmpty(Common.Config.Instance.Guid) == true ? Common.Config.Instance.Home.MainUserDistributedMark : Common.Config.Instance.Guid, 900);
            this.AddNormalRowControl("住宅分享", 400, Common.Config.Instance.Home.IsOtherShare == true ? "是" : "否", 400);
            this.AddNormalRowControl("账号类型", 400, Common.Config.Instance.Home.AccountType.ToString(), 400);
            this.AddNormalRowControl("远程连接", 400, ZigBee.Device.ZbGateway.IsRemote == true ? "是" : "否", 400);
            this.AddNormalRowControl("拥有远程权限", 400, ZigBee.Device.ZbGateway.AllowRemoteCtrl == true ? "是" : "否", 400);
            this.AddNormalRowControl("拥有远程权限", 400, Common.Config.Instance.Home.IsRemoteControl == true ? "是" : "否", 400);
            this.AddNormalRowControl("WIFI变量", 400, Shared.Application.IsWifi == true ? "true" : "false", 400);
            int count = HdlGatewayLogic.Current.GetAllLocalGateway().Count;
            rowTemp = this.AddNormalRowControl(string.Empty, 400, string.Empty, 400);
            btnTemp = new NormalViewControl(600, 100, true);
            btnTemp.Text = "链接调试部分";
            btnTemp.Gravity = Gravity.Center;
            btnTemp.TextSize = 16;
            btnTemp.IsBold = true;
            btnTemp.TextAlignment = TextAlignment.Center;
            rowTemp.AddChidren(btnTemp);
            this.AddNormalRowControl("手机获取的IP", 600, new Shared.Net.NetWiFi().BroadcastIpAddress.ToString(), 600);
            if (ZigBee.Common.Application.FindGateWaySocket.udpClient == null)
            {
                this.AddNormalRowControl("Socket链接", 400, "未初始化", 400);
            }
            else
            {
                this.AddNormalRowControl("Socket链接", 400, "已初始化", 400);
            }
            int count = ZbGateway.GateWayList.Count;
            var row1 = new FrameRowControl(listView.rowSpace / 2);
            listView.AddChidren(row1);
            row1.UseClickStatu = false;
            row1.AddLeftCaption("本地网关", 400);
            if (count > 0)
            {
                row1.UseClickStatu = true;
                row1.AddRightArrow();
                row1.ButtonClickEvent += (sender, e) =>
                {
                    var form = new HideOptionGatewayListForm();
                    form.AddForm(1);
                };
            }
            row1.AddMostRightView(count + "个", 400);
            row1.AddBottomLine();
            count = ZigBee.Device.ZbGateway.GateWayList.Count;
            row1 = new FrameRowControl(listView.rowSpace / 2);
            listView.AddChidren(row1);
            row1.UseClickStatu = false;
            row1.AddLeftCaption("缓存中的网关", 400);
            row1.AddLeftCaption("广播到的网关", 400);
            if (count > 0)
            {
                row1.UseClickStatu = true;
@@ -108,7 +128,93 @@
            row1 = new FrameRowControl(listView.rowSpace / 2);
            listView.AddChidren(row1);
            row1.AddLeftCaption("清除缓存文件", 500);
            row1.AddLeftCaption("收集发送和接收的数据", 600);
            row1.AddBottomLine();
            var btnSwitchLog = row1.AddMostRightSwitchIcon();
            btnSwitchLog.ButtonClickEvent += (sender, e) =>
            {
                if (btnSwitchLog.IsSelected == false)
                {
                    this.ShowMassage(ShowMsgType.Confirm, "是否打开记录发送及接收数据的记录?", () =>
                    {
                        btnSwitchLog.IsSelected = true;
                        HdlFileLogic.Current.DeleteFile(HdlFileNameResourse.SendAndReceveDataLog);
                        HdlUserCenterResourse.HideOption.WriteSendAndReceveDataToFile = 1;
                    });
                }
                else
                {
                    HdlUserCenterResourse.HideOption.WriteSendAndReceveDataToFile = 0;
                    btnSwitchLog.IsSelected = false;
                    var txtvalue = HdlFileLogic.Current.ReadFileTextContent(HdlFileNameResourse.SendAndReceveDataLog);
                    if (txtvalue != null)
                    {
                        var form = new HideOptionFileContentForm();
                        form.AddForm(string.Empty);
                        form.SetTextContent(txtvalue);
                    }
                }
            };
            row1 = new FrameRowControl(listView.rowSpace / 2);
            listView.AddChidren(row1);
            row1.AddLeftCaption("SocketReceive", 600);
            row1.AddBottomLine();
            var btnSocketReceiveLog = row1.AddMostRightSwitchIcon();
            btnSocketReceiveLog.ButtonClickEvent += (sender, e) =>
            {
                if (btnSocketReceiveLog.IsSelected == false)
                {
                    this.ShowMassage(ShowMsgType.Confirm, "是否打开记录SocketReceive的记录?", () =>
                    {
                        btnSocketReceiveLog.IsSelected = true;
                        HdlFileLogic.Current.DeleteFile(HdlFileNameResourse.SocketReceiveDataLog);
                        HdlUserCenterResourse.HideOption.WriteSocketReceiveDataToFile = 1;
                    });
                }
                else
                {
                    HdlUserCenterResourse.HideOption.WriteSocketReceiveDataToFile = 0;
                    btnSocketReceiveLog.IsSelected = false;
                    var txtvalue = HdlFileLogic.Current.ReadFileTextContent(HdlFileNameResourse.SocketReceiveDataLog);
                    if (txtvalue != null)
                    {
                        var form = new HideOptionFileContentForm();
                        form.AddForm(string.Empty);
                        form.SetTextContent(txtvalue);
                    }
                }
            };
            row1 = new FrameRowControl(listView.rowSpace / 2);
            listView.AddChidren(row1);
            row1.AddLeftCaption("重新初始化Socket", 600);
            row1.AddRightArrow();
            row1.AddBottomLine();
            row1.ButtonClickEvent += (sender, e) =>
            {
                this.ShowMassage(ShowMsgType.Confirm, "是否重新初始化Socket对象?", () =>
                {
                    ZigBee.Common.Application.FindGateWaySocket.Stop();
                    ZigBee.Common.Application.FindGateWaySocket.Start();
                    this.ShowMassage(ShowMsgType.Tip, "初始化完成");
                });
            };
            rowTemp = this.AddNormalRowControl(string.Empty, 400, string.Empty, 400);
            btnTemp = new NormalViewControl(600, 100, true);
            btnTemp.Text = "查看缓存部分";
            btnTemp.Gravity = Gravity.Center;
            btnTemp.TextSize = 16;
            btnTemp.IsBold = true;
            btnTemp.TextAlignment = TextAlignment.Center;
            rowTemp.AddChidren(btnTemp);
            row1 = new FrameRowControl(listView.rowSpace / 2);
            listView.AddChidren(row1);
            row1.AddLeftCaption("查看缓存文件", 500);
            row1.AddRightArrow();
            row1.AddBottomLine();
            row1.ButtonClickEvent += (sender, e) =>
@@ -117,36 +223,104 @@
                form.AddForm();
            };
#if Android
            row1 = new FrameRowControl(listView.rowSpace / 2);
            listView.AddChidren(row1);
            row1.AddLeftCaption("设备缓存变量", 500);
            row1.AddRightArrow();
            row1.AddBottomLine();
            row1.ButtonClickEvent += (sender, e) =>
            {
                var form = new HideOptionMemoryListDeviceForm();
                form.AddForm();
            };
            rowTemp = this.AddNormalRowControl(string.Empty, 400, string.Empty, 400);
            btnTemp = new NormalViewControl(600, 100, true);
            btnTemp.Text = "其他部分";
            btnTemp.Gravity = Gravity.Center;
            btnTemp.TextSize = 16;
            btnTemp.IsBold = true;
            btnTemp.TextAlignment = TextAlignment.Center;
            rowTemp.AddChidren(btnTemp);
            //开启调试功能
            if (HdlUserCenterResourse.HideOption.StartDebugApp == 1)
            {
                row1 = new FrameRowControl(listView.rowSpace / 2);
                listView.AddChidren(row1);
                row1.AddLeftCaption("成员列表", 500);
                row1.AddRightArrow();
                row1.AddBottomLine();
                row1.ButtonClickEvent += (sender, e) =>
                {
                    var form = new Member.MemberListForm();
                    form.AddForm();
                };
                row1 = new FrameRowControl(listView.rowSpace / 2);
                listView.AddChidren(row1);
                row1.AddLeftCaption("备份列表", 500);
                row1.AddRightArrow();
                row1.AddBottomLine();
                row1.ButtonClickEvent += (sender, e) =>
                {
                    var form = new HdlBackup.HdlBackupListForm();
                    form.AddForm();
                };
            }
            row1 = new FrameRowControl(listView.rowSpace / 2);
            row1.UseClickStatu = false;
            listView.AddChidren(row1);
            row1.AddLeftCaption("GBS定位", 500);
            row1.AddLeftCaption("记录定位", 500);
            row1.AddBottomLine();
            var btnGbsSwitch = row1.AddMostRightSwitchIcon();
            string checkFile = System.IO.Path.Combine(Shared.IO.FileUtils.RootPath, Shared.Phone.UserCenter.DirNameResourse.OpenGbsFile);
            if (System.IO.File.Exists(checkFile) == true)
            {
                btnGbsSwitch.IsSelected = true;
            }
            btnGbsSwitch.ButtonClickEvent += (sender, e) =>
            {
                this.ShowMassage(ShowMsgType.Confirm, "注意:开启或者关闭此功能会重启App", () =>
                if (btnGbsSwitch.IsSelected == true)
                {
                    btnGbsSwitch.IsSelected = !btnGbsSwitch.IsSelected;
                    if (btnGbsSwitch.IsSelected == true)
                    btnGbsSwitch.IsSelected = false;
                    HdlUserCenterResourse.HideOption.WriteGpsPoint = 0;
                    return;
                }
                this.ShowDialogInputForm("????", string.Empty, "请输入识别码", (contr, value) =>
                {
                    if (value == "542397")
                    {
                        var file = System.IO.File.Create(checkFile);
                        file.Close();
                        HdlUserCenterResourse.HideOption.WriteGpsPoint = 1;
                        btnGbsSwitch.IsSelected = true;
                    }
                    else
                    {
                        System.IO.File.Delete(checkFile);
                    }
                    HDLUtils.RestartApp();
                    contr.CloseDialog();
                });
            };
#endif
            row1 = new FrameRowControl(listView.rowSpace / 2);
            listView.AddChidren(row1);
            row1.AddLeftCaption("使用旧的设备获取方式", 600);
            row1.AddBottomLine();
            var btnSwitchDeviceMethord = row1.AddMostRightSwitchIcon();
            btnSwitchDeviceMethord.IsSelected = HdlUserCenterResourse.HideOption.UseOldSearchDeviceMethord == 1;
            btnSwitchDeviceMethord.ButtonClickEvent += (sender, e) =>
            {
                btnSwitchDeviceMethord.IsSelected = !btnSwitchDeviceMethord.IsSelected;
                HdlUserCenterResourse.HideOption.UseOldSearchDeviceMethord = btnSwitchDeviceMethord.IsSelected == true ? 1 : 0;
            };
            row1 = new FrameRowControl(listView.rowSpace / 2);
            listView.AddChidren(row1);
            row1.AddLeftCaption("重置导入标识", 500);
            row1.AddRightArrow();
            row1.AddBottomLine();
            row1.ButtonClickEvent += (sender, e) =>
            {
                this.ShowMassage(ShowMsgType.Confirm, "是否重置这个住宅的导入标识?\r\n重置之后可以再次导入网关", () =>
                {
                    Common.Config.Instance.Home.SendTemplateSuccess = false;
                    Common.Config.Instance.Home.Save();
                    this.ShowMassage(ShowMsgType.Tip, "重置完成");
                });
            };
            row1 = new FrameRowControl(listView.rowSpace / 2);
            listView.AddChidren(row1);
            row1.AddLeftCaption("上传Log", 500);
@@ -155,9 +329,9 @@
            {
                this.ShowMassage(ShowMsgType.Confirm, "是否上传Log文件", () =>
                {
                    HdlThreadLogic.Current.RunThread(async () =>
                    HdlThreadLogic.Current.RunThread(() =>
                    {
                        await HdlBackupLogic.Current.UpLoadLogBackup();
                        HdlBackupLogic.Current.UpLoadLogBackup();
                    });
                });
            };
@@ -219,8 +393,8 @@
                int waiteCount = 5;
                this.ShowMassage(ShowMsgType.Confirm, "该操作将等待" + waiteCount + "秒,是否继续?", () =>
                {
                    Shared.Phone.UserCenter.UserCenterResourse.DicReceiveGatewayTest = new Dictionary<string, ZbGateway>();
                    UserCenterResourse.HideOption.CheckCanReceiveGateway = 1;
                    HdlGatewayResourse.DicReceiveGatewayTest = new Dictionary<string, ZbGateway>();
                    HdlUserCenterResourse.HideOption.CheckCanReceiveGateway = 1;
                    HdlThreadLogic.Current.RunThread(() =>
                    {
                        while (waiteCount > 0)
@@ -237,8 +411,8 @@
                            btnCount.Text = string.Empty;
                        });
                        //结束
                        UserCenterResourse.HideOption.CheckCanReceiveGateway = 0;
                        if (Shared.Phone.UserCenter.UserCenterResourse.DicReceiveGatewayTest.Count == 0)
                        HdlUserCenterResourse.HideOption.CheckCanReceiveGateway = 0;
                        if (HdlGatewayResourse.DicReceiveGatewayTest.Count == 0)
                        {
                            this.ShowMassage(ShowMsgType.Normal, "抱歉,没有广播到任何网关");
                            return;
@@ -262,8 +436,10 @@
        /// </summary>
        public override void CloseFormBefore()
        {
            Shared.Phone.UserCenter.UserCenterResourse.DicReceiveGatewayTest = null;
            UserCenterResourse.HideOption.CheckCanReceiveGateway = 1;
            HdlGatewayResourse.DicReceiveGatewayTest = null;
            HdlUserCenterResourse.HideOption.CheckCanReceiveGateway = 0;
            HdlUserCenterResourse.HideOption.WriteSendAndReceveDataToFile = 0;
            HdlUserCenterResourse.HideOption.WriteSocketReceiveDataToFile = 0;
            base.CloseFormBefore();
        }