123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111 |
- package model
- import (
- "go-common/library/time"
- )
- const (
- AttrNo = int32(0)
- AttrYes = int32(1)
- SubTypeVideo = int32(1)
- SubStateOpen = int32(0)
- SubStateClosed = int32(1)
- AttrSubGuest = uint(0)
- AttrSubSpolier = uint(1)
- AttrSubMission = uint(2)
- AttrSubAdvance = uint(3)
- AttrSubMonitorBefore = uint(4)
- AttrSubMonitorAfter = uint(5)
- AttrSubMaskOpen = uint(6)
- AttrSubMblMaskReady = uint(7)
- AttrSubWebMaskReady = uint(8)
- )
- type Subject struct {
- ID int64 `json:"id"`
- Type int32 `json:"type"`
- Oid int64 `json:"oid"`
- Pid int64 `json:"pid"`
- Mid int64 `json:"mid"`
- State int32 `json:"state"`
- Attr int32 `json:"attr"`
- ACount int64 `json:"acount"`
- Count int64 `json:"count"`
- MCount int64 `json:"mcount"`
- MoveCnt int64 `json:"move_count"`
- Maxlimit int64 `json:"maxlimit"`
- Childpool int32 `json:"childpool"`
- Ctime time.Time `json:"ctime"`
- Mtime time.Time `json:"mtime"`
- }
- type SubjectLog struct {
- UID int64 `json:"uid"`
- Uname string `json:"uname"`
- Oid int64 `json:"oid"`
- Action string `json:"action"`
- Comment string `json:"comment"`
- Ctime string `json:"ctime"`
- }
- type SeasonInfo struct {
- Aid int64 `json:"aid"`
- Cid int64 `json:"cid"`
- Epid int64 `json:"ep_id"`
- Ssid int64 `json:"season_id"`
- State int64 `json:"is_delete"`
- LTitle string `json:"long_title"`
- Title string `json:"title"`
- }
- type SearchSubjectReq struct {
- Oids, Aids, Mids, Attrs []int64
- State int64
- Pn, Ps int64
- Sort, Order string
- }
- type SearchSubjectResult struct {
- Page *Page
- Result []*struct {
- Oid int64 `json:"oid"`
- } `json:"result"`
- }
- type SearchSubjectLog struct {
- Page *Page
- Result []*struct {
- UID int64 `json:"uid"`
- Uname string `json:"uname"`
- Oid int64 `json:"oid"`
- Action string `json:"action"`
- ExtraData string `json:"extra_data"`
- Ctime string `json:"ctime"`
- }
- }
- func (s *Subject) AttrVal(bit uint) int32 {
- return (s.Attr >> bit) & int32(1)
- }
- func (s *Subject) AttrSet(v int32, bit uint) {
- s.Attr = s.Attr&(^(1 << bit)) | (v << bit)
- }
- func (s *Subject) IsMonitoring() bool {
- return s.AttrVal(AttrSubMonitorBefore) == AttrYes ||
- s.AttrVal(AttrSubMonitorAfter) == AttrYes
- }
|