14 changed files with 118 additions and 14 deletions
@ -1,5 +1,94 @@
|
||||
<script lang="ts" setup> |
||||
import { useRoute } from 'vue-router' |
||||
import { onMounted, ref } from 'vue' |
||||
import { Card } from 'ant-design-vue' |
||||
import { channelsAlipay, channelsMock, channelsWechat, descSchema } from './cashier.data' |
||||
import { Description, useDescription } from '@/components/Description' |
||||
import { getOrder } from '@/api/pay/order' |
||||
|
||||
const { query } = useRoute() |
||||
|
||||
const datas = ref() |
||||
|
||||
const [registerDesc] = useDescription({ |
||||
schema: descSchema, |
||||
data: datas, |
||||
}) |
||||
|
||||
async function getInfo() { |
||||
const queryId = query.id as unknown as number // 从 URL 传递过来的 id 编号 |
||||
const res = await getOrder(queryId) |
||||
datas.value = res |
||||
} |
||||
|
||||
/** 提交支付 */ |
||||
function submit(channelCode: string) { |
||||
console.info(channelCode) |
||||
} |
||||
|
||||
/** 初始化 **/ |
||||
onMounted(async () => { |
||||
await getInfo() |
||||
}) |
||||
</script> |
||||
|
||||
<template> |
||||
<div> |
||||
待开发 |
||||
<div class="p-4"> |
||||
<Card title="支付信息"> |
||||
<Description :column="3" @register="registerDesc" /> |
||||
</Card> |
||||
<Card title="支付" class="mt-4"> |
||||
<p class="mb-4 text-lg text-dark-900"> |
||||
选择支付宝支付 |
||||
</p> |
||||
<div class="flex"> |
||||
<Card |
||||
v-for="(alipay, index) in channelsAlipay" |
||||
:key="index" |
||||
hoverable |
||||
class="mr-2 w-50 cursor-pointer pb-2 pt-2" |
||||
@click="submit(alipay.code)" |
||||
> |
||||
<template #cover> |
||||
<img alt="example" :src="alipay.icon" class="h-10 w-10"> |
||||
</template> |
||||
<Card.Meta :title="alipay.name" /> |
||||
</Card> |
||||
</div> |
||||
<p class="mb-4 text-lg text-dark-900"> |
||||
选择微信支付 |
||||
</p> |
||||
<div class="flex"> |
||||
<Card |
||||
v-for="(wechat, index) in channelsWechat" |
||||
:key="index" |
||||
hoverable |
||||
class="mr-2 w-50 cursor-pointer pb-2 pt-2" |
||||
@click="submit(wechat.code)" |
||||
> |
||||
<template #cover> |
||||
<img alt="example" :src="wechat.icon" class="h-10 w-10"> |
||||
</template> |
||||
<Card.Meta :title="wechat.name" /> |
||||
</Card> |
||||
</div> |
||||
<p class="mb-4 text-lg text-dark-900"> |
||||
选择其它支付 |
||||
</p> |
||||
<div class="flex"> |
||||
<Card |
||||
v-for="(mock, index) in channelsMock" |
||||
:key="index" |
||||
hoverable |
||||
class="mr-2 w-50 cursor-pointer pb-2 pt-2" |
||||
@click="submit(mock.code)" |
||||
> |
||||
<template #cover> |
||||
<img alt="example" :src="mock.icon" class="h-10 w-10"> |
||||
</template> |
||||
<Card.Meta :title="mock.name" /> |
||||
</Card> |
||||
</div> |
||||
</Card> |
||||
</div> |
||||
</template>> |
||||
|
Reference in new issue