修复:订单详情也的发货按钮

This commit is contained in:
2025-08-11 00:02:33 +08:00
parent ffe0f5711b
commit 14c91a63a1

View File

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