JeeSite 工作流的應用實例

2020-10-28 11:46 更新

1 新建流程模型

在線辦公-流程管理-模型管理-新建模型


點擊“提交”后會立即跳轉(zhuǎn)到“流程在線設(shè)計器”頁面,請看下一章節(jié)

2 在線流程設(shè)計器

在線辦公→流程管理→模型管理→模型管理→編輯

注意:此功能不支持IE,請用谷歌或火狐瀏覽器編輯。



2.1 設(shè)置流程屬性

  • 名稱:流程定義名稱
  • 描述:流程定義描述
  • 流程標識:流程定義?KEY?,對應?procDefKey?,用來標識一個流程

2.2

拖拽形狀元素

  • ?Start event?:開始事件
  • ?End entit?:結(jié)束事件
  • ?User task?:用戶任務活動
  • ?Service task?:服務任務活動
  • ?Exclusive gateway?:排它網(wǎng)關(guān)通道,只能有一條分支執(zhí)行,如if else
  • ?Parallel gateway?:并行網(wǎng)關(guān)通道,所有分支一塊執(zhí)行
  • ?Enclusive gateway?:包含網(wǎng)關(guān)通道,執(zhí)行符合條件的分支

參考:http://www.mossle.com/docs/activiti/#bpmnConstructs


2.3 流程發(fā)起人流程變量
在開始節(jié)點的屬性中設(shè)置“流程發(fā)起人”變量名:如:apply


這時,任務的參與者可設(shè)置${apply},來指定誰發(fā)起誰執(zhí)行 

 

如發(fā)起人發(fā)起流程,被駁回是,駁回到發(fā)起人,可使用方法。



2.4 掛接表單地址

  • 全局表單:新建流程時或活動元素上未設(shè)置表單標識時調(diào)用的表單,位于開始事件屬性中“表單標識”字段,指定表單訪問地址。
  • 活動表單:當前步驟使用的表單,使用活動節(jié)點屬性“表單標識”字段。
 

2.5設(shè)置參與者

在活動節(jié)點屬性中找到“參與者”屬性,點擊“…”彈出如下窗口



  • assignee:任務執(zhí)行人,設(shè)置系統(tǒng)中的“登錄名”(loginName)。
  • candidateUsers:任務執(zhí)行人,多個用逗號“,”隔開。
  • candidateGroups:任務執(zhí)行組,多個用逗號“,”隔開,設(shè)置系統(tǒng)中的“角色英文名(enname)”。

assigneecandidateUsers的區(qū)別是:assignee不需要簽收任務,直接可執(zhí)行任務;candidateUsers為競爭方式分配任務,被指定人待辦中都有一條任務,誰先簽收誰就獲得任務的執(zhí)行權(quán)。


參與者可指定流程變量(EL表達式),動態(tài)指定參與者,如:${processer}


2.6 設(shè)置流轉(zhuǎn)條件
在流轉(zhuǎn)線的屬性中找到“流轉(zhuǎn)條件”,這里,寫EL表達式,返回 true 或 false,如:${flag == ‘1’}


2.7 保存流程設(shè)計圖
工具欄上點擊“保存”按鈕 


這時,任務的參與者可設(shè)置${apply},來指定誰發(fā)起誰執(zhí)行


如發(fā)起人發(fā)起流程,被駁回是,駁回到發(fā)起人,可使用方法。


2.8注意事項

  • 所有編號,如:模型編號、流程編號、活動節(jié)點編號,都不允許以數(shù)字開頭。

3 部署流程

  • 上步咱們學習了流程設(shè)計,產(chǎn)生流程設(shè)計圖,如何將我們的圖部署到系統(tǒng)中并使用呢,請看如下操作:
  • 在線辦公→流程管理→模型管理→模型管理→部署
  • 接著系統(tǒng)會提示“部署成功”信息,如果提示錯誤,說明你流程設(shè)計圖有問題,請檢查錯誤,重新執(zhí)行部署操作。
  • 另外兩種部署方法,通過eclipse插件設(shè)計好的流程:
在線辦公-流程管理-流程管理-部署流程-選擇流程.bpmn.xml
編寫并執(zhí)行ant腳本,啟動系統(tǒng)將自動部署
/ jeesite/src/main/resources/act/build.xml。
  • 設(shè)置流程分類:在流程管理中直接點擊流程分類進行設(shè)置。
  • 同一標識流程,部署多次,版本號自動加1
  • 正在運行的流程,再次部署新流程后,正在運行的流程還按照原來流程設(shè)置走,再次新建的流程使用新流程走。

4 流程表單流轉(zhuǎn)

4.1 數(shù)據(jù)庫設(shè)計
使用 erm 進行數(shù)據(jù)庫建模,然后使用代碼生成工具生成增刪改查代碼。
流程業(yè)務表中必須包含,如下字段:

生成 ddl 導入數(shù)據(jù)庫

4.2 代碼生成代碼
功能訪問路徑與第2章掛接表單對應(/oa/testAudit/form);
請參考:“在線辦公->個人辦公->審批測試”模塊
源碼:com.thinkgem.jeesite.modules.oa.*. TestAudit*.java,testAudit*.jsp

4.3 啟動流程接口
TestAuditService.java第62行,傳遞參數(shù)如下:
/**
	 * 啟動流程
	 * @param procDefKey 流程定義KEY
	 * @param businessTable 業(yè)務表表名
	 * @param businessId	業(yè)務表編號
	 */
	@Transactional(readOnly = false)
	public void startProcess(String procDefKey, String businessTable, String businessId)
4.4 提交任務接口
TestAuditService.java第123行,傳遞參數(shù)如下:
/**
	 * 提交任務, 并保存意見
	 * @param taskId 任務ID
	 * @param procInsId 流程實例ID,如果為空,則不保存任務提交意見
	 * @param comment 任務提交意見的內(nèi)容
	 * @param vars 任務變量
	 */
	@Transactional(readOnly = false)
	public void complete(String taskId, String procInsId, String comment, Map<String, Object> vars)
4.5 視圖流轉(zhuǎn)信息調(diào)用組件
傳遞流程實例ID,如下:
<tags:actHistoicFlow procInsId="${testAudit.act.procInsId}" />

5 測試執(zhí)行

在線辦公→個人辦公→新建任務→test_audit→啟動流程
系統(tǒng)自動調(diào)用流程設(shè)計時設(shè)置的開始節(jié)點中的“表單標識”地址

這事待辦人的待辦中出現(xiàn)一條待辦項

點擊進入辦理,下方顯示流轉(zhuǎn)信息:


流程跟蹤圖:

在待辦中點擊“環(huán)節(jié)名稱”,進入流程跟蹤圖界面

辦理任務,最下方顯示流轉(zhuǎn)信息:


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號