Class NodeStrategyManager

java.lang.Object
com.codingapi.flow.manager.NodeStrategyManager

public class NodeStrategyManager extends Object
节点策略管理
  • Constructor Details

  • Method Details

    • getTimeoutTime

      public long getTimeoutTime()
      获取超时时间
    • isEnableMergeable

      public boolean isEnableMergeable()
      是否可合并
    • getMergeType

      public RecordMergeStrategy.MergeType getMergeType()
      合并审批类型
    • isEnableRevoke

      public boolean isEnableRevoke()
      是否支持撤回
    • isSequenceMultiOperatorType

      public boolean isSequenceMultiOperatorType()
      是否按顺序执行的审批策略
    • isAdviceRequired

      public boolean isAdviceRequired()
      审批意见是否必填

      隐藏审批意见时必填不生效,避免用户无法填写意见导致流程卡死

    • isAdviceHidden

      public boolean isAdviceHidden()
      是否隐藏审批意见
    • isSignRequired

      public boolean isSignRequired()
      签名是否必填
    • isResume

      public boolean isResume()
      是否恢复到退回节点
    • getMultiOperatorAuditStrategyType

      public MultiOperatorAuditStrategy.Type getMultiOperatorAuditStrategyType()
      多操作者审批类型
    • getMultiOperatorAuditMergePercent

      public float getMultiOperatorAuditMergePercent()
      多操作者审批并签比例
    • isSameOperatorAutoPass

      public boolean isSameOperatorAutoPass()
      提交人与审批人一致时是否自动审批

      对应 SameOperatorAuditStrategy.Type.AUTO_PASS: 当前节点的审批人为流程提交人本人时,自动通过该节点(无需本人审批,issue #224)。

      Returns:
      true 表示提交人与审批人相同时自动通过当前节点
    • verifyNode

      public void verifyNode(FlowForm form)
    • generateTitle

      public String generateTitle(FlowSession session)
    • getOperatorSelectType

      public OperatorSelectType getOperatorSelectType()
      获取操作人选择类型
      Returns:
      操作人选择类型,若未配置则返回 null
    • loadOperators

      public OperatorManager loadOperators(FlowSession session)
    • loadOperatorRange

      public List<IFlowOperator> loadOperatorRange(FlowSession session)
      计算节点的可选人员范围(发起人/审批人设定模式)
      Parameters:
      session - 目标节点会话
      Returns:
      可选人员范围,返回空表示不限范围(可选任意人)
    • getMaxOperatorCount

      public int getMaxOperatorCount()
      获取节点的最大可选人数
      Returns:
      最大可选人数,-1 表示不限制;未配置 OperatorLoadStrategy 时返回 -1
    • getFieldPermissions

      public List<FormFieldPermission> getFieldPermissions()
      获取节点的字段权限配置
    • verifySession

      public void verifySession(FlowSession session)
    • getStrategy

      public <T extends INodeStrategy> T getStrategy(Class<T> clazz)
    • errorTrigger

      public ErrorThrow errorTrigger(FlowSession session)
      错误触发(没有匹配到人时执行的逻辑)
      Parameters:
      session - 触发会话
      Returns:
      错误触发