game_sync/dbproxy/mq/c_customlog.go

53 lines
1.1 KiB
Go

package mq
import (
"mongo.games.com/game/dbproxy/svc"
"mongo.games.com/game/model"
"mongo.games.com/game/mq"
)
func init() {
// 竞技馆获奖通知
mq.RegisterMessage(&mq.RegisterMessageParam{
Name: mq.RankCustomLogAward,
Data: model.CustomLogAward{},
})
// 竞技馆对局记录
mq.RegisterHandler(&mq.RegisterHandlerParam{
Name: mq.DBCustomLog,
Data: model.CustomLog{},
Handler: func(data interface{}) (err error) {
log, ok := data.(*model.CustomLog)
if !ok {
return nil
}
c := svc.DbCustomLogCollection(log.Platform)
if c != nil {
err = c.Insert(log)
}
return nil
},
})
// 竞技馆奖励记录
mq.RegisterHandler(&mq.RegisterHandlerParam{
Name: mq.DBCustomLogAward,
Data: model.CustomLogAward{},
Handler: func(data interface{}) (err error) {
log, ok := data.(*model.CustomLogAward)
if !ok {
return nil
}
c := svc.DbCustomLogAwardCollection(log.Platform)
if c != nil {
err = c.Insert(log)
if err == nil {
mq.Write(log) // 通知ranksrv广播获奖消息
}
}
return
},
})
}