|
@@ -1,9 +1,9 @@
|
|
|
<template>
|
|
|
<div class="sc-workflow-design">
|
|
|
<div class="box-scale">
|
|
|
- <node-wrap v-if="nodeConfig" v-model="nodeConfig"></node-wrap>
|
|
|
+ <node-wrap v-if="nodeConfig" v-model="nodeConfig" :disabled="disabled"></node-wrap>
|
|
|
<div class="node-wrap">
|
|
|
- <div class="node-wrap-box start-node">
|
|
|
+ <div class="node-wrap-box node-wrap-box--disabled end-node">
|
|
|
<div class="title" style="background: var(--el-color-info)">
|
|
|
<span class="title_label">结束</span>
|
|
|
</div>
|
|
@@ -39,7 +39,11 @@ export default {
|
|
|
}
|
|
|
},
|
|
|
props: {
|
|
|
- modelValue: { type: Object, default: () => {} }
|
|
|
+ modelValue: { type: Object, default: () => {} },
|
|
|
+ disabled: {
|
|
|
+ type: Boolean,
|
|
|
+ default: false
|
|
|
+ }
|
|
|
},
|
|
|
data() {
|
|
|
return {
|
|
@@ -91,6 +95,7 @@ export default {
|
|
|
justify-content: center;
|
|
|
flex-wrap: wrap;
|
|
|
min-width: min-content;
|
|
|
+ background: #f6f8f9;
|
|
|
}
|
|
|
|
|
|
.sc-workflow-design {
|
|
@@ -103,6 +108,11 @@ export default {
|
|
|
padding: 0px 50px;
|
|
|
position: relative;
|
|
|
z-index: 1;
|
|
|
+ & + .node-wrap {
|
|
|
+ .node-wrap-box.end-node:before {
|
|
|
+ content: '';
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
.node-wrap-box {
|
|
|
display: inline-flex;
|
|
@@ -115,7 +125,37 @@ export default {
|
|
|
border-radius: 4px;
|
|
|
cursor: pointer;
|
|
|
box-shadow: 0 2px 5px 0 rgba(0, 0, 0, 0.1);
|
|
|
- &.start-node {
|
|
|
+ &--disabled {
|
|
|
+ cursor: default;
|
|
|
+ /*.content {
|
|
|
+ color: var(--el-text-color-disabled);
|
|
|
+ }*/
|
|
|
+ .title_label {
|
|
|
+ &:hover {
|
|
|
+ text-decoration-line: none !important;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 已执行
|
|
|
+ &--success {
|
|
|
+ .title {
|
|
|
+ background: var(--el-color-success) !important;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 执行中
|
|
|
+ &--error {
|
|
|
+ .title {
|
|
|
+ background: var(--el-color-error) !important;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ // 未执行
|
|
|
+ &--info {
|
|
|
+ .title {
|
|
|
+ background: var(--el-color-info) !important;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ &.start-node,
|
|
|
+ &.end-node {
|
|
|
.title_label {
|
|
|
&:hover {
|
|
|
text-decoration-line: none;
|
|
@@ -135,7 +175,8 @@ export default {
|
|
|
border-color: rgb(202, 202, 202) transparent transparent;
|
|
|
background: #f6f8f9;
|
|
|
}
|
|
|
- .node-wrap-box.start-node:before {
|
|
|
+ .node-wrap-box.start-node:before,
|
|
|
+ .node-wrap-box.end-node:before {
|
|
|
content: none;
|
|
|
}
|
|
|
.node-wrap-box .title {
|
|
@@ -226,6 +267,64 @@ export default {
|
|
|
.branch-wrap {
|
|
|
display: inline-flex;
|
|
|
width: 100%;
|
|
|
+ &--disabled {
|
|
|
+ .branch-box {
|
|
|
+ margin-top: 0;
|
|
|
+ }
|
|
|
+ .add-branch {
|
|
|
+ display: none;
|
|
|
+ }
|
|
|
+ .auto-judge {
|
|
|
+ cursor: default;
|
|
|
+ &:hover {
|
|
|
+ .close {
|
|
|
+ display: none;
|
|
|
+ }
|
|
|
+ .priority-title {
|
|
|
+ display: block;
|
|
|
+ //display: none;
|
|
|
+ }
|
|
|
+ &:after {
|
|
|
+ border: unset;
|
|
|
+ box-shadow: unset;
|
|
|
+ }
|
|
|
+ .sort-left {
|
|
|
+ display: none;
|
|
|
+ }
|
|
|
+ .sort-right {
|
|
|
+ display: none;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ // 已执行
|
|
|
+ &--success {
|
|
|
+ .auto-judge:after {
|
|
|
+ border: 1px solid var(--el-color-success) !important;
|
|
|
+ }
|
|
|
+ //.title {
|
|
|
+ // //background: var(--el-color-success) !important;
|
|
|
+ //}
|
|
|
+ }
|
|
|
+ // 执行中
|
|
|
+ &--error {
|
|
|
+ .auto-judge:after {
|
|
|
+ border: 1px solid var(--el-color-error) !important;
|
|
|
+ }
|
|
|
+ /* .title {
|
|
|
+ background: var(--el-color-error) !important;
|
|
|
+ }*/
|
|
|
+ }
|
|
|
+ // 未执行
|
|
|
+ &--info {
|
|
|
+ .auto-judge:after {
|
|
|
+ border: 1px solid var(--el-color-info) !important;
|
|
|
+ }
|
|
|
+ /*.title {
|
|
|
+ background: var(--el-color-info) !important;
|
|
|
+ }*/
|
|
|
+ }
|
|
|
}
|
|
|
.branch-box-wrap {
|
|
|
display: flex;
|
|
@@ -240,7 +339,7 @@ export default {
|
|
|
flex-direction: column;
|
|
|
align-items: center;
|
|
|
position: relative;
|
|
|
- background: #f6f8f9;
|
|
|
+ //background: #f6f8f9;
|
|
|
}
|
|
|
.branch-box {
|
|
|
display: flex;
|
|
@@ -313,13 +412,14 @@ export default {
|
|
|
border-style: solid;
|
|
|
border-width: 8px 6px 4px;
|
|
|
border-color: rgb(202, 202, 202) transparent transparent;
|
|
|
- background: rgb(245, 245, 247);
|
|
|
+ //background: rgb(245, 245, 247);
|
|
|
+ background: #f6f8f9;
|
|
|
}
|
|
|
.auto-judge .title {
|
|
|
line-height: 16px;
|
|
|
}
|
|
|
.auto-judge .title .node-title {
|
|
|
- color: #15bc83;
|
|
|
+ color: var(--el-color-success);
|
|
|
&.last-child-title {
|
|
|
color: #999;
|
|
|
}
|
|
@@ -388,12 +488,13 @@ export default {
|
|
|
right: -1px;
|
|
|
}
|
|
|
.end-node {
|
|
|
- border-radius: 50%;
|
|
|
- font-size: 14px;
|
|
|
- color: rgba(25, 31, 37, 0.4);
|
|
|
- text-align: left;
|
|
|
+ //border-radius: 50%;
|
|
|
+ //font-size: 14px;
|
|
|
+ //color: rgba(25, 31, 37, 0.4);
|
|
|
+ color: var(--el-text-color-disabled);
|
|
|
+ //text-align: left;
|
|
|
}
|
|
|
- .end-node-circle {
|
|
|
+ /*.end-node-circle {
|
|
|
width: 10px;
|
|
|
height: 10px;
|
|
|
margin: auto;
|
|
@@ -403,7 +504,7 @@ export default {
|
|
|
.end-node-text {
|
|
|
margin-top: 5px;
|
|
|
text-align: center;
|
|
|
- }
|
|
|
+ }*/
|
|
|
.auto-judge:hover {
|
|
|
.sort-left {
|
|
|
display: flex;
|
|
@@ -451,8 +552,8 @@ export default {
|
|
|
transition: all 0.1s;
|
|
|
}
|
|
|
.auto-judge:hover:after {
|
|
|
- border: 1px solid #3296fa;
|
|
|
- box-shadow: 0 0 6px 0 rgba(50, 150, 250, 0.3);
|
|
|
+ border: 1px solid var(--el-color-primary);
|
|
|
+ box-shadow: 0 0 6px 0 var(--el-color-primary-light-5);
|
|
|
}
|
|
|
.node-wrap-box:after {
|
|
|
pointer-events: none;
|
|
@@ -466,9 +567,9 @@ export default {
|
|
|
border-radius: 4px;
|
|
|
transition: all 0.1s;
|
|
|
}
|
|
|
- .node-wrap-box:hover:after {
|
|
|
- border: 1px solid #3296fa;
|
|
|
- box-shadow: 0 0 6px 0 rgba(50, 150, 250, 0.3);
|
|
|
+ .node-wrap-box:not(.node-wrap-box--disabled):hover:after {
|
|
|
+ border: 1px solid var(--el-color-primary);
|
|
|
+ box-shadow: 0 0 6px 0 var(--el-color-primary-light-5);
|
|
|
}
|
|
|
}
|
|
|
|
|
@@ -522,13 +623,17 @@ export default {
|
|
|
}
|
|
|
|
|
|
.dark .sc-workflow-design {
|
|
|
+ .box-scale {
|
|
|
+ background: var(--el-bg-color);
|
|
|
+ }
|
|
|
+ /*.col-box {
|
|
|
+ background: var(--el-bg-color);
|
|
|
+ }*/
|
|
|
.node-wrap-box,
|
|
|
.auto-judge {
|
|
|
background: #2b2b2b;
|
|
|
}
|
|
|
- .col-box {
|
|
|
- background: var(--el-bg-color);
|
|
|
- }
|
|
|
+
|
|
|
.top-left-cover-line,
|
|
|
.top-right-cover-line,
|
|
|
.bottom-left-cover-line,
|