diff --git a/src/views/shop/shopOrder/components/orderInfo.vue b/src/views/shop/shopOrder/components/orderInfo.vue index 8d876cc..35b0ee1 100644 --- a/src/views/shop/shopOrder/components/orderInfo.vue +++ b/src/views/shop/shopOrder/components/orderInfo.vue @@ -421,6 +421,9 @@ + + + @@ -441,6 +444,7 @@ import {copyText} from "@/utils/common"; import {listShopOrderGoods} from "@/api/shop/shopOrderGoods"; import {updateShopOrder, removeShopOrder} from '@/api/shop/shopOrder'; import {message, Modal} from 'ant-design-vue'; +import DeliveryModal from './deliveryModal.vue'; const useForm = Form.useForm; @@ -463,6 +467,8 @@ const isUpdate = ref(false); const maxAble = ref(true); // 订单信息 const orderGoods = ref([]); +// 是否显示发货弹窗 +const showDelivery = ref(false); // 步骤条 const steps = ref([ @@ -752,31 +758,18 @@ const loadSteps = (order: ShopOrder) => { /* 发货处理 */ const handleDelivery = () => { - Modal.confirm({ - title: '确认发货', - content: '确定要将此订单标记为已发货吗?', - onOk: async () => { - try { - loading.value = true; - // 格式化日期为后端期望的格式 - const now = new Date(); - const deliveryTime = toDateString(now, 'yyyy-MM-dd HH:mm:ss'); + showDelivery.value = true; +}; - await updateShopOrder({ - ...form, - deliveryStatus: 20, // 已发货 - deliveryTime: deliveryTime - }); - message.success('发货成功'); - emit('done'); - updateVisible(false); - } catch (error: any) { - message.error(error.message || '发货失败'); - } finally { - loading.value = false; - } - } - }); +/* 发货完成回调 */ +const handleDeliveryDone = () => { + showDelivery.value = false; + emit('done'); + // 重新加载订单数据以更新显示 + if (props.data?.orderId) { + // 这里可以重新获取订单数据,或者直接关闭弹窗让父组件刷新 + updateVisible(false); + } }; /* 取消订单 */