|
|
@@ -171,11 +171,35 @@ export const OrderManagement: React.FC = () => {
|
|
|
setIsOrderFormOpen(true);
|
|
|
};
|
|
|
|
|
|
+ // 获取订单详情Mutation
|
|
|
+ const getOrderDetailMutation = useMutation({
|
|
|
+ mutationFn: async (id: number) => {
|
|
|
+ const response = await orderClientManager.get().detail[':id'].$get({
|
|
|
+ param: { id },
|
|
|
+ });
|
|
|
+ if (!response.ok) {
|
|
|
+ const errorData = await response.json();
|
|
|
+ throw new Error(errorData.message || '获取订单详情失败');
|
|
|
+ }
|
|
|
+ return response.json();
|
|
|
+ },
|
|
|
+ onSuccess: (detail) => {
|
|
|
+ setSelectedOrder(detail);
|
|
|
+ },
|
|
|
+ onError: (error: Error) => {
|
|
|
+ console.error('获取订单详情失败:', error);
|
|
|
+ toast.error(`获取订单详情失败: ${error.message}`);
|
|
|
+ },
|
|
|
+ });
|
|
|
+
|
|
|
// 处理编辑订单
|
|
|
const handleEditOrder = (order: OrderListItem) => {
|
|
|
- // 这里需要获取订单详情
|
|
|
+ // 先设置列表项数据,让表单立即显示基本字段
|
|
|
+ // 注意:OrderListItem 可能缺少 OrderDetail 的某些字段,但基本字段应该相同
|
|
|
setSelectedOrder(order as OrderDetail);
|
|
|
setIsOrderFormOpen(true);
|
|
|
+ // 然后异步获取完整详情来更新表单
|
|
|
+ getOrderDetailMutation.mutate(order.id);
|
|
|
};
|
|
|
|
|
|
// 处理删除订单
|