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

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-card>
<!-- 发货弹窗 -->
<DeliveryModal v-model:visible="showDelivery" :data="form" @done="handleDeliveryDone"/>
</a-drawer>
</template>
@@ -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<BszxPay[]>([]);
// 是否显示发货弹窗
const showDelivery = ref(false);
// 步骤条
const steps = ref<Step[]>([
@@ -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);
}
};
/* 取消订单 */