user_ladder.go 2.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. package gatesink
  2. import (
  3. "encoding/json"
  4. "fmt"
  5. "bet24.com/log"
  6. ladderservice "bet24.com/servers/micros/ladderservice/proto"
  7. )
  8. func (this *user) onUserLadderMsg(msg, data string) {
  9. switch msg {
  10. case "LadderService_getSystemInfo":
  11. this.WriteMsg(msg, ladderservice.GetSystemLadderInfo())
  12. case "LadderService_getUserInfo":
  13. this.getUserLadderInfo(msg, data)
  14. case "LadderService_getUserConsecutiveWinCount":
  15. this.getUserConsecutiveWinCount(msg, data)
  16. case "LadderService_useConsecutiveCard":
  17. this.useConsecutiveCard(msg, data)
  18. case "LadderService_getRoomList":
  19. this.WriteMsg(msg, ladderservice.GetLadderRoomList())
  20. case "LadderService_getUserSettlementRecord":
  21. this.getUserSettlementRecord(msg, data)
  22. case "LadderService_getUserHistoricalSettlementRecord":
  23. this.getUserHistoricalSettlement(msg, data)
  24. }
  25. }
  26. func (this *user) getUserLadderInfo(msg, data string) {
  27. var req struct {
  28. UserId int
  29. GameId int
  30. }
  31. err := json.Unmarshal([]byte(data), &req)
  32. if err != nil {
  33. log.Release("gatesink.getUserLadderInfo Unmarshal failed %s", data)
  34. req.UserId = this.getUserId()
  35. req.GameId = 0
  36. }
  37. ladderInfo := ladderservice.GetUserLadderInfo(req.UserId, req.GameId)
  38. var ret string
  39. if ladderInfo != nil {
  40. d, _ := json.Marshal(ladderInfo)
  41. ret = string(d)
  42. }
  43. this.WriteMsg(msg, ret)
  44. }
  45. func (this *user) getUserConsecutiveWinCount(msg, data string) {
  46. var req struct {
  47. UserId int
  48. GameId int
  49. }
  50. err := json.Unmarshal([]byte(data), &req)
  51. if err != nil {
  52. log.Release("gatesink.getUserConsecutiveWinCount Unmarshal failed %s", data)
  53. //req.UserId = this.getUserId()
  54. req.GameId = 0
  55. }
  56. count := ladderservice.GetUserConsecutiveWinCount(req.UserId, req.GameId)
  57. this.WriteMsg(msg, fmt.Sprintf("%d", count))
  58. }
  59. func (this *user) useConsecutiveCard(msg, data string) {
  60. if ladderservice.UseConsecutiveCard(this.getUserId()) {
  61. this.WriteMsg(msg, "ok")
  62. } else {
  63. this.WriteMsg(msg, "failed")
  64. }
  65. }
  66. func (this *user) getUserSettlementRecord(msg, data string) {
  67. ret := ladderservice.GetUserSettlementRecord(this.getUserId())
  68. buf, _ := json.Marshal(ret)
  69. this.WriteMsg(msg, string(buf))
  70. }
  71. func (this *user) getUserHistoricalSettlement(msg, data string) {
  72. ret := ladderservice.GetUserHistoricalRecord(this.getUserId())
  73. buf, _ := json.Marshal(ret)
  74. this.WriteMsg(msg, string(buf))
  75. }