From fcac9ebfb3a0a1a4f6d857b422768d6cbef7944d Mon Sep 17 00:00:00 2001
From: wangjuncheng <1>
Date: 星期一, 21 四月 2025 14:02:43 +0800
Subject: [PATCH] change

---
 src/components/monifangzhen/schemeInfo.vue |    2 +-
 src/components/menu/TimeLine.vue           |   14 +++++++++++++-
 src/components/monifangzhen/schemeCard.vue |   24 ++++++++++++++++--------
 3 files changed, 30 insertions(+), 10 deletions(-)

diff --git a/src/components/menu/TimeLine.vue b/src/components/menu/TimeLine.vue
index 632a6c3..b8cec2a 100644
--- a/src/components/menu/TimeLine.vue
+++ b/src/components/menu/TimeLine.vue
@@ -62,7 +62,7 @@
         </div>
       </div>
     </div>
-    <el-button @click="endSimulate" style="margin-top: 26px;margin-left: 30px;margin-right: 10px;">缁撴潫妯℃嫙</el-button>
+    <el-button @click="handleBack" style="margin-top: 26px;margin-left: 30px;margin-right: 10px;">缁撴潫妯℃嫙</el-button>
   </div>
 </template>
 
@@ -80,6 +80,9 @@
 import dayjs from "dayjs";
 import { createWaterPrimitive, destoryWaterPrimitive } from "@/utils/water";
 import { getRainfall } from "@/api/index";
+import { EventBus } from "@/eventBus"; // 寮曞叆浜嬩欢鎬荤嚎
+import { ElMessage } from 'element-plus'
+
 
 const props = defineProps({
   waterSimulateParams: {
@@ -301,6 +304,15 @@
   }, delay);
 });
 const { startSimulate, endSimulate } = inject("simulateActions");
+// 杩斿洖鎸夐挳鐐瑰嚮浜嬩欢
+function handleBack() {
+  ElMessage({
+    message: '妯℃嫙杩涚▼姝e湪鍏抽棴涓�...',
+    type: 'success',
+  })
+  endSimulate();
+  EventBus.emit("hide-schemeInfo");
+}
 </script>
 
 <style scoped>
diff --git a/src/components/monifangzhen/schemeCard.vue b/src/components/monifangzhen/schemeCard.vue
index 2778177..b2f8994 100644
--- a/src/components/monifangzhen/schemeCard.vue
+++ b/src/components/monifangzhen/schemeCard.vue
@@ -22,25 +22,22 @@
         </div>
       </div>
     </el-card>
-    <schemeInfo 
-      v-if="schemeInfoShow" 
-      :selectedScheme="currentScheme" 
-      @back="handleBack"
-    />
+    <schemeInfo v-if="schemeInfoShow" :selectedScheme="currentScheme" @back="handleBack" />
   </div>
 
   <Message @close="close" class="mess" v-show="messageShow" :mesData="mesData" />
 </template>
 
 <script setup>
-import { onMounted, ref, watch ,defineEmits } from "vue";
+import { EventBus } from "@/eventBus"; // 寮曞叆浜嬩欢鎬荤嚎
+import { onMounted, ref, watch, defineEmits, onUnmounted } from "vue";
 import dayjs from "dayjs";
 import { initeWaterPrimitiveView } from "@/utils/water";
 import Message from "@/components/tools/Message.vue";
 import { useSimStore } from "@/store/simulation.js";
 import schemeInfo from "@/components/monifangzhen/schemeInfo.vue";
 import { ElMessage, ElMessageBox } from "element-plus";
-const emit = defineEmits(["start", "end", "reset","closeBtn"]);
+const emit = defineEmits(["start", "end", "reset", "closeBtn"]);
 
 const simStore = useSimStore();
 // 閫変腑鐨勬柟妗� ID
@@ -317,7 +314,7 @@
   //   alert("褰撳墠鏂规灏氭湭瀹屾垚锛屾棤娉曡繘鍏ユā鎷燂紒");
   //   return;
   // }
-  currentScheme.value = item; 
+  currentScheme.value = item;
   schemeInfoShow.value = true
   emit("closeBtn", false);
   initeWaterPrimitiveView();
@@ -332,6 +329,14 @@
     emit("closeBtn", true);
   }
 }
+const handleHideSchemeInfo = () => {
+  schemeInfoShow.value = false; // 闅愯棌 schemeInfo
+  console.log("schemeInfoShow set to false");
+};
+
+// 娉ㄥ唽浜嬩欢鐩戝惉鍣�
+EventBus.on("hide-schemeInfo", handleHideSchemeInfo);
+
 //////////////////////////////////// 鏆撮湶閫変腑鐨� ID 缁欑埗缁勪欢锛堟帴鍙g増鏈垹闄わ級////////////////////////////////////
 defineExpose({
   getSelectedId: () => selectedId.value,
@@ -391,6 +396,9 @@
 //     });
 // };
 /////////////////////// 璋冪敤鎺ュ彛缁撴潫 ///////////////////////
+onUnmounted(() => {
+  EventBus.off("hide-schemeInfo", handleHideSchemeInfo);
+});
 </script>
 
 <style lang="less" scoped>
diff --git a/src/components/monifangzhen/schemeInfo.vue b/src/components/monifangzhen/schemeInfo.vue
index 38b30ce..95a392f 100644
--- a/src/components/monifangzhen/schemeInfo.vue
+++ b/src/components/monifangzhen/schemeInfo.vue
@@ -2,7 +2,7 @@
   <div class="listCard">
     <div class="left-top">
       <span>鏂规璇︽儏</span>
-      <el-button class="clickable-text" @click="handleBack">缁撴潫妯℃嫙</el-button>
+      <!-- <el-button class="clickable-text" @click="handleBack">缁撴潫妯℃嫙</el-button> -->
     </div>
     <div class="details">
       <div v-if="selectedScheme">

--
Gitblit v1.9.3