75 lines
1.4 KiB
Go
75 lines
1.4 KiB
Go
package model
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/globalsign/mgo"
|
|
"github.com/globalsign/mgo/bson"
|
|
)
|
|
|
|
type MatchRec struct {
|
|
Id bson.ObjectId `bson:"_id"`
|
|
Platform string
|
|
SnId int32
|
|
MatchId int32
|
|
MatchName string
|
|
GameFreeId int32
|
|
Rank int32
|
|
SignupType int32
|
|
SignupCnt int32
|
|
Prizes int32
|
|
Grade int32
|
|
Ts time.Time
|
|
}
|
|
|
|
var (
|
|
MatchRecDBName = "log"
|
|
MatchRecCollName = "log_matchrec"
|
|
)
|
|
|
|
func NewMatchRec() *MatchRec {
|
|
return &MatchRec{Id: bson.NewObjectId()}
|
|
}
|
|
|
|
func InsertMatchRecs(logs ...*MatchRec) (err error) {
|
|
if rpcCli == nil {
|
|
return ErrRPClientNoConn
|
|
}
|
|
var ret bool
|
|
return rpcCli.CallWithTimeout("MatchRecSvc.InsertMatchRecs", logs, &ret, time.Second*30)
|
|
}
|
|
|
|
type FetchMatchRecsArgs struct {
|
|
Plt string
|
|
SnId int32
|
|
}
|
|
|
|
func FetchMatchRecs(plt string, snid int32) (recs []MatchRec, err error) {
|
|
if rpcCli == nil {
|
|
return nil, ErrRPClientNoConn
|
|
}
|
|
args := &FetchMatchRecsArgs{
|
|
Plt: plt,
|
|
SnId: snid,
|
|
}
|
|
err = rpcCli.CallWithTimeout("MatchRecSvc.FetchMatchRecs", args, &recs, time.Second*30)
|
|
return
|
|
}
|
|
|
|
type RemoveMatchRecsArgs struct {
|
|
Plt string
|
|
Ts time.Time
|
|
}
|
|
|
|
func RemoveMatchRecs(plt string, ts time.Time) (ret *mgo.ChangeInfo, err error) {
|
|
if rpcCli == nil {
|
|
return nil, ErrRPClientNoConn
|
|
}
|
|
args := &RemoveMatchRecsArgs{
|
|
Plt: plt,
|
|
Ts: ts,
|
|
}
|
|
rpcCli.CallWithTimeout("MatchRecSvc.RemoveMatchRecs", args, &ret, time.Second*30)
|
|
return
|
|
}
|