diff --git a/src/assets/imgs/bg_tiaojian_hov.svg b/src/assets/imgs/bg_tiaojian_hov.svg new file mode 100644 index 0000000000000000000000000000000000000000..69cadafd87cfac67eac3816ddcfce603ee74943a --- /dev/null +++ b/src/assets/imgs/bg_tiaojian_hov.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + diff --git a/src/assets/imgs/bg_tiaojian_nor.svg b/src/assets/imgs/bg_tiaojian_nor.svg new file mode 100644 index 0000000000000000000000000000000000000000..a1ace51b6ae442b713392c97481f840f8c977db5 --- /dev/null +++ b/src/assets/imgs/bg_tiaojian_nor.svg @@ -0,0 +1,14 @@ + + + + + + diff --git a/src/components/svgIcon.vue b/src/components/svgIcon.vue index 264dca2794c5695db21d7d74deaf995de0b9d5f0..655d3d367ab764a3e25d06c2de779564b8c8760d 100644 --- a/src/components/svgIcon.vue +++ b/src/components/svgIcon.vue @@ -1,43 +1,43 @@ \ No newline at end of file diff --git a/src/components/work-flow/super-flow.vue b/src/components/work-flow/super-flow.vue index 71d77fc5ffa2da3d4b4785b441a979f182e1439c..58cf256843049e3cc4679025ce663e71db92fdae 100644 --- a/src/components/work-flow/super-flow.vue +++ b/src/components/work-flow/super-flow.vue @@ -14,14 +14,46 @@

节点类型

请拖拽添加到流程中

-
- {{item.label}} +
+
+
+ +
+
{{ item.label }}
+
+
+ +
+

+ 每个流程必须有一个开始节点。 +

+

+ 每个流程必须有一个结束节点。 +

+

+ 在开始节点和结束节点中间可连接多个普通节点。 +

+

+ 使用条件节点可以触发分支流程。未配置条件节点的分支流程将默认触发,配置了条件节点的分支,可根据条件节点名称选择触发或不触发该分支。 +

+
+ +
+
@@ -39,46 +71,92 @@ > -
+

操作

- +

常规设置

- +

插件设置

- +

接口插件

- +

流程服务

- +

超时管理

-
+

已选插件

- + 接口插件

- + 流程服务

- +
+
+

操作

+
+ +

常规设置

+
+

节点编号:

-

{{ nodeParams(nodeItem.id).node_code && nodeParams(nodeItem.id).node_code != "" ? nodeParams(nodeItem.id).node_code : "暂无(保存后将自动生成节点编号)" }}

+

+ {{ + nodeParams(nodeItem.id).node_code && + nodeParams(nodeItem.id).node_code != "" + ? nodeParams(nodeItem.id).node_code + : "暂无(保存后将自动生成节点编号)" + }} +

节点名称:

@@ -150,7 +255,9 @@

- 接口插件设置后,流程服务在节点完成时自动调取该接口,同步节点业务数据,保存到流程服务中。 + 接口插件设置后,流程服务在节点完成时自动调取该接口,同步节点业务数据,保存到流程服务中。
服务地址:
@@ -170,7 +277,9 @@ > - 连接测试 + 连接测试
@@ -208,7 +317,11 @@
授权方式:
- +
Token:
- +
@@ -276,7 +392,10 @@
测试服务信息:
-  测试失败 +  测试失败
@@ -298,7 +417,9 @@
- 配置流程服务插件后,该节点可调用流程服务,并在此节点触发该流程。 + 配置流程服务插件后,该节点可调用流程服务,并在此节点触发该流程。

我的服务:

@@ -328,15 +449,25 @@

- 添加超时管理插件后,根据配置该节点超时后会发送消息给请求方。 + 添加超时管理插件后,根据配置该节点超时后会发送消息给请求方。

超时设置:

最大时长
- - + +
最大时长
- - + +
+ +
+

节点编号:

+

+ {{ + nodeParams(nodeItem.id).node_code && + nodeParams(nodeItem.id).node_code != "" + ? nodeParams(nodeItem.id).node_code + : "暂无(保存后将自动生成节点编号)" + }} +

+

节点名称:

+

+ +

+

条件描述:

+

+ +

