From e48a56c2171f023f1978b0b6aec9befd43e7a9dc Mon Sep 17 00:00:00 2001
From: xyc <jc_xiong@hotmail.com>
Date: 星期一, 04 十一月 2024 08:45:22 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'
---
web/src/views/modules/taskReliability/TimeDiagram.vue | 241 +++++------------------------------------------
1 files changed, 29 insertions(+), 212 deletions(-)
diff --git a/web/src/views/modules/taskReliability/TimeDiagram.vue b/web/src/views/modules/taskReliability/TimeDiagram.vue
index 0d654f8..15c0973 100644
--- a/web/src/views/modules/taskReliability/TimeDiagram.vue
+++ b/web/src/views/modules/taskReliability/TimeDiagram.vue
@@ -13,18 +13,25 @@
<zt-select v-model="dataForm.id" :datas="simulatList" @change="onSimulatSelected"/>
</zt-form-item>
<zt-form-item label="鏃堕棿鍒嗙墖" prop="samplPeriod">
- <el-input v-model="dataForm.samplPeriod" readonly="false">
+ <el-input v-model="dataForm.samplPeriod" readonly="false" style="width: 150px;vertical-align: baseline;">
<template slot="append">鍒嗛挓</template>
</el-input>
</zt-form-item>
<zt-form-item label="浠跨湡娆℃暟" prop="simulatFrequency">
- <el-input v-model="dataForm.simulatFrequency" readonly="false">
+ <el-input v-model="dataForm.simulatFrequency" readonly="false" style="width: 150px;">
</el-input>
</zt-form-item>
<zt-form-item>
<zt-button @click="getDiagram(null)">鏌ョ湅鏃跺簭鍥�</zt-button>
-<!-- <zt-button @click="graphRightTranslate()">鐢诲竷鍙崇Щ</zt-button>-->
-<!-- <zt-button @click="graphLeftTranslate()">鐢诲竷宸︾Щ</zt-button>-->
+ <el-dropdown style="margin-left: 10px" @command="download">
+ <el-button type="primary">
+ 涓嬭浇xml<i class="el-icon-arrow-down el-icon--right"></i>
+ </el-button>
+ <el-dropdown-menu slot="dropdown">
+ <el-dropdown-item command="1">杈撳叆xml</el-dropdown-item>
+ <el-dropdown-item command="2">杈撳嚭xml</el-dropdown-item>
+ </el-dropdown-menu>
+ </el-dropdown>
</zt-form-item>
</el-form>
<div style="display: flex">
@@ -61,6 +68,8 @@
import ModelView from "./ModelView";
import textDiagram from "./textDiagram";
import timeDiagramThumbnail from "./timeDiagramThumbnail"
+ import qs from "qs";
+ import Cookies from "js-cookie";
export default {
@@ -141,7 +150,6 @@
window.removeEventListener('scroll', this.handleScroll,true);
},
mounted() {
- // alert(`mounted鎵ц浜哷)
this.getProductList()
this.init()
this.$refs.textDiagram.init()
@@ -158,7 +166,6 @@
handleScroll(){
this.graph.getScrollbarPosition()
let left = this.graph.getScrollbarPosition().left
- console.log(left,'left left')
let top = this.graph.getScrollbarPosition().top
this.$refs.textDiagram.setScroll(top)
this.$refs.timeDiagramThumbnail.getNodePointX(left,this.bigWidth)
@@ -205,20 +212,6 @@
minVisibleHeight:300,
pannable: true,
},
- // minimap: {
- // enabled: true,
- // container: document.getElementById('thumbnail'),
- // scalable:false,
- // width: document.documentElement.clientWidth - 400,
- // height: 150,
- // },
- // mousewheel: {
- // enabled: true,
- // zoomAtMousePosition: true,
- // modifiers: 'ctrl',
- // minScale: 0.1,
- // maxScale: 10,
- // },
createEdge() {
return new Shape.Edge({
data: {
@@ -277,169 +270,12 @@
textVerticalAnchor: 'middle',
textWrap: {
text: '鏂囧瓧妯℃澘',
- width: -10, // 瀹藉害鍑忓皯 10px
+ width: 120, // 瀹藉害鍑忓皯 10px
ellipsis: false, // 鏂囨湰瓒呭嚭鏄剧ず鑼冨洿鏃讹紝鑷姩娣诲姞鐪佺暐鍙�
breakWord: true, // 鏄惁鎴柇鍗曡瘝
}
},
},
- ports: {...this.ports},
- },
- true,
- )
-
- Graph.registerNode(
- 'custom-polygon',
- {
- inherit: 'polygon',
- width: 86,
- height: 56,
- attrs: {
- body: {
- strokeWidth: 1,
- stroke: '#5F95FF',
- fill: '#EFF4FF',
- },
- text: {
- fontSize: 20,
- fill: '#262626',
- },
- },
- ports: {
- ...this.ports
- // items: [
- // {
- // group: 'top',
- // },
- // {
- // group: 'bottom',
- // },
- // ],
- },
- },
- true,
- )
- //
- Graph.registerNode(
- 'custom-circle',
- {
- inherit: 'ellipse',
- width: 120,
- height: 120,
- data: {
- dataId: '',
- finishDate: ''
- },
- attrs: {
- body: {
- strokeWidth: 1,
- stroke: '#5F95FF',
- fill: '#EFF4FF',
- },
- //鏃ユ湡
- title: {
- text: '',
- fontSize: 12,
- fill: '#262626',
- refX: 0.5,
- refY: '100%',
- refY2: -10,
- textAnchor: 'middle',
- textVerticalAnchor: 'bottom',
- },
- // 鍚嶇О
- text: {
- // fontFamily: '浠垮畫',
- fontSize: 20,
- fill: '#262626',
- textWrap: {
- width: 80, // 瀹藉害涓� 80px鎹㈣
- ellipsis: false, // 鏂囨湰瓒呭嚭鏄剧ず鑼冨洿鏃讹紝鑷姩娣诲姞鐪佺暐鍙�
- breakWord: true, // 鏄惁鎴柇鍗曡瘝
- }
- },
- },
- markup: [
- {
- tagName: 'ellipse',
- selector: 'body',
- },
- {
- tagName: 'text',
- selector: 'title',
- },
- {
- tagName: 'text',
- selector: 'text',
- },
- ],
- ports: {...this.ports},
- },
- true,
- )
- Graph.registerNode(
- 'custom-circle1',
- {
- inherit: 'ellipse',
- width: 65,
- height: 65,
- data: {
- dataId: '',
- finishDate: ''
- },
- attrs: {
- body: {
- strokeWidth: 1,
- stroke: '#5F95FF',
- fill: '#EFF4FF',
- },
- //鏃ユ湡
- text: {
- // fontFamily: '浠垮畫',
- fontSize: 12,
- text: '鏃ユ湡鑺傜偣',
- fill: '#262626',
- },
- },
- ports: {...this.ports},
- },
- true,
- )
- Graph.registerNode(
- 'custom-text',
- {
- inherit: 'text-block',
- width: 86,
- height: 56,
- attrs: {
- body: {
- strokeWidth: 1,
- stroke: '#5F95FF',
- fill: '#EFF4FF',
- },
- text: {
- text: '涓撲笟',
- fontSize: 20,
- style: {
- color: this.globalGridAttr.nodeColor
- },
- refX: '0',
- refY: -0.5,
- refY2: 1,
- textAnchor: 'middle',
- textVerticalAnchor: 'middle',
- },
- },
- markup: [
- {
- tagName: 'rect',
- selector: 'body',
- },
- {
- tagName: 'text',
- selector: 'text',
- },
- ],
ports: {...this.ports},
},
true,
@@ -460,34 +296,12 @@
})
this.graph.on('blank:click', ({cell}) => {
- // this.reset()
- // this.type.value = "grid"
this.type = 'grid'
- // this.id = cell.id
})
- this.graph.on('translate', ({ tx, ty }) => {
- console.log(`褰撳墠鍋忕Щ閲忎綅缃�: x=${tx}, y=${ty}`);
- });
this.graph.on('cell:click', ({cell}) => {
- // this.type.value = cell.isNode() ? "node" : "edge"
this.type = cell.isNode() ? 'node' : 'edge'
this.shape = cell.shape
this.id = cell.id
- console.log(this.shape, 'this.shape')
- // this.nodeOpt(this.id, this.globalGridAttr)
- })
- //鍗曞嚮杈硅妭鐐�
- this.graph.on('edge:click', ({edge}) => {
- // this.reset()
- edge.attr('line/stroke', '#5F95FF')
- edge.prop('labels/0', {
- attrs: {
- body: {
- stroke: '#5F95FF',
- },
- },
-
- })
})
// 鍗曞嚮node鑺傜偣
this.graph.on('node:click', ({node}) => {
@@ -617,14 +431,9 @@
this.diagramJson = JSON.parse(res.data.diagramJson)
let textDiagramJson = JSON.parse(res.data.textDiagramJson)
let smallDiagramJson = JSON.parse(res.data.smallDiagramJson)
- console.log(this.diagramJson, 'this.Diagram json')
- console.log(smallDiagramJson, 'smallDiagramJson')
this.graph.fromJSON(this.diagramJson)
- // this.graph.centerContent()
this.graph.positionContent('left',{ padding: { left: 0 }})
- // this.graph.zoomToFit()
this.bigWidth = this.graph.getContentBBox().width
- console.log(this.bigWidth,'getContentBBox')
// this.graph.resize(this.graph.getContentBBox().width,this.graph.getContentBBox().height)
this.graph.freeze()
this.$refs.textDiagram.getTextDiagram(textDiagramJson)
@@ -640,14 +449,22 @@
},
getPoint(x,smallWidth){
let pointX = Number((x * (this.bigWidth / smallWidth )).toFixed(0))
- // console.log(pointX)
this.graph.setScrollbarPosition(pointX, null)
- // if(pointX<600){
- // this.graph.setScrollbarPosition(pointX, null, { animation: { duration: 400 }})
- // }else {
- // this.graph.scrollToPoint(pointX, null, {animation: {duration: 400}})
- // }
- }
+ },
+ async download(selsect) {
+ if(this.dataForm.id){
+ let param = qs.stringify({
+ 'token': Cookies.get('token'),
+ type: 'sxt',
+ xml:selsect,
+ id: this.dataForm.id
+ })
+ let apiURL = `/taskReliability/SimulatAssess/downloadXml`
+ window.location.href = `${window.SITE_CONFIG['apiURL']}${apiURL}?${param}`
+ }else{
+ this.$alert('杩樻湭閫夋嫨浠跨湡璁板綍')
+ }
+ },
}
}
</script>
--
Gitblit v1.9.1