Giao diện
@digiforce-nc/plugin-workflow-manual
Plugin đăng ký node manual (thao tác thủ công) trong workflow, mở rộng plugin-workflow. Tạm dừng workflow để chờ người dùng xác nhận hoặc nhập dữ liệu qua form trước khi tiếp tục.
Plugin này làm gì?
Node Manual tạm dừng workflow và tạo một "todo" hiển thị trên giao diện của người dùng được chỉ định. Người dùng mở todo, xem dữ liệu bản ghi, điền form (nếu có), rồi nhấn xác nhận hoặc từ chối. Workflow tiếp tục dựa trên quyết định của người dùng.
Manual node là base cho nhiều node khác:
- Approval Process: Kế thừa Manual, thêm logic threshold
- CC: Kế thừa Manual, bỏ phần chờ phản hồi
- Các plugin khác có thể extend Manual cho use case riêng
Cấu hình
| Tham số | Kiểu | Mô tả |
|---|---|---|
assignees | array | Danh sách user/role nhận todo |
mode | string | Chế độ: single (1 người xử lý) hoặc all (tất cả) |
forms | object | Cấu hình form nhập dữ liệu |
showData | boolean | Hiển thị dữ liệu bản ghi cho user xem |
dataBlocks | array | Cấu hình UI block hiển thị dữ liệu |
Input / Output
| Hướng | Dữ liệu | Mô tả |
|---|---|---|
| Input | data | Dữ liệu bản ghi hiện tại từ workflow |
| Input | assignees | Danh sách người xử lý (có thể động) |
| Output | status | approved / rejected |
| Output | formValues | Dữ liệu người dùng nhập qua form |
| Output | user | Thông tin người dùng đã xử lý |
Tính năng chính
| # | Tính năng | Chi tiết |
|---|---|---|
| 1 | Todo list | Tạo task trên giao diện người dùng |
| 2 | Form nhập liệu | Cấu hình form để user điền thông tin bổ sung |
| 3 | Hiển thị dữ liệu | Cho user xem chi tiết bản ghi trước khi quyết định |
| 4 | Single / All mode | Một người xử lý hoặc tất cả đều phải xử lý |
| 5 | Dynamic assignees | Danh sách từ biến workflow |
Trường hợp sử dụng
| # | Kịch bản | Mô tả |
|---|---|---|
| 1 | Xác nhận thủ công | Chờ nhân viên xác nhận thông tin khách hàng |
| 2 | Nhập dữ liệu bổ sung | Yêu cầu user nhập ghi chú, mã tham chiếu |
| 3 | Review nội dung | Editor review bài viết, nhấn approve/reject |
| 4 | Chọn hành động | User chọn giữa nhiều option qua form select |
Lưu ý quan trọng
- Todo hiển thị ở trang "Workflow todos" của assignee
- Mode
single: người đầu tiên xử lý sẽ quyết định, những người khác mất quyền - Mode
all: tất cả assignees phải xử lý, kết quả lấy theo majority - Form fields hỗ trợ validation rules (required, min, max, pattern)
- Workflow chờ vô thời hạn cho đến khi user xử lý (không có timeout mặc định)
- Sử dụng Approval Process nếu cần timeout và escalation
Dependencies
| Package | Vai trò |
|---|---|
@digiforce-nc/plugin-workflow | Workflow engine (peer) |
@digiforce-nc/server | Server framework (peer) |
@digiforce-nc/client | Client framework - render todo UI (peer) |
@digiforce-nc/database | Database ORM (peer) |