123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159 |
- package model
- import (
- "go-common/app/interface/main/dm2/model"
- tagmdl "go-common/app/interface/main/tag/model"
- accmdl "go-common/app/service/main/account/model"
- arcmdl "go-common/app/service/main/archive/api"
- ugcmdl "go-common/app/service/main/ugcpay/api/grpc/v1"
- )
- // View view data
- type View struct {
- // archive data
- *arcmdl.Arc
- NoCache bool `json:"no_cache"`
- // video data pages
- Pages []*arcmdl.Page `json:"pages,omitempty"`
- Subtitle *Subtitle `json:"subtitle"`
- Asset *ugcmdl.AssetQueryResp `json:"asset,omitempty"`
- }
- // AssetRelation .
- type AssetRelation struct {
- State int `json:"state"`
- }
- // Stat archive stat web struct
- type Stat struct {
- Aid int64 `json:"aid"`
- 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"`
- NowRank int32 `json:"now_rank"`
- HisRank int32 `json:"his_rank"`
- NoReprint int32 `json:"no_reprint"`
- Copyright int32 `json:"copyright"`
- }
- // Detail detail data
- type Detail struct {
- View *View
- Card *Card
- Tags []*tagmdl.Tag
- Reply *ReplyHot
- Related []*arcmdl.Arc
- }
- // ArchiveUserCoins .
- type ArchiveUserCoins struct {
- Multiply int64 `json:"multiply"`
- }
- // Subtitle dm subTitle.
- type Subtitle struct {
- AllowSubmit bool `json:"allow_submit"`
- List []*SubtitleItem `json:"list"`
- }
- // SubtitleItem dm subTitle.
- type SubtitleItem struct {
- *model.VideoSubtitle
- Author *accmdl.Info `json:"author"`
- }
- // TripleRes struct
- type TripleRes struct {
- Like bool `json:"like"`
- Coin bool `json:"coin"`
- Fav bool `json:"fav"`
- Multiply int64 `json:"multiply"`
- UpID int64 `json:"-"`
- Anticheat bool `json:"-"`
- }
- var (
- // StatAllowStates archive stat allow states
- statAllowStates = []int32{-9, -15, -30}
- )
- // CheckAllowState check archive stat allow state
- func CheckAllowState(arc *arcmdl.Arc) bool {
- if arc.IsNormal() {
- return true
- }
- for _, allow := range statAllowStates {
- if arc.State == allow {
- return true
- }
- }
- return false
- }
- // FmtArc fmt grpc arc to archive3
- func FmtArc(arc *arcmdl.Arc) (data *arcmdl.Arc) {
- data = &arcmdl.Arc{
- Aid: arc.Aid,
- Videos: arc.Videos,
- TypeID: arc.TypeID,
- TypeName: arc.TypeName,
- Copyright: arc.Copyright,
- Pic: arc.Pic,
- Title: arc.Title,
- PubDate: arc.PubDate,
- Ctime: arc.Ctime,
- Desc: arc.Desc,
- State: arc.State,
- Access: arc.Access,
- Attribute: arc.Attribute,
- Tag: arc.Tag,
- Tags: arc.Tags,
- Duration: arc.Duration,
- MissionID: arc.MissionID,
- OrderID: arc.OrderID,
- RedirectURL: arc.RedirectURL,
- Forward: arc.Forward,
- Rights: arcmdl.Rights{
- Bp: arc.Rights.Bp,
- Elec: arc.Rights.Elec,
- Download: arc.Rights.Download,
- Movie: arc.Rights.Movie,
- Pay: arc.Rights.Pay,
- HD5: arc.Rights.HD5,
- NoReprint: arc.Rights.NoReprint,
- Autoplay: arc.Rights.Autoplay,
- UGCPay: arc.Rights.UGCPay,
- },
- Author: arcmdl.Author{
- Mid: arc.Author.Mid,
- Name: arc.Author.Name,
- Face: arc.Author.Face,
- },
- Stat: arcmdl.Stat{
- Aid: arc.Stat.Aid,
- View: arc.Stat.View,
- Danmaku: arc.Stat.Danmaku,
- Reply: arc.Stat.Reply,
- Fav: arc.Stat.Fav,
- Coin: arc.Stat.Coin,
- Share: arc.Stat.Share,
- NowRank: arc.Stat.NowRank,
- HisRank: arc.Stat.HisRank,
- Like: arc.Stat.Like,
- DisLike: arc.Stat.DisLike,
- },
- ReportResult: arc.ReportResult,
- Dynamic: arc.Dynamic,
- FirstCid: arc.FirstCid,
- Dimension: arcmdl.Dimension{
- Width: arc.Dimension.Width,
- Height: arc.Dimension.Height,
- Rotate: arc.Dimension.Rotate,
- },
- }
- return
- }
|