| | |
| | | {
|
| | | //解除绑定
|
| | | bindTipText = Language.StringByID(R.MyInternationalizationString.uUnBinded);
|
| | | bindNameText = dicBindData["Wechat"].Nickname;
|
| | | bindNameText = dicBindData["Wechat"].UserName;
|
| | | }
|
| | | var rowChat = new FrameRowControl(listView.rowSpace / 2);
|
| | | rowChat.Y = Application.GetRealHeight(11);
|
| | |
| | | btnChat.TextSize = 15;
|
| | | rowChat.AddChidren(btnChat, ChidrenBindMode.BindEventOnly);
|
| | | //未授权 OR 名字
|
| | | var btnTip1 = rowChat.AddLeftCaption(bindNameText, 400, 49);
|
| | | 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;
|
| | |
| | | this.dicBindData[info.Platform] = info;
|
| | | }
|
| | |
|
| | | //获取用户昵称
|
| | | if (this.dicBindData.ContainsKey("Wechat") == true)
|
| | | {
|
| | | var myData = this.dicBindData["Wechat"];
|
| | | //给个默认值
|
| | | myData.Nickname = "Wechat";
|
| | | var strUrl = "https://api.weixin.qq.com/sns/userinfo?access_token=" + myData.AccessToken;
|
| | | strUrl += "&openid=" + myData.OpenID;
|
| | | var byteData = await Common.CommonPage.Instance.DoRequestZigbeeHttpsInterface(strUrl, null, null, "GET");
|
| | | if (byteData != null)
|
| | | {
|
| | | var receipData = System.Text.Encoding.UTF8.GetString(byteData);
|
| | | var nickData = Newtonsoft.Json.JsonConvert.DeserializeObject<NicknameInfo>(receipData);
|
| | | myData.Nickname = nickData.nickname;
|
| | | }
|
| | | }
|
| | |
|
| | | return true;
|
| | | }
|
| | |
|
| | |
| | | /// <param name="infoData"></param>
|
| | | private async void BindWechat(string accessToken, string refreshToken, string openID)
|
| | | {
|
| | | var pra = new { AccessToken = accessToken, RefreshToken = refreshToken, OpenID = 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");
|
| | | if (byteData == null)
|
| | | {
|
| | | return;
|
| | | }
|
| | | var receipData = System.Text.Encoding.UTF8.GetString(byteData);
|
| | | var nickData = Newtonsoft.Json.JsonConvert.DeserializeObject<NicknameInfo>(receipData);
|
| | |
|
| | | //先上传微信资料
|
| | | 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);
|
| | | if (result == false)
|
| | |
| | | return;
|
| | | }
|
| | |
|
| | | //再执行绑定
|
| | | var pra2 = new { AccountGuid = Common.Config.Instance.Guid, OpenID = openID };
|
| | | result = await UserCenterLogic.GetResultStatuByRequestHttps("ZigbeeUsers/BindAuthUserToAccount", false, pra2);
|
| | | if (result == true)
|
| | |
| | | /// </summary>
|
| | | public string Platform = string.Empty;
|
| | | /// <summary>
|
| | | /// 昵称(需要自己去获取)
|
| | | /// </summary>
|
| | | public string Nickname = string.Empty;
|
| | | }
|
| | |
|
| | | /// <summary>
|
| | | /// 昵称信息
|
| | | /// </summary>
|
| | | private class NicknameInfo
|
| | | {
|
| | | /// <summary>
|
| | | /// 昵称
|
| | | /// </summary>
|
| | | public string nickname = string.Empty;
|
| | | public string UserName = string.Empty;
|
| | | }
|
| | |
|
| | | #endregion
|