feat: 添加存储配置管理功能

- 添加存储配置管理页面(列表、创建、编辑)
- 支持本地存储、S3、WebDAV、FTP、SFTP 等存储类型
- 添加存储配置测试连接功能
- 本地存储自动初始化且禁止删除
- 修复 Switch 组件状态显示问题
- 添加更新存储配置时的 status 字段支持
This commit is contained in:
2026-05-02 17:48:58 +08:00
parent ea8ffb6c74
commit 9b82fbef4e
35 changed files with 5425 additions and 21 deletions
+18 -1
View File
@@ -165,6 +165,8 @@ func initMySQL() {
&model.ExtensionAPIKey{},
&model.DynamicCode{},
&model.PaymentChannel{},
&model.EmailConfig{},
&model.StorageConfig{},
&model.Captcha{},
&model.ApiUsage{},
&model.StorageUsage{},
@@ -366,7 +368,22 @@ func initData() {
DB.Where("app_id IS NULL").Delete(&model.CloudVariable{})
}
// 初始化文档分类和文档
var localStorageCount int64
DB.Model(&model.StorageConfig{}).Where("type = ?", "local").Count(&localStorageCount)
if localStorageCount == 0 {
log.Println("Creating default local storage config...")
defaultStorage := model.StorageConfig{
Name: "本地存储",
Type: "local",
IsDefault: true,
Status: "active",
Remark: "系统默认本地存储",
}
DB.Create(&defaultStorage)
} else {
DB.Model(&model.StorageConfig{}).Where("type = ? AND (status = '' OR status IS NULL)", "local").Update("status", "active")
}
initDocData()
}