作者:钟剑华 历史版本:1 最后编辑:龚清 更新时间:2024-11-20 15:41
适用版本:所有版本;
完整类名:com.lc.ibps.bpmn.api.cmd.ActionCmd
适用哪些服务?
- 通过business
调用方式例子
获取业务数据字段
// 获取业务数据 String busData = cmd.getBusData(); // 转map Map<String, Object> map = com.lc.ibps.base.core.util.JacksonUtil.toMap(busData); // 获取具体的字段值 String ziDuan1 = (String)map.get("ziDuan1");
获取流程动作(注意:启动流程没该方法)
// 获取流程动作 String actionName = cmd.getActionName();
常用方法
所有节点都可以调用的方法
/**
* 当前线程记录已添加的网关堆栈
*
* @return List<IBpmNodeDefine>
*/
public List<IBpmNodeDefine> getGateways();
/**
* 向当前线程中记录一个已记录的网关
*
* @param gatewayNode 网关节点
*/
public void addGateway(IBpmNodeDefine gatewayNode);
/**
* 获取变量集合。
*
* @return Map<String,Object>
*/
Map<String, Object> getVariables();
/**
* 获取变量。
*
* @return Object
*/
Object getVariable(String name);
/**
* 添加变量。
*
* @param name 变量名
* @param value 变量值 void
*/
void addVariable(String name, String value);
/**
* 移除变量。
*
* @param name 变量名 void
*/
void removeVariable(String name);
/**
* 添加变量。
*
* @param name 变量名
* @param value 变量值 void
*/
void addVariable(String name, Object value);
/**
* 获取临时变量集合,这个变量集合不作为流程变量,用于临时存放变量。
*
* @return Map<String,Object>
*/
Map<String, Object> getTransitVars();
/**
* 添加临时变量集合。
*
* @param name 变量名
* @param value 变量值 void
*/
void addTransitVars(String name, Object value);
/**
* 添加临时变量集合。
*
* @param name 变量名
* @param value 变量值 void
*/
void removeTransitVars(String name);
/**
* 放入临时变量。
*
* @param transitVars 变量 void
*/
void putTransitVars(Map<String, Object> transitVars);
/**
* 根据名称获取临时变量。
*
* @param name 变量名
* @return Object
*/
Object getTransitVars(String name);
/**
* 根据名称获取变量。
*
* @param name 变量名
* @return Object
*/
Object getVar(String name);
/**
*
* 获取业务对象实例对象
*
* @return
*/
Map<String, Object> getBoInstMap();
/**
*
* 获取业务对象实例数据对象
*
* @return
*/
Map<String, DataObjectModel> getBoInstDataMap();
/**
* 清除临时变量。 void
*/
void cleanTransitVars();
/**
* 获取下一步节点执行人。
*
* <pre>
* 键为节点ID
* 值为接收人员。
* </pre>
*
* @return Map<String,List<BpmIdentity>>
*/
Map<String, List<BpmIdentity>> getBpmIdentities();
/**
* 跳转类型
*
* @return
*/
String getJumpType();
/**
* 目标节点,在一般情况下不需要指定,流程会按照流程图进行运行。 在需要指定节点跳转的情况下,才会起作用。
*
* @return String
*/
String getDestination();
/**
* 获取流程实例ID,一个cmd实例对应一个一个流程实例ID, 主要是为了防止线程变量被覆盖。
*
* @return String
*/
String getInstId();
/**
* 设置通知类型。
*
* @param notifyType 通知类型
*/
void setNotifyType(String notifyType);
/**
* 获取通知类型。
*
* @return String
*/
String getNotifyType();
/**
* 获取业务数据模式。
*
* @return String
*/
String getDataMode();
/**
* 设置业务数据模式。
*
* @param mode 数据模式
*/
void setDataMode(String mode);
/**
* bo的JSON数据。
*
* @param json 数据体
*/
void setBusData(String json);
/**
* 获取BO的JSON数据。
*
* @return String
*/
String getBusData();
/**
* 获取业务主键
*
* @return String
*/
String getBusinessKey();
/**
* 获取主键的的数据类型。
*
* @return Datatype
*/
DataType getPkDataType();
/**
* 设置数据类型
*
* @param dataType 数据类型
*/
void setPkDataType(DataType dataType);
/**
* 设置主键。
*
* @param businessKey 业务主键
*/
void setBusinessKey(String businessKey);
/**
* 取当前用户IP
*
* @return String
*/
String getOptIp();
/**
* 设置当前用户IP
*
* @param ip ip
*/
void setOptIp(String ip);
/**
* 设置是否管理员
*
* @param superUser 是否管理员
*/
void setSuperUser(boolean superUser);
/**
* 是否管理员
*
* @return boolean
*/
boolean isSuperUser();
/**
* 取当前用户
*
* @return String
*/
String getCurUser();
/**
* 设置当前用户
*
* @param curUser 当前用户ID
*/
void setCurUser(String curUser);
/**
* 取当前租户
*
* @return String
*/
String getTenantId();
/**
* 设置当前租户
*
* @param tenantId 租户ID
*/
void setTenantId(String tenantId);
/**
* 取当前用户
*
* @return String
*/
String getCurUserName();
/**
* 设置当前用户
*
* @param curUserName 当前用户名称
*/
void setCurUserName(String curUserName);
/**
* 获取当前版本
*
* @return int
*/
int getVersion();
/**
* 设置当前版本
*
* @param version 当前版本
*/
void setVersion(int version);
/**
* 获取表单设置数据
*
* @return String
*/
String getFormOptions();
/**
* 设置表单设置数据
*
* @param formOptions 表单设置数据
*/
void setFormOptions(String formOptions);
任务节点可以调用的方法
/**
* 动作类型。
* @return ActionType
*/
ActionType getActionType();
/**
* 获取审批的处理状态或动作。
* <pre>
* 1.agree 审批。
* 2.abandon 弃权。
* 3.oppose 反对。
* 4.agreeTrans 流转同意。
* 5.opposeTrans 流转反对。
* 6.commu 沟通。
* 7.reject 驳回。
* 8.rejectToStart 驳回到发起人。
* </pre>
* @return String
*/
String getActionName();
/**
* 获取审批的意见
* @return String
*/
String getApprovalOpinion();
/**
* 流程实例ID。
* @return String
*/
String getBpmnInstId();
/**
* 获取任务ID
* @return String
*/
String getTaskId();
/**
* 获取意见标识,如果不为空则表示这个意见为表单意见,这个值为表单名称。
* @return String
*/
String getOpinionIdentity();
/**
* 是否干预。
* @return boolean
*/
boolean isInterpose();
/**
* 仅完成当前任务。
* @return boolean
*/
boolean isOnlyFinishTask();
只有开始节点和结束节点能调用的方法
/**
* 取得BPMN流程定义ID
* getBpmnDefId(),getProcDefId(),getFlowKey()三者只需要设置一值
* @return String
*/
String getBpmnDefId();
/**
* 取得流程定义ID
* getBpmnDefId(),getProcDefId(),getFlowKey()三者只需要设置一值
* @return String
*/
String getProcDefId();
/**
* 获取流程定义标识键
* getBpmnDefId(),getProcDefId(),getFlowKey()三者只需要设置一值
* @return String
*/
String getFlowKey();
/**
* 流程实例ID。
* @return String
*/
String getInstId();
/**
* 获取实例标题
* @return String
*/
String getSubject();