diff --git a/backend/internal/api/handlers/payment.go b/backend/internal/api/handlers/payment.go index e288e79..015850e 100644 --- a/backend/internal/api/handlers/payment.go +++ b/backend/internal/api/handlers/payment.go @@ -28,7 +28,7 @@ func NewPaymentHandler() *PaymentHandler { type BepUsdtCreateRequest struct { TradeType string `json:"trade_type,omitempty"` OrderID string `json:"order_id"` - Amount string `json:"amount"` + Amount float64 `json:"amount"` NotifyURL string `json:"notify_url"` RedirectURL string `json:"redirect_url,omitempty"` Signature string `json:"signature"` @@ -90,12 +90,9 @@ func (h *PaymentHandler) CreatePayment(c *gin.Context) { notifyURL := fmt.Sprintf("%s/api/payment/bepusdt/notify", baseURL) redirectURL := fmt.Sprintf("%s/orders/%d", baseURL, order.ID) - // 格式化amount,确保签名和请求中的格式一致 - amountStr := strconv.FormatFloat(order.TotalAmount, 'f', 2, 64) - params := map[string]string{ "order_id": strconv.Itoa(int(order.ID)), - "amount": amountStr, + "amount": fmt.Sprint(order.TotalAmount), "notify_url": notifyURL, "redirect_url": redirectURL, } @@ -111,7 +108,7 @@ func (h *PaymentHandler) CreatePayment(c *gin.Context) { reqBody := BepUsdtCreateRequest{ TradeType: tradeType, OrderID: strconv.Itoa(int(order.ID)), - Amount: amountStr, + Amount: order.TotalAmount, NotifyURL: notifyURL, RedirectURL: redirectURL, Signature: signature,