activiti流程圖畫(huà)法以及相關(guān)設(shè)置

1.最簡(jiǎn)單的流程圖

其中包括開(kāi)始節(jié)點(diǎn)、任務(wù)節(jié)點(diǎn)以及結(jié)束節(jié)點(diǎn)

簡(jiǎn)單流程圖.png

1.1 相關(guān)設(shè)置

設(shè)置id(也就是流程實(shí)例key),設(shè)置name

image.png

使用設(shè)置eclipse任務(wù)辦理人(選中該任務(wù)節(jié)點(diǎn))

image.png

1.2 部署流程

public Deployment deploy() {
        repositoryService.createDeployment().addClasspathResource("流程bpmn文件")
            .addClasspathResource("流程bpmn文件生成的png圖").deploy();
}

1.3 啟動(dòng)流程

public ProcessInstance startByKey() {
        return runtimeService.startProcessInstanceByKey("流程實(shí)例key,也就是整個(gè)流程圖的id");
}

1.4 查詢?nèi)蝿?wù)

public List<Task> findTaskByUser() {
        return taskService.createTaskQuery().taskAssignee("辦理人").list();
}

1.5 辦理任務(wù)

public void complete() {
        taskService.complete("任務(wù)id");
}

1.6 查詢流程定義列表

public List<ProcessDefinition> findDefList(String key) {
        return repositoryService.createProcessDefinitionQuery()
                .processDefinitionKey(key)
                .list();
}

1.6 查詢歷史任務(wù)

public List<HistoricTaskInstance> findHiTask() {
        return testUtil.findHiTask("studentLeave:1:80004");
}

1.7 查詢歷史活動(dòng)

public List<HistoricActivityInstance> findHiActivite(String proInsId) {
        return historyService.createHistoricActivityInstanceQuery()
                .processDefinitionId(proInsId)
                .finished()
                .list();
}

2 設(shè)置流程變量

2.1 啟動(dòng)流程并設(shè)置流程變量

public ProcessInstance startByKey(String key, Map<String, Object> map) {
        return runtimeService.startProcessInstanceByKey(key, map);
}

2.2 在流程運(yùn)行時(shí)設(shè)置流程變量

public void setRuntimeVariables(String executionId, Map<String, Object> map) {
        runtimeService.setVariables(executionId, map);
}

2.3 在任務(wù)節(jié)點(diǎn)設(shè)置流程變量

public void setTaskVariables(String taskId, Map<String, Object> map) {
        taskService.setVariables(taskId, map);
}

2.4 執(zhí)行任務(wù)時(shí)設(shè)置變量

public void complete(String taskId, Map<String, Object> map) {
        taskService.complete(taskId, map);
}

2.5 獲取運(yùn)行時(shí)流程變量

public Object getTaskVariable(String taskId, String key) {
        return taskService.getVariable(taskId, key);
}

2.6 獲取任務(wù)流程變量

public Object getTaskVariable(String taskId, String key) {
        return taskService.getVariable(taskId, key);
}

3 連線(在連線上設(shè)置條件)

3.1 設(shè)置連線條件

話流程圖.png
設(shè)置條件.png

3.2 排他網(wǎng)關(guān)

同樣需要設(shè)置連線條件,可以在網(wǎng)關(guān)節(jié)點(diǎn)處設(shè)置默認(rèn)連線

畫(huà)流程圖.png
設(shè)置默認(rèn)連線.png

3.3 并行網(wǎng)關(guān)

不需要設(shè)置連線條件

畫(huà)流程圖.png

4 設(shè)置流程辦理人

4.1 直接寫(xiě)死(如上1.1設(shè)置辦理人)

4.2 使用變量

相關(guān)設(shè)置.png

4.3 設(shè)置任務(wù)監(jiān)聽(tīng)

相關(guān)設(shè)置.png
public class MyTaskListener implements TaskListener, ExecutionListener {

    @Override
    public void notify(DelegateTask delegateTask) {
        delegateTask.setAssignee("張三");
    }

    @Override
    public void notify(DelegateExecution delegateExecution) throws Exception {
    }
}

5 多用戶任務(wù)分配

5.1 直接寫(xiě)死

相關(guān)設(shè)置.png

5.2 設(shè)置變量

相關(guān)設(shè)置.png

5.3 使用監(jiān)聽(tīng)

public class MyTaskListener1 implements TaskListener, ExecutionListener {

    @Override
    public void notify(DelegateTask delegateTask) {
        delegateTask.addCandidateUser("張三");
        delegateTask.addCandidateUser("李四");
    }

    @Override
    public void notify(DelegateExecution delegateExecution) throws Exception {
    }
}

6 設(shè)置子流程

6.1 局部子流程

局部子流程在eclipse中的位置.png
流程圖畫(huà)法.png

6.2 全局子流程

在eclipse中的位置.png
流程圖畫(huà)法.png

called element中設(shè)置對(duì)應(yīng)的流程id

相關(guān)設(shè)置.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容