123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242 |
- package model
- import (
- "net/url"
- xtime "go-common/library/time"
- )
- // ChannelInfoResult .
- type ChannelInfoResult struct {
- *CommonResponse
- Data map[int64]*ArchiveChannelData
- }
- // ArchiveChannelData .
- type ArchiveChannelData struct {
- Tids []int64 `json:"tids"`
- ChannelMap map[int64]*Channel `json:"channels"`
- Archive *Archive `json:"-"`
- }
- // Channel .
- type Channel struct {
- //Tid int64 `json:"tid"`
- TName string `json:"tname"`
- //HitRule string `json:"hit_rule"`
- //HitNames []string `json:"hit_names"`
- HitRules []string `json:"hit_rules"`
- Archive *Archive `json:"archive"`
- }
- // Review review struct
- // http://info.bilibili.co/pages/viewpage.action?pageId=5417343
- type Review struct {
- ReviewID int64 `json:"review_id"`
- Type int8 `json:"type"`
- Mid int64 `json:"mid"`
- MediaName string `json:"media_name"`
- Title string `json:"title"`
- Content string `json:"content"`
- Status int8 `json:"status"`
- IsDelete int8 `json:"is_delete"`
- CTime xtime.Time `json:"ctime"`
- MTime xtime.Time `json:"mtime"`
- TypeName string `json:"type_name"`
- Author string `json:"author"`
- Composer *Account `json:"-"`
- }
- // MultiReviewInfoResult response of multi review info api
- type MultiReviewInfoResult struct {
- Code int `json:"code"`
- Result map[int64]*Review `json:"result"`
- Message string `json:"message"`
- TTL int64 `json:"ttl"`
- }
- // SpecialTag .
- type SpecialTag struct {
- MID int64 `json:"mid"`
- GroupTag string `json:"group_tag"`
- BGColor string `json:"bg_color"`
- FontColor string `json:"font_color"`
- GroupID int `json:"group_id"`
- }
- // UperSpecial .
- // http://info.bilibili.co/pages/viewpage.action?pageId=8479274
- type UperSpecial struct {
- Code int `json:"code"`
- Message string `json:"message"`
- TTL int64 `json:"ttl"`
- Data struct {
- Page Page `json:"page"`
- Items []*SpecialTag `json:"items"`
- } `json:"data"`
- }
- // Account account info struct
- // http://info.bilibili.co/pages/viewpage.action?pageId=8465956#V3HTTP接口-用户全量信息含计数ProfileStat
- // ignore unused field
- type Account struct {
- Mid int64 `json:"mid"`
- Name string `json:"name"`
- Rank int32 `json:"rank"`
- Follower int64 `json:"follower"`
- Official *Official `json:"official"`
- SpecialTag []*SpecialTag `json:"special_tag"`
- }
- // Official .
- type Official struct {
- Role int8 `json:"role"`
- }
- // Relation .
- // http://info.bilibili.co/pages/viewpage.action?pageId=8742464
- type Relation struct {
- Follower int `json:"follower"`
- }
- // AccountInfosResult response of account info api
- type AccountInfosResult struct {
- Code int `json:"code"`
- Data *Account `json:"data"`
- Message string `json:"message"`
- TTL int64 `json:"ttl"`
- }
- // ArchiveComplainGroup is the model for archvie appeal group view
- type ArchiveComplainGroup struct {
- Group
- Archive *Archive `json:"archive"`
- ChallengeTags ChallTagSlice `json:"challenge_tags"`
- }
- // ArchiveAppealGroup is the model for archvie appeal group view
- type ArchiveAppealGroup struct {
- ArchiveComplainGroup
- // Appeal Related
- Cid int64 `json:"cid"`
- AppealReason string `json:"appeal_reason"`
- AppealAttachments []string `json:"appeal_attachments"`
- }
- // ArchiveListPage is the model for archive list result
- type ArchiveListPage struct {
- Items interface{} `json:"items"`
- Page *Page `json:"page"`
- }
- // Archive is archive info struct
- // http://info.bilibili.co/pages/viewpage.action?pageId=3686646
- type Archive struct {
- Author string `json:"author"`
- State int32 `json:"state"`
- Mid int64 `json:"mid"`
- TypeID int32 `json:"tid"`
- Type string `json:"type"`
- Title string `json:"title"`
- RejectReason string `json:"reject_reason"`
- Composer *Account `json:"-"`
- OPName string `json:"op_name"`
- OPContent string `json:"op_content"`
- OPRemark string `json:"op_remark"`
- }
- // ArchiveResult is response of archive info api
- type ArchiveResult struct {
- *Archive `json:"archive"`
- }
- // MultiArchiveInfoResult is response of multi archive info api
- type MultiArchiveInfoResult struct {
- Code int `json:"code"`
- Data map[int64]*ArchiveResult `json:"data"`
- Message string `json:"message"`
- TTL int64 `json:"ttl"`
- }
- // ArchiveType archive type struct
- type ArchiveType struct {
- ID int64 `json:"id"`
- PID int64 `json:"pid"`
- Name string `json:"name"`
- Description string `json:"description"`
- }
- // ArchiveTypeResult response of archive type api
- type ArchiveTypeResult struct {
- Code int `json:"code"`
- Data map[int32]*ArchiveType `json:"data"`
- Message string `json:"message"`
- TTL int64 `json:"ttl"`
- }
- // FixAttachments will fix attachments url as user friendly
- // ignore https case
- // FIXME: this should be removed after attachment url is be normed
- func (ag *ArchiveAppealGroup) FixAttachments() {
- if ag.AppealAttachments == nil {
- return
- }
- fixed := make([]string, 0, len(ag.AppealAttachments))
- for _, a := range ag.AppealAttachments {
- u, err := url.Parse(a)
- if err != nil {
- continue
- }
- u.Scheme = "http"
- fixed = append(fixed, u.String())
- }
- ag.AppealAttachments = fixed
- }
- // CreditMeta .
- type CreditMeta struct {
- *Business
- Producer *Account `json:"producer"`
- }
- // BlockInfoResp .
- type BlockInfoResp struct {
- *CommonResponse
- Data *struct {
- Mid int64 `json:"mid"`
- Status int64 `json:"status"`
- StartTime int64 `json:"start_time"`
- EndTime int64 `json:"end_time"`
- BlockedSum int64 `json:"blocked_sum"`
- } `json:"data"`
- }
- // BlockNumResp .
- type BlockNumResp struct {
- *CommonResponse
- Data *struct {
- BlockedSum int64 `json:"blockedSum"`
- } `json:"data"`
- }
- // BlockCaseAdd .
- // http://info.bilibili.co/pages/viewpage.action?pageId=5417571
- type BlockCaseAdd struct {
- Aid int64 `json:"aid"`
- Mid int64 `json:"mid"`
- Operator string `json:"operator"`
- OperID int64 `json:"oper_id"`
- OriginType int64 `json:"origin_type"`
- OriginContent string `json:"origin_content"`
- OriginTitle string `json:"origin_title"`
- OriginURL string `json:"origin_url"`
- ReasonType int64 `json:"reason_type"`
- Oid int64 `json:"oid"`
- RpID int64 `json:"rp_id"`
- TagID int64 `json:"tag_id"`
- Type int64 `json:"type"`
- Page int64 `json:"page"`
- BusinessTime int64 `json:"business_time"`
- }
|