From 40b60ccb89d6d50b0ccc577937f462360c7c2d4d Mon Sep 17 00:00:00 2001
From: wente <329538422@qq.com>
Date: 星期三, 13 十一月 2024 15:12:01 +0800
Subject: [PATCH] 修改

---
 web/src/views/modules/taskReliability/RBD-edit-img.vue      |    2 
 web/src/views/modules/taskReliability/ModelView.vue         |  292 +++-------------------------------------------------------
 web/src/views/modules/taskReliability/OperatConditModel.vue |    2 
 3 files changed, 17 insertions(+), 279 deletions(-)

diff --git a/web/src/views/modules/taskReliability/ModelView.vue b/web/src/views/modules/taskReliability/ModelView.vue
index 240ace5..74cbe9c 100644
--- a/web/src/views/modules/taskReliability/ModelView.vue
+++ b/web/src/views/modules/taskReliability/ModelView.vue
@@ -59,6 +59,7 @@
     },
     data() {
       return {
+        isInitialization:false,
         nodeX: '',
         nodeY: '',
         isFirstLoad: true,
@@ -276,7 +277,14 @@
         this.modelName = row.title
         this.dataForm.id = row.id
         this.collapseTransition = row.collapseTransition
-        this.clearDiagram()
+        // this.clearDiagram()
+        // if(!this.isInitialization){
+        //   this.initDigram()
+        // }
+        // setTimeout(()=>{
+        //   console.log(this.graph,'this.graph this.graph')
+        //   this.getDiagram(this.dataForm.id)
+        // },0)
         this.initDigram()
         console.log(this.dataForm, 'init(row){')
       },
@@ -299,12 +307,15 @@
 
           this.diagramJson = JSON.parse(this.dataForm.content)
           this.graph.fromJSON(this.diagramJson)
+          console.log(this.diagramJson, 'this.diagramJson')
           this.isFirstLoad = false;
           console.log(this.diagramJson.cells.length, 'this.diagramJson.cells.length')
 
           // this.graph.positionContent('left')
-          this.graph.positionContent('left', {padding: {left: 0}})
           // this.graph.centerContent()
+          this.graph.positionContent('left', {padding: {left: 0}})
+          this.graph.freeze()
+
           // this.graph.zoomToFit()
         } /*else {
           this.graph.fromJSON(this.RBDDefault)
@@ -320,8 +331,6 @@
       },
       async initDigram() {
         this.timer = setHartBeat(10, 240);
-        console.log(document.documentElement.clientWidth, 'document.documentElement.clientWidth')
-        console.log(document.documentElement.clientHeight, 'document.documentElement.clientHeight')
         this.graph = new Graph({
           container: document.getElementById('containerImg'),
           width: document.documentElement.clientWidth,
@@ -331,285 +340,16 @@
             visible: true,
           },
           autoResize: true,
-          history: {
+          panning: {
             enabled: true,
-            beforeAddCommand(event, args) {
-              if (args.key === 'tools') {
-                // console.log(args.key, 'event, args')
-                return false
-              }
-            },
           },
           // scroller: {
           //   enabled: true,
-          //   pageVisible: true,
-          //   autoResize: true,
-          //   pageBreak: true,
           //   pannable: true,
-          //   minVisibleWidth: 200,
-          //   minVisibleHeight: 200,
-          //   modifiers: 'shift',
+          //   autoResize: false,
           // },
-          connecting: {
-            router: {
-              name: 'manhattan',
-            },
-            connector: {
-              name: 'rounded',
-              args: {
-                radius: 5,
-              },
-            },
-            anchor: 'center',
-            connectionPoint: 'anchor',
-            allowBlank: false,
-            allowLoop: false, // 鏄惁鍏佽鍒涘缓寰幆杩炵嚎锛屽嵆杈圭殑璧峰鑺傜偣鍜岀粓姝㈣妭鐐逛负鍚屼竴鑺傜偣锛岄粯璁や负 true
-            snap: {
-              radius: 20,
-            },
-            createEdge() {
-              return new Shape.Edge({
-                attrs: {
-                  line: {
-                    //  sourceMarker: 'block', // 瀹炲績绠ご
-                    stroke: '#A2B1C3',
-                    strokeWidth: 2,
-                    targetMarker: null
-                  }
-                },
-                labels: [{
-                  attrs: {
-                    body: {
-                      stroke: '#5F95FF',
-                    },
-                    text: {
-                      text: ''
-                    }
-                  },
-                  position: {
-                    distance: 0.5,
-                    angle: 180,
-                    options: {
-                      keepGradient: true,
-                      ensureLegibility: true
-                    }
-                  }
-                }],
-                tools: {
-                  name: 'segments',
-                  args: {
-                    attrs: {fill: '#666'},
-                  },
-                },
-                zIndex: -100,
-              })
-            },
-            validateConnection({targetMagnet}) {
-              return !!targetMagnet
-            },
-          },
-          highlighting: {
-            magnetAdsorbed: {
-              name: 'stroke',
-              args: {
-                attrs: {
-                  fill: '#5F95FF',
-                  stroke: '#5F95FF',
-                },
-              },
-            },
-          },
-          resizing: true,
-          rotating: true,
-          // selecting: {
-          //   enabled: true,
-          //   rubberband: true,
-          //   rubberEdge: true,
-          //   showNodeSelectionBox: true,
-          // },
-          snapline: true,
-          keyboard: true,
-          clipboard: true,
         })
-        this.graph.centerContent()
-        this.graph.bindKey(['meta+c', 'ctrl+c'], () => {
-          const cells = this.graph.getSelectedCells()
-          if (cells.length) {
-            this.graph.copy(cells)
-          }
-          return false
-        })
-
-        this.graph.bindKey(['meta+x', 'ctrl+x'], () => {
-          const cells = this.graph.getSelectedCells()
-          if (cells.length) {
-            this.graph.cut(cells)
-          }
-          return false
-        })
-        this.graph.bindKey(['meta+v', 'ctrl+v'], () => {
-          if (!this.graph.isClipboardEmpty()) {
-            const cells = this.graph.paste({offset: 32})
-            this.graph.cleanSelection()
-            this.graph.select(cells)
-          }
-          return false
-        })
-// select all
-        this.graph.bindKey(['meta+a', 'ctrl+a'], () => {
-          const nodes = this.graph.getNodes()
-          if (nodes) {
-            this.graph.select(nodes)
-          }
-        })
-//delete
-        this.graph.bindKey('delete', () => {
-          this.deleteCompment()
-        })
-// zoom
-        this.graph.bindKey(['ctrl+1', 'meta+1'], () => {
-          const zoom = this.graph.zoom()
-          if (zoom < 1.5) {
-            this.graph.zoom(0.1)
-          }
-        })
-
-        this.graph.bindKey(['ctrl+2', 'meta+2'], () => {
-          const zoom = this.graph.zoom()
-          if (zoom > 0.5) {
-            this.graph.zoom(-0.1)
-          }
-        })
-
-        this.graph.on('blank:click', ({cell}) => {
-          this.type = 'grid'
-
-        })
-        // 鐩戝惉鑺傜偣娣诲姞浜嬩欢
-        this.graph.on('node:added', ({node}) => {
-          if (this.isFirstLoad) {
-            return
-          }
-          if (node.getData().isSelfCreated) {
-            return
-          }
-          const nodeType = node.getData().nodeType; // 鑾峰彇鑺傜偣鐨勭被鍨�
-          const nodeObj = node
-          console.log(123)
-          let intersectNode = this.findIntersectsNode(node)
-          if (intersectNode) { // 褰撴湁鑺傜偣鐩镐氦 ==>骞惰
-            this.addBranch(intersectNode, nodeObj)
-            return
-          } else {
-            let isSelfCreated = null
-            try {
-              isSelfCreated = node.getData().isSelfCreated
-            } catch (e) {
-            }
-            if (!isSelfCreated) {
-              let intersectEdge = this.findIntersectsEdge(this.graph, node)
-              if (intersectEdge) { // 褰撴湁杈圭浉浜� ==>涓茶仈
-                this.addNodeAndInsertEdge(intersectEdge, nodeObj)
-                return
-              } else {
-                //鎻愮ず
-              }
-            }
-          }
-          node.remove()
-        });
-        this.graph.on('cell:contextmenu', ({cell}) => {
-          // this.type.value = cell.isNode() ? "node" : "edge"
-          this.type = cell.isNode() ? 'node' : 'edge'
-          /*          this.shape = cell.shape
-                    this.id = cell.id*/
-          if (this.type === 'node') {
-            //this.nodeType = cell.getData().nodeType
-            this.$refs.configNode.loadData(cell)
-          } else {
-            this.$refs.configNode.loadData(cell)
-          }
-        })
-        //鍗曞嚮杈硅妭鐐�
-        this.graph.on('edge:click', ({edge}) => {
-        })
-
-        // 鎺у埗杩炴帴妗╂樉绀�/闅愯棌
-        this.graph.on('node:delete', ({view, e}) => {
-          e.stopPropagation()
-          view.cell.remove()
-        })
-
-        this.graph.on('node:customevent', ({name, view, e}) => {
-          if (name === 'node:delete') {
-            e.stopPropagation()
-            view.cell.remove()
-          }
-        })
-        // 鍙屽嚮缂栬緫
-        this.graph.on('cell:dblclick', ({cell, e}) => {
-          const isNode = cell.isNode()
-          const name = cell.isNode() ? 'node-editor' : 'edge-editor'
-          cell.removeTool(name)
-          cell.addTools({
-            name,
-            args: {
-              event: e,
-              attrs: {
-                backgroundColor: isNode ? '#EFF4FF' : '#FFF',
-                text: {
-                  fontSize: 16,
-                  fill: '#262626',
-                },
-              },
-            },
-          })
-        })
-
-        this.graph.on('node:mouseenter', ({node}) => {
-          const container = document.getElementById('containerImg')
-          const ports = container.querySelectorAll(
-            '.x6-port-body',
-          )
-          this.showPorts(ports, true)
-        })
-
-        this.graph.on('node:mouseleave', ({node}) => {
-          // if (node.hasTool('button-remove')) {
-          //   node.removeTool('button-remove')
-          // }
-          const container = document.getElementById('containerImg')
-          const ports = container.querySelectorAll(
-            '.x6-port-body',
-          )
-          this.showPorts(ports, false)
-        })
-
-        this.graph.on('edge:mouseenter', ({cell}) => {
-          // alert(123)
-          cell.addTools([
-            {
-              name: 'source-arrowhead',
-            },
-            {
-              name: 'target-arrowhead',
-              args: {
-                attrs: {
-                  fill: 'red',
-                },
-              },
-            },
-            {
-              name: 'segments',
-              args: {snapRadius: 20, attrs: {fill: '#444'}}
-            },
-          ])
-        })
-
-        this.graph.on('edge:mouseleave', ({cell}) => {
-          cell.removeTools()
-        })
-
+        this.isInitialization = true
         await this.getDiagram(this.dataForm.id)
       },
       showPorts(ports, show) {
diff --git a/web/src/views/modules/taskReliability/OperatConditModel.vue b/web/src/views/modules/taskReliability/OperatConditModel.vue
index ab8ec8a..81f7506 100644
--- a/web/src/views/modules/taskReliability/OperatConditModel.vue
+++ b/web/src/views/modules/taskReliability/OperatConditModel.vue
@@ -151,8 +151,6 @@
           title:row.modelName + '妯″瀷璁捐'
         }
         this.$emit('collapseTransitionChange', param)
-
-
       }
     }
   }
diff --git a/web/src/views/modules/taskReliability/RBD-edit-img.vue b/web/src/views/modules/taskReliability/RBD-edit-img.vue
index 93c984d..e721bd1 100644
--- a/web/src/views/modules/taskReliability/RBD-edit-img.vue
+++ b/web/src/views/modules/taskReliability/RBD-edit-img.vue
@@ -935,7 +935,7 @@
               for (let i = 1; i <= node.getData().basicUnitNum; i++) {
                 if (deviceNoArr.findIndex(item => item === i) === -1) {
                   no = i
-                  if (node.getData().basicUnitNum > 1) {
+                  if (node.getData().basicUnitNum >= 1) {
                     node.getData().deviceNo = i
                     node.attr('text/text', node.attr('text/text') + '-' + i)
                   }

--
Gitblit v1.9.1