activiti 更新act_hi_taskinst表DELETE_REASON_

 

因为activiti对于act_hi_taskinst表中的DELETE_REASON_列值是有限的,DELETE_REASON_类表明任务的完成缘由,好比completed或者delete,所以咱们在任意节点跳转或者撤销的时候,必须标记该字段,好比撤销能够标记能够定义为Revoke、跳转能够标记为jump等等。数据库

写一个命令类以下:缓存

public class UpdateHiTaskReasonCommand implements Command {
	protected String taskId;
	protected String deleteReason;

	public UpdateHiTaskReasonCommand(String taskId, String deleteReason) {
		this.taskId = taskId;
		this.deleteReason = deleteReason;
	}
	@Override
	public Void execute(CommandContext commandContext) {
		HistoricTaskInstanceEntity historicTaskInstance = commandContext
				.getDbSqlSession().selectById(HistoricTaskInstanceEntity.class,taskId);
		if (historicTaskInstance != null) {
			historicTaskInstance.markEnded(deleteReason);
		}
		return null;
	}
}

关于historicTaskInstance.markEnded(deleteReason)操做以后数据库的数据就会更新,能够参考Activiti权威指南一书中的会话缓存章节ide

相关文章
相关标签/搜索