From 342e93ab9e770f58f783cc40847ec6acf3750235 Mon Sep 17 00:00:00 2001 From: wangjuncheng <1> Date: 星期二, 29 四月 2025 16:19:47 +0800 Subject: [PATCH] change --- src/store/simulation.js | 49 ++++++++++++++++++++++++++++++------------------- src/components/menu/TimeLine.vue | 8 ++++++++ src/components/monifangzhen/schemeCard.vue | 2 ++ 3 files changed, 40 insertions(+), 19 deletions(-) diff --git a/src/components/menu/TimeLine.vue b/src/components/menu/TimeLine.vue index 7f096ab..00a8b55 100644 --- a/src/components/menu/TimeLine.vue +++ b/src/components/menu/TimeLine.vue @@ -92,6 +92,10 @@ import { fetchWaterSimulationData } from "@/api/trApi.js"; import { EventBus } from "@/eventBus"; import { ElMessage } from "element-plus"; +import { useSimStore } from '@/store/simulation' +import { storeToRefs } from 'pinia' +const simStore = useSimStore() +const { selectedScheme } = storeToRefs(simStore) const emit = defineEmits(["timeUpdate", "isPlaying", "playbackFinished"]); @@ -147,7 +151,10 @@ startPlayback(); if (!isWaterPrimitiveCreated.value) { // 绗竴娆℃挱鏀炬椂鍒涘缓姘翠綋妯℃嫙灞� + console.log(selectedScheme.value,'杩欓噷鏄綋鍓嶆柟妗堢殑鍏ㄩ儴淇℃伅'); + createWaterPrimitive({ interval: intervalMap[playbackRate.value] }); + isWaterPrimitiveCreated.value = true; // 鏍囪涓哄凡鍒涘缓 } else { // 鍚庣画鎾斁鏃惰皟鐢ㄦ仮澶嶆帴鍙� @@ -270,6 +277,7 @@ } watch( + () => selectedScheme.value, () => currentTime.value, () => { if (waterTimestamps.value.length > 0) { diff --git a/src/components/monifangzhen/schemeCard.vue b/src/components/monifangzhen/schemeCard.vue index a69da73..427bb00 100644 --- a/src/components/monifangzhen/schemeCard.vue +++ b/src/components/monifangzhen/schemeCard.vue @@ -73,6 +73,8 @@ // alert("褰撳墠鏂规灏氭湭瀹屾垚锛屾棤娉曡繘鍏ユā鎷燂紒"); // return; // } + simStore.setSelectedScheme(item) + currentScheme.value = item; schemeInfoShow.value = true; emit("closeBtn", false); diff --git a/src/store/simulation.js b/src/store/simulation.js index 5007810..751e1f7 100644 --- a/src/store/simulation.js +++ b/src/store/simulation.js @@ -1,10 +1,10 @@ // stores/ui.js import { defineStore } from 'pinia' import { ref } from 'vue' -import { createSimData } from '@/api/trApi'; +import { createSimData } from '@/api/trApi' export const useSimStore = defineStore('simulation', () => { - // 鎵�鏈塙I鐘舵�� + // 鎵�鏈塙I鐘舵��... const navigationShow = ref(true) const leftShow = ref(false) const rightShow = ref(false) @@ -26,8 +26,14 @@ const showDangerAssess = ref(false) const schemCard = ref([]) const backToHome = ref(false) + const selectedScheme = ref(null) + const setSelectedScheme = (scheme) => { + selectedScheme.value = scheme + } + const clearSelectedScheme = () => { + selectedScheme.value = null + } - // 鍒濆鍖栨柟娉� const init = () => { navigationShow.value = true leftShow.value = false @@ -48,29 +54,24 @@ schemCard.value = [] } - // 鏂规鐩稿叧 const setSchemCard = (data) => { schemCard.value = data } - // 娣诲姞鍗曚釜鏂规鏁版嵁 const addSchemCard = (item) => { schemCard.value.unshift(item) } - // 鍒犻櫎鎸囧畾鏂规鏁版嵁 const removeSchemCardItem = (id) => { schemCard.value = schemCard.value.filter(item => item.id !== id) } - // 鏇存柊鎸囧畾鏂规鏁版嵁 const updateSchemCardItem = (id, newData) => { const index = schemCard.value.findIndex(item => item.id === id) if (index !== -1) { schemCard.value[index] = { ...schemCard.value[index], ...newData } } } - const startYHGL = () => { init() @@ -94,9 +95,11 @@ // showResultAssess.value = true // showDangerAssess.value = true } + const setBackToHome = (value) => { - backToHome.value = value; - }; + backToHome.value = value + } + // 瀵艰埅鐐瑰嚮 const handleNavClick = (index) => { switch (index) { @@ -114,7 +117,9 @@ break } } + return { + // UI 鐘舵�� navigationShow, leftShow, rightShow, @@ -135,20 +140,26 @@ showLayerTree, showDangerAssess, schemCard, - // selectTab, backToHome, - handleNavClick, + + // 鏂规鐩稿叧鏂规硶 + setSchemCard, + addSchemCard, + removeSchemCardItem, + updateSchemCardItem, + setBackToHome, + + // 鉁� 鏆撮湶 selectedScheme 鍙婂叾鏂规硶 + selectedScheme, // 鍝嶅簲寮忓紩鐢� + setSelectedScheme, // 鏂规硶 + clearSelectedScheme, // 鏂规硶 + + // 鎺у埗閫昏緫 init, startYHGL, startZHJC, startMNFZ, startMNPG, - setSchemCard, - addSchemCard, - removeSchemCardItem, - updateSchemCardItem, - // handleClickTab, - // createSimulation, - setBackToHome + handleNavClick, } }) \ No newline at end of file -- Gitblit v1.9.3