diff --git a/src/resources/assets/languages/message/en.json b/src/resources/assets/languages/message/en.json index 6a19f22db70b84be89493e90040f504e5420f3b0..c45742c61a814f08dbf8b5a9ed0b8ae1557eb95e 100644 --- a/src/resources/assets/languages/message/en.json +++ b/src/resources/assets/languages/message/en.json @@ -95,7 +95,6 @@ "cannotnodelist": "Failed to obtain node list data!", "notsaveflow": "The flow has not been saved yet!", "notinitdata": "Initialization failed to obtain data!", - "timernodenobacklink": "The timer node cannot be connected to the backlink!", "timerhasonelink": "The timer node can only have one line connected!", "nodeorphaned": "Node is orphaned", "nodenofrontnode": "Node has no front node", @@ -111,7 +110,9 @@ "batchjobpolicytip": "Loop through list data to create multiple jobs", "jobpolicycolumn": "Loop through list data and merge into an array", "eoahasonelink": "Approval nodes can only have one line connected!", - "eoanodenobacklink": "Approval nodes can only be rolled back to one node" + "eoanodenobacklink": "Approval nodes can only be rolled back to one node", + "eoalinkouttip": "At most, the approval node can only be connected by two lines", + "nodenobacklink": "Cannot connect fallback line" }, "autoexec": { "savedeadlinenolimit": "No setting means unlimited storage period", diff --git a/src/resources/assets/languages/message/zh.json b/src/resources/assets/languages/message/zh.json index 46e13dd2803a4bdbc9c22d50015c3eb6213815ad..24d18382e6b4cb6d55ac04dc3231ce9e6c3ebbc0 100644 --- a/src/resources/assets/languages/message/zh.json +++ b/src/resources/assets/languages/message/zh.json @@ -95,7 +95,6 @@ "cannotnodelist": "节点列表数据获取失败!", "notsaveflow": "该流程还未保存!", "notinitdata": "初始化获取数据失败!", - "timernodenobacklink": "定时节点不能连回退线!", "timerhasonelink": "定时节点只能有一根线连出!", "nodeorphaned": "节点被孤立", "nodenofrontnode": "节点没有前置节点", @@ -111,7 +110,9 @@ "batchjobpolicytip": "循环遍历列表数据,创建多个作业", "jobpolicycolumn": "循环遍历列表数据,合并为数组", "eoahasonelink": "审批节点只能有一根线连出!", - "eoanodenobacklink": "审批节点只能回退到一个节点" + "eoanodenobacklink": "审批节点只能回退到一个节点", + "eoalinkouttip": "审批节点至多只有两条线连出", + "nodenobacklink": "不能连回退线" }, "autoexec": { "savedeadlinenolimit": "不设置代表保存期限不限制", diff --git a/src/views/pages/process/flow/topoComponent/topo.node.condition.js b/src/views/pages/process/flow/topoComponent/topo.node.condition.js index 15ba3ebbabda5f59e04ff9576b7d85717a629fdf..cd25de5241bba99b7e3b9eee1eac0007ec1a7df3 100644 --- a/src/views/pages/process/flow/topoComponent/topo.node.condition.js +++ b/src/views/pages/process/flow/topoComponent/topo.node.condition.js @@ -18,17 +18,8 @@ import Vue from 'vue'; const prevNodeList = targetNode.getAllNextNodes('forward'); const set = new Set(prevNodeList); if (set.has(this)) { //如果当前节点已经是目标节点的后置节点,则要用回退线 - //判断是否有连线 - const backwardSet = new Set(this.getNextNodes('backward')); - if (!backwardSet.has(targetNode) && targetNode.isAllowConnected(this)) { - this.canvas.addLink({ - type: 'backward', - source: this.getUuid(), - sAnchor: sourceAnchor, - target: targetNode.getUuid(), - tAnchor: targetAnchor - }); - } + //条件节点不能连回退线 + ViewUI.Message.warning({ content: $t('message.process.nodenobacklink'), duration: 3, closable: true }); } else { //判断是否有连线 const forwardSet = new Set(this.getNextNodes('forward')); diff --git a/src/views/pages/process/flow/topoComponent/topo.node.converge.js b/src/views/pages/process/flow/topoComponent/topo.node.converge.js index 27f1eccf82d0720d5ae132f1527939a40d200c7a..52b6cf5254ff4bbea3e17d3e76824f7f91740108 100644 --- a/src/views/pages/process/flow/topoComponent/topo.node.converge.js +++ b/src/views/pages/process/flow/topoComponent/topo.node.converge.js @@ -1,4 +1,5 @@ -import {$t} from '@/resources/init.js'; +import ViewUI from 'neatlogic-ui/iview/index.js'; +import { $t } from '@/resources/init.js'; (function(global, factory) { factory((global.Converge = global.Converge || {}), global); }(window, function(exports, global) { @@ -18,17 +19,8 @@ import {$t} from '@/resources/init.js'; const prevNodeList = targetNode.getAllNextNodes('forward'); const set = new Set(prevNodeList); if (set.has(this)) { //如果当前节点已经是目标节点的后置节点,则要用回退线 - //判断是否有连线 - const backwardSet = new Set(this.getNextNodes('backward')); - if (!backwardSet.has(targetNode) && targetNode.isAllowConnected(this)) { - this.canvas.addLink({ - type: 'backward', - source: this.getUuid(), - sAnchor: sourceAnchor, - target: targetNode.getUuid(), - tAnchor: targetAnchor - }); - } + //分流节点不能连回退线 + ViewUI.Message.warning({ content: $t('message.process.nodenobacklink'), duration: 3, closable: true }); } else { //判断是否有连线 const forwardSet = new Set(this.getNextNodes('forward')); diff --git a/src/views/pages/process/flow/topoComponent/topo.node.process.js b/src/views/pages/process/flow/topoComponent/topo.node.process.js index 4d4f124c731423fa35a78691e17f512929c94d0e..88109422d63f7cb23cb13d30fb40c968c4fcdec0 100644 --- a/src/views/pages/process/flow/topoComponent/topo.node.process.js +++ b/src/views/pages/process/flow/topoComponent/topo.node.process.js @@ -14,8 +14,8 @@ import {$t} from '@/resources/init.js'; isAllowConnected(sourceNode) { const nodeList = this.getNextNodes('forward'); let find = nodeList.find(item => item.getUuid() == sourceNode.getConfig().uuid); - if (this.__config.handler == 'timer' && (find || sourceNode.getType() == 'end')) { //定时节点不能连回退线 - ViewUI.Message.warning({ content: $t('message.process.timernodenobacklink'), duration: 3, closable: true }); + if (this.__config.handler == 'timer' && (find || sourceNode.getType() == 'end')) { //回退线不能指向定时节点 + ViewUI.Message.warning({ content: $t('message.process.nodenobacklink'), duration: 3, closable: true }); return false; } return true; @@ -30,20 +30,16 @@ import {$t} from '@/resources/init.js'; if (set.has(this)) { //如果当前节点已经是目标节点的后置节点,则要用回退线 //判断是否有连线 if (sourceNode.getConfig().handler == 'timer') { //定时节点不能连回退线 - ViewUI.Message.warning({ content: $t('message.process.timernodenobacklink'), duration: 3, closable: true }); + ViewUI.Message.warning({ content: $t('message.process.nodenobacklink'), duration: 3, closable: true }); return false; } else if (sourceNode.getConfig().handler == 'eoa') { - if (this.getNextNodes('backward') && this.getNextNodes('backward').length > 0) { - ViewUI.Message.warning({ content: $t('message.process.eoanodenobacklink'), duration: 3, closable: true }); + if (this.getNextNodes('backward') && this.getNextNodes('backward').length > 0 || (this.getNextNodes('forward') && this.getNextNodes('forward').length > 1)) { + ViewUI.Message.warning({ content: $t('message.process.eoalinkouttip'), duration: 3, closable: true }); return false; } } const backwardSet = new Set(this.getNextNodes('backward')); if (!backwardSet.has(targetNode) && targetNode.isAllowConnected(this)) { - if (targetNode.getConfig().handler == 'timer') { - ViewUI.Message.warning({ content: $t('message.process.timernodenobacklink'), duration: 3, closable: true }); - return false; - } this.canvas.addLink({ type: 'backward', source: this.getUuid(), @@ -62,8 +58,10 @@ import {$t} from '@/resources/init.js'; ViewUI.Message.warning({ content: $t('message.process.timerhasonelink'), duration: 3, closable: true }); return false; } else if (sourceNode.getConfig().handler == 'eoa') { - ViewUI.Message.warning({ content: $t('message.process.eoahasonelink'), duration: 3, closable: true }); - return false; + if ((this.getNextNodes('forward') && this.getNextNodes('backward').length > 0) || this.getNextNodes('forward').length > 1) { + ViewUI.Message.warning({ content: $t('message.process.eoalinkouttip'), duration: 3, closable: true }); + return false; + } } } this.canvas.addLink({ diff --git a/src/views/pages/process/flow/topoComponent/topo.node.timer.js b/src/views/pages/process/flow/topoComponent/topo.node.timer.js index 9061ddbf839287e77fb19a63a4bcf84ebae0c273..8ff1f834f13ef1fdda1a6b1ed2c2e73858c0aea7 100644 --- a/src/views/pages/process/flow/topoComponent/topo.node.timer.js +++ b/src/views/pages/process/flow/topoComponent/topo.node.timer.js @@ -15,7 +15,7 @@ import {$t} from '@/resources/init.js'; const nodeList = this.getNextNodes('forward'); let find = nodeList.find(item => item.getUuid() == sourceNode.getConfig().uuid); if (find || sourceNode.getType() == 'end') { //不能连回退线 - ViewUI.Message.warning({ content: $t('message.process.timernodenobacklink'), duration: 3, closable: true }); + ViewUI.Message.warning({ content: $t('message.process.nodenobacklink'), duration: 3, closable: true }); return false; } return true;