修复: 版本更新与设置面板走查问题
- 更新链路: 检查记录远端SHA256,下载完成事件回传,安装时带哈希校验 - 续传: 服务器忽略Range返回200时截断重下防追加损坏,文件名去query - 定时器: 自动检查可重入,配置变更免重启生效,关闭即停,下载加互斥 - 前端: 支持跳过此版本并按版本去重,手动检查不受门禁限制,启动未就绪延时重试 - 更新面板: 新增自动检查开关/间隔/地址配置与进度条状态映射 - 版本历史: cache参数强制刷新与加载超时重试兜底 - 配置: 侧边栏分区全链路持久化,保存请求复用api类型防字段丢失 - 侧边栏: 区块定位改显式类名,不再依赖排序位置 - 绑定: 重新生成并与镜像目录同步
This commit is contained in:
+20
-15
@@ -24,9 +24,10 @@ func NewConfigAPI() (*ConfigAPI, error) {
|
||||
|
||||
// GetAppConfigResponse 获取应用配置响应
|
||||
type GetAppConfigResponse struct {
|
||||
Tabs []AppTabDefinition `json:"tabs"`
|
||||
VisibleTabs []string `json:"visibleTabs"`
|
||||
DefaultTab string `json:"defaultTab"`
|
||||
Tabs []AppTabDefinition `json:"tabs"`
|
||||
VisibleTabs []string `json:"visibleTabs"`
|
||||
DefaultTab string `json:"defaultTab"`
|
||||
SidebarSections []string `json:"sidebarSections"`
|
||||
}
|
||||
|
||||
// AppTabDefinition 应用 Tab 定义(前端格式)
|
||||
@@ -39,9 +40,10 @@ type AppTabDefinition struct {
|
||||
|
||||
// SaveAppConfigRequest 保存应用配置请求(前端格式)
|
||||
type SaveAppConfigRequest struct {
|
||||
Tabs []AppTabDefinition `json:"tabs"`
|
||||
VisibleTabs []string `json:"visibleTabs"`
|
||||
DefaultTab string `json:"defaultTab"`
|
||||
Tabs []AppTabDefinition `json:"tabs"`
|
||||
VisibleTabs []string `json:"visibleTabs"`
|
||||
DefaultTab string `json:"defaultTab"`
|
||||
SidebarSections []string `json:"sidebarSections"`
|
||||
}
|
||||
|
||||
// GetAppConfig 获取应用配置
|
||||
@@ -73,9 +75,10 @@ func (api *ConfigAPI) GetAppConfig() (map[string]interface{}, error) {
|
||||
return map[string]interface{}{
|
||||
"success": true,
|
||||
"data": GetAppConfigResponse{
|
||||
Tabs: tabs,
|
||||
VisibleTabs: tabConfig.VisibleTabs,
|
||||
DefaultTab: tabConfig.DefaultTab,
|
||||
Tabs: tabs,
|
||||
VisibleTabs: tabConfig.VisibleTabs,
|
||||
DefaultTab: tabConfig.DefaultTab,
|
||||
SidebarSections: tabConfig.SidebarSections,
|
||||
},
|
||||
}, nil
|
||||
}
|
||||
@@ -116,9 +119,10 @@ func (api *ConfigAPI) SaveAppConfig(req SaveAppConfigRequest) (map[string]interf
|
||||
}
|
||||
|
||||
tabConfig := &service.TabConfig{
|
||||
AvailableTabs: availableTabs,
|
||||
VisibleTabs: req.VisibleTabs,
|
||||
DefaultTab: req.DefaultTab,
|
||||
AvailableTabs: availableTabs,
|
||||
VisibleTabs: req.VisibleTabs,
|
||||
DefaultTab: req.DefaultTab,
|
||||
SidebarSections: req.SidebarSections,
|
||||
}
|
||||
|
||||
// 保存配置
|
||||
@@ -201,8 +205,9 @@ func (api *ConfigAPI) MigrateTabConfig() error {
|
||||
}
|
||||
|
||||
return api.configService.SaveTabConfig(&service.TabConfig{
|
||||
AvailableTabs: newTabs,
|
||||
VisibleTabs: newVisible,
|
||||
DefaultTab: defaultTab,
|
||||
AvailableTabs: newTabs,
|
||||
VisibleTabs: newVisible,
|
||||
DefaultTab: defaultTab,
|
||||
SidebarSections: config.SidebarSections,
|
||||
})
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user