cashout.go 4.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162
  1. package controller
  2. import (
  3. mhayaGin "github.com/mhaya/components/gin"
  4. cstring "github.com/mhaya/extend/string"
  5. "github.com/mhaya/game/game_cluster/internal/code"
  6. "github.com/mhaya/game/game_cluster/internal/constant"
  7. "github.com/mhaya/game/game_cluster/internal/data"
  8. "github.com/mhaya/game/game_cluster/internal/mdb/models"
  9. "github.com/mhaya/game/game_cluster/internal/param"
  10. mhayaLogger "github.com/mhaya/logger"
  11. )
  12. func (p *Controller) cashOut(c *mhayaGin.Context) {
  13. var pa param.CashOutReq
  14. if err := c.BindJSON(&pa); err != nil {
  15. mhayaLogger.Warnf("if cashOut err {. params=%s", pa)
  16. code.RenderResult(c, code.Error)
  17. return
  18. }
  19. if pa.Tp == 0 {
  20. code.RenderResult(c, code.Error)
  21. return
  22. }
  23. switch pa.Tp {
  24. case 1:
  25. ret, ok := data.DiscreteRuleConfig.Get(models.UCashOutConfig)
  26. if !ok {
  27. code.RenderResult(c, code.Error)
  28. return
  29. }
  30. i, _ := cstring.ToInt(ret.Condition)
  31. if pa.Amount < float64(i) {
  32. code.RenderResult(c, code.Error)
  33. return
  34. }
  35. case 2:
  36. ret, ok := data.DiscreteRuleConfig.Get(models.TonCashOutConfig)
  37. if !ok {
  38. code.RenderResult(c, code.Error)
  39. return
  40. }
  41. i, _ := cstring.ToInt(ret.Condition)
  42. if pa.Amount < float64(i) {
  43. code.RenderResult(c, code.Error)
  44. return
  45. }
  46. default:
  47. code.RenderResult(c, code.Error)
  48. return
  49. }
  50. token, err := p.Auth(c)
  51. if code.IsFail(err) {
  52. mhayaLogger.Warnf("if cashOut token err {. params=%s", c.GetHeader(constant.Token))
  53. code.RenderResult(c, code.AccountTokenValidateFail)
  54. return
  55. }
  56. ctl, ok := p.GetChildActor(token.PlayerID)
  57. if !ok {
  58. code.RenderResult(c, code.Error)
  59. return
  60. }
  61. errCode := ctl.CallWait(token.TargetPath, "cashOut", &pa, nil)
  62. if code.IsFail(errCode) {
  63. mhayaLogger.Warnf("[cashOut] param = %v, errCode = %v", pa, errCode)
  64. code.RenderResult(c, errCode)
  65. return
  66. }
  67. code.RenderResult(c, code.OK)
  68. }
  69. func (p *Controller) setPwd(c *mhayaGin.Context) {
  70. var pa param.SetPwdReq
  71. if err := c.BindJSON(&pa); err != nil {
  72. mhayaLogger.Warnf("if setPwd err {. params=%s", pa)
  73. code.RenderResult(c, code.Error)
  74. return
  75. }
  76. if len(pa.ConfirmPassWord) < 8 || len(pa.PassWord) < 8 || len(pa.PassWord) > 50 || len(pa.Mail) < 5 || len(pa.Mail) > 50 {
  77. code.RenderResult(c, code.PassWordSettingError)
  78. return
  79. }
  80. if pa.PassWord != pa.ConfirmPassWord {
  81. code.RenderResult(c, code.PasswordInconsistencyError)
  82. return
  83. }
  84. token, err := p.Auth(c)
  85. if code.IsFail(err) {
  86. mhayaLogger.Warnf("if setPwd token err {. params=%s", c.GetHeader(constant.Token))
  87. code.RenderResult(c, code.AccountTokenValidateFail)
  88. return
  89. }
  90. ctl, ok := p.GetChildActor(token.PlayerID)
  91. if !ok {
  92. code.RenderResult(c, code.Error)
  93. return
  94. }
  95. errCode := ctl.CallWait(token.TargetPath, "setPwd", &pa, nil)
  96. if code.IsFail(errCode) {
  97. mhayaLogger.Warnf("[setPwd] param = %v, errCode = %v", pa, errCode)
  98. code.RenderResult(c, errCode)
  99. return
  100. }
  101. code.RenderResult(c, code.OK)
  102. }
  103. func (p *Controller) cashOutList(c *mhayaGin.Context) {
  104. token, err := p.Auth(c)
  105. if code.IsFail(err) {
  106. mhayaLogger.Warnf("if cashOutList token err {. params=%s", c.GetHeader(constant.Token))
  107. code.RenderResult(c, code.AccountTokenValidateFail)
  108. return
  109. }
  110. var resp []*models.ToUserWithdrawal
  111. ctl, ok := p.GetChildActor(token.PlayerID)
  112. if !ok {
  113. code.RenderResult(c, code.Error)
  114. return
  115. }
  116. errCode := ctl.CallWait(token.TargetPath, "cashOutList", nil, &resp)
  117. if code.IsFail(errCode) {
  118. mhayaLogger.Warnf("[cashOutList] errCode = %v", errCode)
  119. code.RenderResult(c, errCode)
  120. return
  121. }
  122. code.RenderResult(c, code.OK, resp)
  123. }
  124. func (p *Controller) unitTest(c *mhayaGin.Context) {
  125. token, err := p.Auth(c)
  126. if code.IsFail(err) {
  127. mhayaLogger.Warnf("if cashOutList token err {. params=%s", c.GetHeader(constant.Token))
  128. code.RenderResult(c, code.AccountTokenValidateFail)
  129. return
  130. }
  131. ctl, ok := p.GetChildActor(token.PlayerID)
  132. if !ok {
  133. code.RenderResult(c, code.Error)
  134. return
  135. }
  136. errCode := ctl.CallWait(token.TargetPath, "unitTest", nil, nil)
  137. if code.IsFail(errCode) {
  138. mhayaLogger.Warnf("[unitTest] errCode = %v", errCode)
  139. code.RenderResult(c, errCode)
  140. return
  141. }
  142. code.RenderResult(c, code.OK)
  143. }