天天看點

流程設計器

去年做的一個流程設計器,跟大家分享下。

由于我們平台要加入工作流的支援,必須設計一個WEB端的流程設計器,剛開始并沒有什麼概念,于是在網上查找資料,發現網上找的資源要麼亂七八糟,要麼各種BUG,一些做得比較好的又沒有分享源碼,很頭痛,最終還是決定自己設計。

當時看了一篇博文,部落客的流程設計器确實不錯,但是并沒有分享源碼,通過截圖我決定參考他的樣式,這是原文位址:http://lipinliang.iteye.com/blog/578822

主要使用的技術:VML(缺點:隻支援IE浏覽器)、Ext(在一個比較大,因為我們平台使用Ext做的,是以使用Ext作為外層架構,使用的并不多,外層架構和一些事件機制以及DOM元素的選擇)和JS操作XML。

設計器缺陷:由于時間原因,并沒有一個整體的構思,沒有使用類思想,純粹的function方法,代碼看起來比較亂,重用方法不夠抽象,使得後面難以更新。并且沒有加入自定義表單的支援,是以是面對程式員開發的。

前段時間剛做完表單設計器,于是決定重新開發流程設計器,使用類思想,兩者結合,達到面向客戶、開發迅速、不需要編碼的目的,并且友善擴充,閱讀清晰。新的流程設計器使用的畫圖技術是拉斐爾,相容全浏覽器,有興趣的可以了解下。http://raphaeljs.com

事先申明,代碼并不是很規範,可能很難閱讀,僅供參考,有需要源碼的請留下你的郵箱位址。

因為前期是直接通過記事本開發,因需使用平台内的功能以及結合JBPM,後面轉入J2EE平台開發,是以這個版本的功能并不是很全,其他功能在平台上實作。

下載下傳的打封包件忘了把Ext打包了,這邊補上,檢視index.html裡的JS引入路徑,版本是3.3。

下載下傳位址:流程設計器Ext下載下傳位址

CSDN不讓修改資源,重新整合了一份上傳,裡面已包含Ext檔案,這邊提供下載下傳位址:流程設計器

下面是截圖介紹:

1.流程設計器主界面,采用Ext的border布局,分為工具條區、屬性欄區和工作區。通過左側選擇功能對應的在右邊作圖,下方則是節點的屬性設定,并且可以實時檢視生成的XML檔案。

流程設計器

 2.XML代碼實時檢視,并且可以通過修改XML來編輯流程圖。

流程設計器

 3.節點的選中以及連線

流程設計器

 4.節點屬性

流程定義(基本資訊、湧到定義、SQL腳本、消息提醒、郵件發送):

流程設計器
流程設計器
流程設計器
流程設計器
流程設計器

 任務節點(基本資訊、轉換模式、任務委派、業務表單、SQL腳本、消息提醒、郵件發送):

流程設計器
流程設計器
流程設計器

流程轉換節點(基本資訊、動态委派、轉換條件、SQL腳本、消息提醒、郵件發送):

流程設計器
流程設計器

分支合并節點

流程設計器

CSDN下載下傳位址:流程設計器http://download.csdn.net/detail/wind2154/4235584