50 lines
1.2 KiB
Go
50 lines
1.2 KiB
Go
package main
|
|
|
|
import (
|
|
"fmt"
|
|
"log"
|
|
|
|
"gorm.io/driver/mysql"
|
|
"gorm.io/gorm"
|
|
"gorm.io/gorm/logger"
|
|
)
|
|
|
|
func main() {
|
|
// 连接数据库
|
|
dsn := "root:bindbox2025kdy@tcp(150.158.78.154:3306)/dev_game?charset=utf8mb4&parseTime=True&loc=Local"
|
|
db, err := gorm.Open(mysql.Open(dsn), &gorm.Config{
|
|
Logger: logger.Default.LogMode(logger.Info),
|
|
})
|
|
if err != nil {
|
|
log.Fatalf("连接数据库失败: %v", err)
|
|
}
|
|
|
|
txID := "4200002973202602178066391745"
|
|
var orderNo string
|
|
|
|
// 查询支付交易表
|
|
type PaymentTransaction struct {
|
|
OrderNo string
|
|
}
|
|
var pt PaymentTransaction
|
|
if err := db.Table("payment_transactions").Select("order_no").Where("transaction_id = ?", txID).First(&pt).Error; err != nil {
|
|
fmt.Printf("查询支付交易失败: %v\n", err)
|
|
return
|
|
}
|
|
orderNo = pt.OrderNo
|
|
fmt.Printf("OrderNo: %s\n", orderNo)
|
|
|
|
// 查询订单表
|
|
type Order struct {
|
|
ID int64
|
|
Status int
|
|
IsConsumed int
|
|
}
|
|
var o Order
|
|
if err := db.Table("orders").Where("order_no = ?", orderNo).First(&o).Error; err != nil {
|
|
fmt.Printf("查询订单失败: %v\n", err)
|
|
return
|
|
}
|
|
fmt.Printf("Order Details: ID=%d, Status=%d, IsConsumed=%d\n", o.ID, o.Status, o.IsConsumed)
|
|
}
|