/** * 获取流程定义 * * @param procDefId 流程定义ID * @return 流程定义资源 */ public ProcessDefinitionEntity getProcessDefinition(String procDefId) { return (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService).getDeployedProcessDefinition(procDefId); }
public Deployment deploy() { return repositoryService.deploy(this); }
/** * @param params * <table> * <tr><td>key</td><td>value</td><td>comment</td></tr> * <tr><td>processDefinitionId</td><td> process definition id (use PROCESS_DEFINITION_ID)</td><td></td></tr> * </table> * @return null in case of params == null in other cases @see RepositoryServiceImpl ProcessDiagramGenerator */ @Override public InputStream generateLayer(String imageType, Map<String, Object> params) { // get process definition entity final String processDefinitionKey = (String) params.get( PROCESS_DEFINITION_ID ); final String processDefinitionId = repositoryService.createProcessDefinitionQuery().processDefinitionKey( processDefinitionKey ).singleResult().getId(); ProcessDefinitionEntity pde = (ProcessDefinitionEntity) ( ((RepositoryServiceImpl) repositoryService).getDeployedProcessDefinition( processDefinitionId )); if (ImageTypes.SVG.equalsType( imageType)) { return SVGProcessDiagramGenerator.generateDiagram( pde, imageType, Collections.<String> emptyList()); } return ProcessDiagramGenerator.generateDiagram(pde, imageType, Collections.<String> emptyList()); }
@Override public InputStream generateLayer(String imageType, Map<String, Object> params) { // get parameters final String processDefinitionKey = (String) params.get( PROCESS_DEFINITION_ID ); final String processDefinitionId = repositoryService.createProcessDefinitionQuery().processDefinitionKey( processDefinitionKey ).singleResult().getId(); // get process activities to write count Set<String> writeableActivities = (Set<String>) params.keySet(); writeableActivities.remove( PROCESS_DEFINITION_ID); // get process definition entity ProcessDefinitionEntity pde = (ProcessDefinitionEntity) ( ((RepositoryServiceImpl) repositoryService).getDeployedProcessDefinition( processDefinitionId )); ProcessDiagramCanvas canvas = initProcessDiagramCanvas( pde ); for (ActivityImpl activity : pde.getActivities()) { // Draw count into activities if (writeableActivities.contains(activity.getId())) { canvas.drawStringToNode( params.get( activity.getId() ).toString(), activity.getX(), activity.getY(), activity.getWidth(), activity.getHeight()); } } return canvas.generateImage(imageType); } }
@Override public ActivityImpl selectActivityImplByTask(String taskId) { if (StringUtils.isNullOrEmpty(taskId)) { return new ActivityImpl(null, null); } Task task = taskService.createTaskQuery().taskId(taskId).singleResult(); ProcessDefinitionEntity entity = (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService).getDeployedProcessDefinition(task.getProcessDefinitionId()); List<ActivityImpl> activities = entity.getActivities(); return activities .stream() .filter(activity -> "userTask".equals(activity.getProperty("type")) && activity.getProperty("name").equals(task.getName())) .findFirst() .orElseThrow(() -> new NotFoundException("获取节点信息失败")); }
/** * */ @Override public InputStream generateLayer(String imageType, Map<String, Object> params) { // get parameters final String processDefinitionKey = (String) params.get( PROCESS_DEFINITION_ID ); final String processDefinitionId = repositoryService.createProcessDefinitionQuery().processDefinitionKey( processDefinitionKey ).singleResult().getId(); @SuppressWarnings("unchecked") List<String> highLightedActivities = (List<String>) params.get( HIGHLIGHTED_ACTIVITIES ); // get process definition entity ProcessDefinitionEntity pde = (ProcessDefinitionEntity) ( ((RepositoryServiceImpl) repositoryService).getDeployedProcessDefinition( processDefinitionId )); ProcessDiagramCanvas canvas = initProcessDiagramCanvas( pde ); for (ActivityImpl activity : pde.getActivities()) { // Draw highlighted activities if (highLightedActivities.contains(activity.getId())) { canvas.drawHighLight(activity.getX(), activity.getY(), activity.getWidth(), activity.getHeight(), color); } } return canvas.generateImage(imageType); } public void setColor(Color c) {
@Override public Deployment deploy() { return repositoryService.deploy(this); }
.getDeployedProcessDefinition(task.getProcessDefinitionId());
public Deployment deploy() { return repositoryService.deploy(this); } /**
.getDeployedProcessDefinition(curTask.getProcessDefinitionId());
public Deployment deploy() { return repositoryService.deploy(this); }
public static ProcessDefinitionEntity getProcessDefinition(ProcessEngine processEngine, String processDefId) { return (ProcessDefinitionEntity) ((RepositoryServiceImpl) processEngine.getRepositoryService()) .getDeployedProcessDefinition(processDefId); }
/** * * @param policy 部署策略 * DeploymentBuilder.Deploy_policy_default 默认策略 未完成的任务和流程实例还是按照旧的版本执行 DeploymentBuilder.Deploy_policy_upgrade 升级未完成的任务和流程实例,全部按照新的版本执行 DeploymentBuilder.Deploy_policy_delete 删除未完成的任务和流程实例 * @return */ public Deployment deploy(int deployPolicy) { this.deployPolicy = deployPolicy; this.deployment.setDeployPolicy(deployPolicy); return repositoryService.deploy(this); }
/** * 获取流程定义 * * @param procDefId 流程定义ID * @return 流程定义资源 */ public ProcessDefinitionEntity getProcessDefinition(String procDefId) { return (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService).getDeployedProcessDefinition(procDefId); }
public ReadOnlyProcessDefinition getDeployedProcessDefinition(String processDefinitionId) { // Currently, getDeployedProcessDefinition is still experimental and not exposed on // RepositoryService interface return ((RepositoryServiceImpl)repoService).getDeployedProcessDefinition(processDefinitionId); }
public ReadOnlyProcessDefinition getDeployedProcessDefinition(String processDefinitionId) { // Currently, getDeployedProcessDefinition is still experimental and not exposed on // RepositoryService interface return ((RepositoryServiceImpl)repoService).getDeployedProcessDefinition(processDefinitionId); }
public List<ActivityImpl> getActivitiImplListByProcessDefinitionId( String processDefinitionId) { ProcessDefinitionEntity def = (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService) .getDeployedProcessDefinition(processDefinitionId); List<ActivityImpl> activitiList = def.getActivities();// 获得当前任务的所有节点 List<ActivityImpl> ret = new ArrayList<ActivityImpl>(activitiList); return ret; }
public ActivityImpl getActivityImplByDefId(String actDefId, String processDefineId) { ActivityImpl actImpl = null; ProcessDefinitionEntity def = (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService) .getDeployedProcessDefinition(processDefineId); return def.findActivity(actDefId); }
/** * 读取流程中任务名称 * * @param processDefinitionId * 流程定义的ID * @return Map<英文名称, 中文名称> */ public Map<String, String> getUserTaskKeysByProcessDefinitionId(String processDefinitionId) { Map<String, String> keys = new HashMap<String, String>(); ProcessDefinitionEntity processDefinitionEntity = (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService) .getDeployedProcessDefinition(processDefinitionId); List<ActivityImpl> activitiList = processDefinitionEntity.getActivities(); setSingleUserTaskActivity(keys, activitiList); return keys; }
@Override public ActivityImpl selectActivityImplByTask(String taskId) { if (StringUtils.isNullOrEmpty(taskId)) { return new ActivityImpl(null, null); } Task task = taskService.createTaskQuery().taskId(taskId).singleResult(); ProcessDefinitionEntity entity = (ProcessDefinitionEntity) ((RepositoryServiceImpl) repositoryService).getDeployedProcessDefinition(task.getProcessDefinitionId()); List<ActivityImpl> activities = entity.getActivities(); return activities .stream() .filter(activity -> "userTask".equals(activity.getProperty("type")) && activity.getProperty("name").equals(task.getName())) .findFirst() .orElseThrow(() -> new NotFoundException("获取节点信息失败")); }