完善支付功能,添加支付宝的准备与创建逻辑

This commit is contained in:
2025-04-16 18:51:17 +08:00
parent d435d98887
commit 9a438491be
9 changed files with 258 additions and 86 deletions

View File

@@ -21,28 +21,47 @@ async function allResource(){
return callByUser<Resource[]>('/api/resource/all')
}
async function createResourceByBalance(props: {
type CreateResourceReq = {
type: number
live: number
quota: number
expire: number
daily_limit: number
}) {
}
type CreateResourceResp = {
trade_no: string
pay_url: string
}
async function createResourceByBalance(props: CreateResourceReq) {
return await callByUser('/api/resource/create/balance', props)
}
async function createResourceByAlipay() {
throw new Error('Not implemented')
async function prepareResourceByAlipay(props: CreateResourceReq) {
return await callByUser<CreateResourceResp>('/api/resource/prepare/alipay', props)
}
async function createResourceByWechat() {
throw new Error('Not implemented')
async function prepareResourceByWechat(props: CreateResourceReq) {
return await callByUser<CreateResourceResp>('/api/resource/prepare/wechat', props)
}
async function createResourceByAlipay(props: CreateResourceReq) {
return await callByUser('/api/resource/create/alipay', props)
}
async function createResourceByWechat(props: CreateResourceReq) {
return await callByUser('/api/resource/create/wechat', props)
}
export {
listResourcePss,
allResource,
prepareResourceByAlipay,
prepareResourceByWechat,
createResourceByBalance,
createResourceByAlipay,
createResourceByWechat,
type CreateResourceReq,
type CreateResourceResp,
}

View File

@@ -1,27 +0,0 @@
'use server'
import { callByUser } from "@/actions/base"
export async function tradeRecharge(props: {
amount: number
method: string
}) {
let method: number
switch (props.method) {
case 'alipay':
method = 1
break
case 'wechat':
method = 2
break
default:
throw new Error(`${props.method} is not a valid method`)
}
return await callByUser('/api/trade/create', {
subject: '余额充值',
amount: Number(props.amount * 100),
method: method,
})
}