From 4dc8adc2bf82f1827324c4dbefbc4477202bc433 Mon Sep 17 00:00:00 2001 From: wxr <wxr@hdlchina.com.cn> Date: 星期一, 23 九月 2024 16:53:33 +0800 Subject: [PATCH] 服务器自动选择;i --- HDL_ON/UI/UI1-Login/RegisterPageBLL.cs | 82 +++++++++++++++++++++++++++++++++++++++++ 1 files changed, 82 insertions(+), 0 deletions(-) diff --git a/HDL_ON/UI/UI1-Login/RegisterPageBLL.cs b/HDL_ON/UI/UI1-Login/RegisterPageBLL.cs index cb6abf2..50aa11f 100644 --- a/HDL_ON/UI/UI1-Login/RegisterPageBLL.cs +++ b/HDL_ON/UI/UI1-Login/RegisterPageBLL.cs @@ -1,4 +1,5 @@ 锘縰sing System; +using System.Collections.Generic; using System.Text.RegularExpressions; using System.Threading; using HDL_ON.DAL.Server; @@ -9,6 +10,9 @@ { public partial class RegisterPage { + + List<GlobalRegionListRes> serverList; + /// <summary> /// 鍔犺浇浜嬩欢鍒楄〃 /// </summary> @@ -760,5 +764,83 @@ } return true; } + + + /// <summary> + /// 鑾峰彇鏈嶅姟鍣ㄥ垪琛� + /// </summary> + void getServerList() + { + var waitPage = new Loading(); + bodyView.AddChidren(waitPage); + waitPage.Start(Language.StringByID(StringId.PleaseWait)); + + + System.Threading.Tasks.Task.Run(() => + { + try + { + Console.WriteLine("GetCountryByIP"); + var ddd = JLCountrycode.CountryCodeView.Current.GetCountryByIP(); + Console.WriteLine(ddd); + serverList = new List<GlobalRegionListRes>(); + var requestJson = HttpUtil.GetSignRequestJson(new GetRegionListObj() { regionMark = HttpUtil.RegionMark }); + var revertObj = HttpUtil.RequestHttpsPost(NewAPI.API_POST_GlobalRegionList, requestJson, HttpUtil.GlobalRequestHttpsHost); + if (revertObj.Code == StateCode.SUCCESS) + { + Application.RunOnMainThread(() => + { + var responseDataObj = Newtonsoft.Json.JsonConvert.DeserializeObject<List<GlobalRegionListRes>>(revertObj.Data.ToString()); + if (responseDataObj != null) + { + serverList = responseDataObj; + if (serverList.Count > 0) + { + if (Language.CurrentLanguage == "Chinese") + { + var server = serverList.Find((obj) => obj.regionUrl.Contains("china-gateway")); + if (server != null) + { + OnAppConfig.Instance.GlobalRegion.regionUrl = server.regionUrl; + SetServerText(); + } + } + else + { + var server = serverList.Find((obj) => obj.regionUrl.Contains("bahrain-gateway")); + if (server != null) + { + OnAppConfig.Instance.GlobalRegion.regionUrl = server.regionUrl; + SetServerText(); + } + } + } + } + }); + } + else + { + //鎻愮ず閿欒 + IMessageCommon.Current.ShowErrorInfoAlter(revertObj.Code); + } + } + catch + { + + } + finally + { + Application.RunOnMainThread(() => + { + if (waitPage != null) + { + waitPage.RemoveFromParent(); + waitPage = null; + } + }); + } + }); + + } } } \ No newline at end of file -- Gitblit v1.8.0