zhourui пре 5 година
родитељ
комит
60cf6a6307

+ 2 - 12
o2server/x_processplatform_assemble_surface/src/main/java/com/x/processplatform/assemble/surface/jaxrs/task/ActionProcessing.java

@@ -43,7 +43,6 @@ import com.x.processplatform.core.entity.content.WorkCompleted;
 import com.x.processplatform.core.entity.content.WorkLog;
 import com.x.processplatform.core.entity.element.Manual;
 import com.x.processplatform.core.entity.element.Route;
-import com.x.processplatform.core.entity.log.SignalStack;
 import com.x.processplatform.core.express.ProcessingAttributes;
 import com.x.processplatform.core.express.service.processing.jaxrs.task.ActionProcessingWo;
 import com.x.processplatform.core.express.service.processing.jaxrs.task.WrapAppend;
@@ -51,6 +50,7 @@ import com.x.processplatform.core.express.service.processing.jaxrs.task.WrapProc
 import com.x.processplatform.core.express.service.processing.jaxrs.task.WrapUpdatePrevTaskIdentity;
 import com.x.processplatform.core.express.service.processing.jaxrs.task.WrapUpdatePrevTaskIdentity.PrevTask;
 import com.x.processplatform.core.express.service.processing.jaxrs.taskcompleted.WrapUpdateNextTaskIdentity;
