From aa0bc81d06736cc1a1bd210dde61f57736585d43 Mon Sep 17 00:00:00 2001
From: Ben Lin <maobin001@msn.com>
Date: 星期五, 07 六月 2024 10:37:05 +0800
Subject: [PATCH] 很多更新

---
 src/views/tigerprojects/mes/eng/route/index.vue |   30 ++++++++++++++++++++++++++----
 1 files changed, 26 insertions(+), 4 deletions(-)

diff --git a/src/views/tigerprojects/mes/eng/route/index.vue b/src/views/tigerprojects/mes/eng/route/index.vue
index f0c3508..e89e596 100644
--- a/src/views/tigerprojects/mes/eng/route/index.vue
+++ b/src/views/tigerprojects/mes/eng/route/index.vue
@@ -35,13 +35,13 @@
   </PageWrapper>
 </template>
 
-<script lang="ts" setup>
+<script lang="ts" setup name="Route_View">
   import { FlowChart } from '/@/components/FlowChart';
   import { PageWrapper } from '/@/components/Page';
   import { SaveRouteData, getRouteData } from '/@/api/tigerapi/mes/router';
   import { useModal } from '/@/components/Modal';
   import RouteModal from './RouteModal.vue';
-  import { onMounted, ref, unref, Ref, provide, reactive, nextTick } from 'vue';
+  import { onMounted, ref, unref, Ref, provide, reactive, nextTick, watch } from 'vue';
   import { Layout, LayoutContent, LayoutSider } from 'ant-design-vue';
   import {
     RouteData,
@@ -62,6 +62,7 @@
   import { isNullOrEmpty, isNullOrUnDef } from '/@/utils/is';
   import { useRoute } from 'vue-router';
   import { useTabs } from '/@/hooks/web/useTabs';
+  import LogicFlow from '@logicflow/core';
 
   const [registerDrawer, { openDrawer }] = useDrawer();
   const [registerModal, { openModal }] = useModal();
@@ -91,9 +92,30 @@
   provide<Ref<MES_ROUTE>>('mesRoute', currRoute);
   const selectnode = ref({} as node);
   const currRotId = ref(route.params?.id);
-
+  const props = defineProps({
+    rotId: { type: String, default: '' },
+  });
+  watch(
+    () => props.rotId,
+    (v) => {
+      if (v !== currRotId.value) {
+        currRotId.value = v;
+        if (!isNullOrUnDef(unref(currlf))) {
+          unref(currlf).render({});
+          routeData.value = {
+            nodes: [],
+            edges: [],
+          };
+          init(currlf);
+        }
+      }
+    },
+    { deep: true },
+  );
+  const currlf = ref(null) as Ref<LogicFlow | null>;
   console.log(currRotId.value);
   async function init(lf) {
+    currlf.value = unref(lf);
     //閫氳繃宸ヨ壓璺嚎ID鑾峰彇鍥惧舰鏁版嵁锛屽苟娓叉煋
     var _data = await getRouteData(currRotId.value);
     console.log('缁勪欢宸叉寕杞�', _data);
@@ -102,7 +124,7 @@
     if (_data.Data != null) {
       //宸ヨ壓璺嚎涓讳俊鎭�
       currRoute.value = _data.Data.route;
-      if (!isNullOrEmpty(currRotId.value)) {
+      if (!isNullOrEmpty(currRotId.value) && isNullOrEmpty(props.rotId)) {
         setTitle('璁捐锛氬伐鑹鸿矾绾�-' + currRoute.value.ROT_CODE);
       }
       _data.Data.nodes.forEach((n) => {

--
Gitblit v1.9.3