261 lines
6.3 KiB
Go
261 lines
6.3 KiB
Go
|
package mcnmodel
|
|||
|
|
|||
|
import (
|
|||
|
mcnadminmodel "go-common/app/admin/main/mcn/model"
|
|||
|
"go-common/app/interface/main/mcn/model"
|
|||
|
"go-common/app/interface/main/mcn/tool/validate"
|
|||
|
"go-common/library/time"
|
|||
|
)
|
|||
|
|
|||
|
//CookieMidInterface cookie set interface, set mid from cookie to arg
|
|||
|
type CookieMidInterface interface {
|
|||
|
SetMid(midFromCookie int64)
|
|||
|
}
|
|||
|
|
|||
|
//McnCommonReq common mcn
|
|||
|
type McnCommonReq struct {
|
|||
|
McnCheatReq
|
|||
|
SignID int64 `form:"sign_id"`
|
|||
|
McnMid int64
|
|||
|
}
|
|||
|
|
|||
|
//CheatInterface cheat interface
|
|||
|
type CheatInterface interface {
|
|||
|
// Cheat return true if cheated, false if not cheated
|
|||
|
Cheat() bool
|
|||
|
}
|
|||
|
|
|||
|
//McnCheatReq cheat
|
|||
|
type McnCheatReq struct {
|
|||
|
TMcnMid int64 `form:"t_mcn_mid"`
|
|||
|
}
|
|||
|
|
|||
|
//Cheat .
|
|||
|
func (m *McnCommonReq) Cheat() bool {
|
|||
|
if m.TMcnMid == 0 {
|
|||
|
return false
|
|||
|
}
|
|||
|
m.SetMid(m.TMcnMid)
|
|||
|
return true
|
|||
|
}
|
|||
|
|
|||
|
//SetMid set mid
|
|||
|
func (m *McnCommonReq) SetMid(midFromCookie int64) {
|
|||
|
m.McnMid = midFromCookie
|
|||
|
}
|
|||
|
|
|||
|
//UpCommonReq common up
|
|||
|
type UpCommonReq struct {
|
|||
|
UpMid int64
|
|||
|
}
|
|||
|
|
|||
|
//SetMid set mid
|
|||
|
func (m *UpCommonReq) SetMid(midFromCookie int64) {
|
|||
|
m.UpMid = midFromCookie
|
|||
|
}
|
|||
|
|
|||
|
//GetStateReq get state
|
|||
|
type GetStateReq struct {
|
|||
|
McnCommonReq
|
|||
|
}
|
|||
|
|
|||
|
//McnApplyReq apply req
|
|||
|
type McnApplyReq struct {
|
|||
|
McnCommonReq
|
|||
|
CompanyName string `form:"company_name"`
|
|||
|
CompanyLicenseID string `form:"company_license_id"`
|
|||
|
ContactName string `form:"contact_name"`
|
|||
|
ContactTitle string `form:"contact_title"`
|
|||
|
ContactIdcard string `form:"contact_idcard" validate:"idcheck"`
|
|||
|
ContactPhone string `form:"contact_phone" validate:"phonecheck"`
|
|||
|
CompanyLicenseLink string `form:"company_license_link" validate:"httpcheck"`
|
|||
|
ContractLink string `form:"contract_link" validate:"httpcheck"`
|
|||
|
}
|
|||
|
|
|||
|
//CopyTo .
|
|||
|
func (m *McnApplyReq) CopyTo(v *McnSign) {
|
|||
|
if v == nil {
|
|||
|
return
|
|||
|
}
|
|||
|
v.McnMid = m.McnMid
|
|||
|
v.CompanyName = m.CompanyName
|
|||
|
v.CompanyLicenseID = m.CompanyLicenseID
|
|||
|
v.ContactName = m.ContactName
|
|||
|
v.ContactTitle = m.ContactTitle
|
|||
|
v.ContactIdcard = m.ContactIdcard
|
|||
|
v.ContactPhone = m.ContactPhone
|
|||
|
v.CompanyLicenseLink = m.CompanyLicenseLink
|
|||
|
v.ContractLink = m.ContractLink
|
|||
|
}
|
|||
|
|
|||
|
//McnBindUpApplyReq .
|
|||
|
type McnBindUpApplyReq struct {
|
|||
|
McnCommonReq
|
|||
|
UpMid int64 `form:"up_mid"`
|
|||
|
BeginDate time.Time `form:"begin_date"`
|
|||
|
EndDate time.Time `form:"end_date"`
|
|||
|
ContractLink string `form:"contract_link"` // 手动检查http格式
|
|||
|
UpAuthLink string `form:"up_auth_link"` // 手动检查http格式
|
|||
|
UpType int8 `form:"up_type"` // 用户类型,0为站内,1为站外
|
|||
|
SiteLink string `form:"site_link"` //up主站外账号链接, 如果up type为1,该项必填
|
|||
|
mcnadminmodel.Permits
|
|||
|
PublicationPrice int64 `form:"publication_price"` // 单位:1/1000 元
|
|||
|
}
|
|||
|
|
|||
|
//IsSiteInfoOk 检查站外up主信息是否OK,如果不是站外Up主,直接返回ok
|
|||
|
func (m *McnBindUpApplyReq) IsSiteInfoOk() bool {
|
|||
|
if m.UpType == 0 {
|
|||
|
return true
|
|||
|
}
|
|||
|
return validate.RegHTTPCheck.MatchString(m.SiteLink)
|
|||
|
}
|
|||
|
|
|||
|
//CopyTo .
|
|||
|
func (m *McnBindUpApplyReq) CopyTo(v *McnUp) {
|
|||
|
v.UpMid = m.UpMid
|
|||
|
v.McnMid = m.McnMid
|
|||
|
v.BeginDate = m.BeginDate
|
|||
|
v.EndDate = m.EndDate
|
|||
|
v.ContractLink = m.ContractLink
|
|||
|
v.UpAuthLink = m.UpAuthLink
|
|||
|
v.UpType = m.UpType
|
|||
|
v.SiteLink = m.SiteLink
|
|||
|
v.Permission = uint32(m.GetAttrPermitVal())
|
|||
|
v.PublicationPrice = m.PublicationPrice
|
|||
|
}
|
|||
|
|
|||
|
//McnUpConfirmReq .
|
|||
|
type McnUpConfirmReq struct {
|
|||
|
UpCommonReq
|
|||
|
BindID int64 `form:"bind_id"`
|
|||
|
Choice bool `form:"choice"`
|
|||
|
}
|
|||
|
|
|||
|
//McnUpGetBindReq .
|
|||
|
type McnUpGetBindReq struct {
|
|||
|
UpCommonReq
|
|||
|
BindID int64 `form:"bind_id"`
|
|||
|
}
|
|||
|
|
|||
|
// McnGetDataSummaryReq req
|
|||
|
type McnGetDataSummaryReq = McnCommonReq
|
|||
|
|
|||
|
//McnGetUpListReq req
|
|||
|
type McnGetUpListReq struct {
|
|||
|
McnCommonReq
|
|||
|
UpMid int64 `form:"up_mid"`
|
|||
|
model.PageArg
|
|||
|
}
|
|||
|
|
|||
|
//McnGetAccountReq req
|
|||
|
type McnGetAccountReq struct {
|
|||
|
Mid int64 `form:"mid"`
|
|||
|
}
|
|||
|
|
|||
|
// McnGetMcnOldInfoReq req
|
|||
|
type McnGetMcnOldInfoReq struct {
|
|||
|
McnCommonReq
|
|||
|
}
|
|||
|
|
|||
|
// McnGetRankReq req to 获取排行
|
|||
|
type McnGetRankReq struct {
|
|||
|
McnCommonReq
|
|||
|
Tid int16 `form:"tid"` // 分区
|
|||
|
DataType DataType `form:"data_type"`
|
|||
|
}
|
|||
|
|
|||
|
// McnGetRecommendPoolReq get recommend pool
|
|||
|
type McnGetRecommendPoolReq struct {
|
|||
|
McnCommonReq
|
|||
|
model.PageArg
|
|||
|
Tid int16 `form:"tid"`
|
|||
|
OrderField string `form:"order_field"`
|
|||
|
Sort string `form:"sort"`
|
|||
|
}
|
|||
|
|
|||
|
// McnGetRecommendPoolTidListReq common req
|
|||
|
type McnGetRecommendPoolTidListReq = McnCommonReq
|
|||
|
|
|||
|
// ------inner request
|
|||
|
|
|||
|
// McnGetRankAPIReq req to 获取排行
|
|||
|
type McnGetRankAPIReq struct {
|
|||
|
SignID int64 `form:"sign_id"`
|
|||
|
Tid int16 `form:"tid"` // 分区
|
|||
|
DataType DataType `form:"data_type"`
|
|||
|
}
|
|||
|
|
|||
|
// 播放/弹幕/评论/分享/硬币/收藏/点赞数
|
|||
|
const (
|
|||
|
ActionTypePlay = "play" //播放
|
|||
|
ActionTypeDanmu = "danmu" //弹幕
|
|||
|
ActionTypeReply = "reply" //评论
|
|||
|
ActionTypeShare = "share" //分享
|
|||
|
ActionTypeCoin = "coin" //硬币
|
|||
|
ActionTypeFav = "fav" //收藏
|
|||
|
ActionTypeLike = "like" //点赞数
|
|||
|
)
|
|||
|
|
|||
|
const (
|
|||
|
// UserTypeGuest .
|
|||
|
UserTypeGuest = "guest" // 游客
|
|||
|
// UserTypeFans .
|
|||
|
UserTypeFans = "fans" // 粉丝
|
|||
|
)
|
|||
|
|
|||
|
//McnGetIndexIncReq 增量趋势
|
|||
|
type McnGetIndexIncReq struct {
|
|||
|
McnCommonReq
|
|||
|
Type string `form:"type"`
|
|||
|
}
|
|||
|
|
|||
|
//McnGetIndexSourceReq 来源分区
|
|||
|
type McnGetIndexSourceReq = McnGetIndexIncReq
|
|||
|
|
|||
|
//McnGetPlaySourceReq 稿件播放来源占比
|
|||
|
type McnGetPlaySourceReq struct {
|
|||
|
McnCommonReq
|
|||
|
}
|
|||
|
|
|||
|
//McnGetMcnFansReq mcn
|
|||
|
type McnGetMcnFansReq = McnCommonReq
|
|||
|
|
|||
|
//McnGetMcnFansIncReq mcn粉丝按天关注数
|
|||
|
type McnGetMcnFansIncReq = McnCommonReq
|
|||
|
|
|||
|
//McnGetMcnFansDecReq mcn粉丝按天取关数
|
|||
|
type McnGetMcnFansDecReq = McnCommonReq
|
|||
|
|
|||
|
//McnGetMcnFansAttentionWayReq mcn粉丝关注渠道
|
|||
|
type McnGetMcnFansAttentionWayReq = McnCommonReq
|
|||
|
|
|||
|
// McnGetBaseFansAttrReq mcn 游客和粉丝基本数据请求
|
|||
|
type McnGetBaseFansAttrReq struct {
|
|||
|
McnCommonReq
|
|||
|
UserType string `form:"user_type"`
|
|||
|
}
|
|||
|
|
|||
|
// McnGetFansAreaReq mcn 地区分布请求
|
|||
|
type McnGetFansAreaReq = McnGetBaseFansAttrReq
|
|||
|
|
|||
|
// McnGetFansTypeReq mcn 游客/粉丝倾向分布请求
|
|||
|
type McnGetFansTypeReq = McnGetBaseFansAttrReq
|
|||
|
|
|||
|
// McnGetFansTagReq mcn 游客/粉丝标签地图分布请求
|
|||
|
type McnGetFansTagReq = McnGetBaseFansAttrReq
|
|||
|
|
|||
|
//McnChangePermitReq change permit
|
|||
|
type McnChangePermitReq struct {
|
|||
|
McnCommonReq
|
|||
|
UpMid int64 `form:"up_mid"`
|
|||
|
mcnadminmodel.Permits
|
|||
|
UpAuthLink string `form:"up_auth_link" validate:"httpcheck"`
|
|||
|
}
|
|||
|
|
|||
|
//McnPublicationPriceChangeReq change publication price
|
|||
|
type McnPublicationPriceChangeReq struct {
|
|||
|
McnCommonReq
|
|||
|
Price int64 `form:"price"`
|
|||
|
UpMid int64 `form:"up_mid"`
|
|||
|
}
|