+import com.x.processplatform.core.express.service.processing.jaxrs.work.ActionProcessingSignalWo;
 
 class ActionProcessing extends BaseAction {
 
@@ -469,17 +469,7 @@ class ActionProcessing extends BaseAction {
 
 	}
 
-	public static class RespProcessingSignal {
-
-		private SignalStack signalStack;
-
-		public SignalStack getSignalStack() {
-			return signalStack;
-		}
-
-		public void setSignalStack(SignalStack signalStack) {
-			this.signalStack = signalStack;
-		}
+	public static class RespProcessingSignal extends ActionProcessingSignalWo {
 
 	}
 

+ 42 - 84
o2server/x_processplatform_core_entity/src/main/java/com/x/processplatform/core/entity/log/Signal.java

@@ -7,9 +7,9 @@ import com.x.base.core.project.gson.GsonPropertyObject;
 
 public class Signal extends GsonPropertyObject {
 
-	public static final String TYPE_AGENTARRIVE = "agentArrive";
-	public static final String TYPE_AGENTEXECUTE = "agentExecute";
-	public static final String TYPE_AGENTINQUIRE = "agentInquire";
+//	public static final String TYPE_AGENTARRIVE = "agentArrive";
+//	public static final String TYPE_AGENTEXECUTE = "agentExecute";
+//	public static final String TYPE_AGENTINQUIRE = "agentInquire";
 
 	private AgentArrive agentArrive;
 	private AgentExecute agentExecute;
@@ -33,7 +33,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal agentArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_AGENTARRIVE;
 		AgentArrive s = new AgentArrive();
 		p.agentArrive = s;
 		return p;
@@ -45,7 +44,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal agentExecute() {
 		Signal p = new Signal();
-		p.type = TYPE_AGENTEXECUTE;
 		AgentExecute s = new AgentExecute();
 		p.agentExecute = s;
 		return p;
@@ -57,15 +55,14 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal agentInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_AGENTINQUIRE;
 		AgentInquire s = new AgentInquire();
 		p.agentInquire = s;
 		return p;
 	}
 
-	public static final String TYPE_BEGINARRIVE = "beginArrive";
-	public static final String TYPE_BEGINEXECUTE = "beginExecute";
-	public static final String TYPE_BEGININQUIRE = "beginInquire";
+//	public static final String TYPE_BEGINARRIVE = "beginArrive";
+//	public static final String TYPE_BEGINEXECUTE = "beginExecute";
+//	public static final String TYPE_BEGININQUIRE = "beginInquire";
 
 	private BeginArrive beginArrive;
 	private BeginExecute beginExecute;
@@ -89,7 +86,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal beginArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_BEGINARRIVE;
 		BeginArrive s = new BeginArrive();
 		p.beginArrive = s;
 		return p;
@@ -101,7 +97,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal beginExecute() {
 		Signal p = new Signal();
-		p.type = TYPE_BEGINEXECUTE;
 		BeginExecute s = new BeginExecute();
 		p.beginExecute = s;
 		return p;
@@ -113,15 +108,14 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal beginInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_BEGININQUIRE;
 		BeginInquire s = new BeginInquire();
 		p.beginInquire = s;
 		return p;
 	}
 
-	public static final String TYPE_CANCELARRIVE = "cancelArrive";
-	public static final String TYPE_CANCELEXECUTE = "cancelExecute";
-	public static final String TYPE_CANCELINQUIRE = "cancelInquire";
+//	public static final String TYPE_CANCELARRIVE = "cancelArrive";
+//	public static final String TYPE_CANCELEXECUTE = "cancelExecute";
+//	public static final String TYPE_CANCELINQUIRE = "cancelInquire";
 
 	private CancelArrive cancelArrive;
 	private CancelExecute cancelExecute;
@@ -145,7 +139,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal cancelArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_CANCELARRIVE;
 		CancelArrive s = new CancelArrive();
 		p.cancelArrive = s;
 		return p;
@@ -157,7 +150,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal cancelExecute() {
 		Signal p = new Signal();
-		p.type = TYPE_CANCELEXECUTE;
 		CancelExecute s = new CancelExecute();
 		p.cancelExecute = s;
 		return p;
@@ -169,15 +161,14 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal cancelInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_CANCELINQUIRE;
 		CancelInquire s = new CancelInquire();
 		p.cancelInquire = s;
 		return p;
 	}
 
-	public static final String TYPE_CHOICEARRIVE = "choiceArrive";
-	public static final String TYPE_CHOICEEXECUTE = "choiceExecute";
-	public static final String TYPE_CHOICEINQUIRE = "choiceInquire";
+//	public static final String TYPE_CHOICEARRIVE = "choiceArrive";
+//	public static final String TYPE_CHOICEEXECUTE = "choiceExecute";
+//	public static final String TYPE_CHOICEINQUIRE = "choiceInquire";
 
 	private ChoiceArrive choiceArrive;
 	private ChoiceExecute choiceExecute;
@@ -201,7 +192,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal choiceArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_CHOICEARRIVE;
 		ChoiceArrive s = new ChoiceArrive();
 		p.choiceArrive = s;
 		return p;
@@ -213,7 +203,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal choiceExecute() {
 		Signal p = new Signal();
-		p.type = TYPE_CHOICEEXECUTE;
 		ChoiceExecute s = new ChoiceExecute();
 		p.choiceExecute = s;
 		return p;
@@ -225,15 +214,14 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal choiceInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_CHOICEINQUIRE;
 		ChoiceInquire s = new ChoiceInquire();
 		p.choiceInquire = s;
 		return p;
 	}
 
-	public static final String TYPE_DELAYARRIVE = "delayArrive";
-	public static final String TYPE_DELAYEXECUTE = "delayExecute";
-	public static final String TYPE_DELAYINQUIRE = "delayInquire";
+//	public static final String TYPE_DELAYARRIVE = "delayArrive";
+//	public static final String TYPE_DELAYEXECUTE = "delayExecute";
+//	public static final String TYPE_DELAYINQUIRE = "delayInquire";
 
 	private DelayArrive delayArrive;
 	private DelayExecute delayExecute;
@@ -257,7 +245,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal delayArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_DELAYARRIVE;
 		DelayArrive s = new DelayArrive();
 		p.delayArrive = s;
 		return p;
@@ -269,7 +256,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal delayExecute() {
 		Signal p = new Signal();
-		p.type = TYPE_DELAYEXECUTE;
 		DelayExecute s = new DelayExecute();
 		p.delayExecute = s;
 		return p;
@@ -281,15 +267,14 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal delayInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_DELAYINQUIRE;
 		DelayInquire s = new DelayInquire();
 		p.delayInquire = s;
 		return p;
 	}
 
-	public static final String TYPE_EMBEDARRIVE = "embedArrive";
-	public static final String TYPE_EMBEDEXECUTE = "embedExecute";
-	public static final String TYPE_EMBEDINQUIRE = "embedInquire";
+//	public static final String TYPE_EMBEDARRIVE = "embedArrive";
+//	public static final String TYPE_EMBEDEXECUTE = "embedExecute";
+//	public static final String TYPE_EMBEDINQUIRE = "embedInquire";
 
 	private EmbedArrive embedArrive;
 	private EmbedExecute embedExecute;
@@ -313,7 +298,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal embedArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_EMBEDARRIVE;
 		EmbedArrive s = new EmbedArrive();
 		p.embedArrive = s;
 		return p;
@@ -325,7 +309,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal embedExecute() {
 		Signal p = new Signal();
-		p.type = TYPE_EMBEDEXECUTE;
 		EmbedExecute s = new EmbedExecute();
 		p.embedExecute = s;
 		return p;
@@ -337,15 +320,14 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal embedInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_EMBEDINQUIRE;
 		EmbedInquire s = new EmbedInquire();
 		p.embedInquire = s;
 		return p;
 	}
 
-	public static final String TYPE_ENDARRIVE = "endArrive";
-	public static final String TYPE_ENDEXECUTE = "endExecute";
-	public static final String TYPE_ENDINQUIRE = "endInquire";
+//	public static final String TYPE_ENDARRIVE = "endArrive";
+//	public static final String TYPE_ENDEXECUTE = "endExecute";
+//	public static final String TYPE_ENDINQUIRE = "endInquire";
 
 	private EndArrive endArrive;
 	private EndExecute endExecute;
@@ -369,7 +351,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal endArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_ENDARRIVE;
 		EndArrive s = new EndArrive();
 		p.endArrive = s;
 		return p;
@@ -381,7 +362,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal endExecute() {
 		Signal p = new Signal();
-		p.type = TYPE_ENDEXECUTE;
 		EndExecute s = new EndExecute();
 		p.endExecute = s;
 		return p;
@@ -393,15 +373,14 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal endInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_ENDINQUIRE;
 		EndInquire s = new EndInquire();
 		p.endInquire = s;
 		return p;
 	}
 
-	public static final String TYPE_INVOKEARRIVE = "invokeArrive";
-	public static final String TYPE_INVOKEEXECUTE = "invokeExecute";
-	public static final String TYPE_INVOKEINQUIRE = "invokeInquire";
+//	public static final String TYPE_INVOKEARRIVE = "invokeArrive";
+//	public static final String TYPE_INVOKEEXECUTE = "invokeExecute";
+//	public static final String TYPE_INVOKEINQUIRE = "invokeInquire";
 
 	private InvokeArrive invokeArrive;
 	private InvokeExecute invokeExecute;
@@ -425,7 +404,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal invokeArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_INVOKEARRIVE;
 		InvokeArrive s = new InvokeArrive();
 		p.invokeArrive = s;
 		return p;
@@ -437,7 +415,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal invokeExecute() {
 		Signal p = new Signal();
-		p.type = TYPE_INVOKEEXECUTE;
 		InvokeExecute s = new InvokeExecute();
 		p.invokeExecute = s;
 		return p;
@@ -449,15 +426,14 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal invokeInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_INVOKEINQUIRE;
 		InvokeInquire s = new InvokeInquire();
 		p.invokeInquire = s;
 		return p;
 	}
 
-	public static final String TYPE_MANUALARRIVE = "manualArrive";
-	public static final String TYPE_MANUALEXECUTE = "manualExecute";
-	public static final String TYPE_MANUALINQUIRE = "manualInquire";
+//	public static final String TYPE_MANUALARRIVE = "manualArrive";
+//	public static final String TYPE_MANUALEXECUTE = "manualExecute";
+//	public static final String TYPE_MANUALINQUIRE = "manualInquire";
 
 	private ManualArrive manualArrive;
 	private ManualExecute manualExecute;
@@ -481,7 +457,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal manualArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_MANUALARRIVE;
 		ManualArrive s = new ManualArrive();
 		p.manualArrive = s;
 		return p;
@@ -504,7 +479,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal manualExecute(String type, List<String> identities) {
 		Signal p = new Signal();
-		p.type = TYPE_MANUALEXECUTE;
 		ManualExecute s = new ManualExecute();
 		s.type = type;
 		s.identities = identities;
@@ -518,15 +492,14 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal manualInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_MANUALINQUIRE;
 		ManualInquire s = new ManualInquire();
 		p.manualInquire = s;
 		return p;
 	}
 
-	public static final String TYPE_MERGEARRIVE = "mergeArrive";
-	public static final String TYPE_MERGEEXECUTE = "mergeExecute";
-	public static final String TYPE_MERGEINQUIRE = "mergeInquire";
+//	public static final String TYPE_MERGEARRIVE = "mergeArrive";
+//	public static final String TYPE_MERGEEXECUTE = "mergeExecute";
+//	public static final String TYPE_MERGEINQUIRE = "mergeInquire";
 
 	private MergeArrive mergeArrive;
 	private MergeExecute mergeExecute;
@@ -550,7 +523,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal mergeArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_MERGEARRIVE;
 		MergeArrive s = new MergeArrive();
 		p.mergeArrive = s;
 		return p;
@@ -562,7 +534,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal mergeExecute() {
 		Signal p = new Signal();
-		p.type = TYPE_MERGEEXECUTE;
 		MergeExecute s = new MergeExecute();
 		p.mergeExecute = s;
 		return p;
@@ -574,15 +545,14 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal mergeInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_MERGEINQUIRE;
 		MergeInquire s = new MergeInquire();
 		p.mergeInquire = s;
 		return p;
 	}
 
-	public static final String TYPE_MESSAGEARRIVE = "messageArrive";
-	public static final String TYPE_MESSAGEEXECUTE = "messageExecute";
-	public static final String TYPE_MESSAGEINQUIRE = "messageInquire";
+//	public static final String TYPE_MESSAGEARRIVE = "messageArrive";
+//	public static final String TYPE_MESSAGEEXECUTE = "messageExecute";
+//	public static final String TYPE_MESSAGEINQUIRE = "messageInquire";
 
 	private MessageArrive messageArrive;
 	private MessageExecute messageExecute;
@@ -606,7 +576,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal messageArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_MERGEARRIVE;
 		MessageArrive s = new MessageArrive();
 		p.messageArrive = s;
 		return p;
@@ -618,7 +587,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal messageExecute() {
 		Signal p = new Signal();
-		p.type = TYPE_MESSAGEEXECUTE;
 		MessageExecute s = new MessageExecute();
 		p.messageExecute = s;
 		return p;
@@ -630,15 +598,14 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal messageInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_MESSAGEINQUIRE;
 		MessageInquire s = new MessageInquire();
 		p.messageInquire = s;
 		return p;
 	}
 
-	public static final String TYPE_PARALLELARRIVE = "parallelArrive";
-	public static final String TYPE_PARALLELEXECUTE = "parallelExecute";
-	public static final String TYPE_PARALLELINQUIRE = "parallelInquire";
+//	public static final String TYPE_PARALLELARRIVE = "parallelArrive";
+//	public static final String TYPE_PARALLELEXECUTE = "parallelExecute";
+//	public static final String TYPE_PARALLELINQUIRE = "parallelInquire";
 
 	private ParallelArrive parallelArrive;
 	private ParallelExecute parallelExecute;
@@ -662,7 +629,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal parallelArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_PARALLELARRIVE;
 		ParallelArrive s = new ParallelArrive();
 		p.parallelArrive = s;
 		return p;
@@ -674,7 +640,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal parallelExecute() {
 		Signal p = new Signal();
-		p.type = TYPE_PARALLELEXECUTE;
 		ParallelExecute s = new ParallelExecute();
 		p.parallelExecute = s;
 		return p;
@@ -686,15 +651,14 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal parallelInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_PARALLELINQUIRE;
 		ParallelInquire s = new ParallelInquire();
 		p.parallelInquire = s;
 		return p;
 	}
 
-	public static final String TYPE_SERVICEARRIVE = "serviceArrive";
-	public static final String TYPE_SERVICEEXECUTE = "serviceExecute";
-	public static final String TYPE_SERVICEINQUIRE = "serviceInquire";
+//	public static final String TYPE_SERVICEARRIVE = "serviceArrive";
+//	public static final String TYPE_SERVICEEXECUTE = "serviceExecute";
+//	public static final String TYPE_SERVICEINQUIRE = "serviceInquire";
 
 	private ServiceArrive serviceArrive;
 	private ServiceExecute serviceExecute;
@@ -718,7 +682,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal serviceArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_SERVICEARRIVE;
 		ServiceArrive s = new ServiceArrive();
 		p.serviceArrive = s;
 		return p;
@@ -730,7 +693,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal serviceExecute() {
 		Signal p = new Signal();
-		p.type = TYPE_SERVICEEXECUTE;
 		ServiceExecute s = new ServiceExecute();
 		p.serviceExecute = s;
 		return p;
@@ -742,15 +704,14 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal serviceInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_SERVICEINQUIRE;
 		ServiceInquire s = new ServiceInquire();
 		p.serviceInquire = s;
 		return p;
 	}
 
-	public static final String TYPE_SPLITARRIVE = "splitArrive";
-	public static final String TYPE_SPLITEXECUTE = "splitExecute";
-	public static final String TYPE_SPLITINQUIRE = "splitInquire";
+//	public static final String TYPE_SPLITARRIVE = "splitArrive";
+//	public static final String TYPE_SPLITEXECUTE = "splitExecute";
+//	public static final String TYPE_SPLITINQUIRE = "splitInquire";
 
 	private SplitArrive splitArrive;
 	private SplitExecute splitExecute;
@@ -774,7 +735,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal splitArrive() {
 		Signal p = new Signal();
-		p.type = TYPE_SPLITARRIVE;
 		SplitArrive s = new SplitArrive();
 		p.splitArrive = s;
 		return p;
@@ -792,7 +752,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal splitExecute(List<String> splitValues) {
 		Signal p = new Signal();
-		p.type = TYPE_SPLITEXECUTE;
 		SplitExecute s = new SplitExecute();
 		s.splitValueList = splitValues;
 		p.splitExecute = s;
@@ -805,7 +764,6 @@ public class Signal extends GsonPropertyObject {
 
 	public static Signal splitInquire() {
 		Signal p = new Signal();
-		p.type = TYPE_SPLITINQUIRE;
 		SplitInquire s = new SplitInquire();
 		p.splitInquire = s;
 		return p;

+ 3 - 0
o2server/x_processplatform_core_express/src/main/java/com/x/processplatform/core/express/service/processing/jaxrs/work/ActionProcessingSignalWo.java

@@ -12,6 +12,9 @@ public class ActionProcessingSignalWo extends WoId {
 	private SignalStack signalStack;
 
 	public SignalStack getSignalStack() {
+		if (null == this.signalStack) {
+			this.signalStack = new SignalStack();
+		}
 		return signalStack;
 	}
 

+ 11 - 10
o2server/x_processplatform_service_processing/src/main/java/com/x/processplatform/service/processing/jaxrs/work/ActionProcessingSignal.java

@@ -1,23 +1,16 @@
 package com.x.processplatform.service.processing.jaxrs.work;
 
-import java.util.List;
 import java.util.Optional;
-import java.util.stream.Collectors;
 
 import com.x.base.core.project.config.Config;
 import com.x.base.core.project.http.ActionResult;
 import com.x.base.core.project.http.EffectivePerson;
-import com.x.base.core.project.tools.ListTools;
-import com.x.processplatform.core.entity.log.Signal;
 import com.x.processplatform.core.entity.log.SignalStack;
 import com.x.processplatform.core.express.service.processing.jaxrs.work.ActionProcessingSignalWo;
 import com.x.processplatform.service.processing.ThisApplication;
 
 class ActionProcessingSignal extends BaseAction {
 
-	private static final List<String> EXPORTSIGNALS = ListTools.toList(Signal.TYPE_MANUALEXECUTE,
-			Signal.TYPE_SPLITEXECUTE);
-
 	ActionResult<Wo> execute(EffectivePerson effectivePerson, String id, String series) throws Exception {
 
 		Thread.sleep(Config.processPlatform().getProcessingSignalThreshold());
@@ -25,9 +18,17 @@ class ActionProcessingSignal extends BaseAction {
 		Optional<SignalStack> optional = ThisApplication.getProcessingToProcessingSignalStack().find(id, series);
 
 		Wo wo = new Wo();
-		optional.ifPresent(
-				o -> o.stream().filter(s -> EXPORTSIGNALS.contains(s.getType())).forEach(wo.getSignalStack()::add));
-		optional.ifPresent(wo::setSignalStack);
+
+		if (optional.isPresent()) {
+			optional.get().forEach(o -> {
+				if ((null != o.getManualExecute()) || (null != o.getSplitExecute())) {
+					wo.getSignalStack().add(o);
+				}
+			});
+		} else {
+			wo.setSignalStack(new SignalStack());
+		}
+
 		ActionResult<Wo> result = new ActionResult<>();
 		result.setData(wo);
 		return result;