123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126 |
- package splash
- import (
- "encoding/json"
- "go-common/app/interface/main/app-resource/model"
- xtime "go-common/library/time"
- )
- // Splash is splash type.
- type Splash struct {
- ID int64 `json:"id"`
- Type int8 `json:"type"`
- Animate int8 `json:"animate"`
- Duration int16 `json:"duration"`
- Start xtime.Time `json:"start_time,omitempty"`
- End xtime.Time `json:"end_time,omitempty"`
- Image string `json:"thumb"`
- Hash string `json:"hash"`
- Times int16 `json:"times"`
- Skip int8 `json:"skip"`
- URI string `json:"uri"`
- Area string `json:"-"`
- Plat int8 `json:"-"`
- Goto string `json:"-"`
- Param string `json:"-"`
- Width int `json:"-"`
- Height int `json:"-"`
- Build int `json:"-"`
- Condition string `json:"-"`
- Operate int `json:"-"`
- NoPreview int `json:"-"`
- // bitrhday
- BirthStart string `json:"start_date,omitempty"`
- BirthEnd string `json:"end_date,omitempty"`
- BirthStartMonth string `json:"-"`
- BirthEndMonth string `json:"-"`
- }
- type List struct {
- ID int64 `json:"id"`
- Type int8 `json:"type"`
- CardType int8 `json:"card_type"`
- Duration int16 `json:"duration"`
- Start xtime.Time `json:"begin_time,omitempty"`
- End xtime.Time `json:"end_time,omitempty"`
- Image string `json:"thumb"`
- Hash string `json:"hash"`
- LogoURL string `json:"logo_url"`
- LogoHash string `json:"logo_hash"`
- Skip int8 `json:"skip"`
- URI string `json:"uri"`
- VideoURL string `json:"video_url,omitempty"`
- VideoHash string `json:"video_hash,omitempty"`
- VideoWidth int `json:"video_width,omitempty"`
- VideoHeight int `json:"video_height,omitempty"`
- URITitle string `json:"uri_title"`
- Source int `json:"source,omitempty"`
- CmMark int `json:"cm_mark,omitempty"`
- AdCb string `json:"ad_cb,omitempty"`
- ResourceID int `json:"resource_id,omitempty"`
- RequestID string `json:"request_id,omitempty"`
- ClientIP string `json:"client_ip,omitempty"`
- IsAd bool `json:"is_ad"`
- IsAdLoc bool `json:"is_ad_loc,omitempty"`
- Schema string `json:"schema,omitempty"`
- SchemaTitle string `json:"schema_title,omitempty"`
- SchemaPackageName string `json:"schema_package_name,omitempty"`
- SchemaCallupWhiteList []string `json:"schema_callup_white_list,omitempty"`
- Extra json.RawMessage `json:"extra,omitempty"`
- }
- type Show struct {
- ID int64 `json:"id"`
- Stime xtime.Time `json:"stime"`
- Etime xtime.Time `json:"etime"`
- }
- type CmSplash struct {
- *CmConfig
- List []*List `json:"list,omitempty"`
- Show []*Show `json:"show,omitempty"`
- }
- type CmConfig struct {
- MaxTime int `json:"max_time"`
- MinInterval int `json:"min_interval"`
- PullInterval int `json:"pull_interval"`
- }
- // PlatChange
- func (s *Splash) PlatChange() {
- switch s.Plat {
- case 1: // resource iphone
- s.Plat = model.PlatIPhone
- case 2: // resource android
- s.Plat = model.PlatAndroid
- case 3: // resource pad
- s.Plat = model.PlatIPad
- case 4: // resource iphoneg
- s.Plat = model.PlatIPhoneI
- case 5: // resource androidg
- s.Plat = model.PlatAndroidG
- case 6: // resource padg
- s.Plat = model.PlatIPadI
- case 8: // resource androidi
- s.Plat = model.PlatAndroidI
- }
- if s.Operate == 1 { // NOTE: operate=1 means AD
- s.Type = 1 // NOTE: type=1 compatiable mobile, must type=1 can splash
- }
- }
- // BirthDate
- func (s *Splash) BirthDate() {
- s.BirthStart = s.Start.Time().Format("0102")
- s.BirthEnd = s.End.Time().Format("0102")
- s.BirthStartMonth = s.Start.Time().Format("01")
- s.BirthEndMonth = s.End.Time().Format("01")
- s.Start = xtime.Time(0)
- s.End = xtime.Time(0)
- }
- // Ratio calc width/height ratio.
- func Ratio(w, h int) float64 {
- return float64(w) / float64(h)
- }
|