工作流编写教程
?
介紹
ONES中使用了flowchart.js作為前端展示,并且擴展了flowchart.js的流程描述語言。
flowchart.js 參見:?https://github.com/adrai/flowchart.js
描述語言分為三部分,使用\n\n(空一行)作為分割,分別是節點定義、執行流程描述、節點權限描述
節點定義
eg:
make_stockout=>operation: 生成出庫單:> m:Sale/Orders::convert_to_stock_out
必填項目:
- make_stockout?定義的是一個別名叫做?make_stockout的節點
- =>是節點和其設置的分隔符,這部分是和flowchart一致的
- operation表示的是節點的類型,和flowchart一致,比如start, end, operation, condition等。:?(注意冒號后面的空格)是標識節點類型的結束
- 生成出庫單?表示的是節點的顯示名稱,如果表示為?生成出庫單:正在出庫,則冒號前面是節點的按鈕名稱,后面是節點的狀態名稱。后面的:>(注意冒號后面的空格)表示的是節點的顯示名稱描述結束
非必填項目
- m:Sale/Orders::convert_to_stock_out?這部分是一個整體,m:表示的是執行一個服務接口的方法(M ethod),Sale/Orders代表的是所執行的服務,命名方式參照ThinkPHP的D()方法參數,convert_to_stock_out為服務提供的方法。
- 也可以通過此處直接修改當前流程的數據,比如:u:status=1,表示為更新(U pdate)status為1
流程描述
eg:
start(right)->save_bill(right)->confirm->check_if_all_out check_if_all_out(yes)->response->end check_if_all_out(no)->continue_out->confirm(right)- 流程描述以->為分隔符,分隔符兩端分別為執行節點的上下文關系
- (right)是flowchart.js的描述方法,標識在前端顯示中,會將下一節點置于上一節點右側
- (yes)?or?(no)?是condition類型節點專用的,分別標識條件判斷執行結果為真或者假的情況下的后續操作
權限描述
權限描述可以通過在前端雙擊工作流節點進行設置,也可以手動填寫,默認的eg:
end=>auto:auto response=>auto:waiting save_bill=>auto:owner注意這三個特殊的執行者身份
- auto:auto?代表節點會自動執行
- auto:wait?代表當前流程會和其他流程有交叉,并且會等待其他流程的響應
- auto:owner?代表當前流程數據的創建者
轉載于:https://www.cnblogs.com/h2zZhou/p/5362606.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
- 上一篇: Objective-C中,ARC下的 s
- 下一篇: iOS--viewController