diff --git a/package.json b/package.json index 1d9e98a..7ceb5ad 100644 --- a/package.json +++ b/package.json @@ -4,7 +4,7 @@ "scripts": { "build": "max build", "dev": "max dev", - "fix:openapi2ts": "sed -i '' 's/\r$//' /Users/zksu/Developer/work/workcode/web/node_modules/@umijs/openapi/dist/cli.js", + "fix:openapi2ts": "sed -i '' 's/\r$//' ./node_modules/@umijs/openapi/dist/cli.js", "format": "prettier --cache --write .", "postinstall": "max setup", "openapi2ts": "openapi2ts", diff --git a/src/pages/Order/List/index.tsx b/src/pages/Order/List/index.tsx index ee048db..05e8426 100644 --- a/src/pages/Order/List/index.tsx +++ b/src/pages/Order/List/index.tsx @@ -437,6 +437,8 @@ const ListPage: React.FC = () => { }, }, ]; + const [selectedRowKeys, setSelectedRowKeys] = useState([]); + return ( @@ -446,6 +448,12 @@ const ListPage: React.FC = () => { scroll={{ x: 'max-content' }} actionRef={actionRef} rowKey="id" + columns={columns} + rowSelection={{ + selectedRowKeys, + onChange: (keys) => setSelectedRowKeys(keys), + }} + rowClassName={(record) => { return record.id === activeLine ? styles['selected-line-order-protable'] @@ -474,6 +482,41 @@ const ListPage: React.FC = () => { }} tableRef={actionRef} />, + // , + { + + try { + const { success, message: errMsg } = + await ordercontrollerExportorder({ + ids: selectedRowKeys, + }); + if (!success) { + throw new Error(errMsg); + } + message.success('导出成功'); + actionRef.current?.reload(); + setSelectedRowKeys([]); + } catch (error: any) { + message.error(error?.message || '导出失败'); + } + + + + }} + > + + ]} request={async ({ date, ...param }: any) => { if (param.status === 'all') { diff --git a/src/servers/api/order.ts b/src/servers/api/order.ts index d386ddd..8e257a4 100644 --- a/src/servers/api/order.ts +++ b/src/servers/api/order.ts @@ -177,6 +177,20 @@ export async function ordercontrollerCreateorder( }); } +/** 此处后端没有提供注释 PUT /order/order/export/${param0} */ +export async function ordercontrollerExportorder( + // 叠加生成的Param类型 (非body参数swagger默认没有生成对象) + params: API.ordercontrollerExportorderParams, + options?: { [key: string]: any }, +) { + const { ids: param0, ...queryParams } = params; + return request(`/order/order/export/${param0}`, { + method: 'PUT', + params: { ...queryParams }, + ...(options || {}), + }); +} + /** 此处后端没有提供注释 POST /order/order/pengding/items */ export async function ordercontrollerPengdingitems( body: Record, diff --git a/src/servers/api/typings.d.ts b/src/servers/api/typings.d.ts index 727e9a2..76d434d 100644 --- a/src/servers/api/typings.d.ts +++ b/src/servers/api/typings.d.ts @@ -488,6 +488,10 @@ declare namespace API { orderId: number; }; + type ordercontrollerExportorderParams = { + ids: number[]; + }; + type ordercontrollerGetorderitemlistParams = { /** 页码 */ current?: number;