From 4822e06a644893046ab0d2ed6cd310b3a3b05488 Mon Sep 17 00:00:00 2001 From: Lxy Date: Sun, 7 Jun 2026 22:08:43 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E5=A2=9E=E5=8A=A0=E6=97=A5=E5=BF=97?= =?UTF-8?q?=E5=90=8E=E7=BB=AD=E6=8E=92=E6=9F=A5=E5=B7=A5=E4=BD=9C=E5=8F=B0?= =?UTF-8?q?=E4=B8=A2=E5=A4=B1=E7=AB=99=E7=82=B9=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .data/trip-planner.db-wal | Bin 1788112 -> 2208352 bytes src/components/QuickPlanPanel.vue | 17 ++++++++++------- src/stores/itinerary.js | 5 +++-- 3 files changed, 13 insertions(+), 9 deletions(-) diff --git a/.data/trip-planner.db-wal b/.data/trip-planner.db-wal index 669beda99f285ce9320586a202f833bb96f5a65a..0b5f31a0f18617f4418624357564486b01378df4 100644 GIT binary patch delta 33953 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 UZd9W8h);4}y;k}^d9C#S0Q4|Z=>Px# delta 64 zcmaFxq>b^y#N37!#ula)<`$L~))uxF_7;v7&K9l~?iQXF-WI+V{uY52!4{zw;TDk= T(H5~5@fL{|$rh p.name)) + console.log('[selectScheme] === 开始选择方案 ===') + console.log('[selectScheme] 方案名称:', scheme.name) + console.log('[selectScheme] 原始方案 points 数量:', scheme.points?.length) + console.log('[selectScheme] 原始方案 points 列表:', JSON.stringify(scheme.points?.map(p => p.name))) + console.log('[selectScheme] quickSchemes 当前长度:', store.quickSchemes.length) // 先保存方案到 store(深拷贝) store.saveSchemesToStore(allSchemes.value, historySchemes.value) store.setActiveSchemeIndex(index) - // 保存到后端 - savePlanToBackend(scheme) - // 使用深拷贝后的数据加载 const savedScheme = store.quickSchemes[index] - console.log('[selectScheme] 深拷贝后的方案 points 数量:', savedScheme?.points?.length) + console.log('[selectScheme] 深拷贝后方案 points 数量:', savedScheme?.points?.length) + console.log('[selectScheme] 深拷贝后方案 points 列表:', JSON.stringify(savedScheme?.points?.map(p => p.name))) store.loadFromAI(savedScheme) store.setPhase('workbench') + // 保存到后端(异步,不阻塞) + savePlanToBackend(scheme) + // 统计 trackSchemeSelect(scheme.name, index) } diff --git a/src/stores/itinerary.js b/src/stores/itinerary.js index 86f6eaf..8694377 100644 --- a/src/stores/itinerary.js +++ b/src/stores/itinerary.js @@ -256,12 +256,13 @@ export const useItineraryStore = defineStore('itinerary', () => { return point }) - console.log('[loadFromAI] 加载完成,站点数:', newPoints.length) - console.log('[loadFromAI] 站点列表:', newPoints.map(p => p.name)) + console.log('[loadFromAI] 加载完成,newPoints 长度:', newPoints.length) + console.log('[loadFromAI] newPoints 列表:', JSON.stringify(newPoints.map(p => ({ id: p.id, name: p.name })))) points.value = newPoints console.log('[loadFromAI] points.value 赋值后长度:', points.value.length) console.log('[loadFromAI] points.value 站点列表:', points.value.map(p => p.name)) + console.log('[loadFromAI] === loadFromAI 完成 ===') currentStep.value = 0 routeSegments.value = []