1范圍
1.1范圍
1.2系統概述
系統應用於需要通過流程來管理的業務。系統架構采用前后端分離,前端采用Vue、后端采用.net 5+workflow core作為技術棧。系統第一版本預定5月31日開發完成第一個pre版。項目應用於互聯網端需要采用工作流管理業務的場景。系統定位6月7日正式上線。
其他系統相關文檔:
后續開發時間表:
1.3文檔概述
本文檔用於小組內部技術溝通及前期項目了解,本文檔密級為公開,后續詳細完善的詳細文檔為保密。
2引用文檔
4接口設計
4.1流程管理
4.1.1查詢全部流程模板
接口描述
查詢所有流程模板,用於創建流程使用,唯一標識:A001_001。
請求參數描述
null。
接口描述
返回參數

[ { "version": 1, "title": "企業用戶注冊", "limitTime": null, "wkDefinitionState": 1, "icon": "icon.jpg", "color": "red", "groupId": null, "discription": "用於互聯網+企業用戶注冊", "sortNumber": 0, "tenantId": null, "nodes": [ { "wkStepBodyId": null, "wkDefinitionId": "b0e8c180-c536-4828-2344-39fce340c989", "name": "Start", "displayName": "開始", "stepNodeType": 1, "version": 1, "limitTime": null, "stepBody": null, "position": [], "nodeFormType": 1, "applicationForms": [], "nextNodes": [ { "label": "", "nextNodeName": "Receive", "wkConNodeConditions": [] } ], "wkCandidates": [] }, { "wkStepBodyId": "6e8ecc45-598f-007a-eae1-39fce3403e48", "wkDefinitionId": "b0e8c180-c536-4828-2344-39fce340c989", "name": "Receive", "displayName": "收件受理", "stepNodeType": 2, "version": 1, "limitTime": null, "stepBody": { "name": "FixedUserAudit", "displayName": "指定用戶審核", "inputs": [ { "wkNodeId": "6e8ecc45-598f-007a-eae1-39fce3403e48", "key": "Candidates", "stepBodyParaType": 0, "name": "Candidates", "displayName": "審核人", "value": "data.Candidates" }, { "wkNodeId": "6e8ecc45-598f-007a-eae1-39fce3403e48", "key": "DecideBranching", "stepBodyParaType": 1, "name": "DecideBranching", "displayName": "審核人", "value": "step.DecideBranching" } ], "typeFullName": "Hx.Workflow.Application.StepBodys.GeneralAuditingStepBody", "assemblyFullName": "Hx.Workflow.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" }, "position": [], "nodeFormType": 1, "applicationForms": [], "nextNodes": [ { "label": "", "nextNodeName": "PrimaryAudit", "wkConNodeConditions": [] } ], "wkCandidates": [] }, { "wkStepBodyId": "6e8ecc45-598f-007a-eae1-39fce3403e48", "wkDefinitionId": "b0e8c180-c536-4828-2344-39fce340c989", "name": "PrimaryAudit", "displayName": "審核", "stepNodeType": 2, "version": 1, "limitTime": null, "stepBody": { "name": "FixedUserAudit", "displayName": "指定用戶審核", "inputs": [ { "wkNodeId": "6e8ecc45-598f-007a-eae1-39fce3403e48", "key": "Candidates", "stepBodyParaType": 0, "name": "Candidates", "displayName": "審核人", "value": "data.Candidates" }, { "wkNodeId": "6e8ecc45-598f-007a-eae1-39fce3403e48", "key": "DecideBranching", "stepBodyParaType": 1, "name": "DecideBranching", "displayName": "審核人", "value": "step.DecideBranching" } ], "typeFullName": "Hx.Workflow.Application.StepBodys.GeneralAuditingStepBody", "assemblyFullName": "Hx.Workflow.Application, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null" }, "position": [], "nodeFormType": 1, "applicationForms": [], "nextNodes": [ { "label": "", "nextNodeName": "Receive", "wkConNodeConditions": [ { "field": "DecideBranching", "operator": "==", "value": "BackOff" } ] }, { "label": "", "nextNodeName": "End", "wkConNodeConditions": [ { "field": "DecideBranching", "operator": "==", "value": "Submit" } ] } ], "wkCandidates": [] }, { "wkStepBodyId": null, "wkDefinitionId": "b0e8c180-c536-4828-2344-39fce340c989", "name": "End", "displayName": "結束", "stepNodeType": 3, "version": 1, "limitTime": null, "stepBody": null, "position": [], "nodeFormType": 1, "applicationForms": [], "nextNodes": [], "wkCandidates": [] } ] } ]
4.1.2創建實例
接口概述
創建流程模板,唯一標識:A001_002。
請求參數描述
流程模板參數:inputs,DecideBranching控制流程流轉,當DecideBranching值為BackOff則表示回退,當DecideBranching值為Submit表示提交;參數Remark為審核意見。
{ "id": "fa20498b-863f-4877-8379-39fc7d7ebb55", "version": 1, "inputs": { "UserId": "e3a824ed-e27f-1335-ac16-39fc677255bf", "DecideBranching": "" } }
接口描述
返回參數
204,null。
5詳細設計
5.1流程管理
5.1.1概述
用戶查詢出定義好的流程,並選擇需要辦理的業務,在一些業務中還可能需要預先查詢及填寫業務信息才可以創建流程,最后創建流程。
5.1.2查詢並流程模板
概述
查詢已經創建好的流程模板,如果流程模板數量很少使用列表項顯示,如果層級很多通過擴展項或樹來顯示,供用戶選擇。
限制
僅當擁有創建流程的權限時顯示查詢按鈕或列表。
接收及輸入數據
輸入數據為空,接收流程模板對象列表,流程模板對象包括:名稱、顯示名稱、唯一標識【接口:A001_001】。
邏輯處理
選擇並確定后進入流程步驟編輯及流轉頁面【接口:A001_002】。
5.1.3流程步驟編輯及流轉
概述
流程步驟編輯及流轉分為公共區域與表單區域。
公共區域是與工作流關聯的部分,包括對當前步驟數據(流程數據及表單數據)的保存,提交到下一環節,退回上一步,打印流程相關表單,轉交予其他同等權限人員辦理,及流程生命周期查看。
表單區域是具體業務的體現,根據不同的業務定義不同的表單,通過流程模板定義時傳入的內容動態顯示表單區域。
限制
流程開始、結束步驟不能退回。
如創建流程時無外部查詢及填寫信息則開始步驟必須可以編輯表單內容。
流程結束環節不能編輯表單。
流程中間步驟視具體業務決定是否可以編輯表單。
流程提交及退回需要填寫審批意見,視業務可以提供默認審批意見(如提交申請,沒有申請意見)。
接收及輸入數據
保存:保存表單信息及審批意見(如存在審批意見)【接口:A001_003】。
提交:業務數據保存【由業務表單提供回調】,查詢可提交人【接口:A001_004】,選擇並確認后提交到下一步驟【接口:A001_005】。
退回:退回到上一步驟【接口:A001_006】。
打印:查詢步驟中保存的表單列表【接口:A001_007】,並提供打印功能。
流程查看:查詢流程步驟詳細信息【接口:A001_008】。
轉辦:查詢並顯示可轉辦人員【接口:A001_009】,選擇並確定后轉辦到其他辦理人員【接口:A001_010】。
邏輯處理
流程被掛起、作廢時禁止操作流程環節,流程重新開始恢復流程操作。
5.1.4掛起流程
概述
掛起流程實例。
限制
僅對還在辦理中的流程進行掛起,不能掛起已完成、已掛起的流程。
接收及輸入數據
查詢已掛起流程實例,分頁展示所有,按查詢條件查詢【接口:A001_011】。
掛起已選擇的流程實例(可批量選擇)【接口:A001_012】。
解掛流程實例【接口:A001_013】。
邏輯處理
掛起流程實例解掛激活后重新進入在辦流程實例,可以進行后續業務辦理。
5.1.5作廢流程
概述
作廢流程實例。
限制
對還在辦理中的流程實例、掛起流程實例進行掛起。
接收及輸入數據
查詢已掛起流程實例,分頁展示所有,按查詢條件查詢【接口:A001_014】。
作廢已選擇的流程實例(可批量選擇)【接口:A001_015】。
邏輯處理
作廢流程實例不能再進行后續流程辦理。
5.1.6進展查詢
概述
查詢流程進展情況。
限制
擁有權限的人員查詢業務進展情況。
接收及輸入數據
查詢流程實例,分頁展示所有,按查詢條件查詢【接口:A001_016】。
邏輯處理
無。