package main import ( "context" "encoding/json" "flag" "fmt" "log" "bindbox-game/internal/pkg/logger" "bindbox-game/internal/repository/mysql" "bindbox-game/internal/repository/mysql/dao" "bindbox-game/internal/service/douyin" syscfgsvc "bindbox-game/internal/service/sysconfig" ) func main() { orderID := flag.String("id", "", "抖音订单号 (order_id)") flag.Parse() if *orderID == "" { log.Fatal("请提供订单号,例如: -id=6946062444563338504") } // 1. 初始化 MySQL dbRepo, err := mysql.New() if err != nil { log.Fatalf("MySQL 初始化失败: %v", err) } // 2. 初始化 Logger (简易版) customLogger, _ := logger.NewCustomLogger(dao.Use(dbRepo.GetDbW()), logger.WithOutputInConsole()) // 3. 初始化 Service sysCfgSvc := syscfgsvc.New(customLogger, dbRepo) douyinSvc := douyin.New(customLogger, dbRepo, sysCfgSvc, nil) // 4. 执行测试 fmt.Printf("--- 正在测试订单号: %s ---\n", *orderID) ctx := context.Background() order, err := douyinSvc.GetOrderByOrderID(ctx, *orderID) if err != nil { log.Fatalf("查询失败: %v", err) } // 5. 打印结果 fmt.Println("查询成功!返回数据如下:") data, _ := json.MarshalIndent(order, "", " ") fmt.Println(string(data)) }