From 27d6cef96e92198edb5ba4e52c84bd122f737305 Mon Sep 17 00:00:00 2001 From: Seven Date: Wed, 17 Dec 2025 17:10:48 +0700 Subject: [PATCH] =?UTF-8?q?=E6=9B=B4=E6=96=B0=20@riwa/api-types=20?= =?UTF-8?q?=E4=BE=9D=E8=B5=96=E8=87=B3=200.0.23=EF=BC=8C=E8=B0=83=E6=95=B4?= =?UTF-8?q?=E5=88=86=E9=A1=B5=E6=8E=A5=E5=8F=A3=E5=8F=82=E6=95=B0=EF=BC=8C?= =?UTF-8?q?=E4=BC=98=E5=8C=96=E8=A1=A8=E6=A0=BC=E7=BB=84=E4=BB=B6=E7=9A=84?= =?UTF-8?q?=E7=B1=BB=E5=9E=8B=E5=AE=9A=E4=B9=89?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- package.json | 2 +- pnpm-lock.yaml | 12 ++++++------ src/components/table/index.ts | 10 +++++++--- src/components/table/table-base.vue | 9 +++++++-- src/views/deposit/fiat/index.vue | 6 +++--- 5 files changed, 24 insertions(+), 15 deletions(-) diff --git a/package.json b/package.json index 982f335..39c656c 100644 --- a/package.json +++ b/package.json @@ -50,7 +50,7 @@ "@better-scroll/core": "2.5.1", "@elysiajs/eden": "^1.4.5", "@iconify/vue": "5.0.0", - "@riwa/api-types": "http://192.168.1.36:9527/api/riwa-api-types-0.0.17.tgz", + "@riwa/api-types": "http://192.168.1.36:9527/api/riwa-api-types-0.0.23.tgz", "@sa/axios": "workspace:*", "@sa/color": "workspace:*", "@sa/hooks": "workspace:*", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 49e7183..9feb801 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -18,8 +18,8 @@ importers: specifier: 5.0.0 version: 5.0.0(vue@3.5.25(typescript@5.9.3)) '@riwa/api-types': - specifier: http://192.168.1.36:9527/api/riwa-api-types-0.0.17.tgz - version: http://192.168.1.36:9527/api/riwa-api-types-0.0.17.tgz(@elysiajs/eden@1.4.5(elysia@1.4.19(@sinclair/typebox@0.34.41)(exact-mirror@0.2.5(@sinclair/typebox@0.34.41))(file-type@21.1.1)(openapi-types@12.1.3)(typescript@5.9.3))) + specifier: http://192.168.1.36:9527/api/riwa-api-types-0.0.23.tgz + version: http://192.168.1.36:9527/api/riwa-api-types-0.0.23.tgz(@elysiajs/eden@1.4.5(elysia@1.4.19(@sinclair/typebox@0.34.41)(exact-mirror@0.2.5(@sinclair/typebox@0.34.41))(file-type@21.1.1)(openapi-types@12.1.3)(typescript@5.9.3))) '@sa/axios': specifier: workspace:* version: link:packages/axios @@ -1074,9 +1074,9 @@ packages: '@quansync/fs@0.1.6': resolution: {integrity: sha512-zoA8SqQO11qH9H8FCBR7NIbowYARIPmBz3nKjgAaOUDi/xPAAu1uAgebtV7KXHTc6CDZJVRZ1u4wIGvY5CWYaw==} - '@riwa/api-types@http://192.168.1.36:9527/api/riwa-api-types-0.0.17.tgz': - resolution: {tarball: http://192.168.1.36:9527/api/riwa-api-types-0.0.17.tgz} - version: 0.0.17 + '@riwa/api-types@http://192.168.1.36:9527/api/riwa-api-types-0.0.23.tgz': + resolution: {tarball: http://192.168.1.36:9527/api/riwa-api-types-0.0.23.tgz} + version: 0.0.23 peerDependencies: '@elysiajs/eden': ^1.4.5 @@ -5082,7 +5082,7 @@ snapshots: dependencies: quansync: 0.3.0 - '@riwa/api-types@http://192.168.1.36:9527/api/riwa-api-types-0.0.17.tgz(@elysiajs/eden@1.4.5(elysia@1.4.19(@sinclair/typebox@0.34.41)(exact-mirror@0.2.5(@sinclair/typebox@0.34.41))(file-type@21.1.1)(openapi-types@12.1.3)(typescript@5.9.3)))': + '@riwa/api-types@http://192.168.1.36:9527/api/riwa-api-types-0.0.23.tgz(@elysiajs/eden@1.4.5(elysia@1.4.19(@sinclair/typebox@0.34.41)(exact-mirror@0.2.5(@sinclair/typebox@0.34.41))(file-type@21.1.1)(openapi-types@12.1.3)(typescript@5.9.3)))': dependencies: '@elysiajs/eden': 1.4.5(elysia@1.4.19(@sinclair/typebox@0.34.41)(exact-mirror@0.2.5(@sinclair/typebox@0.34.41))(file-type@21.1.1)(openapi-types@12.1.3)(typescript@5.9.3)) diff --git a/src/components/table/index.ts b/src/components/table/index.ts index 5bc490d..6b5c973 100644 --- a/src/components/table/index.ts +++ b/src/components/table/index.ts @@ -5,19 +5,23 @@ import type { InternalRowData } from 'naive-ui/es/data-table/src/interface'; import type { safeClient } from '@/service/api'; import type TableBase from './table-base.vue'; -type TableBaseColumn = DataTableColumn & { +export type TableBaseExpandColumn = { operations?: (row: T) => Array & { contentText: string }>; key: string; title: string; }; +type TableBaseColumn = DataTableColumn & TableBaseExpandColumn; + export type TableBaseColumns = Array>; export type TableInst = InstanceType; export interface Pagination { - limit: number; - offset: number; + pageIndex: number; + pageSize: number; + total?: number; + [key: string]: any; } export type TableFetchData = (page: Pagination) => ReturnType; diff --git a/src/components/table/table-base.vue b/src/components/table/table-base.vue index c6692ca..2f4eab6 100644 --- a/src/components/table/table-base.vue +++ b/src/components/table/table-base.vue @@ -29,8 +29,8 @@ async function loadData() { const page = pagination.value.page || 1; const pageSize = pagination.value.pageSize || 10; const { data } = await props.fetchData({ - limit: pageSize, - offset: (page - 1) * pageSize + pageIndex: page, + pageSize }); tableData.value = (data.value as any).data; @@ -41,6 +41,10 @@ function handlePageChange(curPage: number) { pagination.value.page = curPage; loadData(); } +function handlePageSizeChange(curPageSize: number) { + pagination.value.pageSize = curPageSize; + loadData(); +} onMounted(() => { loadData(); @@ -66,6 +70,7 @@ defineExpose({ :pagination="pagination" :bordered="false" :on-update:page="handlePageChange" + :on-update:page-size="handlePageSizeChange" /> diff --git a/src/views/deposit/fiat/index.vue b/src/views/deposit/fiat/index.vue index b3679cf..09a20dd 100644 --- a/src/views/deposit/fiat/index.vue +++ b/src/views/deposit/fiat/index.vue @@ -3,16 +3,16 @@ import { h, ref, useTemplateRef } from 'vue'; import { NInputNumber, useDialog, useMessage } from 'naive-ui'; import { client, safeClient } from '@/service/api'; import { DepositTypeEnum } from '@/enum'; -import type { TableBaseColumns, TableFetchData, TableInst } from '@/components/table'; +import type { Pagination, TableBaseColumns, TableFetchData, TableInst } from '@/components/table'; const dialog = useDialog(); const message = useMessage(); const tableInst = useTemplateRef('tableInst'); -const fetchData: TableFetchData = () => { +const fetchData: TableFetchData = (pagination: Pagination) => { return safeClient(() => client.api.admin.deposit.pending.get({ - query: {} + query: pagination }) ); };