Activiti 开始流程时存储发起人员USERID

activiti:initiator 属性的作用: 可以把启动流程实例的操作人名称“applyUserId”保存到数据库中,需要配合使用

identifyService.setAuthenticated-UserId(String userId) 引擎会把setAuthenitcatedUserId() 方法的参数作为流程启动人,通过调用HistoricProcessInstance 实例的 getStartUserId() 可以获取历史(也可能是正在运行)流程实例由那个用户启动的。

processEngine.getIdentityService().setAuthenticatedUserId(userId);



/**
	 * 我的申请
	 */
	public Criteria findPersonalTasks(String userid, Criteria criteria) {
		if(userid==null||"".equals(userid)){
			return criteria;
		}
		
		// 如果是办理过的签名肯定是本人
		HistoricProcessInstanceQuery todoQuery = historyService.createHistoricProcessInstanceQuery()
		.orderByProcessDefinitionId().desc().orderByProcessInstanceEndTime().desc();
		
		
		List<HistoricProcessInstance> todoList = todoQuery.startedBy(userid).listPage((criteria.getPageNum()-1), criteria.getNumPerPage());
		criteria.setTotal((int)(todoQuery.count()));
		criteria.setList(todoList);
		return criteria;
	}


你可能感兴趣的:(Activiti)