Workflow

流程節點拆解

本頁把跨部門專案履約流程拆成可獨立作業、可被事件串接、可通知追蹤的節點。每個部門只維護自己的節點資料,但所有節點都回寫到同一個專案流程主線。

節點設計原則

  • 每個節點必須有負責部門、負責人、開始條件、完成條件、狀態與異動紀錄。
  • 部門模組之間不直接修改彼此資料,只透過事件與共用流程狀態串接。
  • 各部門可以有自己的細狀態,但要映射到共用狀態:未開始、進行中、等待他部門、異常、已完成、不適用。
  • 通知模組只監聽節點狀態、期限與事件,不隸屬於任何單一部門。

共用節點欄位

欄位說明
NodeId節點唯一識別碼。
ProjectId關聯專案。
NodeType節點類型,例如 SalesOpening、EngineeringBom、Procurement。
Department負責部門。
OwnerUserId負責人,可先保留欄位,登入權限後期再接。
Status共用狀態。
DueDate預計完成日。
CompletedAt實際完成日。
BlockedReason阻塞原因。
SourceDocumentId關聯文件,例如規格書、BOM、報價單、驗收單。
LastEventAt最後事件時間。

完整節點矩陣

節點 負責部門 輸入 輸出 觸發下一步
01 業務開案 業務 標案、客戶、專案名稱、案件編號、開始日期。 Project 建立,專案主線啟動。 通知工程接收規格書。
02 規格書交付 業務 客戶規格書、合約需求、履約交貨日、驗收條件。 規格書文件版次與交付紀錄。 建立工程 BOM 任務。
03 工程 BOM 建立 工程 規格書、工程圖、既有標準料表。 BOM 草稿,可分電控、機構、軟體或其他。 BOM 審核或補件需求。
04 BOM 審核與發布 工程 / PM BOM 草稿、版本差異、缺件說明。 已發布 BOM 版本。 產生採購需求。
05 採購需求產生 採購 已發布 BOM、需求數量、需求日期。 採購需求清單。 建立報價單或採購單匯入任務。
06 報價單 / 採購單匯入 採購 PDF、Excel、供應商報價單或採購單。 採購 JSON、採購明細、案件編碼對應。 建立採購狀態追蹤。
07 採購叫貨 採購 採購明細、供應商、交貨日期。 已叫貨紀錄、預計交貨日。 建立到貨確認提醒。
08 到貨確認 採購 / 倉管 叫貨紀錄、供應商出貨資訊、收貨資料。 已到貨、部分到貨、未到貨、異常到貨。 通知組裝可用料或缺料風險。
09 廠內組裝 組裝 / 生產 已到貨品項、工程圖、組裝排程。 組裝進度、缺料、異常回報。 組裝完成後進入測試。
10 組裝測試 工程 / 組裝 組裝完成品、測試規格。 測試結果、需調整項目。 測試通過後進入履約交貨。
11 履約交貨 業務 / PM / 出貨 組裝測試完成、合約履約交貨日。 交貨紀錄、逾期風險紀錄。 需要現場安裝時建立安裝任務。
12 現場安裝 現場工程 交貨紀錄、醫院施工時間、現場需求。 安裝紀錄、現場問題、補件需求。 安裝完成後進入驗收改善。
13 驗收改善 工程 / 現場工程 / 業務 驗收問題、現場回饋、補件項目。 改善紀錄、客戶確認。 問題清除後進入驗收完成。
14 驗收完成 業務 / PM 驗收文件、客戶確認、改善完成紀錄。 驗收完成狀態。 啟動結案確認。
15 結案確認 各部門 / PM 驗收完成、各部門確認、文件歸檔。 專案結案。 封存流程與報表。

節點子工作矩陣

以下矩陣把每個主節點拆成可開發、可測試、可追蹤的子工作。工程實作時,每一列都可以對應到 UI 操作、API command、事件或測試案例。

