123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384 |
- package ugc
- import (
- "encoding/json"
- appDao "go-common/app/job/main/tv/dao/app"
- ugcmdl "go-common/app/job/main/tv/model/ugc"
- "go-common/library/log"
- xtime "go-common/library/time"
- )
- // arcDatabus refreshes the mc cache for archive media info
- func (s *Service) arcDatabus(jsonstr json.RawMessage) (err error) {
- var (
- arc = &ugcmdl.DatabusArc{}
- pubtime int64
- )
- if err = json.Unmarshal(jsonstr, arc); err != nil {
- log.Error("json.Unmarshal(%s) error(%v)", jsonstr, err)
- return
- }
- arcMark := arc.New
- if pubtime, err = appDao.TimeTrans(arcMark.Pubtime); err != nil {
- log.Warn("arcDatabus Pubtime AVID: %d, Err %v", arcMark.AID, err)
- }
- // we prepare the cms cache
- if err = s.dao.SetArcCMS(ctx, &ugcmdl.ArcCMS{
- // Media Info
- Title: arcMark.Title,
- AID: arcMark.AID,
- Content: arcMark.Content,
- Cover: arcMark.Cover,
- TypeID: arcMark.TypeID,
- Pubtime: xtime.Time(pubtime),
- Videos: arcMark.Videos,
- Valid: arcMark.Valid,
- Deleted: arcMark.Deleted,
- Result: arcMark.Result,
- }); err != nil {
- log.Error("arcDatabus setArcCMS AVID: %d, Err %v", arcMark.AID, err)
- }
- // we prepare the rpc cache for the ugc view page if the archive is able to play
- if arcMark.IsPass() {
- s.viewCache(int64(arcMark.AID))
- appDao.PromInfo("ArcRPC-AddCache")
- }
- s.listMtn(arc.Old, arc.New)
- return
- }
- // videoDatabus refreshes the mc cache for video media info
- func (s *Service) videoDatabus(jsonstr json.RawMessage) (err error) {
- var (
- video = &ugcmdl.DatabusVideo{}
- criCID = s.c.UgcSync.Cfg.CriticalCid
- )
- if err = json.Unmarshal(jsonstr, video); err != nil {
- log.Error("json.Unmarshal(%s) error(%v)", jsonstr, err)
- return
- }
- vm := video.New
- if vm.ToReport(criCID) { // if the video has not been reported yet, we do it and update the mark field from 0 to 1
- s.repCidCh <- vm.CID
- }
- if vm.ToAudit(criCID) {
- log.Info("videoDatabus addAudCid cAid %d", vm.AID)
- s.audAidCh <- []int64{vm.AID} // add aid into channel to treat
- }
- if video.Old == nil { // if the brand new episode can play
- if vm.CanPlay() {
- log.Info("videoDatabus reshelfAid cAid %d", vm.AID)
- s.reshelfAidCh <- vm.AID
- }
- } else { // or it couldn't play and it passes now
- if !video.Old.CanPlay() && vm.CanPlay() {
- log.Info("videoDatabus reshelfAid cAid %d", vm.AID)
- s.reshelfAidCh <- vm.AID
- }
- }
- if err = s.dao.SetVideoCMS(ctx, vm.ToCMS()); err != nil { // we prepare the cms cache
- log.Warn("videoDatabus setVideoCMS CID: %d, Err %v", vm.CID, err)
- }
- return
- }
|