From 76cdda8f731c4aa7d8ae0216d29f1c362dc53125 Mon Sep 17 00:00:00 2001
From: wente <329538422@qq.com>
Date: 星期五, 22 三月 2024 14:12:03 +0800
Subject: [PATCH] 表决判定

---
 web/src/views/modules/taskReliability/RBD-edit-img.vue |   59 +++++++++++++++++++++++++++++++++++++++++------------------
 1 files changed, 41 insertions(+), 18 deletions(-)

diff --git a/web/src/views/modules/taskReliability/RBD-edit-img.vue b/web/src/views/modules/taskReliability/RBD-edit-img.vue
index ac65af8..3d2640f 100644
--- a/web/src/views/modules/taskReliability/RBD-edit-img.vue
+++ b/web/src/views/modules/taskReliability/RBD-edit-img.vue
@@ -3,7 +3,7 @@
     <el-row :gutter="[8,8]">
       <el-col :span="4">
         <div :style="'height:' +left_p+'px'">
-          <div class="fa-card-a" style="height: 100%">
+          <div  style="height: 100%">
             <div id="stencilImg"></div>
           </div>
         </div>
@@ -184,7 +184,8 @@
         id: '',
         graph: null,
         globalGridAttr: {
-          voteNum: '',
+          productType:'',
+          voteNum: null,
           repairMttcr: '',
           repairMttcrOther: '',
           repairDistribType: '',
@@ -346,8 +347,9 @@
           // console.log(this.dataForm.content,'this.Diagram content')
           console.log(this.diagramJson, 'this.Diagram json')
           this.graph.fromJSON(this.diagramJson)
-          this.graph.centerContent()
-          this.graph.zoomToFit()
+          this.graph.positionContent('left')
+          // this.graph.centerContent()
+          // this.graph.zoomToFit()
         } else {
           await this.clearDiagram()
         }
@@ -356,8 +358,8 @@
         this.dataForm.id = null
         // this.graph.fromJSON(this.emptyJson)
         this.graph.fromJSON('')
-        this.graph.centerContent()
-        this.graph.zoomToFit()
+        // this.graph.centerContent()
+        // this.graph.zoomToFit()
         // this.graph.freeze()
       },
       async initDigram(productId) {
@@ -375,9 +377,12 @@
           autoResize: true,
             history: {
                 enabled: true,
-                ignoreAdd: true,
-                ignoreRemove: true,
-                ignoreChange: true,
+                beforeAddCommand(event, args) {
+                    if (args.key==='tools') {
+                        console.log(args.key,'event, args')
+                        return false
+                    }
+                },
             },
           // panning: {
           //   enabled: true,
@@ -449,7 +454,7 @@
                   }
                 }],
                 tools: {
-                  name: 'vertices',
+                  name: 'segments',
                   args: {
                     attrs: { fill: '#666' },
                   },
@@ -489,6 +494,7 @@
         })
         this.graph.centerContent()
         const stencil = new Addon.Stencil({
+          getDragNode: (node) => node.clone({ keepId: true }),
           getDropNode(node) {
             let {width, height} = node.size()
             if (node.getData().imgWidth) {
@@ -497,9 +503,11 @@
             if (node.getData().imgHeight) {
               height = node.getData().imgHeight
             }
-            console.log(node.getData().imgWidth, node.getData().imgHeight, 'node.size()')
-            return node.clone().size(width, height)
+            return node.clone({ keepId: true }).size(width, height)
           },
+            validateNode(node){
+              console.log(node.id)
+            },
           title: '',
           target: this.graph,
             stencilGraphWidth: 200,
@@ -537,7 +545,7 @@
               dataId: '',
               nodeType: item.nodeType,
               nodeTypeExt: '',
-              voteNum:''
+              voteNum:null
             },
             attrs: {
               text: {
@@ -568,6 +576,7 @@
             imageUrl: `${window.SITE_CONFIG['apiURL']}/sysPictureBase/getProductImg?token=${Cookies.get('token')}&id=${item.imgPath}`,
             width: 60,
             height: 60,
+            id: item.dataId, // 鎵嬪姩璁剧疆鑺傜偣鐨� ID
             data: {
               isRepair: item.isRepair,
               dataId: item.dataId,
@@ -583,7 +592,7 @@
               taskMtbcfOther: item.taskMtbcfOther,
               imgHeight: item.imgHeight,
               imgWidth: item.imgWidth,
-              voteNum:'',
+              voteNum:null,
             },
             attrs: {
               text: {
@@ -723,7 +732,7 @@
           this.id = cell.id
           if (this.type === 'node') {
             this.nodeType = cell.getData().nodeType
-            console.log(this.nodeType, 'this.nodeType')
+            console.log(this.nodeType,cell.id,'this.nodeType')
           }
           console.log(this.shape, 'this.shape')
           // this.nodeOpt(this.id, this.globalGridAttr)
@@ -806,9 +815,23 @@
 
         this.graph.on('edge:mouseenter', ({cell}) => {
           // alert(123)
-          cell.addTools(
-              ['vertices', 'segments']
-          )
+          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}) => {

--
Gitblit v1.9.1