From b69b5f6329ca5f87932436b7a6c1ddfc3377e10f Mon Sep 17 00:00:00 2001
From: king <18310653075@163.com>
Date: 星期四, 16 五月 2024 10:56:41 +0800
Subject: [PATCH] 2024-05-16

---
 src/tabviews/custom/components/chart/antv-X6/index.jsx |   46 +++++++++++++++++++++++++++++++++++++++++-----
 1 files changed, 41 insertions(+), 5 deletions(-)

diff --git a/src/tabviews/custom/components/chart/antv-X6/index.jsx b/src/tabviews/custom/components/chart/antv-X6/index.jsx
index 03c7b22..ad2f38a 100644
--- a/src/tabviews/custom/components/chart/antv-X6/index.jsx
+++ b/src/tabviews/custom/components/chart/antv-X6/index.jsx
@@ -998,6 +998,18 @@
 
       graph.clearTransformWidgets()
     })
+
+    graph.on('node:dblclick', () => {
+      setTimeout(() => {
+        MKEmitter.emit('mk-x6-dbclick')
+      }, 100)
+    })
+    graph.on('edge:dblclick', () => {
+      setTimeout(() => {
+        MKEmitter.emit('mk-x6-dbclick')
+      }, 100)
+    })
+
     graph.on('blank:click', () => {
       this.selectNode = null
       
@@ -1023,7 +1035,9 @@
 
       let mkdata = target.prop('mkdata')
 
-      if (target.prop('mknode') === 'end') {
+      if (source.prop('mknode') === 'start' && target.prop('mknode') === 'end') {
+        edge.prop('mknode', 'throughEdge')
+      } else if (target.prop('mknode') === 'end') {
         edge.prop('mknode', 'endEdge')
       } else if (target.prop('mknode') === 'start') {
         edge.prop('mknode', 'startEdge')
@@ -1611,7 +1625,13 @@
         } else if (item.mknode === 'end') {
           end_num++
         } else if (item.shape === 'edge') {
-          if (item.mknode !== 'endEdge' && item.mknode !== 'startEdge' && (!item.mkdata.members || item.mkdata.members.length === 0)) {
+          if (item.mknode === 'throughEdge') {
+            if (!item.mkdata.seniorbers || item.mkdata.seniorbers.length === 0) {
+              unvalid = true
+            }
+          } else if (item.mkdata.seniorCondition === 'open') {
+
+          } else if (item.mknode !== 'endEdge' && item.mknode !== 'startEdge' && (!item.mkdata.members || item.mkdata.members.length === 0)) {
             unvalid = true
           } else if (item.mknode === 'startEdge' || item.mkdata.flowType === 'reject') {
             if (map.has(item.source.cell)) {
@@ -1874,6 +1894,16 @@
     }
   }
 
+  delCell = () => {
+    const { node } = this.state
+
+    let cell = this.mkGraph.getCellById(node.id)
+
+    this.mkGraph.removeCells([cell])
+
+    this.setState({node: null})
+  }
+
   changeProps = (value, key) => {
     const { node } = this.state
 
@@ -2079,7 +2109,13 @@
         } else if (item.mknode === 'end') {
           end_num++
         } else if (item.shape === 'edge' && !unvalidId && !rejectId && !approvalId) {
-          if (item.mknode !== 'endEdge' && item.mknode !== 'startEdge' && (!item.mkdata.members || item.mkdata.members.length === 0)) {
+          if (item.mknode === 'throughEdge') {
+            if (!item.mkdata.seniorbers || item.mkdata.seniorbers.length === 0) {
+              unvalidId = item.id
+            }
+          } else if (item.mkdata.seniorCondition === 'open') {
+
+          } else if (item.mknode !== 'endEdge' && item.mknode !== 'startEdge' && (!item.mkdata.members || item.mkdata.members.length === 0)) {
             unvalidId = item.id
           } else if (item.mknode === 'startEdge' || item.mkdata.flowType === 'reject') {
             if (map.has(item.source.cell)) {
@@ -2303,7 +2339,7 @@
             <Tooltip title="娓呯┖">
               <ClearOutlined onClick={this.clearNode}/>
             </Tooltip>
-            <Tooltip overlayStyle={{maxWidth: 260}} title="蹇嵎閿細澶嶅埗锛坈trl+c锛夈�佸壀鍒囷紙ctrl+x锛夈�佺矘璐达紙ctrl+v锛夈�佸悗閫�锛坈trl+z锛夈�佸墠杩涳紙ctrl+shift+z锛夈�佸垹闄わ紙backspace 鎴� delete锛�">
+            <Tooltip overlayStyle={{maxWidth: 310}} title="蹇嵎閿細澶嶅埗锛坈trl+c锛夈�佸壀鍒囷紙ctrl+x锛夈�佺矘璐达紙ctrl+v锛夈�佸悗閫�锛坈trl+z锛夈�佸墠杩涳紙ctrl+shift+z锛夈�佸垹闄わ紙backspace 鎴� delete锛夛紱鍙屽嚮鑺傜偣鎴栬繛绾垮彲缂栬緫鑷畾涔変俊鎭��">
               <QuestionCircleOutlined />
             </Tooltip>
           </div>
@@ -2319,7 +2355,7 @@
           <div id={config.uuid + 'container'} className="mk-container"></div>
           <div className="mk-node-edit">
             <div className="header">璁剧疆</div>
-            {!node ? <div className="empty">鏈�変腑</div> : <NodeUpdate node={node} orgs={orgs} onChange={this.changeProps}/>}
+            {!node ? <div className="empty">鏈�変腑</div> : <NodeUpdate node={node} orgs={orgs} onChange={this.changeProps} onDel={this.delCell}/>}
           </div>
         </div>
       </div>

--
Gitblit v1.8.0