cashout.go 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177
  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=%v", 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. var pa param.PageReq
  105. if err := c.BindJSON(&pa); err != nil {
  106. mhayaLogger.Warnf("if cashOutList err {. params=%v", pa)
  107. code.RenderResult(c, code.Error)
  108. return
  109. }
  110. token, err := p.Auth(c)
  111. if code.IsFail(err) {
  112. mhayaLogger.Warnf("if cashOutList token err {. params=%v", c.GetHeader(constant.Token))
  113. code.RenderResult(c, code.AccountTokenValidateFail)
  114. return
  115. }
  116. var resp interface{}
  117. ctl, ok := p.GetChildActor(token.PlayerID)
  118. if !ok {
  119. code.RenderResult(c, code.Error)
  120. return
  121. }
  122. errCode := ctl.CallWait(token.TargetPath, "cashOutList", &pa, &resp)
  123. if code.IsFail(errCode) {
  124. mhayaLogger.Warnf("[cashOutList] errCode = %v", errCode)
  125. code.RenderResult(c, errCode)
  126. return
  127. }
  128. code.RenderResult(c, code.OK, resp)
  129. }
  130. func (p *Controller) unitTest(c *mhayaGin.Context) {
  131. token, err := p.Auth(c)
  132. if code.IsFail(err) {
  133. mhayaLogger.Warnf("if cashOutList token err {. params=%s", c.GetHeader(constant.Token))
  134. code.RenderResult(c, code.AccountTokenValidateFail)
  135. return
  136. }
  137. ctl, ok := p.GetChildActor(token.PlayerID)
  138. if !ok {
  139. code.RenderResult(c, code.Error)
  140. return
  141. }
  142. var params param.UnitTestData
  143. if err := c.BindJSON(&params); err != nil {
  144. mhayaLogger.Warnf("if setPwd err {. params=%s", params)
  145. code.RenderResult(c, code.Error)
  146. return
  147. }
  148. errCode := ctl.CallWait(token.TargetPath, "unitTest", params, nil)
  149. if code.IsFail(errCode) {
  150. mhayaLogger.Warnf("[unitTest] errCode = %v", errCode)
  151. code.RenderResult(c, errCode)
  152. return
  153. }
  154. code.RenderResult(c, code.OK)
  155. }