208 lines
6.5 KiB
Go
208 lines
6.5 KiB
Go
|
package model
|
||
|
|
||
|
import (
|
||
|
arcmdl "go-common/app/service/main/archive/api"
|
||
|
"go-common/library/time"
|
||
|
)
|
||
|
|
||
|
// Filter filter struct
|
||
|
type Filter struct {
|
||
|
ID int64 `json:"id"`
|
||
|
Title string `json:"title"`
|
||
|
SubTitle string `json:"sub_title"`
|
||
|
Logo string `json:"logo"`
|
||
|
Rank int `json:"rank"`
|
||
|
URL string `json:"url"`
|
||
|
DataFocus string `json:"data_focus"`
|
||
|
FocusURL string `json:"focus_url"`
|
||
|
}
|
||
|
|
||
|
// Year year struct
|
||
|
type Year struct {
|
||
|
ID int64 `json:"id"`
|
||
|
Year int64 `json:"year"`
|
||
|
Aid int64 `json:"aid"`
|
||
|
}
|
||
|
|
||
|
// Calendar calendar struct
|
||
|
type Calendar struct {
|
||
|
Stime string `json:"stime"`
|
||
|
Count int64 `json:"count"`
|
||
|
}
|
||
|
|
||
|
// Season season struct
|
||
|
type Season struct {
|
||
|
ID int64 `json:"id"`
|
||
|
Mid int64 `json:"mid"`
|
||
|
Title string `json:"title"`
|
||
|
SubTitle string `json:"sub_title"`
|
||
|
Stime int64 `json:"stime"`
|
||
|
Etime int64 `json:"etime"`
|
||
|
Sponsor string `json:"sponsor"`
|
||
|
Logo string `json:"logo"`
|
||
|
Dic string `json:"dic"`
|
||
|
Status int64 `json:"status"`
|
||
|
Ctime time.Time `json:"ctime"`
|
||
|
Mtime time.Time `json:"mtime"`
|
||
|
Rank int64 `json:"rank"`
|
||
|
IsApp int64 `json:"is_app"`
|
||
|
URL string `json:"url"`
|
||
|
DataFocus string `json:"data_focus"`
|
||
|
FocusURL string `json:"focus_url"`
|
||
|
}
|
||
|
|
||
|
// Contest contest struct
|
||
|
type Contest struct {
|
||
|
ID int64 `json:"id"`
|
||
|
GameStage string `json:"game_stage"`
|
||
|
Stime int64 `json:"stime"`
|
||
|
Etime int64 `json:"etime"`
|
||
|
HomeID int64 `json:"home_id"`
|
||
|
AwayID int64 `json:"away_id"`
|
||
|
HomeScore int64 `json:"home_score"`
|
||
|
AwayScore int64 `json:"away_score"`
|
||
|
LiveRoom int64 `json:"live_room"`
|
||
|
Aid int64 `json:"aid"`
|
||
|
Collection int64 `json:"collection"`
|
||
|
GameState int64 `json:"game_state"`
|
||
|
Dic string `json:"dic"`
|
||
|
Ctime string `json:"ctime"`
|
||
|
Mtime string `json:"mtime"`
|
||
|
Status int64 `json:"status"`
|
||
|
Sid int64 `json:"sid"`
|
||
|
Mid int64 `json:"mid"`
|
||
|
Season interface{} `json:"season"`
|
||
|
HomeTeam interface{} `json:"home_team"`
|
||
|
AwayTeam interface{} `json:"away_team"`
|
||
|
Special int `json:"special"`
|
||
|
SuccessTeam int64 `json:"success_team"`
|
||
|
SuccessTeaminfo interface{} `json:"success_teaminfo"`
|
||
|
SpecialName string `json:"special_name"`
|
||
|
SpecialTips string `json:"special_tips"`
|
||
|
SpecialImage string `json:"special_image"`
|
||
|
Playback string `json:"playback"`
|
||
|
CollectionURL string `json:"collection_url"`
|
||
|
LiveURL string `json:"live_url"`
|
||
|
DataType int64 `json:"data_type"`
|
||
|
MatchID int64 `json:"match_id"`
|
||
|
}
|
||
|
|
||
|
// ContestsData contest data struct
|
||
|
type ContestsData struct {
|
||
|
ID int64 `json:"id"`
|
||
|
Cid int64 `json:"cid"`
|
||
|
URL string `json:"url"`
|
||
|
PointData int64 `json:"point_data"`
|
||
|
GameStatus int64 `json:"game_status"`
|
||
|
DataType int64 `json:"-"`
|
||
|
}
|
||
|
|
||
|
//ContestDataPage contest data pager
|
||
|
type ContestDataPage struct {
|
||
|
Contest *Contest `json:"contest"`
|
||
|
Detail []*ContestsData `json:"detail"`
|
||
|
}
|
||
|
|
||
|
// ElaSub elasticsearch sub contest.
|
||
|
type ElaSub struct {
|
||
|
SeasonStime int64 `json:"season_stime"`
|
||
|
Mid int64 `json:"mid"`
|
||
|
Stime int64 `json:"stime"`
|
||
|
Oid int64 `json:"oid"`
|
||
|
State int64 `json:"state"`
|
||
|
Sid int64 `json:"sid"`
|
||
|
}
|
||
|
|
||
|
// Tree match Active
|
||
|
type Tree struct {
|
||
|
ID int64 `json:"id" form:"id"`
|
||
|
MaID int64 `json:"ma_id,omitempty" form:"ma_id" validate:"required"`
|
||
|
MadID int64 `json:"mad_id,omitempty" form:"mad_id" validate:"required"`
|
||
|
Pid int64 `json:"pid" form:"pid"`
|
||
|
RootID int64 `json:"root_id" form:"root_id"`
|
||
|
GameRank int64 `json:"game_rank,omitempty" form:"game_rank" validate:"required"`
|
||
|
Mid int64 `json:"mid" form:"mid"`
|
||
|
IsDeleted int `json:"is_deleted,omitempty" form:"is_deleted"`
|
||
|
}
|
||
|
|
||
|
// Team .
|
||
|
type Team struct {
|
||
|
ID int64 `json:"id" form:"id"`
|
||
|
Title string `json:"title" form:"title" validate:"required"`
|
||
|
SubTitle string `json:"sub_title" form:"sub_title"`
|
||
|
ETitle string `json:"e_title" form:"e_title"`
|
||
|
CreateTime int64 `json:"create_time" form:"create_time"`
|
||
|
Area string `json:"area" form:"area"`
|
||
|
Logo string `json:"logo" form:"logo" validate:"required"`
|
||
|
UID int64 `json:"uid" form:"uid" gorm:"column:uid"`
|
||
|
Members string `json:"members" form:"members"`
|
||
|
Dic string `json:"dic" form:"dic"`
|
||
|
IsDeleted int `json:"is_deleted" form:"is_deleted"`
|
||
|
}
|
||
|
|
||
|
// ContestInfo .
|
||
|
type ContestInfo struct {
|
||
|
*Contest
|
||
|
HomeName string `json:"home_name"`
|
||
|
AwayName string `json:"away_name"`
|
||
|
SuccessName string `json:"success_name" form:"success_name"`
|
||
|
}
|
||
|
|
||
|
// TreeList .
|
||
|
type TreeList struct {
|
||
|
*Tree
|
||
|
*ContestInfo
|
||
|
}
|
||
|
|
||
|
// Active match Active
|
||
|
type Active struct {
|
||
|
ID int64 `json:"id"`
|
||
|
Mid int64 `json:"mid"`
|
||
|
Sid int64 `json:"sid"`
|
||
|
Background string `json:"background"`
|
||
|
Liveid int64 `json:"live_id"`
|
||
|
Intr string `json:"intr"`
|
||
|
Focus string `json:"focus"`
|
||
|
URL string `json:"url"`
|
||
|
BackColor string `json:"back_color"`
|
||
|
ColorStep string `json:"color_step"`
|
||
|
H5Background string `json:"h5_background"`
|
||
|
H5BackColor string `json:"h5_back_color"`
|
||
|
IntrLogo string `json:"intr_logo"`
|
||
|
IntrTitle string `json:"intr_title"`
|
||
|
IntrText string `json:"intr_text"`
|
||
|
H5Focus string `json:"h5_focus"`
|
||
|
H5Url string `json:"h5_url"`
|
||
|
}
|
||
|
|
||
|
// Module match module
|
||
|
type Module struct {
|
||
|
ID int64 `json:"id"`
|
||
|
MAid int64 `json:"ma_id"`
|
||
|
Name string `json:"name"`
|
||
|
Oids string `json:"oids"`
|
||
|
}
|
||
|
|
||
|
//ActiveDetail 活动页数据模块
|
||
|
type ActiveDetail struct {
|
||
|
ID int64 `json:"id"`
|
||
|
Maid int64 `json:"ma_id"`
|
||
|
GameType int `json:"game_type"`
|
||
|
STime int64 `json:"stime"`
|
||
|
ETime int64 `json:"etime"`
|
||
|
ScoreID int64 `json:"score_id"`
|
||
|
GameStage string `json:"game_stage"`
|
||
|
KnockoutType int `json:"knockout_type"`
|
||
|
WinnerType int `json:"winner_type"`
|
||
|
Online int `json:"online"`
|
||
|
}
|
||
|
|
||
|
//ActivePage 活动页
|
||
|
type ActivePage struct {
|
||
|
Active *Active `json:"active,omitempty"`
|
||
|
Videos []*arcmdl.Arc `json:"video_first,omitempty"`
|
||
|
Modules []*Module `json:"video_module,omitempty"`
|
||
|
ActiveDetail []*ActiveDetail `json:"active_detail,omitempty"`
|
||
|
Season *Season `json:"season,omitempty"`
|
||
|
}
|