diff --git a/src/components/flow/nodes/BaseNode.js b/src/components/flow/nodes/BaseNode.js
index 9df3530..b8cbbb2 100644
--- a/src/components/flow/nodes/BaseNode.js
+++ b/src/components/flow/nodes/BaseNode.js
@@ -5,7 +5,11 @@ const makeX = (arr) => {
let i = len % 2 == 0 ? (len / 2) * -1 : ((len - 1) / 2) * -1;
let res = [];
for (let j = i; j <= i * -1; j++) {
- res.push(30 * j);
+ if(len%2==0 && j==0){
+
+ }else{
+ res.push(30 * j);
+ }
}
return res;
};
diff --git a/src/views/connection/edit.vue b/src/views/connection/edit.vue
index 01b2204..2ab236a 100644
--- a/src/views/connection/edit.vue
+++ b/src/views/connection/edit.vue
@@ -75,33 +75,38 @@
算子说明:
{{ selNode.info.operator_desc }}
-
+
输出参数:
-
-
- {{ it.key }}:
- {{ it.value }}
+
+
+ {{ it.output_id }}
+
+
+
+
+
-
+
-
+
处理参数:
-
-
- {{ it.key }}:
- {{ it.value }}
-
+
+
@@ -121,6 +126,7 @@ import nodePanel from './nodePanel.vue'
import editFlow from './editFlow.vue'
import ConnApi from '@/api/connection'
import EditParamDlg from './editParamDlg.vue'
+import paramShow from './paramShow.vue'
const router = useRouter();
const editForm = ref(ElForm)
const route = useRoute()
@@ -150,35 +156,34 @@ const selNode = reactive({
let lf = ref(null)
let edFlow = ref()
const ndPanel = ref()
-const doFlowInput = () => {
- let tmps = info.nodes.filter(d => d.id == selNode.info.id);
- if (tmps.length == 0) {
- info.nodes.push(selNode.info)
- } else {
- tmps[0].inputParams = selNode.info.inputParams;
- tmps[0].outputParams = selNode.info.outputParams;
- tmps[0].processParams = selNode.info.processParams;
-
- }
+const doOutputSelected=idx=>{
+ selNode.info.parameters.outputs.forEach((it,i)=>{
+ it.selected=i==idx;
+ });
+}
+const doInputSelected=idx=>{
+ selNode.info.parameters.inputs.forEach((it,i)=>{
+ it.selected=i==idx;
+ });
}
const doEditSuccess = (obj) => {
let t = info.editObj.type;
if (t == 'i') {
- selNode.info.inputParams = obj;
+ selNode.info.inputs = obj;
}
if (t == 'o') {
- selNode.info.outputParams = obj;
+ selNode.info.outputs = obj;
}
if (t == 'p') {
- selNode.info.processParams = obj;
+ selNode.info.process = obj;
}
let tmps = info.nodes.filter(d => d.id == selNode.info.id);
if (tmps.length == 0) {
info.nodes.push(selNode.info)
} else {
- tmps[0].inputParams = selNode.info.inputParams;
- tmps[0].outputParams = selNode.info.outputParams;
- tmps[0].processParams = selNode.info.processParams;
+ tmps[0].inputs = selNode.info.parameters.inputs;
+ tmps[0].outputs = selNode.info.parameters.outputs;
+ tmps[0].process = selNode.info.parameters.process;
}
};
const doEdit = (obj, title, t) => {
@@ -188,7 +193,7 @@ const doEdit = (obj, title, t) => {
type: t
}
editDlg.value.showDialog({
- obj: t == 'i' ? obj.inputParams : t == 'o' ? obj.outputParams : obj.processParams,
+ obj: t == 'i' ? obj.inputs : t == 'o' ? obj.outputs : obj.process,
title: title
});
}
@@ -204,17 +209,31 @@ const doUpdateNode = (data) => {
ndPanel.value.updateNode(data)
}
}
-const doNodeClick = (node) => {
- if (node) {
- selNode.info = node.data.properties.data;
+const doNodeClick = (node) => {
+ if (node) {
+ selNode.info = node.data.properties.data;
let tmps = info.nodes.filter(d => d.id == selNode.info.id);
if (tmps.length == 0) {
info.nodes.push(selNode.info);
} else {
- selNode.info.inputParams = tmps[0].inputParams;
- selNode.info.outputParams = tmps[0].outputParams;
- selNode.info.processParams = tmps[0].processParams;
+ selNode.info.parameters.inputs = tmps[0].parameters.inputs;
+ selNode.info.parameters.outputs = tmps[0].parameters.outputs;
+ selNode.info.parameters.process = tmps[0].parameters.process;
}
+
+ selNode.info.parameters.inputs.forEach(d=>{
+ d.selected=false;
+ });
+ selNode.info.parameters.outputs.forEach(d=>{
+ d.selected=false;
+ });
+ if(selNode.info.parameters.inputs.length>0){
+ selNode.info.parameters.inputs[0].selected=true;
+ }
+ if(selNode.info.parameters.outputs.length>0){
+ selNode.info.parameters.outputs[0].selected=true;
+ }
+
}
else {
selNode.info = null;
@@ -229,7 +248,6 @@ const doSave = () => {
ElMessage.error("请绘制算子互联流程图!");
return;
}
- debugger
let isNoConnect=false;
let nodeObj={};
let operator_list=[];
@@ -241,9 +259,9 @@ const doSave = () => {
parameters:{}
}
if(node.length>0){
- oper.parameters.inputParams=node[0].inputParams;
- oper.parameters.outputParams=node[0].outputParams;
- oper.parameters.processParams=node[0].processParams;
+ oper.parameters.inputs=node[0].inputs;
+ oper.parameters.outputs=node[0].outputs;
+ oper.parameters.process=node[0].process;
}
operator_list.push(oper);
let tmps=flowData.edges.filter(e=>e.sourceNodeId==n.id||e.targetNodeId==n.id);
@@ -414,6 +432,20 @@ onMounted(() => {
flex-grow: 1;
display: block;
}
+ .div-param{
+ .div-navs{
+ .sp-nav{
+ display: inline-block;
+ line-height:24px;
+ padding:0px 12px;
+ cursor: pointer;
+ &.active{
+ background-color: #409EFF;
+ color:#fff;
+ }
+ }
+ }
+ }
}
}
}
diff --git a/src/views/connection/nodePanel.vue b/src/views/connection/nodePanel.vue
index 1ce19a1..b592b9f 100644
--- a/src/views/connection/nodePanel.vue
+++ b/src/views/connection/nodePanel.vue
@@ -92,13 +92,12 @@ const updateNode = (nodes) => {
}
-const doEdit=(nd)=>{
- debugger
+const doEdit=(nd)=>{
let tmps=info.all.filter(d=>d.id==nd.id);
if(tmps.length>0){
- tmps[0].inputParams=nd.inputParams;
- tmps[0].outputParams=nd.inputParams;
- tmps[0].processParams=nd.processParams;
+ tmps[0].inputs=nd.inputs;
+ tmps[0].outputs=nd.outputs;
+ tmps[0].process=nd.process;
}
}
defineExpose({
diff --git a/src/views/connection/paramShow.vue b/src/views/connection/paramShow.vue
new file mode 100644
index 0000000..0620036
--- /dev/null
+++ b/src/views/connection/paramShow.vue
@@ -0,0 +1,34 @@
+
+
+ {{ it.name }} :
+ {{ it.value }}
+
+
+
+
+
\ No newline at end of file