withdraw.go 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556
  1. package main
  2. import (
  3. "math/rand"
  4. "github.com/bxcodec/faker/v3"
  5. "github.com/mhaya/game/game_cluster/internal/constant"
  6. "github.com/mhaya/game/game_cluster/internal/mdb/eventmodels"
  7. )
  8. func getWithdrawEventBasic() *eventmodels.EventBasic {
  9. return &eventmodels.EventBasic{
  10. ServerId: server_id,
  11. IsSuccess: rand.Intn(2) == 1,
  12. Status: rand.Intn(5),
  13. RewardDrawStatus: rand.Intn(2),
  14. CreateAt: faker.RandomUnixTime(),
  15. }
  16. }
  17. func getWithdrawFakeData(users []*eventmodels.UserBasic) []*eventmodels.UserWithdrawEventContent {
  18. datas := make([]*eventmodels.UserWithdrawEventContent, 0, 8)
  19. for i := 0; i < count; i++ {
  20. userBasic := getUserBasic(users)
  21. eventBasic := getWithdrawEventBasic()
  22. var before int64
  23. before = 10000
  24. amount := rand.Int63n(1000) + 1
  25. datas = append(datas, &eventmodels.UserWithdrawEventContent{
  26. UserBasic: *userBasic,
  27. EventBasic: *eventBasic,
  28. WithdrawId: faker.TimeString(),
  29. Currency: func() string {
  30. if rand.Intn(2) == 1 {
  31. return string(constant.UsdtCurrency)
  32. }
  33. return string(constant.TonCurrency)
  34. }(),
  35. Ip: faker.IPv4(),
  36. Platform: getPlatform(),
  37. Channel: getChannel(),
  38. Address: userBasic.TonWall,
  39. BeforeBalance: before,
  40. Amount: amount,
  41. AfterBalance: before - amount,
  42. Reason: "",
  43. State: rand.Intn(2),
  44. })
  45. }
  46. return datas
  47. }