You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
312 lines
13 KiB
312 lines
13 KiB
package mcnmodel |
|
|
|
import ( |
|
"go-common/app/interface/main/mcn/model" |
|
"go-common/library/time" |
|
) |
|
|
|
// go get github.com/abice/go-enum |
|
// go:generate go-enum -f=tables.go |
|
|
|
// table names |
|
const ( |
|
//TableNameMcnUp up |
|
TableNameMcnUp = "mcn_up" |
|
//TableNameMcnSign sign |
|
TableNameMcnSign = "mcn_sign" |
|
//TableNameMcnDataSummary data summary |
|
TableNameMcnDataSummary = "mcn_data_summary" |
|
//TableNameMcnDataUp data up |
|
TableNameMcnDataUp = "mcn_data_up" |
|
//TableNameUpBaseInfo up base info |
|
TableNameUpBaseInfo = "up_base_info" |
|
//TableNameMcnRankUpFan rank for up fans |
|
TableNameMcnRankUpFan = "mcn_rank_up_fans" |
|
//TableNameMcnRankArchiveLike rank for archive likes |
|
TableNameMcnRankArchiveLike = "mcn_rank_archive_likes" |
|
//TableNameMcnUpRecommendPool up recomment pool |
|
TableNameMcnUpRecommendPool = "mcn_up_recommend_pool" |
|
TableMcnUpPermissionApply = "mcn_up_permission_apply" |
|
) |
|
|
|
// DataType 数据类型,1累计,2昨日,3上周,4上月 |
|
/* ENUM( |
|
Accumulate = 1 |
|
Day = 2 |
|
Week = 3 |
|
Month = 4 |
|
ActiveFans = 5 |
|
)*/ |
|
const ( |
|
// DataTypeAccumulate is a DataType of type Accumulate |
|
DataTypeAccumulate DataType = 1 |
|
// DataTypeDay is a DataType of type Day |
|
DataTypeDay DataType = 2 |
|
// DataTypeWeek is a DataType of type Week |
|
DataTypeWeek DataType = 3 |
|
// DataTypeMonth is a DataType of type Month |
|
DataTypeMonth DataType = 4 |
|
// DataTypeActiveFans active fans |
|
DataTypeActiveFans DataType = 5 |
|
) |
|
|
|
const ( |
|
// McnDataTypeDay is a McnDataType of type Day |
|
McnDataTypeDay McnDataType = 1 |
|
// McnDataTypeMonth is a McnDataType of type Month |
|
McnDataTypeMonth McnDataType = 2 |
|
) |
|
|
|
// DataType . |
|
type DataType int8 |
|
|
|
// McnUp up table |
|
type McnUp struct { |
|
ID int64 `json:"id" gorm:"column:id"` |
|
SignID int64 `json:"sign_id" gorm:"column:sign_id"` |
|
McnMid int64 `json:"mcn_mid" gorm:"column:mcn_mid"` |
|
UpMid int64 `json:"up_mid" gorm:"column:up_mid"` |
|
BeginDate time.Time `json:"begin_date" gorm:"column:begin_date"` |
|
EndDate time.Time `json:"end_date" gorm:"column:end_date"` |
|
ContractLink string `json:"contract_link" gorm:"column:contract_link"` |
|
UpAuthLink string `json:"up_auth_link" gorm:"column:up_auth_link"` |
|
RejectReason string `json:"reject_reason" gorm:"column:reject_reason"` |
|
RejectTime string `json:"reject_time" gorm:"column:reject_time"` |
|
State model.MCNUPState `json:"state" gorm:"column:state"` |
|
UpType int8 `json:"up_type" gorm:"column:up_type"` // 用户类型,0为站内,1为站外 |
|
SiteLink string `json:"site_link" gorm:"column:site_link"` //up主站外账号链接, 如果up type为1,该项必填 |
|
StateChangeTime time.Time `json:"state_change_time" gorm:"column:state_change_time"` |
|
ConfirmTime time.Time `json:"confirm_time" gorm:"column:confirm_time"` |
|
Ctime time.Time `json:"ctime" gorm:"column:ctime"` |
|
Mtime time.Time `json:"mtime" gorm:"column:mtime"` |
|
Permission uint32 `gorm:"column:permission" json:"permission"` |
|
PublicationPrice int64 `gorm:"column:publication_price" json:"publication_price"` // 单位:1/1000 元 |
|
} |
|
|
|
// TableName . |
|
func (s *McnUp) TableName() string { |
|
return TableNameMcnUp |
|
} |
|
|
|
// IsBindable check if up canbe bind to other |
|
func (s *McnUp) IsBindable() bool { |
|
return isUpBindable(s.State) |
|
} |
|
|
|
// IsBeingBindedWithMcn check this up is in the middle of being binded with mcn, |
|
func (s *McnUp) IsBeingBindedWithMcn(mcn *McnSign) bool { |
|
if mcn == nil { |
|
return false |
|
} |
|
if s.SignID == mcn.ID && |
|
(s.State == model.MCNUPStateOnReview || s.State == model.MCNUPStateNoAuthorize) { |
|
return true |
|
} |
|
return false |
|
} |
|
|
|
// McnSign mcn sign table |
|
type McnSign struct { |
|
ID int64 `json:"id" gorm:"column:id"` |
|
McnMid int64 `json:"mcn_mid" gorm:"column:mcn_mid"` |
|
CompanyName string `json:"company_name" gorm:"column:company_name"` |
|
CompanyLicenseID string `json:"company_license_id" gorm:"column:company_license_id"` |
|
CompanyLicenseLink string `json:"company_license_link" gorm:"column:company_license_link"` |
|
ContractLink string `json:"contract_link" gorm:"column:contract_link"` |
|
ContactName string `json:"contact_name" gorm:"column:contact_name"` |
|
ContactTitle string `json:"contact_title" gorm:"column:contact_title"` |
|
ContactIdcard string `json:"contact_idcard" gorm:"column:contact_idcard"` |
|
ContactPhone string `json:"contact_phone" gorm:"column:contact_phone"` |
|
BeginDate time.Time `json:"begin_date" gorm:"column:begin_date"` |
|
EndDate time.Time `json:"end_date" gorm:"column:end_date"` |
|
RejectReason string `json:"reject_reason" gorm:"column:reject_reason"` |
|
RejectTime time.Time `json:"reject_time" gorm:"column:reject_time"` |
|
State model.MCNSignState `json:"state" gorm:"column:state"` |
|
Ctime time.Time `json:"ctime" gorm:"column:ctime"` |
|
Mtime time.Time `json:"mtime" gorm:"column:mtime"` |
|
Permission uint32 `json:"permission" gorm:"column:permission"` |
|
} |
|
|
|
// TableName table name |
|
func (s *McnSign) TableName() string { |
|
return TableNameMcnSign |
|
} |
|
|
|
// McnDataType . |
|
/* ENUM( |
|
Day = 1 |
|
Month = 2 |
|
)*/ |
|
type McnDataType int8 |
|
|
|
// McnDataSummary table |
|
type McnDataSummary struct { |
|
ID int64 `json:"id" gorm:"column:id"` |
|
McnMid int64 `json:"mcn_mid" gorm:"column:mcn_mid"` |
|
SignID int64 `json:"sign_id" gorm:"column:sign_id"` |
|
UpCount int64 `json:"up_count" gorm:"column:up_count"` |
|
FansCountAccumulate int64 `json:"fans_count_accumulate" gorm:"column:fans_count_accumulate"` |
|
FansCountOnline int64 `json:"fans_count_online" gorm:"column:fans_count_online"` |
|
FansCountReal int64 `json:"fans_count_real" gorm:"column:fans_count_real"` |
|
FansCountCheatAccumulate int64 `json:"fans_count_cheat_accumulate" gorm:"column:fans_count_cheat_accumulate"` |
|
FansCountIncreaseDay int64 `json:"fans_count_increase_day" gorm:"column:fans_count_increase_day"` |
|
PlayCountAccumulate int64 `json:"play_count_accumulate" gorm:"column:play_count_accumulate"` |
|
PlayCountIncreaseDay int64 `json:"play_count_increase_day" gorm:"column:play_count_increase_day"` |
|
ArchiveCountAccumulate int64 `json:"archive_count_accumulate" gorm:"column:archive_count_accumulate"` |
|
ActiveTid int64 `json:"active_tid" gorm:"column:active_tid"` |
|
GenerateDate time.Time `json:"generate_date" gorm:"column:generate_date"` |
|
DataType McnDataType `json:"data_type" gorm:"column:data_type"` |
|
Ctime time.Time `json:"ctime" gorm:"column:ctime"` |
|
Mtime time.Time `json:"mtime" gorm:"column:mtime"` |
|
} |
|
|
|
// TableName table name |
|
func (s *McnDataSummary) TableName() string { |
|
return TableNameMcnDataSummary |
|
} |
|
|
|
// McnDataUp table name |
|
type McnDataUp struct { |
|
ID int64 `json:"id" gorm:"column:id"` |
|
McnMid int64 `json:"mcn_mid" gorm:"column:mcn_mid"` |
|
SignID int64 `json:"sign_id" gorm:"column:sign_id"` |
|
UpMid int64 `json:"up_mid" gorm:"column:up_mid"` |
|
DataType DataType `json:"data_type" gorm:"column:data_type"` |
|
FansIncreaseAccumulate int32 `json:"fans_increase_accumulate" gorm:"column:fans_increase_accumulate"` |
|
ArchiveCount int32 `json:"archive_count" gorm:"column:archive_count"` |
|
PlayCount int64 `json:"play_count" gorm:"column:play_count"` |
|
FansIncreaseMonth int64 `json:"fans_increase_month" gorm:"column:fans_increase_month"` |
|
FansCount int64 `json:"fans_count" gorm:"column:fans_count"` |
|
FansCountActive int64 `json:"fans_count_active" gorm:"column:fans_count_active"` |
|
GenerateDate time.Time `json:"generate_date" gorm:"column:generate_date"` |
|
Ctime time.Time `json:"ctime" gorm:"column:ctime"` |
|
Mtime time.Time `json:"mtime" gorm:"column:mtime"` |
|
} |
|
|
|
// TableName table name |
|
func (s *McnDataUp) TableName() string { |
|
return TableNameMcnDataUp |
|
} |
|
|
|
// UpBaseInfo struct |
|
type UpBaseInfo struct { |
|
ID uint32 `gorm:"column:id"` |
|
Mid int64 `gorm:"column:mid"` |
|
ActiveTid int64 `gorm:"column:active_tid"` |
|
ArticleCountAccumulate int `gorm:"column:article_count_accumulate"` |
|
Activity int `gorm:"column:activity"` |
|
FansCount int `gorm:"column:fans_count"` |
|
} |
|
|
|
// TableName . |
|
func (s *UpBaseInfo) TableName() string { |
|
return TableNameUpBaseInfo |
|
} |
|
|
|
// McnRankUpFan . |
|
type McnRankUpFan struct { |
|
ID int64 `json:"id" gorm:"column:id"` |
|
McnMid int64 `json:"mcn_mid" gorm:"column:mcn_mid"` |
|
SignID int64 `json:"sign_id" gorm:"column:sign_id"` |
|
UpMid int64 `json:"up_mid" gorm:"column:up_mid"` |
|
Value1 int64 `json:"value1" gorm:"column:value1"` |
|
Value2 int64 `json:"value2" gorm:"column:value2"` |
|
ActiveTid int16 `json:"active_tid" gorm:"column:active_tid"` |
|
DataType DataType `json:"data_type" gorm:"column:data_type"` |
|
GenerateDate time.Time `json:"generate_date" gorm:"column:generate_date"` |
|
Ctime time.Time `json:"ctime" gorm:"column:ctime"` |
|
Mtime time.Time `json:"mtime" gorm:"column:mtime"` |
|
} |
|
|
|
// TableName . |
|
func (s *McnRankUpFan) TableName() string { |
|
return TableNameMcnRankUpFan |
|
} |
|
|
|
// McnRankArchiveLike . |
|
type McnRankArchiveLike struct { |
|
ID int64 `json:"id" gorm:"column:id"` |
|
McnMid int64 `json:"mcn_mid" gorm:"column:mcn_mid"` |
|
SignID int64 `json:"sign_id" gorm:"column:sign_id"` |
|
UpMid int64 `json:"up_mid" gorm:"column:up_mid"` |
|
ArchiveID int64 `json:"archive_id" gorm:"column:avid"` |
|
LikeCount int64 `json:"like_count" gorm:"column:like_count"` |
|
PlayIncr int64 `json:"play_incr" gorm:"column:play_incr" ` |
|
DataType DataType `json:"data_type" gorm:"column:data_type"` |
|
Tid int16 `json:"tid" gorm:"column:tid"` |
|
GenerateDate time.Time `json:"generate_date" gorm:"column:generate_date"` |
|
Ctime time.Time `json:"ctime" gorm:"column:ctime"` |
|
Mtime time.Time `json:"mtime" gorm:"column:mtime"` |
|
} |
|
|
|
// TableName . |
|
func (s *McnRankArchiveLike) TableName() string { |
|
return TableNameMcnRankArchiveLike |
|
} |
|
|
|
// McnUpRecommendPool 推荐池 struct |
|
type McnUpRecommendPool struct { |
|
ID int64 `gorm:"column:id" json:"id"` |
|
UpMid int64 `gorm:"column:up_mid" json:"up_mid"` |
|
FansCount int64 `gorm:"column:fans_count" json:"fans_count"` |
|
FansCountIncreaseMonth int64 `gorm:"column:fans_count_increase_month" json:"fans_count_increase_month"` |
|
ArchiveCount int64 `gorm:"column:archive_count" json:"archive_count"` |
|
PlayCountAccumulate int64 `gorm:"column:play_count_accumulate" json:"play_count_accumulate"` |
|
PlayCountAverage int64 `gorm:"column:play_count_average" json:"play_count_average"` |
|
ActiveTid int16 `gorm:"column:active_tid" json:"active_tid"` |
|
LastArchiveTime time.Time `gorm:"column:last_archive_time" json:"last_archive_time"` |
|
State uint8 `gorm:"column:state" json:"state"` |
|
Source int64 `gorm:"column:source" json:"source"` |
|
GenerateTime time.Time `gorm:"column:generate_time" json:"generate_time"` |
|
Ctime time.Time `gorm:"column:ctime" json:"ctime"` |
|
Mtime time.Time `gorm:"column:mtime" json:"mtime"` |
|
} |
|
|
|
// TableName table name. |
|
func (s *McnUpRecommendPool) TableName() string { |
|
return TableNameMcnUpRecommendPool |
|
} |
|
|
|
// MCNUPRecommendState 推荐状态 |
|
// MCNUPRecommendState . |
|
type MCNUPRecommendState int8 |
|
|
|
// const . |
|
const ( |
|
// MCNUPRecommendStateUnKnown 未知状态 |
|
MCNUPRecommendStateUnKnown MCNUPRecommendState = 0 |
|
// MCNUPRecommendStateOff 未推荐 |
|
MCNUPRecommendStateOff MCNUPRecommendState = 1 |
|
// MCNUPRecommendStateOn 推荐中 |
|
MCNUPRecommendStateOn MCNUPRecommendState = 2 |
|
// MCNUPRecommendStateBan 禁止推荐 |
|
MCNUPRecommendStateBan MCNUPRecommendState = 3 |
|
// MCNUPRecommendStateDel 移除中 |
|
MCNUPRecommendStateDel MCNUPRecommendState = 100 |
|
) |
|
|
|
// MCNUPRecommendSource |
|
// type MCNUPRecommendSource mcnadminmodel.MCNUPRecommendSource |
|
|
|
//McnUpPermissionApply permission |
|
type McnUpPermissionApply struct { |
|
ID int64 `gorm:"column:id" json:"id"` |
|
McnMid int64 `gorm:"column:mcn_mid" json:"mcn_mid"` |
|
UpMid int64 `gorm:"column:up_mid" json:"up_mid"` |
|
SignID int64 `gorm:"column:sign_id" json:"sign_id"` |
|
NewPermission uint32 `gorm:"column:new_permission" json:"new_permission"` |
|
OldPermission uint32 `gorm:"column:old_permission" json:"old_permission"` |
|
RejectReason string `gorm:"-" json:"reject_reason"` |
|
RejectTime time.Time `gorm:"-" json:"reject_time"` |
|
State int8 `gorm:"column:state" json:"state"` |
|
Ctime time.Time `gorm:"column:ctime" json:"ctime"` |
|
Mtime time.Time `gorm:"column:mtime" json:"mtime"` |
|
AdminID int64 `gorm:"-" json:"-"` |
|
AdminName string `gorm:"-" json:"-"` |
|
UpAuthLink string `gorm:"column:up_auth_link" json:"up_auth_link"` |
|
} |
|
|
|
// TableName table name. |
|
func (s *McnUpPermissionApply) TableName() string { |
|
return TableMcnUpPermissionApply |
|
}
|
|
|