From ab510c8f8d6743b53ca2534c64e4588ca144d9c3 Mon Sep 17 00:00:00 2001 From: chfei Date: Tue, 13 Oct 2026 18:09:49 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E7=A8=8B=E5=BA=8F=20=20?= =?UTF-8?q?=E4=BF=AE=E5=A4=8D=20=E8=8E=B7=E5=8F=96=E6=95=B0=E6=8D=AE?= =?UTF-8?q?=E5=A4=B1=E8=B4=A5bug,=E5=A2=9E=E5=8A=A0=E5=80=92=E5=8F=99?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- Update/Update/MainForm.cs | 75 +++++++++++++++++++++++---------------- 1 file changed, 45 insertions(+), 30 deletions(-) diff --git a/Update/Update/MainForm.cs b/Update/Update/MainForm.cs index 91a0f6f..8cff662 100644 --- a/Update/Update/MainForm.cs +++ b/Update/Update/MainForm.cs @@ -50,44 +50,58 @@ namespace Update } private List GetChangeInfos() { - string paidanUrl = $"https://update-wx-order.e57.cn"; - string shanghuoUrl = $"https://update.e57.cn"; - using (WebClient c = new WebClient()) + try { - c.Encoding = Encoding.UTF8; - string url = $"/api/releases/since?version={(Program.oldVersion / 100m)}&channel=stable"; - if (Program.softName == "29WxFindOrder") + string paidanUrl = $"https://update-wx-order.e57.cn"; + string shanghuoUrl = $"https://update.e57.cn"; + using (WebClient c = new WebClient()) { - url = paidanUrl + url; - } - else if (Program.softName == "29供应链.exe") - url = shanghuoUrl + url; - string json = c.DownloadString(url); - var root = MiniJson.Json.Deserialize(json) as Dictionary; - if (root["ok"].ToString() == "True") - { - var data = (Dictionary)root["data"]; - var versionsRaw = (List)data["versions"]; - - var list = new List(); - foreach (Dictionary item in versionsRaw) + c.Encoding = Encoding.UTF8; + string url = $"/api/releases/since?version={(Program.oldVersion / 100m)}&channel=stable"; + if (Program.softName == "29WxFindOrder") { - var ci = new ChangelogItem + url = paidanUrl + url; + } + else if (Program.softName == "29供应链.exe") + url = shanghuoUrl + url; + string json = c.DownloadString(url); + var root = MiniJson.Json.Deserialize(json) as Dictionary; + if (root["ok"].ToString() == "True") + { + var data = (Dictionary)root["data"]; + var versionsRaw = (List)data["versions"]; + + var list = new List(); + foreach (Dictionary item in versionsRaw) { - Version = item["version"]?.ToString(), - Notes = item["notes"]?.ToString(), - }; + var ci = new ChangelogItem + { + Version = item["version"]?.ToString(), + Notes = item["notes"]?.ToString(), + }; - if (DateTime.TryParse(item["publishedAt"]?.ToString(), out DateTime v)) - { - ci.PublishedAt = v.ToString("yyyy-MM-dd"); + if (DateTime.TryParse(item["publishedAt"]?.ToString(), out DateTime v)) + { + ci.ChangeTime = v; + } + list.Add(ci); } - list.Add(ci); + list.Sort((a, b) => b.ChangeTime.CompareTo(a.ChangeTime)); + return list; } - return list; } + return null; + } + catch (Exception ex) + { + return new List + { + new ChangelogItem + { + Notes="更新日志获取错误\n"+ex.Message + } + }; } - return null; } /// @@ -423,7 +437,8 @@ namespace Update public class ChangelogItem { public string Version { get; set; } - public string PublishedAt { get; set; } + public string PublishedAt => ChangeTime.ToString("yyyy-MM-dd"); + public DateTime ChangeTime { get; set; } public string Notes { get; set; } public string[] Items