diff --git a/src/pages/salesOrder/SalesOrderCancel.vue b/src/pages/salesOrder/SalesOrderCancel.vue index ce16fe6..819d161 100644 --- a/src/pages/salesOrder/SalesOrderCancel.vue +++ b/src/pages/salesOrder/SalesOrderCancel.vue @@ -1,15 +1,31 @@ - - - - + + + + + - 取消订单会立即撤销本单有效消费;受影响的订单积分和签到消费条件积分将由系统自动追加撤销流水。退款仍需按资金流程处理。 - - + + + + - + @@ -25,8 +41,16 @@ import { permissionCodes } from "@/utils/permission"; import { getSalesOrderStatusText } from "@/utils/salesOrder"; defineOptions({ name: "SalesOrderCancel" }); -const route = useRoute(); const router = useRouter(); const navBarStore = useNavBarStore(); const userStore = useUserStore(); -const order = ref(); const loading = ref(false); const saving = ref(false); const reason = ref(""); const hasPendingFulfillment = ref(false); +const route = useRoute(); +const router = useRouter(); +const navBarStore = useNavBarStore(); +const userStore = useUserStore(); +const order = ref(); +const loading = ref(false); +const saving = ref(false); +const reason = ref(""); +const hasPendingFulfillment = ref(false); + async function loadData(): Promise { const id = String(route.params.id || ""); if (!id) return; @@ -40,10 +64,13 @@ async function loadData(): Promise { ]); hasPendingFulfillment.value = !!pendingResult.list?.length || !!waitingStockResult.list?.length; } + } catch (error) { + Message.error(getErrorMessage(error, "订单加载失败")); + } finally { + loading.value = false; } - catch (error) { Message.error(getErrorMessage(error, "订单加载失败")); } - finally { loading.value = false; } } + async function save(): Promise { if (!order.value?.id || !reason.value || saving.value) return; if (order.value.status !== "ACTIVE") { @@ -59,20 +86,26 @@ async function save(): Promise { await SalesOrderAPI.cancel({ salesOrderId: order.value.id, reason: reason.value.trim() }); Message.success("订单已取消"); await router.replace(`/management/sales-orders/${order.value.id}`); - } catch (error) { Message.error(getErrorMessage(error, "订单取消失败")); } - finally { saving.value = false; } + } catch (error) { + Message.error(getErrorMessage(error, "订单取消失败")); + } finally { + saving.value = false; + } } + onMounted(async () => { if (!userStore.hasPermissions(permissionCodes.salesOrder.cancel)) return; - navBarStore.setRightText("确认取消", "var(--td-danger-color)", save); + navBarStore.setRightText("确认", "var(--td-error-color)", save); await loadData(); }); onUnmounted(() => navBarStore.clearRight());