activiti7.0.0.Beta3學習筆記

一、基本操作 

1.發佈流程

repositoryService.createDeployment()
                 .name("請假流程")
                 .addClasspathResource("processes/task.bpmn")
                 .deploy();

影響表ACT_RE_PROCDEF、ACT_RE_DEPLOYMENT、ACT_GE_BYTEARRAY

2.啓動流程實例

// xml中定義的ID
        String instanceKey = "task";
        logger.info("開啓請假流程...");
        // 設置流程參數,開啓流程
        Map<String,Object> map = new HashMap<String,Object>();
        map.put("jobNumber","A1001");
        map.put("busData","bus data");
        //使用流程定義的key啓動流程實例,key對應helloworld.bpmn文件中id的屬性值,使用key值啓動,默認是按照最新版本的流程定義啓動
        ProcessInstance instance = runtimeService.startProcessInstanceByKey(instanceKey, map);
        logger.info("啓動流程實例成功:{}", instance);
        logger.info("流程實例ID:{}", instance.getId());
        logger.info("流程定義ID:{}", instance.getProcessDefinitionId());
        
        //驗證是否啓動成功
        //通過查詢正在運行的流程實例來判斷
        ProcessInstanceQuery processInstanceQuery = runtimeService.createProcessInstanceQuery();
        //根據流程實例ID來查詢
        List<ProcessInstance> runningList = processInstanceQuery.processInstanceId(instance.getProcessInstanceId()).list();
        logger.info("根據流程ID查詢條數:{}", runningList.size());

影響表ACT_HI_VARINST、ACT_HI_TASKINST、ACT_HI_PROCINST、ACT_HI_ACTINST、ACT_HI_IDENTITYLINK、ACT_RU_EXECUTION、ACT_RU_TASK、ACT_RU_IDENTITYLINK、ACT_RU_VARIABLE

3.拾取任務

/**拾取任務,將組任務分給個人任務,指定任務的辦理人字段*/
    @Test
    public void claim(){
        //將組任務分配給個人任務
        //任務ID
        String taskId = "5007";
        //分配的個人任務(可以是組任務中的成員,也可以是非組任務的成員)
        String userId = "郭靖";
        taskService.claim(taskId, userId);
    }

影響表ACT_HI_IDENTITYLINK、ACT_RU_IDENTITYLINK

4.完成任務

 //完成任務
    @Test
    public void complete()
    {
        String taskId = "5007";

        Map<String, Object> variables=new HashMap<String,Object>();
        variables.put("days", 2);
        variables.put("date", new Date());
        variables.put("reason", "發燒");

        //完成任務
        taskService.complete(taskId,variables);
    }

影響表ACT_HI_VARINST、ACT_HI_ACTINST

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章