From 8792be67cf5791a4a3afc2f72fd8d7cfc3cff353 Mon Sep 17 00:00:00 2001
From: wangjuncheng <1>
Date: 星期二, 15 四月 2025 15:20:28 +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..574018b 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:1, // 鍒濆鐘舵�佷负鏈紑濮�
+    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