数据结构优化

This commit is contained in:
李琦
2026-01-19 20:21:09 +08:00
parent 68c4c6df1c
commit 7e918cedd4
39 changed files with 3703 additions and 824 deletions

View File

@@ -92,16 +92,38 @@ func (a *Attachment) BeforeUpdate(tx *gorm.DB) error {
type OSSConfig struct {
ID uint `json:"id" gorm:"primaryKey;column:id"`
Name string `json:"name" gorm:"column:name"`
StorageType string `json:"storageType" gorm:"column:storage_type"` // local/qcloud/aliyun/qiniu
AccessKey string `json:"accessKey" gorm:"column:access_key;type:text"` // AES加密存储
SecretKey string `json:"secretKey" gorm:"column:secret_key;type:text"` // AES加密存储
Bucket string `json:"bucket" gorm:"column:bucket"`
Region string `json:"region" gorm:"column:region"`
Domain string `json:"domain" gorm:"column:domain"`
IsActive int `json:"isActive" gorm:"column:is_active;default:0"`
DeletedAt int64 `json:"deletedAt" gorm:"column:deleted_at;default:0"`
CreatedAt int64 `json:"createdAt" gorm:"column:created_at"`
UpdatedAt int64 `json:"updatedAt" gorm:"column:updated_at"`
StorageType string `json:"storageType" gorm:"column:storage_type"` // local/qcloud/aliyun/qiniu
AccessKey string `json:"accessKey" gorm:"column:access_key;type:varchar(255);default:'';not null"` // AES加密存储,默认空字符串(向后兼容)
SecretKey string `json:"secretKey" gorm:"column:secret_key;type:varchar(255);default:'';not null"` // AES加密存储,默认空字符串(向后兼容)
Bucket string `json:"bucket" gorm:"column:bucket"` // 向后兼容
Region string `json:"region" gorm:"column:region"` // 向后兼容
Domain string `json:"domain" gorm:"column:domain"` // 向后兼容
// 阿里云OSS专用字段
OSSAccessKeyID string `json:"ossAccessKeyId" gorm:"column:oss_access_key_id;type:varchar(255);default:'';not null"`
OSSAccessKeySecret string `json:"ossAccessKeySecret" gorm:"column:oss_access_key_secret;type:varchar(255);default:'';not null"`
OSSEndpoint string `json:"ossEndpoint" gorm:"column:oss_endpoint;type:varchar(255);default:'';not null"`
OSSBucket string `json:"ossBucket" gorm:"column:oss_bucket;type:varchar(255);default:'';not null"`
OSSDomain string `json:"ossDomain" gorm:"column:oss_domain;type:varchar(255);default:'';not null"`
// 腾讯云COS专用字段
QCloudSecretID string `json:"qcloudSecretId" gorm:"column:qcloud_secret_id;type:varchar(255);default:'';not null"`
QCloudSecretKey string `json:"qcloudSecretKey" gorm:"column:qcloud_secret_key;type:varchar(255);default:'';not null"`
QCloudRegion string `json:"qcloudRegion" gorm:"column:qcloud_region;type:varchar(255);default:'';not null"`
QCloudBucket string `json:"qcloudBucket" gorm:"column:qcloud_bucket;type:varchar(255);default:'';not null"`
QCloudDomain string `json:"qcloudDomain" gorm:"column:qcloud_domain;type:varchar(255);default:'';not null"`
// 七牛云专用字段
QiniuAccessKey string `json:"qiniuAccessKey" gorm:"column:qiniu_access_key;type:varchar(255);default:'';not null"`
QiniuSecretKey string `json:"qiniuSecretKey" gorm:"column:qiniu_secret_key;type:varchar(255);default:'';not null"`
QiniuBucket string `json:"qiniuBucket" gorm:"column:qiniu_bucket;type:varchar(255);default:'';not null"`
QiniuRegion string `json:"qiniuRegion" gorm:"column:qiniu_region;type:varchar(255);default:'';not null"`
QiniuDomain string `json:"qiniuDomain" gorm:"column:qiniu_domain;type:varchar(255);default:'';not null"`
IsActive int `json:"isActive" gorm:"column:is_active;default:0"`
DeletedAt int64 `json:"deletedAt" gorm:"column:deleted_at;default:0"`
CreatedAt int64 `json:"createdAt" gorm:"column:created_at"`
UpdatedAt int64 `json:"updatedAt" gorm:"column:updated_at"`
}
// TableName 指定表名

View File

@@ -14,6 +14,7 @@ type Work struct {
Year string `json:"year" gorm:"column:year"`
HeroImg string `json:"heroImg" gorm:"column:hero_img"`
Description string `json:"desc" gorm:"column:description;type:text"`
Links string `json:"links" gorm:"column:links;type:text"` // JSON格式存储链接
IsFeatured int `json:"isFeatured" gorm:"column:is_featured;default:0"`
CreatedAt int64 `json:"createdAt" gorm:"column:created_at"`
UpdatedAt int64 `json:"updatedAt" gorm:"column:updated_at"`