|
@@ -342,11 +342,23 @@ const { addEdges, vueFlowRef, onEdgeUpdateEnd, applyEdgeChanges, fitView } =
|
|
|
const { onDragOver, onDrop, onDragLeave, isDragOver, onDragStart } =
|
|
|
useDragAndDrop();
|
|
|
// onConnect(addEdges);
|
|
|
-const onConnectMethod = (edge) => {
|
|
|
- edge.type = "smoothstep";
|
|
|
- edge.markerEnd = "arrowclosed";
|
|
|
- edge.style = { strokeWidth: "2" };
|
|
|
- addEdges(edge);
|
|
|
+const onConnectMethod = (toConnectedEdge) => {
|
|
|
+ let hasSourceEdge = false;
|
|
|
+ for (const edge of edges.value) {
|
|
|
+ if (edge.source === toConnectedEdge.source) {
|
|
|
+ hasSourceEdge = true;
|
|
|
+ break;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!hasSourceEdge) {
|
|
|
+ toConnectedEdge.type = "smoothstep";
|
|
|
+ toConnectedEdge.markerEnd = "arrowclosed";
|
|
|
+ toConnectedEdge.style = { strokeWidth: "2" };
|
|
|
+ addEdges(toConnectedEdge);
|
|
|
+ } else {
|
|
|
+ ElMessage.warning("工序只能有一个下一道工序!");
|
|
|
+ }
|
|
|
};
|
|
|
|
|
|
const flowData = reactive({ edges: [], nodes: [] });
|