HDL Home App 第二版本 旧平台金堂用 正在使用
hxb
2022-08-30 25429f085093d89d543a0b90e30d0d62d1b7dac9
ZigbeeApp/Shared/Phone/UserCenter/OtherParty/OtherPartyAccountMenuForm.cs
@@ -41,12 +41,12 @@
            //清空bodyFrame
            this.ClearBodyFrame();
            HdlThreadLogic.Current.RunThread(async () =>
            HdlThreadLogic.Current.RunThread(() =>
            {
                //打开进度条
                this.ShowProgressBar();
                //获取绑定数据
                var result = await this.GetBingData();
                var result = this.GetBingData();
                if (result == false)
                {
                    //关闭进度条
@@ -91,13 +91,13 @@
            var btnChat = rowChat.AddLeftCaption(Language.StringByID(R.MyInternationalizationString.uWebChat), 400, 60);
            btnChat.Y = Application.GetRealHeight(12) + rowChat.chidrenYaxis;
            btnChat.TextSize = 15;
            rowChat.AddChidren(btnChat, ChidrenBindMode.BindEventOnly);
            rowChat.AddChidren(btnChat, ChidrenBindMode.BindEvent);
            //未授权  OR  名字
            var btnTip1 = rowChat.AddLeftCaption(bindNameText == null ? string.Empty : bindNameText, 400, 50);
            btnTip1.Y = Application.GetRealHeight(72) + rowChat.chidrenYaxis;
            btnTip1.TextSize = 12;
            btnTip1.TextColor = UserCenterColor.Current.TextGrayColor1;
            rowChat.AddChidren(btnTip1, ChidrenBindMode.BindEventOnly);
            rowChat.AddChidren(btnTip1, ChidrenBindMode.BindEvent);
            //向右图标
            rowChat.AddRightArrow();
            //底线
@@ -141,13 +141,13 @@
            //var btnQQ = rowQQ.AddLeftCaption("QQ", 400, 60);
            //btnQQ.Y = Application.GetRealHeight(12) + rowQQ.chidrenYaxis;
            //btnQQ.TextSize = 15;
            //rowQQ.AddChidren(btnQQ, ChidrenBindMode.BindEventOnly);
            //rowQQ.AddChidren(btnQQ, ChidrenBindMode.BindEvent);
            ////未授权  OR  名字
            //var btnTip2 = rowQQ.AddLeftCaption(bindNameText, 400, 49);
            //btnTip2.Y = Application.GetRealHeight(72) + rowQQ.chidrenYaxis;
            //btnTip2.TextSize = 12;
            //btnTip2.TextColor = UserCenterColor.Current.TextGrayColor1;
            //rowQQ.AddChidren(btnTip2, ChidrenBindMode.BindEventOnly);
            //rowQQ.AddChidren(btnTip2, ChidrenBindMode.BindEvent);
            ////向右图标
            //rowQQ.AddRightArrow();
            ////请绑定  OR  解除绑定
@@ -173,12 +173,12 @@
        /// 获取绑定数据
        /// </summary>
        /// <returns></returns>
        private async Task<bool> GetBingData()
        private bool GetBingData()
        {
            this.dicBindData = new Dictionary<string, OtherPartyResult>();
            var result = await UserCenterLogic.GetResponseDataByRequestHttps("ZigbeeUsers/GetUserAuthItem", false, "");
            if (result == null)
            var result = UserCenterLogic.GetResponseDataByRequestHttps("ZigbeeUsers/GetUserAuthItem", false, "");
            if (string.IsNullOrEmpty(result) == true)
            {
                return false;
            }
@@ -203,6 +203,11 @@
#if Android
            com.hdl.home.Application.WXLogin();
            com.hdl.home.WXEntryActivity.RespAction = (authStr) =>
#endif
#if iOS
            Home.IOS.AppDelegate.WXLogin();
            Home.IOS.AppDelegate.RespAction = (authStr) =>
#endif
            {
                if (string.IsNullOrEmpty(authStr) == true)
                {
@@ -212,19 +217,18 @@
                //绑定微信
                this.BindWechat(authRes.access_token, authRes.refresh_token, authRes.openid);
            };
#endif
        }
        /// <summary>
        /// 绑定微信
        /// </summary>
        /// <param name="infoData"></param>
        private async void BindWechat(string accessToken, string refreshToken, string openID)
        private void BindWechat(string accessToken, string refreshToken, string openID)
        {
            //获取微信昵称
            var strUrl = "https://api.weixin.qq.com/sns/userinfo?access_token=" + accessToken;
            strUrl += "&openid=" + openID;
            var byteData = await Common.CommonPage.Instance.DoRequestZigbeeHttpsInterface(strUrl, null, null, "GET");
            var byteData = Common.CommonPage.Instance.DoRequestZigbeeHttpsInterface(strUrl, null, null, "GET");
            if (byteData == null)
            {
                return;
@@ -235,7 +239,7 @@
            //先上传微信资料
            var pra = new { AccessToken = accessToken, RefreshToken = refreshToken, OpenID = openID, UserName = nickData.nickname };
            var listNotShow = new List<string>() { "UserNoBindAccount" };
            var result = await UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/InsertOrUpdateAuthUser", false, pra, listNotShow);
            var result = UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/InsertOrUpdateAuthUser", false, pra, listNotShow);
            if (result == false)
            {
                return;
@@ -243,13 +247,13 @@
            //再执行绑定
            var pra2 = new { AccountGuid = Common.Config.Instance.Guid, OpenID = openID };
            result = await UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/BindAuthUserToAccount", false, pra2);
            result = UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/BindAuthUserToAccount", false, pra2);
            if (result == true)
            {
                //绑定微信成功!
                string msg = Language.StringByID(R.MyInternationalizationString.uBindSomethingSuccess);
                msg = msg.Replace("{0}", Language.StringByID(R.MyInternationalizationString.uWebChat));
                this.ShowMassage(ShowMsgType.Tip, msg);
                //绑定成功!下次你可以用微信{0}账号快速登录啦
                string msg = Language.StringByID(R.MyInternationalizationString.uBindWebchatSuccessMsg);
                msg = msg.Replace("{0}", "\r\n");
                this.ShowMassage(ShowMsgType.Normal, msg, null, Language.StringByID(R.MyInternationalizationString.uWell));
                //重新刷新界面
                this.InitMiddleData();
            }
@@ -263,10 +267,10 @@
        /// 解除绑定
        /// </summary>
        /// <param name="infoData"></param>
        private async void UnBindOtherParty(OtherPartyResult infoData)
        private void UnBindOtherParty(OtherPartyResult infoData)
        {
            var pra = new { DistributedMark = infoData.Id };
            var result = await UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/UnBindUserAuth", false, pra);
            var result = UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/UnBindUserAuth", false, pra);
            if (result == true)
            {
                //重新刷新界面