REQ-3502: 过滤流程按钮

This commit is contained in:
yanglin 2025-01-14 11:03:46 +08:00
parent 78dd3f71a3
commit b570371b48

View File

@ -31,13 +31,13 @@ class WorkflowTodoCardButtonInterceptor implements CardButtonInterceptor {
@Override
public DecisionValue<Boolean> isPerformActionAvailable(ButtonV3 button) {
BizFinalStateEnum state = findButtonClickedState(button).orElse(null);
BizFinalStateEnum state = findButtonClickState(button).orElse(null);
return DecisionValue.decide(state != null && state.isButtonPerformActionAvailable());
}
@Override
public DecisionValue<Boolean> isActionPerformed(ButtonV3 button) {
BizFinalStateEnum state = findButtonClickedState(button).orElse(null);
BizFinalStateEnum state = findButtonClickState(button).orElse(null);
if (state == null)
return DecisionValue.decide(false);
return DecisionValue.decide(todo.getState() == PendingMessageStateEnum.COMPLETED);
@ -45,7 +45,7 @@ class WorkflowTodoCardButtonInterceptor implements CardButtonInterceptor {
@Override
public DecisionValue<String> getActionPerformedName(ButtonV3 button) {
BizFinalStateEnum state = findButtonClickedState(button).orElse(null);
BizFinalStateEnum state = findButtonClickState(button).orElse(null);
return state == null
? DecisionValue.notSure()
: DecisionValue.decide(state.getActionPerformedName());
@ -90,7 +90,7 @@ class WorkflowTodoCardButtonInterceptor implements CardButtonInterceptor {
return DecisionValue.decide(scopes != null && scopes.contains(ButtonVisibleScopeEnum.EXECUTOR));
}
private Optional<BizFinalStateEnum> findButtonClickedState(ButtonV3 button) {
private Optional<BizFinalStateEnum> findButtonClickState(ButtonV3 button) {
if (button.getSource() == RouterButtonSourceEnum.CUSTOM)
return Optional.empty();
return BizFinalStateEnum.findButtonClickedState(button.getCode());