package main import ( "math/rand" "github.com/bxcodec/faker/v3" "github.com/mhaya/game/game_cluster/internal/constant" "github.com/mhaya/game/game_cluster/internal/mdb/eventmodels" ) func getWithdrawEventBasic() *eventmodels.EventBasic { return &eventmodels.EventBasic{ ServerId: server_id, IsSuccess: rand.Intn(2) == 1, Status: rand.Intn(5), RewardDrawStatus: rand.Intn(2), CreateAt: faker.RandomUnixTime(), } } func getWithdrawFakeData(users []*eventmodels.UserBasic) []*eventmodels.UserWithdrawEventContent { datas := make([]*eventmodels.UserWithdrawEventContent, 0, 8) for i := 0; i < count; i++ { userBasic := getUserBasic(users) eventBasic := getWithdrawEventBasic() var before int64 before = 10000 amount := rand.Int63n(1000) + 1 datas = append(datas, &eventmodels.UserWithdrawEventContent{ UserBasic: *userBasic, EventBasic: *eventBasic, WithdrawId: faker.TimeString(), Currency: func() string { if rand.Intn(2) == 1 { return string(constant.UsdtCurrency) } return string(constant.TonCurrency) }(), Ip: faker.IPv4(), Platform: getPlatform(), Channel: getChannel(), Address: userBasic.TonWall, BeforeBalance: before, Amount: amount, AfterBalance: before - amount, Reason: "", State: rand.Intn(2), }) } return datas }