123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231 |
- package archive
- import (
- "go-common/app/service/main/archive/api"
- a "go-common/app/service/main/archive/model/archive"
- "go-common/library/time"
- )
- var (
- // VjInfo 审核当前拥挤状态的数据映射
- VjInfo = map[int8]*VideoJam{
- 0: {
- Level: 0,
- State: "状态正在计算中",
- Comment: "状态正在计算中",
- },
- 1: {
- Level: 1,
- State: "畅通",
- Comment: "预计稿件过审时间小于20分钟(剧集、活动投稿除外)",
- },
- 2: {
- Level: 2,
- State: "繁忙",
- Comment: "预计稿件过审时间小于40分钟(剧集、活动投稿除外)",
- },
- 3: {
- Level: 3,
- State: "拥挤",
- Comment: "预计稿件过审时间小于60分钟(剧集、活动投稿除外)",
- },
- 4: {
- Level: 4,
- State: "爆满",
- Comment: "预计稿件过审时间小于120分钟(剧集、活动投稿除外)",
- },
- 5: {
- Level: 5,
- State: "阻塞",
- Comment: "预计稿件过审时间大于120分钟(剧集、活动投稿除外)",
- },
- }
- )
- const (
- // CopyrightOrigin 自制
- CopyrightOrigin = int64(1)
- // CopyrightReprint 转载
- CopyrightReprint = int64(2)
- // TagPredictFromWeb web tag推荐
- TagPredictFromWeb = int8(0)
- // TagPredictFromAPP app tag推荐
- TagPredictFromAPP = int8(1)
- // TagPredictFromWindows windows tag推荐
- TagPredictFromWindows = int8(2)
- )
- // Const State
- const (
- // attribute yes and no
- AttrYes = int32(1)
- AttrNo = int32(0)
- // attribute bit
- AttrBitNoRank = uint(0)
- AttrBitNoDynamic = uint(1)
- AttrBitNoWeb = uint(2)
- AttrBitNoMobile = uint(3)
- AttrBitNoSearch = uint(4)
- AttrBitOverseaLock = uint(5)
- AttrBitNoRecommend = uint(6)
- AttrBitNoReprint = uint(7)
- AttrBitHasHD5 = uint(8)
- AttrBitIsPGC = uint(9)
- AttrBitAllowBp = uint(10)
- AttrBitIsBangumi = uint(11)
- AttrBitIsPorder = uint(12)
- AttrBitLimitArea = uint(13)
- AttrBitAllowTag = uint(14)
- AttrBitIsFromArcAPI = uint(15) // TODO: delete
- AttrBitJumpURL = uint(16)
- AttrBitIsMovie = uint(17)
- AttrBitBadgepay = uint(18)
- AttrBitIsJapan = uint(19) //日文稿件
- AttrBitNoPushBplus = uint(20) //是否动态禁止
- AttrBitParentMode = uint(21) //家长模式
- AttrBitUGCPay = uint(22) //UGC付费
- AttrBitHasBGM = uint(23) //稿件带有BGM
- AttrBitIsCoop = uint(24) //联合投稿
- )
- // OldArchiveVideoAudit archive with audit.
- // NOTE: old struct, will delete!!!
- type OldArchiveVideoAudit struct {
- *api.Arc
- RejectReson string `json:"reject,omitempty"`
- Dtime time.Time `json:"dtime,omitempty"`
- VideoAudits []*OldVideoAudit `json:"video_audit,omitempty"`
- StateDesc string `json:"state_desc"`
- StatePanel int `json:"state_panel"`
- ParentTName string `json:"parent_tname"`
- Attrs *Attrs `json:"attrs"`
- UgcPay int8 `json:"ugcpay"`
- }
- // OldVideoAudit video audit.
- // NOTE: old struct, will delete!!!
- type OldVideoAudit struct {
- Reason string `json:"reason,omitempty"`
- Eptitle string `json:"eptitle,omitempty"`
- IndexOrder int `json:"index_order"`
- }
- // ArcVideoAudit archive video audit.
- type ArcVideoAudit struct {
- *ArcVideo
- Stat *api.Stat `json:"stat"`
- StatePanel int `json:"state_panel"`
- ParentTName string `json:"parent_tname"`
- TypeName string `json:"typename"`
- OpenAppeal int64 `json:"open_appeal"`
- }
- // Flow type
- type Flow struct {
- ID uint `json:"id"`
- Remark string `json:"remark"`
- }
- // Porder type
- type Porder struct {
- ID int64 `json:"id"`
- AID int64 `json:"aid"`
- IndustryID int64 `json:"industry_id"`
- BrandID int64 `json:"brand_id"`
- BrandName string `json:"brand_name"`
- Official int8 `json:"is_official"`
- ShowType string `json:"show_type"`
- Advertiser string `json:"advertiser"`
- Agent string `json:"agent"`
- Ctime time.Time `json:"ctime,omitempty"`
- Mtime time.Time `json:"mtime,omitempty"`
- }
- // Staff type
- type Staff struct {
- ID int64 `json:"id"`
- AID int64 `json:"aid"`
- MID int64 `json:"mid"`
- StaffMID int64 `json:"staff_mid"`
- StaffTitle string `json:"staff_title"`
- }
- // StaffApply type
- type StaffApply struct {
- ID int64 `json:"id"`
- Type int8 `json:"apply_type"`
- ASID int64 `json:"apply_as_id"`
- ApplyAID int64 `json:"apply_aid"`
- ApplyUpMID int64 `json:"apply_up_mid"`
- ApplyStaffMID int64 `json:"apply_staff_mid"`
- ApplyTitle string `json:"apply_title"`
- ApplyTitleID int64 `json:"apply_title_id"`
- State int8 `json:"apply_state"`
- StaffState int8 `json:"staff_state"`
- StaffTitle string `json:"staff_title"`
- }
- // Commercial type
- type Commercial struct {
- AID int64 `json:"aid"`
- POrderID int64 `json:"porder_id"` // 私
- OrderID int64 `json:"order_id"` // 商
- GameID int64 `json:"game_id"`
- //IndustryID int64 `json:"industry_id"` // open after mall
- //BrandID int64 `json:"brand_id"`
- }
- // InMovieType judge type for pubdate
- func InMovieType(tid int16) bool {
- return tid == 83 || tid == 145 || tid == 146 || tid == 147
- }
- // StatePanel judge archive state for app panel.
- func StatePanel(s int8) (st int) {
- if s == a.StateForbidWait ||
- s == a.StateForbidFixed ||
- s == a.StateForbidLater ||
- s == a.StateForbidAdminDelay ||
- s == a.StateForbidSubmit ||
- s == a.StateForbidUserDelay {
- st = 1 //处理中
- } else if s == a.StateForbidRecicle {
- st = 2 //退回可编辑
- } else if s == a.StateForbidPolice || s == a.StateForbidLock {
- st = 3 //退回全部不可编辑
- } else if s == a.StateForbidXcodeFail {
- st = 4 //退回分区不可编辑
- } else {
- st = 0 //正常开放
- }
- return
- }
- // IsCloseState judge arc state.
- func IsCloseState(s int) bool {
- return s == -2 || s == -4 || s == -5 || s == -14
- }
- // ShortDesc cut down to short desc for adapter app and windows clients
- func ShortDesc(desc string) string {
- rs := []rune(desc)
- length := len(rs)
- max := 250
- if length < max {
- max = length
- }
- return string(rs[:max])
- }
- // AttrVal get attribute.
- func (a *ArcVideoAudit) AttrVal(bit uint) int32 {
- return (a.Archive.Attribute >> bit) & int32(1)
- }
- // IsOwner fn
- func (a *ArcVideoAudit) IsOwner(mid int64) int8 {
- if a.Archive.Mid == mid {
- return 1
- }
- return 0
- }
|