Files
financial-admin/src/views/user/user/components/wallet.vue
2026-01-26 21:04:36 +07:00

54 lines
1.1 KiB
Vue

<script lang="ts" setup>
import { useTemplateRef } from 'vue';
import { client, safeClient } from '@/service/api';
import type { TableBaseColumns, TableFetchData, TableInst } from '@/components/table';
defineOptions({
name: 'WalletDialog'
});
const props = defineProps<{
userId: string;
}>();
const tableInst = useTemplateRef<TableInst>('tableInst');
const fetchData: TableFetchData = ({ pagination, filter }) => {
return safeClient(() =>
client.api.admin.wallet.wallets.get({ query: { userId: props.userId, ...pagination, ...filter } })
);
};
const columns: TableBaseColumns = [
{
key: 'walletType.name',
title: '钱包类型'
},
{
key: 'frozen',
title: '冻结金额',
render: (row: any) => {
return Number(row.frozen);
}
},
{
key: 'available',
title: '可用金额',
render: (row: any) => {
return Number(row.available);
}
}
];
</script>
<template>
<TableBase
ref="tableInst"
:fetch-data="fetchData"
:columns="columns"
:scroll-x="800"
:show-header-operation="false"
/>
</template>
<style lang="css" scoped></style>