user_battlepass.go 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. package gatesink
  2. import (
  3. "encoding/json"
  4. "fmt"
  5. "bet24.com/log"
  6. "bet24.com/servers/coreservice/client"
  7. "bet24.com/servers/fishhall/protocol"
  8. )
  9. func (this *user) onBattlePassMsg(msg, data string) {
  10. switch msg {
  11. case "getBattlePassPacks": // 获取礼包数据
  12. this.getBattlePassPacks(msg)
  13. case "getBattlePassTerms": // 获取用户可购买的礼包列表
  14. this.getBattlePassTerms(msg)
  15. case "awardBattlePass": // 获取用户可购买的礼包列表
  16. this.awardBattlePass(msg, data)
  17. }
  18. }
  19. func (this *user) getBattlePassPacks(msg string) {
  20. resp := client.GetBattlePassPacks()
  21. if resp.RetCode != 1 {
  22. log.Debug("user.getBattlePassPacks failed %v", resp)
  23. }
  24. this.WriteMsg(msg, resp.Data)
  25. }
  26. func (this *user) getBattlePassTerms(msg string) {
  27. resp := client.GetUserBattlePass(this.getUserId())
  28. if resp.RetCode != 1 {
  29. log.Debug("user.getBattlePassTerms failed %v", resp)
  30. }
  31. this.WriteMsg(msg, resp.Data)
  32. }
  33. func (this *user) awardBattlePass(msg string, data string) {
  34. var req protocol.GrowthPackAward_req
  35. if err := json.Unmarshal([]byte(data), &req); err != nil {
  36. retData := fmt.Sprintf("awardBattlePass Unmarshal data failed %v", data)
  37. log.Release(retData)
  38. this.WriteMsg(msg, retData)
  39. return
  40. }
  41. resp := client.UserAwardBattlePass(this.getUserId(), req.GiftPackId, req.Index)
  42. if resp.RetCode != 1 {
  43. log.Debug("user.awardBattlePass failed %v", resp)
  44. }
  45. this.WriteMsg(msg, resp.Data)
  46. }