From 9057d6c2fc13a53109383f5b46128aff648fbbed Mon Sep 17 00:00:00 2001 From: Eamon-meng <17516219072@163.com> Date: Fri, 27 Jun 2025 10:57:50 +0800 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=E5=85=85=E5=80=BC=E5=92=8C?= =?UTF-8?q?=E8=B4=AD=E4=B9=B0=E6=94=AF=E4=BB=98=E5=AE=9D=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E5=92=8C=E4=BC=A0=E5=8F=82=EF=BC=8C=E6=88=91=E7=9A=84=E8=B4=A6?= =?UTF-8?q?=E5=8D=95=E5=88=97=E8=A1=A8=E6=9B=B4=E6=96=B0&=E8=A7=A3?= =?UTF-8?q?=E5=86=B3banner=E6=8B=89=E4=BC=B8&=E6=9B=B4=E6=96=B0=E7=99=BB?= =?UTF-8?q?=E5=BD=95=E7=9A=84=E8=AE=BF=E9=97=AE=E4=BB=A4=E7=89=8C?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/actions/auth.ts | 1 + src/actions/bill.ts | 1 + src/actions/resource.ts | 14 +- src/actions/user.ts | 14 +- src/app/admin/(dashboard)/page.tsx | 2 +- src/app/admin/bills/page.tsx | 133 ++++++++++----- src/app/admin/bills/payment-dialog.tsx | 161 ------------------- src/app/admin/bills/payment.tsx | 153 ------------------ src/components/composites/purchase/pay.tsx | 7 +- src/components/composites/recharge/index.tsx | 7 +- 10 files changed, 127 insertions(+), 366 deletions(-) delete mode 100644 src/app/admin/bills/payment-dialog.tsx delete mode 100644 src/app/admin/bills/payment.tsx diff --git a/src/actions/auth.ts b/src/actions/auth.ts index 080fd48..a7f277e 100644 --- a/src/actions/auth.ts +++ b/src/actions/auth.ts @@ -120,6 +120,7 @@ export async function refreshAuth() { cookie.set('auth_refresh', nextRefreshToken, { httpOnly: true, sameSite: 'strict', + maxAge: Number.MAX_SAFE_INTEGER, }) // 返回新的访问令牌 diff --git a/src/actions/bill.ts b/src/actions/bill.ts index 912c8df..afb2593 100644 --- a/src/actions/bill.ts +++ b/src/actions/bill.ts @@ -10,6 +10,7 @@ export async function listBills(params: { type?: number create_after?: Date create_before?: Date + trade_id?: string }) { return await callByUser>('/api/bill/list', params) } diff --git a/src/actions/resource.ts b/src/actions/resource.ts index 8fe2a51..378e0d5 100644 --- a/src/actions/resource.ts +++ b/src/actions/resource.ts @@ -76,11 +76,21 @@ export async function prepareResource(props: { return await callByUser<{ trade_no: string pay_url: string - }>('/api/resource/create/prepare', props) + }>('/api/trade/create', { + platform: props.payment_platform, + method: props.payment_method, + type: 1, + resource: { + type: props.type, + short: props.short, + long: props.long, + }, + }) } export async function completeResource(props: { trade_no: string + method: number }) { - return await callByUser('/api/resource/create/complete', props) + return callByUser('/api/trade/complete', props) } diff --git a/src/actions/user.ts b/src/actions/user.ts index d72b7bc..f868abc 100644 --- a/src/actions/user.ts +++ b/src/actions/user.ts @@ -2,20 +2,28 @@ import {callByUser, callPublic} from '@/actions/base' export async function RechargePrepare(props: { - amount: string + amount: number platform: number method: number }) { return callByUser<{ trade_no: string pay_url: string - }>('/api/user/recharge/prepare', props) + }>('/api/trade/create', { + platform: props.platform, + method: props.method, + type: 2, + recharge: { + amount: props.amount, + }, + }) } export async function RechargeComplete(props: { trade_no: string + method: number }) { - return callByUser('/api/user/recharge/complete', props) + return callByUser('/api/trade/complete', props) } export async function Identify(props: { diff --git a/src/app/admin/(dashboard)/page.tsx b/src/app/admin/(dashboard)/page.tsx index 5f0b701..51c20ac 100644 --- a/src/app/admin/(dashboard)/page.tsx +++ b/src/app/admin/(dashboard)/page.tsx @@ -43,7 +43,7 @@ export default async function DashboardPage(props: DashboardPageProps) { > {/* banner */}
- banner image + banner image

代理IP资源,先测后买

短效/长效/固定IP代理,一站式服务

diff --git a/src/app/admin/bills/page.tsx b/src/app/admin/bills/page.tsx index da87056..1bf80d7 100644 --- a/src/app/admin/bills/page.tsx +++ b/src/app/admin/bills/page.tsx @@ -16,12 +16,14 @@ import zod from 'zod' import {zodResolver} from '@hookform/resolvers/zod' import {Label} from '@/components/ui/label' import Page from '@/components/page' -import {PaymentStatusCell} from './payment' +import {CheckCircle, AlertCircle} from 'lucide-react' +import {Input} from '@/components/ui/input' const filterSchema = zod.object({ type: zod.enum(['all', '3', '1', '2']).default('all'), create_after: zod.date().optional(), create_before: zod.date().optional(), + trade_id: zod.string().optional(), }) type FilterSchema = zod.infer @@ -44,9 +46,10 @@ export default function BillsPage(props: BillsPageProps) { const type = typeValue === 'all' ? undefined : parseInt(typeValue) const create_after = form.getValues('create_after') const create_before = form.getValues('create_before') + const trade_id = form.getValues('trade_id') const res = await listBills({ - page, size, type, create_after, create_before, + page, size, type, create_after, create_before, trade_id, }) if (res.success) { @@ -70,6 +73,9 @@ export default function BillsPage(props: BillsPageProps) { resolver: zodResolver(filterSchema), defaultValues: { type: 'all', + trade_id: '', + create_after: undefined, + create_before: undefined, }, }) @@ -85,6 +91,16 @@ export default function BillsPage(props: BillsPageProps) {
+ 订单号}> + {({id, field}) => ( + + )} + 账单类型}> {({id, field}) => (