国产一级a片免费看高清,亚洲熟女中文字幕在线视频,黄三级高清在线播放,免费黄色视频在线看

打開APP
userphoto
未登錄

開通VIP,暢享免費(fèi)電子書等14項(xiàng)超值服

開通VIP
JBPM4.3總結(jié)四

2.9任務(wù)管理

2.9.1 分配任務(wù)

流程定義時(shí),分配任務(wù)有多種方法:

1. 直接分配給成員:assignee="user1" 可以同時(shí)分配多人:candidate-users"user1","user2","user3"

2. 分配給組:candidate-groups="it_dept" 分配給多個(gè)組:用逗號(hào)隔開部門id組列表。

3. 利用任務(wù)泳道進(jìn)行分配:

1.任務(wù)泳道分配的特點(diǎn):一個(gè)單子可以有多個(gè)人填寫,一旦A填寫了,別人就不能 填寫。而且當(dāng)A提交的單子被退回的時(shí)候還應(yīng)該有A來繼續(xù)。

2.泳道定義:<swimlane candidate-groups="it_dept" name="test"/>,也可以為 candidate-users.

3.使用泳道:在task定義時(shí) swimlane="test" 使用泳道,任務(wù)分配給it_dept  門

4.使用任務(wù)分配器assignment-handler標(biāo)簽 使用方法:<assignment-handler class = "">

<field name="test"><string value="ttttttt"/></field>

</assignment-handler>

class里面動(dòng)態(tài)分配assignable.setAssignee(test);

通過傳參數(shù),設(shè)置 test的值。實(shí)現(xiàn)動(dòng)態(tài)分配

 

2.9.2 成員任務(wù)列表

List<Task> taskList = taskService.findPersonalTasks(username);

2.9.3 組成員任務(wù)列表

List<Task> taskList = taskService.findGroupTasks(username);

由于任務(wù)有轉(zhuǎn)交,加簽等功能,所以一個(gè)人想要得到自己的任務(wù)就包括 組成員任務(wù)和 成員任務(wù)兩部分組成。

2.9.4 執(zhí)行任務(wù)

得到任務(wù)列表后,如果任務(wù)有對(duì)應(yīng)的表單,就先跳到表單,填寫,然后執(zhí)行。表單的綁定:在task標(biāo)簽中使用 form = "xxxx.jsp",執(zhí)行語句:

taskService.completeTask(taskId,"toFork1",map);

taskId 是任務(wù)id 

toFork1 outcome,即任務(wù)的出口

Map 是 傳遞的任務(wù)參數(shù),通過任務(wù)就可以得到這些參數(shù):

得到指定的參數(shù)值:taskService.getVariable(taskId, "user")

    得到所有的參數(shù):taskService.getvariableNames(java.lang.String.taskId);

2.9.5 轉(zhuǎn)交任務(wù)

taskService.assignTask(taskId,"用戶Id");

2.9.6 任務(wù)加簽

taskService.addTaskParticipatingUser(taskId,"用戶Id",Participation.CANDIDATE);

2.9.7 fork  join 異步分支

<fork g="276,239,48,48" name="fork1">

      <transition g="-54,-18" name="to 計(jì)劃部" to="計(jì)劃部"/>

      <transition g="-54,-18" name="to 法務(wù)部" to="法務(wù)部"/>

      <transition g="-64,-18" name="to IT規(guī)劃部" to="IT規(guī)劃部"/>

</fork>

Fork join 處理并發(fā)的情況,分配給的三個(gè)部門當(dāng)執(zhí)行完后,都流入到join標(biāo)簽。

Join標(biāo)簽屬性: multiplicity="3" multiplicity 的意思是當(dāng)有幾個(gè)執(zhí)行到了join時(shí),流程繼續(xù)。

2.9.8 decision 決定條件

decision中會(huì)運(yùn)行并判斷每一個(gè)transition 里的判斷條件。 當(dāng)遇到一個(gè)嵌套條件是true 或者沒有

設(shè)置判斷條件的轉(zhuǎn)移,那么轉(zhuǎn)移就會(huì)被運(yùn)行。

例子:當(dāng)天數(shù)大于3天,總經(jīng)理審批 否則 結(jié)束

<decision expr="#{day > 3 ? 'to 總經(jīng)理' : 'to 結(jié)束}" g="361,280,48,48"  name="exclusive1">

      <transition g="-42,-18" name="to end1" to="end1"/>

      <transition g="-44,-18" name="to task2" to="總經(jīng)理審核"/>

   </decision> 

Decision屬性: expr 表達(dá)式 必填

