Files
web_hgtv_server/app/api/proto/playlet.go
T
rootandClaude Opus 5.5 7974a42301 Initial commit
Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
2026-09-23 11:07:42 +08:00

529 lines
26 KiB
Go
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
package proto
import (
"time"
"videoweb/pub/pubdef"
)
// HomePlayletResponse 首页响应
type HomePlayletResponse struct {
HomeBannerData []*HomeBannerData `json:"homeBannerData"` // 首页banner信息列表
HomeTodayUpdateData []*CommonData `json:"homeTodayUpdateData"` // 最近更新集合,最多16条
HomeCategoryData []*HomeCategoryData `json:"homeCategoryData"` // 启用分类短剧集合,按分类排序,每个分类最多16条
HomeRecommendThemes []*HomeRecommendTheme `json:"homeRecommendThemes"` // 推荐主题,最多4条
Announcements []*AnnouncementItem `json:"announcements"` // 启用中的公告,来自独立缓存
SeoInfo *SeoInfo `json:"seoInfo,omitempty"` // 页面SEO信息(短剧列表页SEO)
}
// HomeRecommendTheme 首页推荐主题
type HomeRecommendTheme struct {
Id int64 `json:"id"` // 题材ID
Name string `json:"name"` // 题材名称
Slug string `json:"slug"` // slug
Icon string `json:"icon"` // 题材图标,已拼接图片域名
Rank int64 `json:"rank"` // 排序,越大越靠前
PlayletCount int64 `json:"playletCount"` // 该题材绑定的上架短剧数量
}
// AnnouncementItem 首页公告
type AnnouncementItem struct {
Id int64 `json:"id"` // 公告ID
Title string `json:"title"` // 标题
Content string `json:"content"` // 内容
}
// HomeCategoryData 首页分类短剧集合数据
type HomeCategoryData struct {
Id int64 `json:"id"` // 分类ID
Name string `json:"name"` // 分类名称
Slug string `json:"slug"` // slug
Desc string `json:"desc"` // 描述
Icon string `json:"icon"` // 分类图标
Rank int64 `json:"rank"` // 分类排序,越大越靠前
List []*CommonData `json:"list"` // 分类下短剧集合,最多16条
}
// PlayletRecommendListReq 分类短剧分页请求
type PlayletRecommendListReq struct {
// 普通分页参数,pageNum默认1,pageSize默认10、最大100
pubdef.Page
CategoryId int64 `form:"categoryId" json:"categoryId"` // 分类ID
CategorySlug string `form:"categorySlug" json:"categorySlug"` // 分类slug,非空时优先按slug解析分类ID
}
// PlayletRecommendListResp 分类短剧分页响应
type PlayletRecommendListResp struct {
CategoryId int64 `json:"categoryId"` // 分类ID
CategoryName string `json:"categoryName"` // 分类名称
CategorySlug string `json:"categorySlug"` // 分类slug
CategoryDesc string `json:"categoryDesc"` // 分类描述
TotalCount int64 `json:"totalCount"` // 总共数量
PageSize int `json:"pageSize"` // 每页数
PageNum int `json:"pageNum"` // 页数
List []CommonData `json:"list"` // 短剧集合
SeoInfo *SeoInfo `json:"seoInfo,omitempty"` // 页面SEO信息(分类SEO)
}
// HomeBannerData 首页banner信息
type HomeBannerData struct {
Id int64 `json:"id"` // ID
Name string `json:"name"` // 名称
Image string `json:"image"` // 图片,已拼接图片域名
VerticalImage string `json:"verticalImage"` // 竖版图片,已拼接图片域名
Url string `json:"url"` // URL
Rank int64 `json:"rank"` // 排序
Status bool `json:"status"` // 状态 true-启用 false-停用
}
// CommonData 首页通用数据
type CommonData struct {
Id int64 `json:"id"` // 短剧id
Status int32 `json:"status"` // 状态: 0下架 1上架
IsFeatured bool `json:"isFeatured"` // 是否爆剧(true-是,false-否)
IsRecommend bool `json:"isRecommend"` // 是否推荐 true-推荐,false-不推荐
IsNew bool `json:"isNew"` // 是否上新,本周内上架为true
OperateType int32 `json:"operateType"` // 运营类型 1-短剧 2-漫剧
ShowOnBanner bool `json:"showOnBanner"` // 是否显示在首页banner
Banner string `json:"banner"` // banner图,已拼接图片域名
OnlineAt time.Time `json:"onlineAt"` // 上架时间
MediaCreatedAt time.Time `json:"mediaCreatedAt"` // 媒资中心创建时间
MediaUpdatedAt time.Time `json:"mediaUpdatedAt"` // 媒资中心更新时间
ThemeIds []int64 `json:"themeIds"` // 题材ID集合
ThemeNames []string `json:"themeNames"` // 题材名称集合
ThemeSlugs []string `json:"themeSlugs"` // 题材slug集合
Title string `json:"title"` // 标题
PlayName string `json:"playName"` // 剧名
Description string `json:"description"` // SEO Description
Slug string `json:"slug"` // slug
Desc string `json:"desc"` // 简介
Anchor string `json:"anchor"` // 作者/演员
Cover string `json:"cover"` // 封面,已拼接图片域名
TagIds []int64 `json:"tagIds"` // 标签ID集合
TagNames []string `json:"tagNames"` // 标签名称集合
TagSlugs []string `json:"tagSlugs"` // 标签slug集合
TotalEpisode int64 `json:"totalEpisode"` // 总集数
UpdateStatus int `json:"updateStatus"` // 更新状态 1-连载中 2-已完结
CountBrowse int64 `json:"countBrowse"` // 观看量
HeatValue int64 `json:"heatValue"` // 热度值
CountCollect int64 `json:"countCollect"` // 收藏数
CountLike int64 `json:"countLike"` // 点赞数,包含真实点赞数和后台虚拟点赞数
CreatedAt time.Time `json:"createdAt"` // 创建时间
UpdatedAt time.Time `json:"updatedAt"` // 修改时间
SeoInfo pubdef.SeoValue `json:"seoInfo"` // Seo相关信息
}
// PlayletVideoReq 短剧请求
type PlayletVideoReq struct {
// 普通分页参数,pageNum默认1,pageSize默认10、最大100
pubdef.Page
ThemeId int64 `form:"themeId" json:"themeId"` // 题材ID
ThemeSlug string `form:"themeSlug" json:"themeSlug"` // 题材slug,非空时优先按slug解析题材ID
SortOrder int64 `form:"sortOrder" json:"sortOrder"` // 排序 1-热度优先,按收藏量倒序 2-今日更新,按上架时间倒序
}
// PlayletVideoResp 短剧响应
type PlayletVideoResp struct {
// 总共数量
TotalCount int64 `json:"totalCount"`
// 每页数
PageSize int `json:"pageSize"`
// 页数
PageNum int `json:"pageNum"`
// 短剧集合
List []CommonData `json:"list"`
// 页面SEO信息:有 themeId 时返回题材 SEO,否则返回短剧列表页 SEO
SeoInfo *SeoInfo `json:"seoInfo,omitempty"`
}
// PlayletRankReq 短剧排行榜请求
type PlayletRankReq struct {
// 普通分页参数,pageNum默认1,pageSize默认10、最大100
pubdef.Page
SortOrder int64 `form:"sortOrder" json:"sortOrder"` // 排序 1-热播榜,按热度值倒序 2-新剧榜,按上架时间倒序 3-追剧榜,按收藏数倒序
}
// PlayletRankResp 短剧排行榜响应
type PlayletRankResp struct {
TotalCount int64 `json:"totalCount"` // 总共数量
PageSize int `json:"pageSize"` // 每页数
PageNum int `json:"pageNum"` // 页数
List []CommonData `json:"list"` // 短剧集合
SeoInfo *SeoInfo `json:"seoInfo,omitempty"` // 页面SEO信息(短剧列表页SEO)
}
// PlayletOperateListReq 按运营类型分页查询短剧请求
type PlayletOperateListReq struct {
pubdef.Page
OperateType int32 `form:"operateType" json:"operateType"` // 运营类型 1-短剧 2-漫剧
FilterType int64 `form:"filterType" json:"filterType"` // 筛选类型 1-最近更新 2-当前热播 3-独家原创
}
// PlayletOperateListResp 按运营类型分页查询短剧响应
type PlayletOperateListResp struct {
TotalCount int64 `json:"totalCount"` // 总共数量
PageSize int `json:"pageSize"` // 每页数
PageNum int `json:"pageNum"` // 页数
OperateType int32 `json:"operateType"` // 运营类型 1-短剧 2-漫剧
FilterType int64 `json:"filterType"` // 筛选类型 1-最近更新 2-当前热播 3-独家原创
List []CommonData `json:"list"` // 短剧集合
}
// PlayletTodayUpdateReq 今日更新短剧请求
type PlayletTodayUpdateReq struct {
// 普通分页参数,pageNum默认1,pageSize默认10、最大100
pubdef.Page
}
// PlayletTodayUpdateResp 今日更新短剧响应
type PlayletTodayUpdateResp struct {
TotalCount int64 `json:"totalCount"` // 总共数量
PageSize int `json:"pageSize"` // 每页数
PageNum int `json:"pageNum"` // 页数
List []CommonData `json:"list"` // 短剧集合
SeoInfo *SeoInfo `json:"seoInfo,omitempty"` // 页面SEO信息(短剧列表页SEO)
}
// PlayletTagVideoReq 根据标签ID分页查询短剧请求
type PlayletTagVideoReq struct {
// 普通分页参数,pageNum默认1,pageSize默认10、最大100
pubdef.Page
TagId int64 `form:"tagId" json:"tagId"` // 标签ID
TagSlug string `form:"tagSlug" json:"tagSlug"` // 标签slug,非空时优先按slug解析标签ID
}
// PlayletTagVideoResp 根据标签ID分页查询短剧响应
type PlayletTagVideoResp struct {
TotalCount int64 `json:"totalCount"` // 总共数量
PageSize int `json:"pageSize"` // 每页数
PageNum int `json:"pageNum"` // 页数
List []CommonData `json:"list"` // 短剧集合
SeoInfo *SeoInfo `json:"seoInfo,omitempty"` // 页面SEO信息(标签SEO)
}
// PlayletSearchReq 短剧ES分页搜索请求
type PlayletSearchReq struct {
// 普通分页参数,pageNum默认1,pageSize默认10、最大100
pubdef.Page
Keyword string `form:"keyword" json:"keyword"` // 搜索关键词,支持剧名、题材名、简介和标签名
}
// PlayletSearchResp 短剧ES分页搜索响应
type PlayletSearchResp struct {
TotalCount int64 `json:"totalCount"` // 总共数量
PageSize int `json:"pageSize"` // 每页数
PageNum int `json:"pageNum"` // 页数
List []CommonData `json:"list"` // 短剧集合
}
// PlayletHotSearchItem 热搜词
type PlayletHotSearchItem struct {
Keyword string `json:"keyword"` // 搜索词
Count int64 `json:"count"` // 搜索次数
}
// PlayletHotLikeResp 热搜词和猜你喜欢
type PlayletHotLikeResp struct {
HotSearch []PlayletHotSearchItem `json:"hotSearch"` // 前10个热搜词
GuessLike []*CommonData `json:"guessLike"` // 按收藏量最多的15部上架短剧
}
// PlayletLikeSetReq 短剧点赞设置请求
type PlayletLikeSetReq struct {
Id int64 `json:"id" binding:"required"` // 短剧ID
IsLike *bool `json:"isLike" binding:"required"` // 是否点赞,true-点赞,false-取消点赞
}
// PlayletLikeSetResp 短剧点赞设置响应
type PlayletLikeSetResp struct {
Id int64 `json:"id"` // 短剧ID
IsLike int64 `json:"isLike"` // 点赞状态 1-已点赞 2-未点赞
CountLike int64 `json:"countLike"` // 短剧点赞数
}
// PlayletCollectSetReq 短剧收藏设置请求
type PlayletCollectSetReq struct {
Id int64 `json:"id" binding:"required"` // 短剧ID
IsCollect *bool `json:"isCollect" binding:"required"` // 是否收藏,true-收藏,false-取消收藏
}
// PlayletCollectSetResp 短剧收藏设置响应
type PlayletCollectSetResp struct {
Id int64 `json:"id"` // 短剧ID
IsCollect int64 `json:"isCollect"` // 收藏状态 1-已收藏 2-未收藏
CountCollect int64 `json:"countCollect"` // 短剧收藏数
}
// PlayletForwardHeatReq 短剧转发加热度请求
type PlayletForwardHeatReq struct {
Id int64 `json:"id" binding:"required"` // 短剧ID
}
// PlayletForwardHeatResp 短剧转发加热度响应
type PlayletForwardHeatResp struct {
Id int64 `json:"id"` // 短剧ID
HeatValue int64 `json:"heatValue"` // 加热后的热度值
}
// PlayletCollectListReq 我的收藏列表请求
type PlayletCollectListReq struct {
// 普通分页参数,pageNum默认1,pageSize默认10、最大100
pubdef.Page
}
// PlayletCollectData 我的收藏列表项
type PlayletCollectData struct {
Id int64 `json:"id"` // 短剧ID
Title string `json:"title"` // 标题
PlayName string `json:"playName"` // 剧名
Slug string `json:"slug"` // slug
Cover string `json:"cover"` // 封面,已拼接图片域名
ThemeIds []int64 `json:"themeIds"` // 题材ID集合
ThemeNames []string `json:"themeNames"` // 题材名称集合
ThemeSlugs []string `json:"themeSlugs"` // 题材slug集合
TagIds []int64 `json:"tagIds"` // 标签ID集合
TagNames []string `json:"tagNames"` // 标签名称集合
TagSlugs []string `json:"tagSlugs"` // 标签slug集合
TotalEpisode int64 `json:"totalEpisode"` // 总集数
UpdateStatus int `json:"updateStatus"` // 更新状态 1-连载中 2-已完结
CountBrowse int64 `json:"countBrowse"` // 观看量
HeatValue int64 `json:"heatValue"` // 热度值
CountCollect int64 `json:"countCollect"` // 收藏数
IsCollect int64 `json:"isCollect"` // 收藏状态,收藏列表固定返回1-已收藏
CollectedAt time.Time `json:"collectedAt"` // 收藏时间
WatchedCount int64 `json:"watchedCount"` // 当前用户已看集数
UnwatchedCount int64 `json:"unwatchedCount"` // 当前用户未看集数,按totalEpisode-watchedCount计算
LastChapterId int64 `json:"lastChapterId"` // 最近观看剧集ID,无观看进度时为0
LastEpisode int64 `json:"lastEpisode"` // 最近观看集数,无观看进度时为0
SeoInfo pubdef.SeoValue `json:"seoInfo"` // Seo相关信息
}
// PlayletCollectListResp 我的收藏列表响应
type PlayletCollectListResp struct {
TotalCount int64 `json:"totalCount"` // 总收藏数量
PageSize int `json:"pageSize"` // 每页数
PageNum int `json:"pageNum"` // 页数
List []PlayletCollectData `json:"list"` // 收藏短剧集合
}
// PlayletHistoryListReq 观看历史列表请求
type PlayletHistoryListReq struct {
// 普通分页参数,pageNum默认1,pageSize默认20、最大100
pubdef.Page
}
// PlayletHistoryData 观看历史列表项
type PlayletHistoryData struct {
CommonData
LastChapterId int64 `json:"lastChapterId"` // 最近观看剧集ID
LastEpisode int64 `json:"lastEpisode"` // 最近观看集数
WatchedCount int64 `json:"watchedCount"` // 当前用户已看集数
UnwatchedCount int64 `json:"unwatchedCount"` // 当前用户未看集数
IsFinished bool `json:"isFinished"` // 是否已看完
HistoryAt time.Time `json:"historyAt"` // 最近观看时间
}
// PlayletHistoryListResp 观看历史列表响应
type PlayletHistoryListResp struct {
TotalCount int64 `json:"totalCount"` // 总历史数量
PageSize int `json:"pageSize"` // 每页数
PageNum int `json:"pageNum"` // 页数
List []PlayletHistoryData `json:"list"` // 观看历史集合
}
// PlayletHistoryClearResp 清空观看历史响应
type PlayletHistoryClearResp struct {
DeletedCount int64 `json:"deletedCount"` // 删除记录数量
}
// PlayletChapterLikeSetReq 短剧剧集点赞设置请求
type PlayletChapterLikeSetReq struct {
ChapterId int64 `json:"chapterId" binding:"required"` // 短剧剧集ID
IsLike *bool `json:"isLike" binding:"required"` // 是否点赞,true-点赞,false-取消点赞
}
// PlayletChapterLikeSetResp 短剧剧集点赞设置响应
type PlayletChapterLikeSetResp struct {
ChapterId int64 `json:"chapterId"` // 短剧剧集ID
IsLike int64 `json:"isLike"` // 点赞状态 1-已点赞 2-未点赞
CountLike int64 `json:"countLike"` // 短剧剧集点赞数
}
// PlayletChapterCollectSetReq 短剧剧集收藏设置请求
type PlayletChapterCollectSetReq struct {
ChapterId int64 `json:"chapterId" binding:"required"` // 短剧剧集ID
IsCollect *bool `json:"isCollect" binding:"required"` // 是否收藏,true-收藏,false-取消收藏
}
// PlayletChapterCollectSetResp 短剧剧集收藏设置响应
type PlayletChapterCollectSetResp struct {
ChapterId int64 `json:"chapterId"` // 短剧剧集ID
IsCollect int64 `json:"isCollect"` // 收藏状态 1-已收藏 2-未收藏
CountCollect int64 `json:"countCollect"` // 短剧剧集收藏数
}
// PlayletChapterCollectListReq 我的剧集收藏列表请求
type PlayletChapterCollectListReq struct {
// 普通分页参数,pageNum默认1,pageSize默认10、最大100
pubdef.Page
}
// PlayletChapterCollectData 我的剧集收藏列表项
type PlayletChapterCollectData struct {
PlayletId int64 `json:"playletId"` // 短剧ID
PlayletTitle string `json:"playletTitle"` // 短剧标题
PlayletCover string `json:"playletCover"` // 短剧封面,已拼接图片域名
TotalEpisode int64 `json:"totalEpisode"` // 短剧总集数
UpdateStatus int `json:"updateStatus"` // 更新状态 1-连载中 2-已完结
ChapterId int64 `json:"chapterId"` // 短剧剧集ID
CurrentEpisode int64 `json:"currentEpisode"` // 第几集
ChapterTitle string `json:"chapterTitle"` // 剧集标题
VideoUrl string `json:"videoUrl"` // 播放地址
MediaTime int64 `json:"mediaTime"` // 影片长度(秒)
PayType int32 `json:"payType"` // 支付方式 0-免费 1-金币 2-VIP
SingleCoins int64 `json:"singleCoins"` // 单集金币
CountBrowse int64 `json:"countBrowse"` // 剧集观看数
CountCollect int64 `json:"countCollect"` // 剧集收藏数
IsCollect int64 `json:"isCollect"` // 收藏状态,收藏列表固定返回1-已收藏
CollectedAt time.Time `json:"collectedAt"` // 收藏时间
}
// PlayletChapterCollectListResp 我的剧集收藏列表响应
type PlayletChapterCollectListResp struct {
TotalCount int64 `json:"totalCount"` // 总收藏数量
PageSize int `json:"pageSize"` // 每页数
PageNum int `json:"pageNum"` // 页数
List []PlayletChapterCollectData `json:"list"` // 收藏剧集集合
}
// PlayletChapterWatchReportReq 短剧剧集观看上报请求
type PlayletChapterWatchReportReq struct {
PlayletId int64 `json:"playletId"` // 短剧ID,传入时用于校验剧集归属
ChapterId int64 `json:"chapterId" binding:"required"` // 短剧剧集ID
}
// PlayletChapterWatchReportResp 短剧剧集观看上报响应
type PlayletChapterWatchReportResp struct {
PlayletId int64 `json:"playletId"` // 短剧ID
ChapterId int64 `json:"chapterId"` // 短剧剧集ID
CurrentEpisode int64 `json:"currentEpisode"` // 当前集数
WatchedCount int64 `json:"watchedCount"` // 当前用户已看集数
UnwatchedCount int64 `json:"unwatchedCount"` // 当前用户未看集数
LastChapterId int64 `json:"lastChapterId"` // 最近观看剧集ID
LastEpisode int64 `json:"lastEpisode"` // 最近观看集数
}
// PlayletInfoReq 详情请求
type PlayletInfoReq struct {
Id int64 `form:"id" json:"id"` // 短剧id
Slug string `form:"slug" json:"slug"` // 短剧slug,非空时优先按slug解析短剧ID
}
// PlayletChapterInfoReq 短剧剧集详情请求
type PlayletChapterInfoReq struct {
PlayletId int64 `form:"playletId" json:"playletId"` // 短剧ID,传入时用于校验剧集归属
PlayletSlug string `form:"playletSlug" json:"playletSlug"` // 短剧slug,非空时优先按slug解析短剧ID
ChapterId int64 `form:"chapterId" json:"chapterId" binding:"required"` // 短剧剧集ID
}
// PlayletChapterListReq 短剧剧集列表请求
type PlayletChapterListReq struct {
PlayletId int64 `form:"playletId" json:"playletId"` // 短剧ID
PlayletSlug string `form:"playletSlug" json:"playletSlug"` // 短剧slug,非空时优先按slug解析短剧ID
}
// PlayletChapterListResp 短剧剧集列表响应
type PlayletChapterListResp struct {
PlayletId int64 `json:"playletId"` // 短剧ID
List []PlayletChapterData `json:"list"` // 短剧剧集集合
}
// PlayletChapterInfoResp 短剧剧集详情响应
type PlayletChapterInfoResp struct {
Id int64 `json:"id"` // 短剧剧集ID
PlayletId int64 `json:"playletId"` // 短剧ID
CurrentEpisode int64 `json:"currentEpisode"` // 第几集
Title string `json:"title"` // 章节名
Md5 string `json:"md5"` // 媒体md5
Hash string `json:"hash"` // 媒体hash
Height int64 `json:"height"` // 高
Width int64 `json:"width"` // 宽
Ratio float64 `json:"ratio"` // 宽高比
VideoUrl string `json:"videoUrl"` // 视频地址
MediaSize int64 `json:"mediaSize"` // 资源大小
MediaTime int64 `json:"mediaTime"` // 影片长度(秒)
CountComment int64 `json:"countComment"` // 短剧剧集评论数
CountBrowse int64 `json:"countBrowse"` // 短剧剧集观看数
CountCollect int64 `json:"countCollect"` // 短剧剧集收藏数
CountLike int64 `json:"countLike"` // 短剧剧集点赞数
IsLike int64 `json:"isLike"` // 点赞状态 1-已点赞 2-未点赞
IsCollect int64 `json:"isCollect"` // 收藏状态 1-已收藏 2-未收藏
PayType int32 `json:"payType"` // 支付方式 0-免费 1-金币 2-VIP
SingleCoins int64 `json:"singleCoins"` // 单集金币(支付方式为1-金币时候生效)
CanWatch bool `json:"canWatch"` // 是否可观看
NeedUnlock bool `json:"needUnlock"` // 是否需要金币解锁
NeedVip bool `json:"needVip"` // 是否需要开通VIP
CostCoins int64 `json:"costCoins"` // 本次解锁消耗金币
Balance int64 `json:"balance"` // 当前金币余额
VipValid bool `json:"vipValid"` // 当前用户VIP是否有效
IsUnlocked bool `json:"isUnlocked"` // 当前用户是否已解锁本集
// 页面SEO信息
SeoInfo *SeoInfo `json:"seoInfo,omitempty"`
}
// PlayletChapterUnlockReq 短剧剧集金币解锁请求
type PlayletChapterUnlockReq struct {
PlayletId int64 `json:"playletId" binding:"required"` // 短剧ID
ChapterId int64 `json:"chapterId" binding:"required"` // 短剧剧集ID
}
// PlayletChapterUnlockResp 短剧剧集金币解锁响应
type PlayletChapterUnlockResp struct {
PlayletId int64 `json:"playletId"` // 短剧ID
ChapterId int64 `json:"chapterId"` // 短剧剧集ID
Unlocked bool `json:"unlocked"` // 是否已解锁
CanWatch bool `json:"canWatch"` // 是否可观看
Balance int64 `json:"balance"` // 当前金币余额
CostCoins int64 `json:"costCoins"` // 本次解锁消耗金币
ChangeCoin int64 `json:"changeCoin"` // 本次实际扣减金币,幂等命中时为0
}
// PlayletInfoResp 详情响应
type PlayletInfoResp struct {
CommonData
// 是否点赞(1-已点赞,2-未点赞)
IsLike int64 `json:"isLike"`
// 是否收藏(1-已收藏,2-未收藏)
IsCollect int64 `json:"isCollect"`
// 相关推荐集合
RelatedRecommendData []*CommonData `json:"relatedRecommendData"`
// 短剧章节集合
PlayletChapterInfo []PlayletChapterData `json:"playletChapterInfo"`
// 页面SEO信息
SeoInfo *SeoInfo `json:"seoInfo,omitempty"`
}
// PlayletChapterData 短剧章节信息
type PlayletChapterData struct {
Id int64 `json:"id"` // 短剧剧集ID
PlayletId int64 `json:"playletId"` // 短剧ID
CurrentEpisode int64 `json:"currentEpisode"` // 第几集
Title string `json:"title"` // 章节名
Md5 string `json:"md5"` // 媒体md5
Hash string `json:"hash"` // 媒体hash
Height int64 `json:"height"` // 高
Width int64 `json:"width"` // 宽
Ratio float64 `json:"ratio"` // 宽高比
VideoUrl string `json:"videoUrl"` // 视频地址
MediaSize int64 `json:"mediaSize"` // 资源大小
MediaTime int64 `json:"mediaTime"` // 影片长度(秒)
PayType int32 `json:"payType"` // 支付方式 0-免费 1-金币 2-VIP
SingleCoins int64 `json:"singleCoins"` // 单集金币(支付方式为1-金币时候生效)
CanWatch bool `json:"canWatch"` // 是否可观看
NeedUnlock bool `json:"needUnlock"` // 是否需要金币解锁
NeedVip bool `json:"needVip"` // 是否需要开通VIP
CostCoins int64 `json:"costCoins"` // 本次解锁消耗金币
Balance int64 `json:"balance"` // 当前金币余额
VipValid bool `json:"vipValid"` // 当前用户VIP是否有效
IsUnlocked bool `json:"isUnlocked"` // 当前用户是否已解锁本集
}