From 75d38a6972b8882d2ff4fbd3c8f8f584cffa3dc7 Mon Sep 17 00:00:00 2001 From: Trae AI Date: Sun, 21 Jun 2026 17:48:06 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=89=88=E6=9C=AC=E5=8C=B9=E9=85=8D?= =?UTF-8?q?=E5=8F=AA=E4=BB=8Epublished=E5=92=8Csuperseded=E7=8A=B6?= =?UTF-8?q?=E6=80=81=E4=B8=AD=E6=9F=A5=E6=89=BE=EF=BC=8C=E6=8E=92=E9=99=A4?= =?UTF-8?q?draft=E5=92=8Cdeprecated?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- backend/internal/router/app/info.go | 16 ++++++++-------- 1 file changed, 8 insertions(+), 8 deletions(-) diff --git a/backend/internal/router/app/info.go b/backend/internal/router/app/info.go index 272a738..e078c0e 100644 --- a/backend/internal/router/app/info.go +++ b/backend/internal/router/app/info.go @@ -72,12 +72,12 @@ func handleAppCheckUpdate(c *gin.Context) { return } - // 同时查询所有版本(包括已失效的),用于匹配客户端版本号 - var allVersions []model.Version + // 同时查询已发布和已失效的版本,用于匹配客户端版本号 + var matchableVersions []model.Version if clientVersion != "" { - if err := database.DB.Where("application_id = ?", app.ID). + if err := database.DB.Where("application_id = ? AND publish_status IN ?", app.ID, []string{"published", "superseded"}). Order("id DESC"). - Find(&allVersions).Error; err != nil { + Find(&matchableVersions).Error; err != nil { response.Error(c, 500, "获取版本列表失败") return } @@ -161,11 +161,11 @@ func handleAppCheckUpdate(c *gin.Context) { clientVersionClean := cleanVersion(clientVersion) - // 找到客户端当前版本对应的版本记录 + // 找到客户端当前版本对应的版本记录(从已发布和已失效版本中匹配) var clientVersionRecord *model.Version - for i := range allVersions { - if cleanVersion(allVersions[i].Version) == clientVersionClean { - clientVersionRecord = &allVersions[i] + for i := range matchableVersions { + if cleanVersion(matchableVersions[i].Version) == clientVersionClean { + clientVersionRecord = &matchableVersions[i] break } }