mirror of
https://github.com/Awuqing/BackupX.git
synced 2026-05-07 06:12:56 +08:00
后端: - 新增 GET /api/system/update-check,从 GitHub Releases API 获取最新版本 - 自动比较当前版本与最新版本,匹配当前平台的下载链接 - 返回版本号、更新说明、下载链接、Docker 镜像信息 前端(系统设置页重构): - 新增"检查更新"按钮,点击后展示更新结果 - 有新版本时显示版本号、更新说明、下载按钮、Docker 更新命令 - 新增磁盘状态卡片(总空间/已用/可用/使用率) - 运行模式用彩色 Tag 区分(生产/开发)
34 lines
809 B
Go
34 lines
809 B
Go
package http
|
|
|
|
import (
|
|
"backupx/server/internal/service"
|
|
"backupx/server/pkg/response"
|
|
"github.com/gin-gonic/gin"
|
|
)
|
|
|
|
type SystemHandler struct {
|
|
systemService *service.SystemService
|
|
}
|
|
|
|
func NewSystemHandler(systemService *service.SystemService) *SystemHandler {
|
|
return &SystemHandler{systemService: systemService}
|
|
}
|
|
|
|
func (h *SystemHandler) Info(c *gin.Context) {
|
|
response.Success(c, h.systemService.GetInfo(c.Request.Context()))
|
|
}
|
|
|
|
func (h *SystemHandler) CheckUpdate(c *gin.Context) {
|
|
result, err := h.systemService.CheckUpdate(c.Request.Context())
|
|
if err != nil {
|
|
// 即使检查失败也返回当前版本信息
|
|
response.Success(c, gin.H{
|
|
"currentVersion": result.CurrentVersion,
|
|
"hasUpdate": false,
|
|
"error": err.Error(),
|
|
})
|
|
return
|
|
}
|
|
response.Success(c, result)
|
|
}
|