feat: 添加汇率服务和缓存服务,优化数据源和日志服务
refactor: 重构数据源工厂和类型定义,提升代码可维护性 fix: 修复类型转换和状态机文档中的错误 docs: 更新服务架构文档,添加新的服务闭环流程 test: 添加汇率服务单元测试 chore: 清理无用代码和注释,优化代码结构
This commit is contained in:
@@ -641,21 +641,44 @@ export const OrderList: React.FC = () => {
|
||||
</Menu>
|
||||
);
|
||||
|
||||
// 根据订单状态显示主要操作按钮
|
||||
const getPrimaryActionButton = () => {
|
||||
switch (record.status) {
|
||||
case 'PENDING':
|
||||
return (
|
||||
<Button type="primary" size="small" onClick={() => handleConfirmOrder(record)}>
|
||||
确认
|
||||
</Button>
|
||||
);
|
||||
case 'CONFIRMED':
|
||||
return (
|
||||
<Button type="primary" size="small" onClick={() => handleShipOrder(record)}>
|
||||
发货
|
||||
</Button>
|
||||
);
|
||||
case 'DELIVERED':
|
||||
return (
|
||||
<Button type="primary" size="small" onClick={() => handleCompleteOrder(record)}>
|
||||
完成
|
||||
</Button>
|
||||
);
|
||||
case 'COMPLETED':
|
||||
return (
|
||||
<Button type="link" size="small" onClick={() => handleAfterSales(record)}>
|
||||
售后
|
||||
</Button>
|
||||
);
|
||||
default:
|
||||
return null;
|
||||
}
|
||||
};
|
||||
|
||||
return (
|
||||
<Space>
|
||||
<Space size="small">
|
||||
<Button type="link" size="small" onClick={() => handleViewDetail(record)}>
|
||||
查看
|
||||
</Button>
|
||||
{record.status === 'PENDING' && (
|
||||
<Button type="link" size="small" onClick={() => handleConfirmOrder(record)}>
|
||||
确认
|
||||
</Button>
|
||||
)}
|
||||
{record.status === 'CONFIRMED' && (
|
||||
<Button type="link" size="small" onClick={() => handleShipOrder(record)}>
|
||||
发货
|
||||
</Button>
|
||||
)}
|
||||
{getPrimaryActionButton()}
|
||||
<Dropdown overlay={menu} placement="bottomRight">
|
||||
<Button type="link" size="small" icon={<MoreOutlined />}>
|
||||
更多
|
||||
@@ -723,29 +746,50 @@ export const OrderList: React.FC = () => {
|
||||
|
||||
<Row gutter={[16, 16]} style={{ marginBottom: 16 }}>
|
||||
<Col span={24}>
|
||||
<Space style={{ display: 'flex', justifyContent: 'space-between' }}>
|
||||
<Search
|
||||
placeholder="搜索订单号或客户"
|
||||
allowClear
|
||||
enterButton
|
||||
onSearch={handleSearch}
|
||||
style={{ width: 300 }}
|
||||
/>
|
||||
<Space>
|
||||
<Button icon={<FilterOutlined />} onClick={() => setFilterVisible(true)}>
|
||||
筛选
|
||||
</Button>
|
||||
<Button icon={<SortAscendingOutlined />} onClick={() => setSortDrawerVisible(true)}>
|
||||
排序
|
||||
</Button>
|
||||
<Button icon={<ExportOutlined />}>
|
||||
导出
|
||||
</Button>
|
||||
<Button icon={<SyncOutlined />} onClick={fetchOrders}>
|
||||
刷新
|
||||
</Button>
|
||||
</Space>
|
||||
</Space>
|
||||
<Card>
|
||||
<Row gutter={16}>
|
||||
<Col span={12}>
|
||||
<Space>
|
||||
<Search
|
||||
placeholder="搜索订单号或客户"
|
||||
allowClear
|
||||
enterButton
|
||||
onSearch={handleSearch}
|
||||
style={{ width: 300 }}
|
||||
/>
|
||||
<Button icon={<FilterOutlined />} onClick={() => setFilterVisible(true)}>
|
||||
筛选
|
||||
</Button>
|
||||
<Button icon={<SortAscendingOutlined />} onClick={() => setSortDrawerVisible(true)}>
|
||||
排序
|
||||
</Button>
|
||||
</Space>
|
||||
</Col>
|
||||
<Col span={12} style={{ textAlign: 'right' }}>
|
||||
<Space>
|
||||
{selectedRows.length > 0 && (
|
||||
<Space>
|
||||
<Button onClick={() => message.info('批量确认功能开发中')}>
|
||||
批量确认
|
||||
</Button>
|
||||
<Button onClick={() => message.info('批量发货功能开发中')}>
|
||||
批量发货
|
||||
</Button>
|
||||
<Button danger onClick={() => message.info('批量取消功能开发中')}>
|
||||
批量取消
|
||||
</Button>
|
||||
</Space>
|
||||
)}
|
||||
<Button icon={<ExportOutlined />}>
|
||||
导出
|
||||
</Button>
|
||||
<Button icon={<SyncOutlined />} onClick={fetchOrders}>
|
||||
刷新
|
||||
</Button>
|
||||
</Space>
|
||||
</Col>
|
||||
</Row>
|
||||
</Card>
|
||||
</Col>
|
||||
</Row>
|
||||
|
||||
@@ -756,14 +800,17 @@ export const OrderList: React.FC = () => {
|
||||
loading={loading}
|
||||
rowKey="id"
|
||||
onChange={handleTableChange}
|
||||
scroll={{ x: 1200 }}
|
||||
scroll={{ x: 1300 }}
|
||||
pagination={{
|
||||
total: sortedOrders.length,
|
||||
pageSize: 10,
|
||||
showSizeChanger: true,
|
||||
showQuickJumper: true,
|
||||
showTotal: (total) => `共 ${total} 条`,
|
||||
pageSizeOptions: ['10', '20', '50', '100'],
|
||||
}}
|
||||
size="middle"
|
||||
bordered
|
||||
/>
|
||||
|
||||
<Drawer
|
||||
|
||||
Reference in New Issue
Block a user