package common import ( "fmt" "server/call" "server/common" "server/natsClient" "server/pb" "github.com/gogo/protobuf/proto" "github.com/liangdas/mqant/log" "github.com/nats-io/nats.go" ) func initNats(conn *nats.Conn) { call.InitReload(conn) natsClient.NewCommonNatsImp(conn, natsClient.TopicInnerAfterSettle, func(data []byte) { d := new(pb.InnerAfterSettle) err := proto.Unmarshal(data, d) if err != nil { log.Error("err:%v", err) return } afterSettle(d) }, natsClient.QueueAfterSettle) natsClient.NewCommonNatsImp(conn, natsClient.TopicInnerESBulk, func(data []byte) { d := new(pb.InnerESBulk) err := proto.Unmarshal(data, d) if err != nil { log.Error("err:%v", err) return } esBulk(d) }) } type Player struct { uid int gid int settleData *pb.InnerAfterSettle } func afterSettle(d *pb.InnerAfterSettle) { log.Debug("afterSettle:%+v", *d) UpdateGameData(d) // 更新打码排行榜信息 call.UpdateRankValue(1, int(d.UID), d.TotalBet, 0) // 更新分享信息 call.UpdateShare(int(d.UID), 1, d.TotalBet, fmt.Sprintf("%d", d.FinalSettle-d.TotalBet)) // call.ShareSettle(d) // p := &Player{uid: int(d.UID), gid: int(d.GameID), settleData: d} // p.ActivityFirstRechargeBack() } func UpdateGameData(d *pb.InnerAfterSettle) { call.UpdatePlayerProfile(&common.ESGameData{ UID: int(d.UID), Provider: int(d.ProviderID), GameID: int(d.GameID), UUID: d.UUID, Type: common.CurrencyType(d.CurrencyType), BetAmount: d.TotalBet, SettleAmount: d.FinalSettle, MyUUID: d.MyUUID, }) // call.UpdateGameSort(int(d.ProviderID), int(d.GameID)) } // 刷新分享投注 // func Share(d *pb.InnerAfterSettle) { // shareInfo := &common.ShareInfo{UID: int(d.UID)} // db.Mysql().Get(shareInfo) // if shareInfo.UP == 0 { // return // } // db.Mysql().Update(&common.ShareInfo{UID: int(d.UID)}, map[string]interface{}{"bet": gorm.Expr("bet + ?", d.TotalBet)}) // }