123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122 |
- package service
- import (
- "context"
- dm2Mdl "go-common/app/interface/main/dm2/model"
- "go-common/app/interface/main/dm2/model/oplog"
- arcMdl "go-common/app/service/main/archive/model/archive"
- "go-common/app/service/main/assist/model/assist"
- "go-common/library/ecode"
- "go-common/library/log"
- )
- // assist
- func (s *Service) assist(c context.Context, mid int64, aid int64) (upID int64, isUp bool, err error) {
- var ares *assist.AssistRes
- arc, err := s.acvSvc.Archive3(c, &arcMdl.ArgAid2{Aid: aid})
- if err != nil {
- log.Error("s.acvSvc.Archive3(%d) error(%v)", aid, err)
- return
- }
- upID = arc.Author.Mid
- isUp = upID == mid
- if isUp {
- return
- }
- arg := &assist.ArgAssist{Mid: upID, AssistMid: mid, Type: assist.TypeDm}
- if ares, err = s.astSvc.Assist(c, arg); err != nil {
- log.Error("s.astSvc.Assist(%v) error(%v)", arg, err)
- return
- }
- if ares.Assist == 0 {
- err = ecode.DMAssistNo
- return
- }
- if ares.Allow < 1 {
- err = ecode.DMAssistLimit
- }
- return
- }
- // AssistBanned up主屏蔽
- func (s *Service) AssistBanned(c context.Context, mid, cid int64, dmids []int64) (err error) {
- arg := &dm2Mdl.ArgBanUsers{
- Mid: mid,
- Oid: cid,
- DMIDs: dmids,
- }
- if err = s.dmRPC.BanUsers(c, arg); err != nil {
- log.Error("dmRPC.BanUsers(%+v) error(%v)", arg, err)
- }
- return
- }
- // AssistUptBanned 更新up主屏蔽
- func (s *Service) AssistUptBanned(c context.Context, mid int64, hash string, active int8) (err error) {
- arg := &dm2Mdl.ArgEditUpFilters{
- Mid: mid,
- Type: dm2Mdl.FilterTypeID,
- Active: active,
- Filters: []string{hash},
- }
- if _, err = s.dmRPC.EditUpFilters(c, arg); err != nil {
- log.Error("dmRPC.EditUpFilters(%+v) error(%v)", arg, err)
- }
- return
- }
- // AssistDelBanned2 批量撤销up主屏蔽
- func (s *Service) AssistDelBanned2(c context.Context, mid, aid int64, hashes []string) (err error) {
- arg := &dm2Mdl.ArgCancelBanUsers{
- Mid: mid,
- Aid: aid,
- Filters: hashes,
- }
- if err = s.dmRPC.CancelBanUsers(c, arg); err != nil {
- log.Error("dmRPC.CancelBanUsers(%+v) error(%v)", arg, err)
- }
- return
- }
- // AssistBannedUsers 获取up主屏蔽列表
- func (s *Service) AssistBannedUsers(c context.Context, mid, aid int64) (hashes []string, err error) {
- upID, _, err := s.assist(c, mid, aid)
- if err != nil {
- if err == ecode.DMAssistLimit {
- err = nil
- } else {
- log.Error("s.assist(%d,%d) error(%v)", mid, aid, err)
- return
- }
- }
- arg := &dm2Mdl.ArgUpFilters{Mid: upID}
- res, err := s.dmRPC.UpFilters(c, arg)
- if err != nil {
- log.Error("dmRPC.UpFilters(%+v) error(%v)", arg, err)
- return
- }
- for _, v := range res {
- if v.Type == dm2Mdl.FilterTypeID {
- hashes = append(hashes, v.Filter)
- }
- }
- return
- }
- // AssistDeleteDM assist delete dm.
- func (s *Service) AssistDeleteDM(c context.Context, mid, oid int64, dmids []int64) (err error) {
- arg := &dm2Mdl.ArgEditDMState{
- Type: dm2Mdl.SubTypeVideo,
- Oid: oid,
- Mid: mid,
- State: dm2Mdl.StateDelete, // must be this value
- Dmids: dmids,
- Source: oplog.SourcePlayer,
- OperatorType: oplog.OperatorMember,
- }
- if err = s.dmRPC.EditDMState(c, arg); err != nil {
- log.Error("dmRPC.EditDMState(%v) error(%v)", arg, err)
- }
- return
- }
|