From 65dc7a8dab046264766f7ae32070ded7bf34e6fe Mon Sep 17 00:00:00 2001 From: wangjuncheng <1> Date: 星期二, 15 四月 2025 15:09:12 +0800 Subject: [PATCH] change --- src/views/left/KGSimOption/RealTimeSimulation.vue | 89 ++++++++++++++++++++++++-------------------- 1 files changed, 48 insertions(+), 41 deletions(-) diff --git a/src/views/left/KGSimOption/RealTimeSimulation.vue b/src/views/left/KGSimOption/RealTimeSimulation.vue index 9dbd94c..436c48b 100644 --- a/src/views/left/KGSimOption/RealTimeSimulation.vue +++ b/src/views/left/KGSimOption/RealTimeSimulation.vue @@ -63,19 +63,30 @@ </template> <script setup> -import { ref, watch, defineProps, computed } from 'vue'; +import { ref, watch, defineProps, computed, inject } from 'vue'; import { ElMessage } from 'element-plus'; import { initeWaterPrimitiveView } from "@/utils/water"; +import { useSimStore } from "@/store/simulation.js"; // 寮曞叆 Store -const emit = defineEmits(["start", "end"]); -function endPlay() { - emit("end"); -} +// 鑾峰彇 Store 瀹炰緥 +const simStore = useSimStore(); + +// 娉ㄥ叆妯℃嫙鎿嶄綔鏂规硶 +const { startSimulate, endSimulate } = inject("simulateActions"); function startPlay() { - initeWaterPrimitiveView(); - emit("start"); + const selectedItems = filteredTableData.value.filter(item => item.selected); + if (selectedItems.length > 0) { + console.log('閫変腑鐨勯」锛�', selectedItems.map(item => item.name)); + } else { + console.log('鏈�変腑浠讳綍椤�'); + } + console.log('褰撳墠閫変腑鐨勫尯鍩燂細', props.selectedArea); + console.log('褰撳墠閫変腑鐨勯洦閲忔暟鎹細', selectedRainfall.value); + initeWaterPrimitiveView(); + startSimulate(); } + // 宸ュ叿鍑芥暟锛氭繁鎷疯礉骞惰缃粯璁ら�変腑鐘舵�� function deepCloneAndSetSelected(data) { const newData = {}; @@ -109,12 +120,12 @@ ], tableData: { '1': [ - { id: '001', name: '瀛欒儭娌熸皵璞$珯001' }, // 榛樿鏈嬀閫� - { id: '002', name: '瀛欒儭娌熸皵璞$珯002' } // 榛樿鏈嬀閫� + { id: '001', name: '瀛欒儭娌熸皵璞$珯001' }, + { id: '002', name: '瀛欒儭娌熸皵璞$珯002' } ], '2': [ - { id: '003', name: '瀛欒儭娌熼洦閲忚003' }, // 榛樿鏈嬀閫� - { id: '004', name: '瀛欒儭娌熼洦閲忚004' } // 榛樿鏈嬀閫� + { id: '003', name: '瀛欒儭娌熼洦閲忚003' }, + { id: '004', name: '瀛欒儭娌熼洦閲忚004' } ] } }, @@ -125,12 +136,12 @@ ], tableData: { '1': [ - { id: '005', name: '楸兼按娲炲悗娌熸皵璞$珯005' }, // 榛樿鏈嬀閫� - { id: '006', name: '楸兼按娲炲悗娌熸皵璞$珯006' } // 榛樿鏈嬀閫� + { id: '005', name: '楸兼按娲炲悗娌熸皵璞$珯005' }, + { id: '006', name: '楸兼按娲炲悗娌熸皵璞$珯006' } ], '2': [ - { id: '007', name: '楸兼按娲炲悗娌熼洦閲忚007' }, // 榛樿鏈嬀閫� - { id: '008', name: '楸兼按娲炲悗娌熼洦閲忚008' } // 榛樿鏈嬀閫� + { id: '007', name: '楸兼按娲炲悗娌熼洦閲忚007' }, + { id: '008', name: '楸兼按娲炲悗娌熼洦閲忚008' } ] } }, @@ -141,12 +152,12 @@ ], tableData: { '1': [ - { id: '009', name: '浜庡瑗挎矡姘旇薄绔�009' }, // 榛樿鏈嬀閫� - { id: '010', name: '浜庡瑗挎矡姘旇薄绔�010' } // 榛樿鏈嬀閫� + { id: '009', name: '浜庡瑗挎矡姘旇薄绔�009' }, + { id: '010', name: '浜庡瑗挎矡姘旇薄绔�010' } ], '2': [ - { id: '011', name: '浜庡瑗挎矡闆ㄩ噺璁�011' }, // 榛樿鏈嬀閫� - { id: '012', name: '浜庡瑗挎矡闆ㄩ噺璁�012' } // 榛樿鏈嬀閫� + { id: '011', name: '浜庡瑗挎矡闆ㄩ噺璁�011' }, + { id: '012', name: '浜庡瑗挎矡闆ㄩ噺璁�012' } ] } } @@ -204,35 +215,31 @@ // 纭淇濆瓨 const confirmSave = () => { - console.log('淇濆瓨鏂规鎴愬姛', { - 鍖哄煙: props.selectedArea, - 妯℃嫙绫诲瀷: '瀹炴椂妯℃嫙', - 闆ㄩ噺鏁版嵁: selectedRainfallName.value, - 璁惧淇℃伅: selectedDevices.value.map(item => item.name) - }); - ElMessage.success('鏂规宸蹭繚瀛�'); + // 鏋勯�犳柊鐨勬柟妗堝璞� + const newScheme = { + id: Date.now().toString(), // 鍞竴 ID + area: props.selectedArea, // 鍖哄煙 + name: selectedRainfallName.value, // 鏂规鍚嶇О锛堥洦閲忔暟鎹被鍨嬶級 + createTime: new Date().toISOString(), // 鍒涘缓鏃堕棿 + taskStatus: 0, // 鍒濆鐘舵�佷负鏈紑濮� + rainfallType: selectedRainfallName.value, // 闆ㄩ噺鏁版嵁绫诲瀷 + devices: selectedDevices.value.map((item) => item.name), // 璁惧淇℃伅 + }; + + // 璋冪敤 Store 鐨勬柟娉曟坊鍔犳柟妗� + simStore.addSchemCard(newScheme); + + console.log("淇濆瓨鏂规鎴愬姛", newScheme); + ElMessage.success("鏂规宸蹭繚瀛�"); + + // 鍏抽棴瀵硅瘽妗� saveDialogVisible.value = false; }; -// 鍒囨崲璇︽儏鏄剧ず const toggleDetails = () => { isCollapsed.value = !isCollapsed.value; }; -// 寮�濮嬫ā鎷� -const startSimulation = () => { - const selectedItems = filteredTableData.value.filter(item => item.selected); - if (selectedItems.length > 0) { - console.log('閫変腑鐨勯」锛�', selectedItems.map(item => item.name)); - } else { - console.log('鏈�変腑浠讳綍椤�'); - } - - console.log('褰撳墠閫変腑鐨勫尯鍩燂細', props.selectedArea); - console.log('褰撳墠閫変腑鐨勯洦閲忔暟鎹細', selectedRainfall.value); -}; - -// 鏈潵棰勬祴 const futurePredictions = () => { console.log('鏈潵棰勬祴鎸夐挳琚偣鍑�'); }; -- Gitblit v1.9.3