+ +
+
@@ -480,6 +654,18 @@ export default { info: null, }, nodeItemList: [ + { + label: "开始", + value: { + width: 120, + height: 48, + meta: { + label: "开始", + name: "开始", + type: 1, + }, + }, + }, { label: "普通节点", value: { @@ -493,14 +679,14 @@ export default { }, }, { - label: "开始", + label: "条件节点", value: { width: 120, height: 48, meta: { - label: "开始", - name: "开始", - type: 1, + label: "条件节点", + name: "条件节点", + type: 4, }, }, }, @@ -530,11 +716,13 @@ export default { ], ], dialog_general: false, + dialog_general_judge: false, nodeItem: { id: "", name: "", }, node_name: "", + node_content: "", show_options_pop: false, dialog_interface: false, optionType: [ @@ -630,6 +818,10 @@ export default { max_time_check_1: false, line_hieght: 41, font_size: 16, + other_width: 120, + other_height: 48, + other_font_size: 116, + svg_top:34 }; }, mounted() { @@ -732,6 +924,14 @@ export default { id: query.meta.id, plugins: [], }; + } else if (conf.info.meta.type == 4) { + obj = { + label: "条件节点", + name: "条件节点", + type: 4, + id: query.meta.id, + plugins: [], + }; } this.nodeParamsList.push(obj); } @@ -765,7 +965,7 @@ export default { clickItem(index) { let item = this.nodeParams(index); this.nodeItem = item; - // console.log(item); + console.log(this.nodeItem); }, blurItem() { this.nodeItem = { @@ -791,9 +991,9 @@ export default { checkNodeCouldEdit() { let self = this; if (self.nodeItem.id && self.nodeItem.id != "") { - if (self.nodeItem.type == 3) { + if (self.nodeItem.type == 3 || self.nodeItem.type == 4) { return true; - } else { + } else if (self.nodeItem.type == 1 || self.nodeItem.type == 2) { self.$message({ message: "开始和结束节点不可被编辑", type: "warning", @@ -817,6 +1017,15 @@ export default { self.dialog_general = true; } }, + showJudgeGeneralSettings() { + if (this.checkNodeCouldEdit()) { + let self = this; + self.node_name = self.nodeParamsList.find((item) => { + return item.id == self.nodeItem.id; + }).name; + self.dialog_general_judge = true; + } + }, showInterfacePlugin() { let self = this; if (self.checkNodeCouldEdit()) { @@ -890,6 +1099,27 @@ export default { } self.dialog_general = false; }, + generalJudgeCancel() { + this.dialog_general_judge = false; + }, + generalJudgeSubmit() { + let self = this; + if (self.nodeItem.type == 4) { + let index = self.nodeParamsList.findIndex((item) => { + return item.id == self.nodeItem.id; + }); + if (index != -1) { + self.nodeParamsList[index].name = self.node_name; + self.nodeParamsList[index].content = self.node_content; + } else { + self.$message({ + message: "修改失败", + type: "error", + }); + } + } + self.dialog_general_judge = false; + }, clickTab() {}, getUrl(enUrl) { let url = decodeURI(enUrl); @@ -1294,6 +1524,10 @@ export default { }); this.line_hieght = 41 * scale; this.font_size = 16 * scale; + this.other_width = 120 * scale; + this.other_height = 48 * scale; + this.other_font_size = 116 * scale; + this.svg_top = 34 * scale; this.nodeList = obj.nodeList; this.linkList = obj.linkList; }, @@ -1463,22 +1697,43 @@ export default { background-color: #ffffff; border-radius: 10px; line-height: @node-item-height; - box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3); + // box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3); cursor: pointer; user-select: none; text-align: center; z-index: 6; - &:hover { - box-shadow: 1px 1px 8px rgba(0, 0, 0, 0.4); - } &.node-item-begin { border: solid 3px #25bdb1; + // &:hover { + // box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4); + // } } &.node-item-end { border: solid 3px #f78181; + // &:hover { + // box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4); + // } } &.node-item-default { border: solid 3px #b4c6f5; + // &:hover { + // box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.4); + // } + } + &.node-item-judge { + border: none; + box-shadow: none; + position: relative; + background: transparent; + overflow: hidden; + line-height: 48px; + .judge_svg { + font-size: 116px; + position: absolute; + z-index: -1; + top: -34px; + left: 0px; + } } } .scale_block { @@ -1514,8 +1769,8 @@ export default { } } .node-container { - width: 160px; - height: 300px; + width: 180px; + height: 360px; text-align: center; background-color: #f8f9fd; border-radius: 8px; @@ -1741,6 +1996,7 @@ export default { background-color: #25bdb1; color: #ffffff; position: relative; + box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3); } .flow-node-end { width: 100%; @@ -1751,6 +2007,7 @@ export default { border: solid 3px #e86262; color: #ffffff; position: relative; + box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3); } .flow-node-default { width: 100%; @@ -1760,6 +2017,7 @@ export default { background-color: #fff; border: solid 3px #b4c6f5; position: relative; + box-shadow: 1px 1px 4px rgba(0, 0, 0, 0.3); } .flow-node-default-active { width: 100%; @@ -1772,6 +2030,25 @@ export default { color: #fff; position: relative; } + .flow-node-judge { + width: 100%; + height: 100%; + padding: 2px 6px; + border-radius: 8px; + background-color: transparent; + border: none; + position: relative; + .svg_in { + position: absolute; + top: 0; + left: 0; + z-index: -1; + overflow: hidden; + .judge_svg { + position: relative; + } + } + } } } .super-flow__menu-container .super-flow__menu { @@ -1872,4 +2149,19 @@ export default { } } } +.super-flow-demo1 { + .super-flow__node { + box-shadow: none; + } +} +.nodes_i { + position: relative; + display: flex; + justify-content: space-around; +} +.node_icon { + position: relative; + top: 30px; + right: 4px; +} \ No newline at end of file diff --git a/src/icons/svg/bg_tiaojian_hov.svg b/src/icons/svg/bg_tiaojian_hov.svg new file mode 100644 index 0000000000000000000000000000000000000000..69cadafd87cfac67eac3816ddcfce603ee74943a --- /dev/null +++ b/src/icons/svg/bg_tiaojian_hov.svg @@ -0,0 +1,25 @@ + + + + + + + + + + + + + + + + diff --git a/src/icons/svg/bg_tiaojian_nor.svg b/src/icons/svg/bg_tiaojian_nor.svg new file mode 100644 index 0000000000000000000000000000000000000000..77b03c99153122fb88c36506964458144316afa1 --- /dev/null +++ b/src/icons/svg/bg_tiaojian_nor.svg @@ -0,0 +1,14 @@ + + + + + + diff --git a/src/pages/workbench/component-center/process-management/process-design/edit.vue b/src/pages/workbench/component-center/process-management/process-design/edit.vue index a448ca8ae746442399c6931faff68cf5eeac527e..cd022f7ceadbd927542523a2b3b1255e9f7e8f2f 100644 --- a/src/pages/workbench/component-center/process-management/process-design/edit.vue +++ b/src/pages/workbench/component-center/process-management/process-design/edit.vue @@ -1,9 +1,15 @@