Add internal/model/music.go
This commit is contained in:
37
internal/model/music.go
Normal file
37
internal/model/music.go
Normal file
@@ -0,0 +1,37 @@
|
||||
package model
|
||||
|
||||
import "time"
|
||||
|
||||
// MusicCategory 音乐分类(曲风)
|
||||
type MusicCategory struct {
|
||||
ID uint `gorm:"primaryKey" json:"id"`
|
||||
Name string `gorm:"size:50;not null" json:"name"`
|
||||
Icon string `gorm:"size:50" json:"icon"`
|
||||
Sort int `gorm:"default:0" json:"sort"`
|
||||
CreatedAt time.Time `json:"created_at"`
|
||||
UpdatedAt time.Time `json:"updated_at"`
|
||||
}
|
||||
|
||||
// Song 歌曲模型(3 套音乐网站共用同一套数据)
|
||||
type Song struct {
|
||||
ID uint `gorm:"primaryKey" json:"id"`
|
||||
Title string `gorm:"size:200;not null" json:"title"` // 歌曲名
|
||||
Artist string `gorm:"size:100;not null" json:"artist"` // 歌手
|
||||
Album string `gorm:"size:200" json:"album"` // 专辑
|
||||
CategoryID uint `gorm:"index" json:"category_id"`
|
||||
CategoryName string `gorm:"size:50" json:"category_name"` // 曲风
|
||||
Cover string `gorm:"size:255" json:"cover"` // 封面URL
|
||||
Duration int `gorm:"default:0" json:"duration"` // 时长(秒)
|
||||
PlayCount int `gorm:"default:0" json:"play_count"` // 播放量
|
||||
LikeCount int `gorm:"default:0" json:"like_count"` // 收藏量
|
||||
Lyrics string `gorm:"type:text" json:"lyrics"` // 歌词
|
||||
ReleaseDate string `gorm:"size:20" json:"release_date"` // 发行日期
|
||||
Language string `gorm:"size:50" json:"language"` // 语种
|
||||
Tags string `gorm:"type:text" json:"tags"` // JSON: 标签数组
|
||||
IsHot bool `gorm:"default:false" json:"is_hot"` // 热门
|
||||
IsNew bool `gorm:"default:false" json:"is_new"` // 新歌
|
||||
Sort int `gorm:"default:0" json:"sort"`
|
||||
Status int `gorm:"default:1;not null" json:"status"` // 1=上架
|
||||
CreatedAt time.Time `json:"created_at"`
|
||||
UpdatedAt time.Time `json:"updated_at"`
|
||||
}
|
||||
Reference in New Issue
Block a user