user_agent.go 5.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210
  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) onAgentMsg(msg, data string) {
  10. // 代理体系
  11. switch msg {
  12. case "agentConfigs": // 代理配置信息
  13. this.agentConfigs(msg, data)
  14. case "agentApply": // 代理申请
  15. this.agentApply(msg, data)
  16. case "agentBind": // 代理绑码
  17. this.agentBind(msg, data)
  18. case "agentInfo": // 代理信息
  19. this.agentInfo(msg, data)
  20. case "agentMembers": // 会员
  21. this.agentMembers(msg, data)
  22. case "agentStat": // 代理统计
  23. this.agentStat(msg, data)
  24. case "agentCommissionLog": // 收益记录
  25. this.agentCommissionLog(msg, data)
  26. case "agentCommissionToAmount": // 提取收益
  27. this.agentCommissionToAmount(msg, data)
  28. case "agentGetMyGroup": // 获取代理自己群组
  29. this.agentGetMyGroup(msg, data)
  30. case "agentGetGroup": // 获取会员上级群组
  31. this.agentGetGroup(msg, data)
  32. case "agentUpdateGroup": // 修改代理群组
  33. this.agentUpdateGroup(msg, data)
  34. default:
  35. log.Release("user.onAgentMsg unhandled msg %s", msg)
  36. }
  37. }
  38. // 代理配置
  39. func (this *user) agentConfigs(msg, data string) {
  40. resp := client.AgentConfigs()
  41. if resp.RetCode != 1 {
  42. log.Debug("user.agentConfigs failed %v", resp)
  43. }
  44. this.WriteMsg(msg, resp.Data)
  45. return
  46. }
  47. // 代理申请
  48. func (this *user) agentApply(msg, data string) {
  49. var req protocol.AgentApply
  50. if err := json.Unmarshal([]byte(data), &req); err != nil {
  51. retData := fmt.Sprintf("agentApply unmarshal fail %v", err)
  52. log.Release(retData)
  53. this.WriteMsg(msg, retData)
  54. return
  55. }
  56. resp := client.AgentApply(this.getUserId(), req.Memo)
  57. if resp.RetCode != 1 {
  58. log.Debug("user.agentApply failed %v", resp)
  59. }
  60. this.WriteMsg(msg, resp.Data)
  61. return
  62. }
  63. // 代理绑码
  64. func (this *user) agentBind(msg, data string) {
  65. var req protocol.AgentBind
  66. if err := json.Unmarshal([]byte(data), &req); err != nil {
  67. retData := fmt.Sprintf("agentBind unmarshal fail %v", err)
  68. log.Release(retData)
  69. this.WriteMsg(msg, retData)
  70. return
  71. }
  72. resp := client.AgentBind(this.getUserId(), req.Code, this.GetIP())
  73. if resp.RetCode != 1 {
  74. log.Debug("user.agentBind failed %v", resp)
  75. }
  76. var respData struct {
  77. RetCode int
  78. Items interface{}
  79. }
  80. if err := json.Unmarshal([]byte(resp.Data), &respData); err != nil {
  81. this.WriteMsg(msg, resp.Data)
  82. return
  83. }
  84. // 绑码成功,更新存储
  85. if respData.RetCode == 1 {
  86. go this.setHigherUserId(req.Code)
  87. go this.setUTMSource("agentinvite")
  88. }
  89. this.WriteMsg(msg, resp.Data)
  90. return
  91. }
  92. // 代理信息
  93. func (this *user) agentInfo(msg, data string) {
  94. resp := client.AgentInfo(this.getUserId())
  95. if resp.RetCode != 1 {
  96. log.Debug("user.agentInfo failed %v", resp)
  97. }
  98. this.WriteMsg(msg, resp.Data)
  99. return
  100. }
  101. // 会员
  102. func (this *user) agentMembers(msg, data string) {
  103. var req protocol.Agent
  104. if err := json.Unmarshal([]byte(data), &req); err != nil {
  105. retData := fmt.Sprintf("agentMembers unmarshal fail %v", err)
  106. log.Release(retData)
  107. this.WriteMsg(msg, retData)
  108. return
  109. }
  110. resp := client.AgentMembers(this.getUserId(), req.PageIndex, req.PageSize)
  111. if resp.RetCode != 1 {
  112. log.Debug("user.agentMembers failed %v", resp)
  113. }
  114. this.WriteMsg(msg, resp.Data)
  115. return
  116. }
  117. // 代理统计
  118. func (this *user) agentStat(msg, data string) {
  119. var req protocol.Agent
  120. if err := json.Unmarshal([]byte(data), &req); err != nil {
  121. retData := fmt.Sprintf("agentStat unmarshal fail %v", err)
  122. log.Release(retData)
  123. this.WriteMsg(msg, retData)
  124. return
  125. }
  126. resp := client.AgentStat(this.getUserId(), req.PageIndex, req.PageSize)
  127. if resp.RetCode != 1 {
  128. log.Debug("user.agentStat failed %v", resp)
  129. }
  130. this.WriteMsg(msg, resp.Data)
  131. return
  132. }
  133. // 收益记录
  134. func (this *user) agentCommissionLog(msg, data string) {
  135. var req protocol.Agent
  136. if err := json.Unmarshal([]byte(data), &req); err != nil {
  137. retData := fmt.Sprintf("agentCommissionLog unmarshal fail %v", err)
  138. log.Release(retData)
  139. this.WriteMsg(msg, retData)
  140. return
  141. }
  142. resp := client.AgentCommissionLog(this.getUserId(), req.FromUserId, req.PageIndex, req.PageSize)
  143. if resp.RetCode != 1 {
  144. log.Debug("user.agentCommissionLog failed %v", resp)
  145. }
  146. this.WriteMsg(msg, resp.Data)
  147. return
  148. }
  149. // 提取收益
  150. func (this *user) agentCommissionToAmount(msg, data string) {
  151. resp := client.AgentCommissionToAmount(this.getUserId(), this.GetIP())
  152. if resp.RetCode != 1 {
  153. log.Debug("user.agentCommissionToAmount failed %v", resp)
  154. }
  155. this.WriteMsg(msg, resp.Data)
  156. return
  157. }
  158. // 获取代理群组
  159. func (this *user) agentGetGroup(msg, data string) {
  160. resp := client.AgentGetGroup(this.getHigherUserId())
  161. if resp.RetCode != 1 {
  162. log.Debug("user.agentGroup failed %v", resp)
  163. }
  164. this.WriteMsg(msg, resp.Data)
  165. return
  166. }
  167. // 获取代理自己群组
  168. func (this *user) agentGetMyGroup(msg, data string) {
  169. resp := client.AgentGetGroup(this.getUserId())
  170. if resp.RetCode != 1 {
  171. log.Debug("user.agentGroup failed %v", resp)
  172. }
  173. this.WriteMsg(msg, resp.Data)
  174. return
  175. }
  176. // 修改代理群组
  177. func (this *user) agentUpdateGroup(msg, data string) {
  178. var req protocol.AgentGroup
  179. if err := json.Unmarshal([]byte(data), &req); err != nil {
  180. retData := fmt.Sprintf("agentUpdateGroup unmarshal fail %v", err)
  181. log.Release(retData)
  182. this.WriteMsg(msg, retData)
  183. return
  184. }
  185. resp := client.AgentUpdateGroup(this.getUserId(), req.Id, req.Name, req.Url)
  186. if resp.RetCode != 1 {
  187. log.Debug("user.agentUpdateGroup failed %v", resp)
  188. }
  189. this.WriteMsg(msg, resp.Data)
  190. return
  191. }