104 lines
2.6 KiB
Go
104 lines
2.6 KiB
Go
package model
|
|
|
|
import (
|
|
"time"
|
|
|
|
"github.com/globalsign/mgo/bson"
|
|
"mongo.games.com/goserver/core/logger"
|
|
)
|
|
|
|
type BlackWhiteCoinLog struct {
|
|
LogId bson.ObjectId `bson:"_id"`
|
|
SnId int32 //用户ID
|
|
WBLevel int32
|
|
WBCoinLimit int64
|
|
ResetTotalCoin int32
|
|
Platform string //平台id
|
|
Time time.Time //账单时间
|
|
}
|
|
|
|
func NewBlackWhiteCoinLog(snid, wbLevel int32, wbCoinLimit int64, resetTotalCoin int32, platform string) *BlackWhiteCoinLog {
|
|
tNow := time.Now()
|
|
log := &BlackWhiteCoinLog{
|
|
LogId: bson.NewObjectId(),
|
|
SnId: snid,
|
|
WBLevel: wbLevel,
|
|
WBCoinLimit: wbCoinLimit,
|
|
ResetTotalCoin: resetTotalCoin,
|
|
Platform: platform,
|
|
Time: tNow,
|
|
}
|
|
return log
|
|
}
|
|
|
|
type BlackWhiteCoinArg struct {
|
|
Id bson.ObjectId
|
|
SnId int32
|
|
BillNo int64
|
|
Platform string
|
|
}
|
|
type BlackWhiteCoinRet struct {
|
|
Err error
|
|
Data *BlackWhiteCoinLog
|
|
}
|
|
|
|
func InsertBlackWhiteCoinLogs(logs ...*BlackWhiteCoinLog) error {
|
|
if rpcCli == nil {
|
|
return ErrRPClientNoConn
|
|
}
|
|
ret := &BlackWhiteCoinRet{}
|
|
err := rpcCli.CallWithTimeout("BlackWhiteCoinSvc.InsertBlackWhiteCoinLogs", logs, ret, time.Second*30)
|
|
if err != nil {
|
|
logger.Logger.Error("model.InsertBlackWhiteCoinLogs error", err)
|
|
return err
|
|
}
|
|
return ret.Err
|
|
}
|
|
func InsertBlackWhiteCoinLog(log *BlackWhiteCoinLog) error {
|
|
if rpcCli == nil {
|
|
return ErrRPClientNoConn
|
|
}
|
|
ret := &BlackWhiteCoinRet{}
|
|
err := rpcCli.CallWithTimeout("BlackWhiteCoinSvc.InsertBlackWhiteCoinLog", log, ret, time.Second*30)
|
|
if err != nil {
|
|
logger.Logger.Error("model.InsertBlackWhiteCoinLog error", err)
|
|
return err
|
|
}
|
|
return ret.Err
|
|
}
|
|
|
|
func RemoveBlackWhiteCoinLog(id bson.ObjectId, platform string) error {
|
|
if rpcCli == nil {
|
|
return ErrRPClientNoConn
|
|
}
|
|
args := &BlackWhiteCoinArg{
|
|
Id: id,
|
|
Platform: platform,
|
|
}
|
|
ret := &BlackWhiteCoinRet{}
|
|
err := rpcCli.CallWithTimeout("BlackWhiteCoinSvc.RemoveBlackWhiteCoinLog", args, ret, time.Second*30)
|
|
if err != nil {
|
|
logger.Logger.Error("model.RemoveBlackWhiteCoinLog error", err)
|
|
return err
|
|
}
|
|
return ret.Err
|
|
}
|
|
|
|
func GetBlackWhiteCoinLogByBillNo(snid int32, billNo int64, platform string) (*BlackWhiteCoinLog, error) {
|
|
if rpcCli == nil {
|
|
return nil, ErrRPClientNoConn
|
|
}
|
|
args := &BlackWhiteCoinArg{
|
|
SnId: snid,
|
|
BillNo: billNo,
|
|
Platform: platform,
|
|
}
|
|
ret := &BlackWhiteCoinRet{}
|
|
err := rpcCli.CallWithTimeout("BlackWhiteCoinSvc.GetBlackWhiteCoinLogByBillNo", args, ret, time.Second*30)
|
|
if err != nil {
|
|
logger.Logger.Error("model.GetBlackWhiteCoinLogByBillNo error", err)
|
|
return nil, err
|
|
}
|
|
return ret.Data, ret.Err
|
|
}
|