|
@@ -0,0 +1,120 @@
|
|
|
+package main
|
|
|
+
|
|
|
+import (
|
|
|
+ "context"
|
|
|
+ "fmt"
|
|
|
+ "math/rand"
|
|
|
+ "strconv"
|
|
|
+ "time"
|
|
|
+
|
|
|
+ mhayaTime "github.com/mhaya/extend/time"
|
|
|
+ "github.com/mhaya/game/game_cluster/internal/constant"
|
|
|
+ "github.com/mhaya/game/game_cluster/internal/mdb/models"
|
|
|
+ "go.mongodb.org/mongo-driver/mongo"
|
|
|
+ "go.mongodb.org/mongo-driver/mongo/options"
|
|
|
+ "go.mongodb.org/mongo-driver/mongo/readpref"
|
|
|
+)
|
|
|
+
|
|
|
+type NameData struct {
|
|
|
+ User_name string
|
|
|
+ Nick_name string
|
|
|
+ Balance int
|
|
|
+}
|
|
|
+
|
|
|
+func main() {
|
|
|
+ uri := "mongodb://127.0.0.1:27017"
|
|
|
+ dbName := "db_mhaya"
|
|
|
+
|
|
|
+ o := options.Client().ApplyURI(uri)
|
|
|
+ if err := o.Validate(); err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ ctx, cancel := context.WithTimeout(context.Background(), 5*time.Second)
|
|
|
+ defer cancel()
|
|
|
+
|
|
|
+ client, err := mongo.Connect(ctx, o)
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ err = client.Ping(context.Background(), readpref.Primary())
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ db := client.Database(dbName)
|
|
|
+
|
|
|
+ // 写入提现假数据
|
|
|
+ addresss := make([]string, 0, 8)
|
|
|
+ for i := 0; i < 5; i++ {
|
|
|
+ addresss = append(addresss, "address"+strconv.Itoa(i+1))
|
|
|
+ }
|
|
|
+
|
|
|
+ nameDatas := make([]*NameData, 0, 8)
|
|
|
+ for i := 0; i < 5; i++ {
|
|
|
+ nameDatas = append(nameDatas, &NameData{
|
|
|
+ User_name: "test" + strconv.Itoa(i),
|
|
|
+ Nick_name: "test" + strconv.Itoa(i),
|
|
|
+ Balance: 1000000,
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ for i := 0; i < 100; i++ {
|
|
|
+ index := rand.Intn(len(nameDatas))
|
|
|
+ nameDataObj := nameDatas[index]
|
|
|
+
|
|
|
+ amount := rand.Int63n(500)
|
|
|
+ nameDataObj.Balance -= int(amount)
|
|
|
+
|
|
|
+ _, err = db.Collection(constant.CNameCashOutRecord).InsertOne(context.Background(), &models.CashOutRecord{
|
|
|
+ UserName: nameDataObj.User_name,
|
|
|
+ NickName: nameDataObj.Nick_name,
|
|
|
+ Status: func() int {
|
|
|
+ if rand.Int63n(3) == 1 {
|
|
|
+ return 1
|
|
|
+ }
|
|
|
+
|
|
|
+ if rand.Int63n(3) == 2 {
|
|
|
+ return 2
|
|
|
+ }
|
|
|
+
|
|
|
+ return 0
|
|
|
+ }(), // 0:未审核 1:审核通过 2:审核失败
|
|
|
+ Type: 1,
|
|
|
+ AfterAmount: nameDataObj.Balance,
|
|
|
+ Amount: int(amount),
|
|
|
+ Address: func() string {
|
|
|
+ index := rand.Intn(len(addresss))
|
|
|
+ return addresss[index]
|
|
|
+ }(),
|
|
|
+ Withdrawal: func() int {
|
|
|
+ if rand.Int63n(5) == 1 {
|
|
|
+ return 1
|
|
|
+ }
|
|
|
+
|
|
|
+ if rand.Int63n(5) == 2 {
|
|
|
+ return 2
|
|
|
+ }
|
|
|
+
|
|
|
+ if rand.Int63n(5) == 3 {
|
|
|
+ return 3
|
|
|
+ }
|
|
|
+
|
|
|
+ if rand.Int63n(5) == 4 {
|
|
|
+ return 4
|
|
|
+ }
|
|
|
+
|
|
|
+ return 0
|
|
|
+ }(), // 提现 0 :未体现 1:提现成功 2:提现中 3:提现失败 4:拒绝提现
|
|
|
+ CreateAt: mhayaTime.Now().Unix(),
|
|
|
+ })
|
|
|
+ if err != nil {
|
|
|
+ fmt.Println(err)
|
|
|
+ return
|
|
|
+ }
|
|
|
+ }
|
|
|
+}
|