108 lines
2.8 KiB
Go
108 lines
2.8 KiB
Go
package model
|
|
|
|
import (
|
|
v1 "go-common/app/service/main/archive/api"
|
|
"go-common/library/time"
|
|
)
|
|
|
|
// UpArcStat up archives stat struct.
|
|
type UpArcStat struct {
|
|
View int64 `json:"view"`
|
|
Reply int64 `json:"reply"`
|
|
Dm int64 `json:"dm"`
|
|
Fans int64 `json:"fans"`
|
|
}
|
|
|
|
// ArchiveReason archive with reason struct.
|
|
type ArchiveReason struct {
|
|
*v1.Arc
|
|
Reason string `json:"reason"`
|
|
}
|
|
|
|
// SearchRes search res data.
|
|
type SearchRes struct {
|
|
TList map[string]*SearchTList `json:"tlist"`
|
|
VList []*SearchVList `json:"vlist"`
|
|
}
|
|
|
|
// SearchTList search cate list.
|
|
type SearchTList struct {
|
|
Tid int64 `json:"tid"`
|
|
Count int64 `json:"count"`
|
|
Name string `json:"name"`
|
|
}
|
|
|
|
// SearchVList video list.
|
|
type SearchVList struct {
|
|
Comment int64 `json:"comment"`
|
|
TypeID int64 `json:"typeid"`
|
|
Play interface{} `json:"play"`
|
|
Pic string `json:"pic"`
|
|
SubTitle string `json:"subtitle"`
|
|
Description string `json:"description"`
|
|
Copyright string `json:"copyright"`
|
|
Title string `json:"title"`
|
|
Review int64 `json:"review"`
|
|
Author string `json:"author"`
|
|
Mid int64 `json:"mid"`
|
|
Created string `json:"created"`
|
|
Length string `json:"length"`
|
|
VideoReview int64 `json:"video_review"`
|
|
Aid int64 `json:"aid"`
|
|
HideClick bool `json:"hide_click"`
|
|
IsPay int `json:"is_pay"`
|
|
IsUnionVideo int `json:"is_union_video"`
|
|
}
|
|
|
|
// UpArc up archive struct
|
|
type UpArc struct {
|
|
Count int64 `json:"count"`
|
|
List []*ArcItem `json:"list"`
|
|
}
|
|
|
|
// ArcItem space archive item.
|
|
type ArcItem struct {
|
|
Aid int64 `json:"aid"`
|
|
Pic string `json:"pic"`
|
|
Title string `json:"title"`
|
|
Duration int64 `json:"duration"`
|
|
Author struct {
|
|
Mid int64 `json:"mid"`
|
|
Name string `json:"name"`
|
|
Face string `json:"face"`
|
|
} `json:"author"`
|
|
Stat struct {
|
|
View interface{} `json:"view"`
|
|
Danmaku int32 `json:"danmaku"`
|
|
Reply int32 `json:"reply"`
|
|
Fav int32 `json:"favorite"`
|
|
Coin int32 `json:"coin"`
|
|
Share int32 `json:"share"`
|
|
Like int32 `json:"like"`
|
|
} `json:"stat"`
|
|
Rights v1.Rights `json:"rights"`
|
|
Pubdate time.Time `json:"pubdate"`
|
|
}
|
|
|
|
// FromArc from archive to space act item.
|
|
func (ac *ArcItem) FromArc(arc *v1.Arc) {
|
|
ac.Aid = arc.Aid
|
|
ac.Pic = arc.Pic
|
|
ac.Title = arc.Title
|
|
ac.Duration = arc.Duration
|
|
ac.Author.Mid = arc.Author.Mid
|
|
ac.Author.Name = arc.Author.Name
|
|
ac.Author.Face = arc.Author.Face
|
|
ac.Stat.View = arc.Stat.View
|
|
if arc.Access >= 10000 {
|
|
ac.Stat.View = "--"
|
|
}
|
|
ac.Stat.Danmaku = arc.Stat.Danmaku
|
|
ac.Stat.Reply = arc.Stat.Reply
|
|
ac.Stat.Fav = arc.Stat.Fav
|
|
ac.Stat.Share = arc.Stat.Share
|
|
ac.Stat.Like = arc.Stat.Like
|
|
ac.Pubdate = arc.PubDate
|
|
ac.Rights = arc.Rights
|
|
}
|