From eb61ac3adb953fe524146ad486df260eda57f18d Mon Sep 17 00:00:00 2001 From: xingyu4j Date: Mon, 20 Oct 2025 14:13:49 +0800 Subject: [PATCH] fix: handlePickup prompt --- .../mall/trade/delivery/pickUpOrder/index.vue | 68 +++++++++---------- 1 file changed, 33 insertions(+), 35 deletions(-) diff --git a/apps/web-ele/src/views/mall/trade/delivery/pickUpOrder/index.vue b/apps/web-ele/src/views/mall/trade/delivery/pickUpOrder/index.vue index 8fe67c81d..878f38920 100644 --- a/apps/web-ele/src/views/mall/trade/delivery/pickUpOrder/index.vue +++ b/apps/web-ele/src/views/mall/trade/delivery/pickUpOrder/index.vue @@ -2,21 +2,14 @@ import type { VxeTableGridOptions } from '#/adapter/vxe-table'; import type { MallOrderApi } from '#/api/mall/trade/order'; -import { h, ref } from 'vue'; +import { ref } from 'vue'; import { Page, prompt, SummaryCard } from '@vben/common-ui'; import { DeliveryTypeEnum } from '@vben/constants'; import { $t } from '@vben/locales'; import { fenToYuan } from '@vben/utils'; -import { - ElCard, - ElImage, - ElInput, - ElLoading, - ElMessage, - ElTag, -} from 'element-plus'; +import { ElCard, ElImage, ElLoading, ElMessage, ElTag } from 'element-plus'; import { TableAction, useVbenVxeGrid } from '#/adapter/vxe-table'; import { @@ -44,36 +37,41 @@ async function getOrderSum() { /** 核销订单 */ async function handlePickup(pickUpVerifyCode?: string) { // 如果没有传核销码,则弹窗输入 - // TODO @xingyu:这个貌似不太行,帮忙看看~ - if (!pickUpVerifyCode) { - await prompt({ - component: () => { - return h(ElInput, {}); - }, - content: '请输入核销码', + if (pickUpVerifyCode) { + // 执行核销 + const loadingInstance = ElLoading.service({ + text: '订单核销中 ...', + }); + try { + await pickUpOrderByVerifyCode(pickUpVerifyCode); + ElMessage.success($t('ui.actionMessage.operationSuccess')); + handleRefresh(); + } finally { + loadingInstance.close(); + } + } else { + prompt({ + componentProps: { placeholder: '输入核销码' }, + content: '输入核销码', title: '核销订单', - modelPropName: 'value', - }).then(async (val) => { - if (val) { - pickUpVerifyCode = val; + icon: 'question', + overlayBlur: 3, + }).then(async (res) => { + if (res) { + // 执行核销 + const loadingInstance = ElLoading.service({ + text: '订单核销中 ...', + }); + try { + await pickUpOrderByVerifyCode(res); + ElMessage.success($t('ui.actionMessage.operationSuccess')); + handleRefresh(); + } finally { + loadingInstance.close(); + } } }); } - if (!pickUpVerifyCode) { - return; - } - - // 执行核销 - const loadingInstance = ElLoading.service({ - text: '订单核销中 ...', - }); - try { - await pickUpOrderByVerifyCode(pickUpVerifyCode); - ElMessage.success($t('ui.actionMessage.operationSuccess')); - handleRefresh(); - } finally { - loadingInstance.close(); - } } const port = ref('');