節點 子工作項 細狀態 事件 通知 / 阻塞規則
01 業務開案 建立案件基本資料、客戶資料、專案名稱、案件編碼、開始日期、履約交貨日、預計驗收日、業務負責人、是否需要現場安裝。 草稿、已開案、退回補件、已交工程。 ProjectDrafted、ProjectCreated、ProjectSubmitted。 案件送出後通知工程與 PM;缺少案件編碼、客戶或履約交貨日不得送出。
02 規格書交付 上傳規格書、標記版本、填寫特殊需求、合約交付條件、驗收條件、指定工程負責人、工程確認收到。 未交付、已交付、工程確認中、退回補件、已確認。 SpecAttached、SpecDelivered、SpecAccepted、SpecRejected。 工程未確認前,BOM 節點可建立但不可發布。
03 工程 BOM 建立 建立 BOM 任務、選擇 BOM 類型、建立版本、填寫品項編碼、品名、規格、數量、單位、是否需採購、是否已有庫存、是否長交期。 未開始、編輯中、待審核、退回修改、已提交。 BomDraftCreated、BomItemAdded、BomSubmitted。 長交期品項需標記風險;需採購品項才會進入採購需求。
04 BOM 審核與發布 檢查欄位完整性、料號、替代料、長交期品項、審核通過、退回工程修改、發布版本、鎖定已發布 BOM。 待審核、審核中、退回、已發布、已鎖定。 BomReviewed、BomRejected、BomReleased、BomLocked。 BOM 發布後不可覆蓋,只能建立新版;BomReleased 觸發採購需求。
05 採購需求產生 讀取已發布 BOM、排除不需採購、排除已有庫存、合併相同料號、依案件編碼建立需求、計算需求日期、標記長交期風險。 待產生、已產生、需人工確認、已通知採購。 PurchaseDemandGenerated、PurchaseDemandMerged、LongLeadRiskDetected。 有長交期或履約交貨日前 30 天仍未採購時通知採購與 PM。
06 報價單 / 採購單匯入 上傳 PDF / Excel、暫存檔案、AI 解析、顯示原始檔、顯示解析資料、雙向比對、手動修正、復原 / 回復、驗證案件編碼、去重、儲存 JSON、備份原始檔、轉採購明細、匯出 Excel。 已上傳、解析中、待確認、已修正、已存檔、重複略過、解析失敗。 QuoteUploaded、QuoteParsed、QuoteEdited、QuoteSaved、DuplicateQuoteSkipped。 同檔名不重複存檔;編輯後不得被重新解析覆蓋;案件編碼需對應專案總覽。
07 採購叫貨 選擇採購需求、建立叫貨紀錄、填供應商、叫貨日期、預計交貨日、採購數量、狀態改為已叫貨、設定到貨確認提醒。 未採購、已叫貨、已採購、取消叫貨。 PurchaseOrdered、PurchaseStatusChanged、DeliveryReminderScheduled。 未設定提醒時,預設每日 10:00 檢查是否到貨;已叫貨需通知採購確認到貨。
08 到貨確認 查看待到貨清單、填實際到貨日、到貨數量、部分到貨、未到貨、異常到貨、上傳收貨文件、更新已到貨。 待到貨、部分到貨、已到貨、逾期未到、異常到貨。 GoodsPartiallyReceived、GoodsReceived、GoodsOverdue、GoodsExceptionReported。 逾期未到貨通知採購與 PM;到貨完成通知組裝。
09 廠內組裝 查看可組裝清單、缺料清單、建立組裝任務、指派負責人、預計組裝日、回報進度、回報缺料 / 異常、標記完成。 未開始、待料、組裝中、異常、已完成。 AssemblyTaskCreated、AssemblyBlocked、AssemblyProgressUpdated、AssemblyCompleted。 缺料會回推到採購與 PM;組裝完成後通知工程測試。
10 組裝測試 建立測試項目、填測試結果、標記通過 / 不通過、不通過建立修正任務、修正後重測、通過後通知出貨或現場工程。 待測試、測試中、不通過、修正中、已通過。 TestStarted、TestFailed、FixTaskCreated、TestPassed。 測試未通過不得進入履約交貨;不通過需通知工程與組裝。
11 履約交貨 檢查採購已到貨、組裝完成、測試通過、建立交貨紀錄、填交貨日期、上傳交貨文件、逾期風險紀錄。 待交貨、交貨準備中、已交貨、逾期風險、已逾期。 DeliveryReadinessChecked、ContractDelivered、DeliveryRiskRaised。 履約交貨日前 14 天檢查未到貨、未組裝、未測試項目。
12 現場安裝 建立安裝排程、指派現場工程、填醫院窗口、施工日期、現場限制、回報進度、回報問題、建立補件需求、上傳照片 / 紀錄、標記完成。 不適用、待排程、已排程、安裝中、待補件、已完成。 OnsiteScheduled、OnsiteIssueReported、ReworkRequested、OnsiteCompleted。 現場問題會通知業務、工程與 PM;補件需求可回推採購。
13 驗收改善 建立驗收問題清單、指派改善部門、填改善期限、回報改善狀態、上傳改善證明、業務確認客戶接受。 無問題、待改善、改善中、待客戶確認、已改善。 AcceptanceIssueCreated、ImprovementAssigned、ImprovementCompleted、CustomerConfirmed。 未改善完成時持續提醒負責部門與 PM。
14 驗收完成 上傳驗收文件、填驗收日期、驗收結果、客戶確認、業務確認、PM 確認、標記驗收完成。 待驗收、驗收中、待文件、已驗收、驗收退回。 AcceptanceDocumentUploaded、AcceptanceCompleted、AcceptanceRejected。 驗收完成後啟動結案流程;缺驗收文件不得結案。
15 結案確認 業務確認、工程確認、採購確認、組裝確認、現場工程確認、財務 / 行政確認、文件歸檔、未結事項確認、專案封存、產生結案報表。 待確認、部門確認中、有未結事項、已封存。 DepartmentClosureConfirmed、OpenIssueFound、ProjectClosed、ArchiveGenerated。 所有必要部門確認後才能結案;未結事項需建立追蹤。

