From 880cd0080120b30ba10646624b18f73292e7bbf8 Mon Sep 17 00:00:00 2001 From: zhuibobo Date: Mon, 13 Jul 2026 17:35:13 +0800 Subject: [PATCH] =?UTF-8?q?=E4=B8=B4=E6=97=B6=E5=A2=9E=E5=8A=A0=E7=9A=84?= =?UTF-8?q?=E8=B0=83=E7=94=A8=E7=B3=BB=E7=BB=9F=E5=8C=B9=E9=85=8D=E7=9A=84?= =?UTF-8?q?=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../src/api/enforcement/plan.js | 3 +++ .../my/reserve/cp_reserve_list.vue | 27 ++++++++++++++++++- 2 files changed, 29 insertions(+), 1 deletion(-) diff --git a/zdxt-web-client/zdxt-efcode-enforcement-app/src/api/enforcement/plan.js b/zdxt-web-client/zdxt-efcode-enforcement-app/src/api/enforcement/plan.js index 42cb25d5..5ce724e0 100644 --- a/zdxt-web-client/zdxt-efcode-enforcement-app/src/api/enforcement/plan.js +++ b/zdxt-web-client/zdxt-efcode-enforcement-app/src/api/enforcement/plan.js @@ -28,6 +28,9 @@ export const checkCanReserve = (targetPlanId, success, error) => _get(planBaseUr // 执行预约 export const doReservePlan = (params, success, error) => _post(planBaseUrl + "/reserve/do", params, success, error); +// 强制执行自动匹配预约 +export const autoMatchReserve = (success, error) => _get(planBaseUrl + "/autoMatchReserve", {}, success, error); + // endregion // region 计划-设置接口 diff --git a/zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/my/reserve/cp_reserve_list.vue b/zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/my/reserve/cp_reserve_list.vue index 2d232ed2..dc6bec51 100644 --- a/zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/my/reserve/cp_reserve_list.vue +++ b/zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/my/reserve/cp_reserve_list.vue @@ -5,7 +5,11 @@ title="预约处理" left-arrow @click-left="onBack" - /> + > + + import { useRouter } from 'vue-router'; +import { showConfirmDialog, showSuccessToast, showFailToast, showLoadingToast } from 'vant'; +import { autoMatchReserve } from '@/api/enforcement/plan'; import CpReserveManual from './cp_reserve_manual.vue'; import CpReserveSystem from './cp_reserve_system.vue'; @@ -38,6 +44,25 @@ const activeTab = ref('manual'); const onBack = () => { router.back(); }; + +const onAutoMatch = () => { + showConfirmDialog({ + title: '提示', + message: '确认强制执行系统自动匹配预约?', + }).then(() => { + const toast = showLoadingToast({ message: '匹配中...', forbidClick: true, duration: 0 }); + autoMatchReserve( + (res) => { + toast.close(); + showSuccessToast('匹配完成'); + }, + (err) => { + toast.close(); + showFailToast(err?.msg || '匹配失败'); + } + ); + }).catch(() => {}); +};