From 99c3b9914e2dff6b8c9488edf9be12ec0145e990 Mon Sep 17 00:00:00 2001
From: Eamon-meng <17516219072@163.com>
Date: Sat, 16 Aug 2025 11:41:07 +0800
Subject: [PATCH] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E6=94=AF=E4=BB=98=E5=8F=96?=
=?UTF-8?q?=E6=B6=88=E7=9A=84=E8=B0=83=E7=94=A8=E5=92=8C=E8=A7=84=E5=AE=9A?=
=?UTF-8?q?=E6=97=B6=E9=97=B4=E5=86=85=E6=9B=B4=E6=96=B0=E8=AE=A2=E5=8D=95?=
=?UTF-8?q?=E6=94=AF=E4=BB=98=E7=8A=B6=E6=80=81?=
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
---
src/actions/resource.ts | 7 +++
.../composites/payment/desktop-payment.tsx | 12 ++--
.../composites/payment/mobile-payment.tsx | 20 ++++---
.../composites/payment/payment-button.tsx | 46 ---------------
.../composites/payment/payment-modal.tsx | 55 +++++++++++++++++-
src/components/composites/purchase/pay.tsx | 57 ++++++++-----------
src/components/composites/recharge/index.tsx | 6 +-
7 files changed, 105 insertions(+), 98 deletions(-)
delete mode 100644 src/components/composites/payment/payment-button.tsx
diff --git a/src/actions/resource.ts b/src/actions/resource.ts
index 378e0d5..3e53bf7 100644
--- a/src/actions/resource.ts
+++ b/src/actions/resource.ts
@@ -94,3 +94,10 @@ export async function completeResource(props: {
}) {
return callByUser('/api/trade/complete', props)
}
+
+export async function payClose(props: {
+ trade_no: string
+ method: number
+}) {
+ return callByUser('/api/trade/cancel', props)
+}
diff --git a/src/components/composites/payment/desktop-payment.tsx b/src/components/composites/payment/desktop-payment.tsx
index 5c0df20..959167e 100644
--- a/src/components/composites/payment/desktop-payment.tsx
+++ b/src/components/composites/payment/desktop-payment.tsx
@@ -1,5 +1,5 @@
'use client'
-import {DialogContent, DialogHeader, DialogTitle} from '@/components/ui/dialog'
+import {DialogClose, DialogContent, DialogHeader, DialogTitle} from '@/components/ui/dialog'
import {Button} from '@/components/ui/button'
import {Loader} from 'lucide-react'
import {useState} from 'react'
@@ -11,7 +11,7 @@ export function DesktopPayment(props: PaymentModalProps) {
const onSubmit = async () => {
setLoading(true)
- await props.onConfirm?.()
+ await props.onConfirm(true)
setLoading(false)
}
@@ -67,9 +67,11 @@ export function DesktopPayment(props: PaymentModalProps) {
{loading && }
已完成支付
-
+
+
+
diff --git a/src/components/composites/payment/mobile-payment.tsx b/src/components/composites/payment/mobile-payment.tsx
index 64d77ef..a29b57f 100644
--- a/src/components/composites/payment/mobile-payment.tsx
+++ b/src/components/composites/payment/mobile-payment.tsx
@@ -1,5 +1,5 @@
'use client'
-import {DialogContent} from '@/components/ui/dialog'
+import {DialogClose, DialogContent} from '@/components/ui/dialog'
import {Button} from '@/components/ui/button'
import {toast} from 'sonner'
import {CreditCard, Loader} from 'lucide-react'
@@ -26,7 +26,7 @@ export function MobilePayment(props: PaymentModalProps) {
// 处理支付完成确认
const handlePaymentComplete = async () => {
setLoading(true)
- await props.onConfirm?.() // 调用父组件传入的确认方法
+ await props.onConfirm(true) // 调用父组件传入的确认方法
setLoading(false)
}
@@ -77,13 +77,15 @@ export function MobilePayment(props: PaymentModalProps) {
{!paymentInitiated ? ( // 未发起支付时显示
<>
-
+
+
+