子工作拆解輸出規格

每個子工作進入工程開發前,需補齊以下欄位,避免 UI、API、資料庫與通知規則互相脫節。

規格欄位用途
TaskCode子工作代碼,例如 PO_IMPORT_VALIDATE_CASE_CODE。
ActionType建立、更新、確認、退回、通知、匯出、封存。
RequiredFields執行前必填資料。
EditableFields此子工作允許修改的欄位。
GeneratedEvent完成後發出的事件。
NotificationRule是否通知、通知對象、通知時機。
BlocksNextNode是否阻塞下一節點。
ReportFields需要進入報表或總覽的欄位。

事件串接規則

事件來源節點接收模組動作
ProjectCreated業務開案工程、PM建立規格書交付與 BOM 任務。
SpecDelivered規格書交付工程工程開始 BOM 建立。
BomReleasedBOM 審核與發布採購產生採購需求與採購追蹤項目。
PurchaseImported報價單 / 採購單匯入專案總覽、報表更新專案採購明細與案件編碼對應。
PurchaseOrdered採購叫貨通知、到貨依預計交貨日建立到貨提醒。
GoodsReceived到貨確認組裝更新可組裝狀態。
AssemblyCompleted組裝測試履約交貨允許進入出貨或現場安裝排程。
AcceptanceCompleted驗收完成結案啟動各部門結案確認。

通知檢查點

  • 履約交貨日前 30 天:若採購狀態仍有未採購,通知採購與 PM。
  • 採購狀態改為已叫貨後:依設定天數檢查是否到貨,未設定時每日 10:00 提醒。
  • 履約交貨日前 14 天:檢查未到貨、未組裝、未測試項目。
  • 驗收日前:檢查現場安裝、改善項目與客戶確認是否完成。
  • 結案前:檢查所有部門是否完成確認與文件歸檔。