REQ-3502: 过滤流程按钮
This commit is contained in:
parent
78dd3f71a3
commit
b570371b48
@ -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());
|
||||
|
||||
Loading…
Reference in New Issue
Block a user