133 lines
7.2 KiB
Go
133 lines
7.2 KiB
Go
package service
|
|
|
|
import "time"
|
|
|
|
// SSBind ScoreSaber和BeatLeader共享的绑定表GORM模型
|
|
type SSBind struct {
|
|
ID int64 `json:"id" gorm:"primaryKey;autoIncrement"`
|
|
QQID string `json:"qqid" gorm:"column:qqid;uniqueIndex"`
|
|
SSID string `json:"ssid" gorm:"column:ssid;uniqueIndex"`
|
|
}
|
|
|
|
// TableName 指定表名
|
|
func (SSBind) TableName() string {
|
|
return "ssBind"
|
|
}
|
|
|
|
// SSData ScoreSaber数据GORM模型
|
|
type SSData struct {
|
|
ID string `json:"id" gorm:"column:id;primaryKey"`
|
|
Name string `json:"name" gorm:"column:name"`
|
|
Country string `json:"country" gorm:"column:country"`
|
|
PP float64 `json:"pp" gorm:"column:pp"`
|
|
Rank int `json:"rank" gorm:"column:rank"`
|
|
CountryRank int `json:"country_rank" gorm:"column:country_rank"`
|
|
TotalScore int64 `json:"total_score" gorm:"column:total_score"`
|
|
TotalRankedScore int64 `json:"total_ranked_score" gorm:"column:total_ranked_score"`
|
|
AverageRankedAccuracy float64 `json:"average_ranked_accuracy" gorm:"column:average_ranked_accuracy"`
|
|
TotalPlayCount int `json:"total_play_count" gorm:"column:total_play_count"`
|
|
RankedPlayCount int `json:"ranked_play_count" gorm:"column:ranked_play_count"`
|
|
ReplaysWatched int `json:"replays_watched" gorm:"column:replays_watched"`
|
|
GeneratedTime time.Time `json:"generated_time" gorm:"column:generated_time"`
|
|
}
|
|
|
|
// TableName 指定表名
|
|
func (SSData) TableName() string {
|
|
return "ssData"
|
|
}
|
|
|
|
// BLData BeatLeader数据GORM模型
|
|
type BLData struct {
|
|
ID string `json:"id" gorm:"column:id;primaryKey"`
|
|
Name string `json:"name" gorm:"column:name"`
|
|
Country string `json:"country" gorm:"column:country"`
|
|
PP float64 `json:"pp" gorm:"column:pp"`
|
|
Rank int `json:"rank" gorm:"column:rank"`
|
|
CountryRank int `json:"country_rank" gorm:"column:country_rank"`
|
|
TotalScore int64 `json:"total_score" gorm:"column:total_score"`
|
|
TotalRankedScore int64 `json:"total_ranked_score" gorm:"column:total_ranked_score"`
|
|
AverageRankedAccuracy float64 `json:"average_ranked_accuracy" gorm:"column:average_ranked_accuracy"`
|
|
TotalPlayCount int `json:"total_play_count" gorm:"column:total_play_count"`
|
|
RankedPlayCount int `json:"ranked_play_count" gorm:"column:ranked_play_count"`
|
|
ReplaysWatched int `json:"replays_watched" gorm:"column:replays_watched"`
|
|
GeneratedTime time.Time `json:"generated_time" gorm:"column:generated_time"`
|
|
}
|
|
|
|
// TableName 指定表名
|
|
func (BLData) TableName() string {
|
|
return "blData"
|
|
}
|
|
|
|
// SSRecordData ScoreSaber记录数据GORM模型
|
|
type SSRecordData struct {
|
|
ID int64 `json:"id" gorm:"primaryKey;autoIncrement"`
|
|
ScoreID int `json:"score_id" gorm:"column:score_id"`
|
|
SSID string `json:"ss_id" gorm:"column:ss_id"`
|
|
Name string `json:"name" gorm:"column:name"`
|
|
Country string `json:"country" gorm:"column:country"`
|
|
SongName string `json:"song_name" gorm:"column:song_name"`
|
|
SongSubName string `json:"song_sub_name" gorm:"column:song_sub_name"`
|
|
SongAuthorName string `json:"song_author_name" gorm:"column:song_author_name"`
|
|
SongHash string `json:"song_hash" gorm:"column:song_hash"`
|
|
CoverImage string `json:"cover_image" gorm:"column:cover_image"`
|
|
DifficultyRaw string `json:"difficulty_raw" gorm:"column:difficulty_raw"`
|
|
PP float64 `json:"pp" gorm:"column:pp"`
|
|
Stars float64 `json:"stars" gorm:"column:stars"`
|
|
Weight float64 `json:"weight" gorm:"column:weight"`
|
|
Modifiers string `json:"modifiers" gorm:"column:modifiers"`
|
|
Multiplier float64 `json:"multiplier" gorm:"column:multiplier"`
|
|
Rank int `json:"rank" gorm:"column:rank"`
|
|
BadCuts int `json:"bad_cuts" gorm:"column:bad_cuts"`
|
|
Score int `json:"score" gorm:"column:score"`
|
|
MaxScore int `json:"max_score" gorm:"column:max_score"`
|
|
MissedNotes int `json:"missed_notes" gorm:"column:missed_notes"`
|
|
MaxCombo int `json:"max_combo" gorm:"column:max_combo"`
|
|
FullCombo bool `json:"full_combo" gorm:"column:full_combo"`
|
|
DeviceHmd string `json:"device_hmd" gorm:"column:device_hmd"`
|
|
DeviceControllerLeft string `json:"device_controller_left" gorm:"column:device_controller_left"`
|
|
DeviceControllerRight string `json:"device_controller_right" gorm:"column:device_controller_right"`
|
|
GeneratedTime time.Time `json:"generated_time" gorm:"column:generated_time"`
|
|
}
|
|
|
|
// TableName 指定表名
|
|
func (SSRecordData) TableName() string {
|
|
return "ssRecordData"
|
|
}
|
|
|
|
// BLRecordData BeatLeader记录数据GORM模型
|
|
type BLRecordData struct {
|
|
ID int64 `json:"id" gorm:"primaryKey;autoIncrement"`
|
|
ScoreID int `json:"score_id" gorm:"column:score_id"`
|
|
BLID string `json:"bl_id" gorm:"column:bl_id"`
|
|
Name string `json:"name" gorm:"column:name"`
|
|
Country string `json:"country" gorm:"column:country"`
|
|
SongName string `json:"song_name" gorm:"column:song_name"`
|
|
SongSubName string `json:"song_sub_name" gorm:"column:song_sub_name"`
|
|
SongAuthorName string `json:"song_author_name" gorm:"column:song_author_name"`
|
|
SongHash string `json:"song_hash" gorm:"column:song_hash"`
|
|
SongID string `json:"song_id" gorm:"column:song_id"`
|
|
CoverImage string `json:"cover_image" gorm:"column:cover_image"`
|
|
DifficultyRaw string `json:"difficulty_raw" gorm:"column:difficulty_raw"`
|
|
PP float64 `json:"pp" gorm:"column:pp"`
|
|
Stars float64 `json:"stars" gorm:"column:stars"`
|
|
Weight float64 `json:"weight" gorm:"column:weight"`
|
|
Modifiers string `json:"modifiers" gorm:"column:modifiers"`
|
|
Multiplier float64 `json:"multiplier" gorm:"column:multiplier"`
|
|
BadCuts int `json:"bad_cuts" gorm:"column:bad_cuts"`
|
|
Score int `json:"score" gorm:"column:score"`
|
|
Rank int `json:"rank" gorm:"column:rank"`
|
|
MaxScore int `json:"max_score" gorm:"column:max_score"`
|
|
MissedNotes int `json:"missed_notes" gorm:"column:missed_notes"`
|
|
MaxCombo int `json:"max_combo" gorm:"column:max_combo"`
|
|
FullCombo bool `json:"full_combo" gorm:"column:full_combo"`
|
|
DeviceHmd string `json:"device_hmd" gorm:"column:device_hmd"`
|
|
DeviceControllerLeft string `json:"device_controller_left" gorm:"column:device_controller_left"`
|
|
DeviceControllerRight string `json:"device_controller_right" gorm:"column:device_controller_right"`
|
|
GeneratedTime time.Time `json:"generated_time" gorm:"column:generated_time"`
|
|
}
|
|
|
|
// TableName 指定表名
|
|
func (BLRecordData) TableName() string {
|
|
return "blRecordData"
|
|
}
|