From 19a439d778c8ddc0cefb71d341da4e7329911d57 Mon Sep 17 00:00:00 2001
From: wangguan <wangguan@kt007.com>
Date: Thu, 03 Dec 2020 20:46:53 +0800
Subject: [PATCH] 修改排行榜

---
 Assets/Scripts/Guide/TestButton.cs |   80 ++++++++++++++++++++++++++++++++++++----
 1 files changed, 72 insertions(+), 8 deletions(-)

diff --git a/Assets/Scripts/Guide/TestButton.cs b/Assets/Scripts/Guide/TestButton.cs
index b587c34..735f3e2 100644
--- a/Assets/Scripts/Guide/TestButton.cs
+++ b/Assets/Scripts/Guide/TestButton.cs
@@ -27,18 +27,23 @@
         // Debug.Log(s.Length);
         TestFinalPanel();
         // isSending = false;
+        // score = 0;
+
         // TestHttp();
+
     }
 
+    int score;
     private void OnGUI()
     {
         GUILayout.BeginArea(new Rect(5, 330, 150, 300));
         if (GUILayout.Button("SendRequest", GUILayout.Width(150), GUILayout.Height(70)))
         {
             //SendRequest("aa", 4700, 28);
-            SendPost("aaa", 7890, 1);
-
+            score += 100;
+            SendPost(score.ToString(), score, 1, "成绩 25关 3波");
         }
+
         if (GUILayout.Button("SendGet", GUILayout.Width(150), GUILayout.Height(70)))
         {
             SendGet();
@@ -72,15 +77,26 @@
     /// <param name="nickname"></param>
     /// <param name="score"></param>
     /// <param name="level"></param>
-    private void SendPost(string nickname, int score, int level)
+    private void SendPost(string nickname, int score, int level, string waveInfo)
     {
         Debug.Log("开始Post");
+        if (isSending) return;
+        isSending = true;
         string url = "http://9377-big-data.sbk-h5.com:8600/users/addrank";
+
         Dictionary<string, object> keyValues = new Dictionary<string, object>();
-        keyValues.Add("username", imei0);
+        keyValues.Add("username", nickname);
         keyValues.Add("nickname", nickname);
         keyValues.Add("score", score);
         keyValues.Add("level", level);
+        keyValues.Add("extra", waveInfo);
+
+        //string v = PostWebRequest(url, data.ToJson());
+        //LoadPostTxt(v);
+        //Debug.Log(v);
+        //byte[] postBytes = System.Text.Encoding.Default.GetBytes(data.ToJson());
+        //StartCoroutine(Post(url, postBytes));
+
         HttpHelper.Request(this, url, HttpHelper.MethodType.POST, keyValues, delegate (object value)
         {
             if (value != null)
@@ -88,6 +104,24 @@
 
         }, HttpHelper.DownloadHanlderType.kHttpTEXT);
 
+    }
+
+    IEnumerator Post(string url, byte[] postBytes)
+    {
+        UnityWebRequest request = UnityWebRequest.Post(url, "POST");
+        request.uploadHandler = new UploadHandlerRaw(postBytes);
+        request.downloadHandler = new DownloadHandlerBuffer();
+        request.SetRequestHeader("Content-Type", "application/json");
+        yield return request.SendWebRequest();
+
+        if (request.isDone)
+        {
+            LoadPostTxt(request.downloadHandler.text);
+        }
+        else
+        {
+
+        }
     }
 
     private void LoadPostTxt(string value)
@@ -100,9 +134,11 @@
         }
         else if (loginData["msg"].ToString() == "OK")
         {
-            Debug.Log("成功了");
-            SendGet();
+            Debug.Log("成功了当前score:" + score);
+            //SendGet();
         }
+
+        isSending = false;
     }
 
     /// <summary>
@@ -110,6 +146,7 @@
     /// </summary>
     private void SendGet()
     {
+        Debug.Log("开始下载排行榜");
         string url = "http://9377-big-data.sbk-h5.com:8600/users/getrank";//9377-big-data.sbk-h5.com:8600/users/getrank?username=0001&limit=100
         Dictionary<string, object> keyValues = new Dictionary<string, object>();
         keyValues.Add("username", imei0);
@@ -129,6 +166,7 @@
         int myrank = int.Parse(getData["myrank"].ToString());
 
         JsonData rank = getData["rank"];
+
         List<HttpGetInfo> allHttpGetInfoLis = new List<HttpGetInfo>();
         foreach (JsonData item in rank)
         {
@@ -137,10 +175,12 @@
                 {
                     id = int.Parse(item["id"].ToString()),
                     username = item["username"].ToString(),
+
                     nickname = item["nickname"].ToString(),
                     score = int.Parse(item["score"].ToString()),
                     level = int.Parse(item["level"].ToString()),
-                    extra = item["extra"],
+                    extra = item["nickname"],
+                    waveInfo = item["extra"].ToString(),
                     create_time = int.Parse(item["create_time"].ToString()),
                 }
             );
@@ -148,6 +188,29 @@
 
         foreach (HttpGetInfo item in allHttpGetInfoLis)
         {
+
+            Debug.LogError(item.extra);
+            Debug.LogError(item.nickname);
+            Debug.LogError(item.waveInfo);
+
+            // if (item.extra.ContainsKey("waveInfo"))
+            // {
+            //     Debug.LogError(item.extra["waveInfo"]);
+            // }
+            // string a = item.extra.ToJson();
+            // Debug.LogError(a);
+            // JsonData tmpData = JsonMapper.ToObject(a);
+            // Debug.LogError(tmpData);
+
+            // JsonData tmpData = item.extra;
+            // if (tmpData != null)
+            // {
+            //     if (tmpData.Count > 0)
+            // }
+            // if (item.extra.ContainsKey("waveInfo"))
+            // {
+            //     Debug.LogError(item.extra["waveInfo"].ToString());
+            // }
             Debug.Log($"item.username:{item.username}  item.nickname:{item.nickname} item.score:{item.score}  item.create_time:{item.create_time}");
         }
     }
@@ -157,7 +220,7 @@
     {
         GameObject go = Instantiate(Resources.Load<GameObject>("UI/Final/FinalPanel"), transform);
         FinalPanel panelUI = go.GetComponent<FinalPanel>();
-        panelUI.SetData("成绩 25关 3波", 789220);
+        panelUI.SetData("25关 3波", 101);
         panelUI.SetPlayEffectAC(null);
     }
 
@@ -293,5 +356,6 @@
     public int score;
     public int level;
     public JsonData extra;
+    public string waveInfo;
     public int create_time;
 }

--
Gitblit v1.9.1