2.9.9 Events 事件

 當(dāng)一個(gè)流程通過這一點(diǎn)時(shí),事件監(jiān)聽器就會(huì)被提醒。

用法:在流程的任何地方都可以加入監(jiān)聽 

<on event="start"> 

<event-listener class="org.jbpm.examples.eventlistener.LogListener"> 

// 參數(shù)

      <field name="msg"><string value="start on process definition"/></field> 

    </event-listener> 

2.9.10 JPDL簡 介
1. Start state

開始節(jié)點(diǎn) 流程開始,每個(gè)流程定義文件 只能有一個(gè)開始節(jié)點(diǎn)。

2. Task node

任務(wù)節(jié)點(diǎn)  人工參與,調(diào)用processEngine.getTaskService().complete()完 成任務(wù)

3.State node

狀態(tài)節(jié)點(diǎn)

需要使用execution.signalExcution()觸發(fā)流程流轉(zhuǎn)

4. Descision Node

流程流向判斷節(jié)點(diǎn)

指定condition條件或者DesisionHandler

5. Fork node

分支節(jié)點(diǎn),任務(wù)并行處理

6.Join node

任務(wù)聚合節(jié)點(diǎn)

7. End State

任務(wù)結(jié)束節(jié)點(diǎn) 可以有多個(gè)結(jié)束節(jié)點(diǎn)

8. Transition

控制任務(wù)流向

9. Event

事件觸發(fā) 可以在任何節(jié)點(diǎn)加事件觸發(fā)處理

 

具體參看${JPBM.HOME}/doc/userguide文檔 關(guān)于JPDL的描述

3數(shù)據(jù)庫表說明

(1)JBPM4_DEPLOYMENT

(2)JBPM4_DEPLOYPROP

(3)JBPM4_LOB
存儲(chǔ) 上傳一個(gè)包含pngjpdl.xmlzip包 的相關(guān)數(shù)據(jù) 
jbpm4_deployment表多了一條記錄 
jbpm4_deployprop表多了四條記錄,對(duì)應(yīng)langid,pdid,pdkey,pdversion 
jbpm4_lob 表多了二條記錄,保存流程圖png圖片和jpdl.xml 
4JBPM4_HIST_PROCINST與(5JBPM4_HIST_ACTINST
分別存放的是Process Instance、Activity Instance的歷史記錄。 
6JBPM4_EXECUTION
主要是存放JBPM4的執(zhí)行信息,Execution機(jī)制代替了JBPM3Token機(jī)制 
7JBPM4_TASK
存放需要人來完成的Activities,需要人來參與完成的Activity被稱為Task。 
8JBPM4_PARTICIPATION
存放Participation的信息,Participation的種類有Candidate、 Client、OwnerReplaced  AssigneeViewer。而具體的Participation既可以是單一用戶,也可以是用戶組。 
9JBPM4_SWIMLANE
Swim Lane是一種Runtime Process Role。通過Swim Lane,多個(gè)Task可以一次分配到 同一Actor身上。 
10JBPM4_VARIABLE 
存的是進(jìn)行時(shí)的臨時(shí)變量。 
11JBPM4_HIST_DETAIL
保存Variable的變更記錄。 
12JBPM4_HIST_VAR
保存歷史的變量。 
13JBPM4_HIST_TASK
Task的歷史信息。 
14JBPM4_ID_GROUP15JBPM_ID_MEMBERSHIP16JBPM4_ID_USER 
這三張表很常見了,基本的權(quán)限控制,關(guān)于用戶認(rèn)證方面建議還是自己開發(fā)一套,JBPM4 的功能太簡單了,使用中有很多需要難以滿足。 
17JBPM4_JOB 
存放的是Timer的定義。 
18JBPM4_PROPERTY

本站僅提供存儲(chǔ)服務(wù),所有內(nèi)容均由用戶發(fā)布,如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊舉報(bào)
打開APP,閱讀全文并永久保存 查看更多類似文章
猜你喜歡
類似文章
jbpm的任務(wù)管理實(shí)現(xiàn)
jBPM學(xué)習(xí)(七)----jBPM相關(guān)概念 JBPM @net -JavaEye技術(shù)社區(qū)
jbpm簡介
Jbpm自由流的實(shí)現(xiàn)
jbpm 4.4 service 概述
jBPM4常見概念
更多類似文章 >>
生活服務(wù)
分享 收藏 導(dǎo)長圖 關(guān)注 下載文章
綁定賬號(hào)成功
后續(xù)可登錄賬號(hào)暢享VIP特權(quán)!
如果VIP功能使用有故障,
可點(diǎn)擊這里聯(lián)系客服!

聯(lián)系客服