Action Node - Logic - Condition
I. Tổng quan
Node Condition dùng để đánh giá dữ liệu đầu vào và quyết định flow sẽ đi tiếp theo nhánh nào.
1. Vấn đề
- Không phải mọi flow đều chạy cùng một chuỗi bước cố định; nhiều trường hợp cần rẽ nhánh theo field CRM, nội dung message hoặc giá trị do node trước trả về.
2. Giải pháp
- Cung cấp node
Conditionđể so sánh dữ liệu đầu vào với một hoặc nhiều điều kiện rồi chuyển flow sang nhánh phù hợp.
3. Đối tượng
- Người cấu hình flow có logic rẽ nhánh.
4. Tầm nhìn/insight
- Tương lai có thể hỗ trợ biểu thức phức tạp hơn, nhiều nhánh hơn hoặc điều kiện lồng nhau.
II. Yêu cầu chức năng
1. Danh sách tính năng
- So sánh dữ liệu đầu vào.
- Chọn nhánh đúng/sai hoặc nhánh theo nhiều điều kiện.
2. Đặc tả chi tiết
- Use case 1.1: User thêm node
Conditionvào flow -> Chọn field đầu vào, toán tử và giá trị so sánh -> Khi flow chạy, hệ thống đánh giá điều kiện rồi đi tiếp sang nhánh tương ứng.
3. Danh sách nghiệp vụ
- Node phải xác định được field đầu vào cần so sánh.
- Toán tử so sánh phải phù hợp với kiểu dữ liệu.
- Nếu thiếu dữ liệu đầu vào bắt buộc, node có thể trả lỗi hoặc đi nhánh mặc định theo rule hệ thống đã chốt.
- Output của node phải cho biết nhánh đã được chọn để dễ truy vết trong run detail.
4. Giao diện
- Panel cấu hình cần có các field chọn nguồn dữ liệu, toán tử và giá trị so sánh.
- Nếu hỗ trợ nhiều nhánh, UI cần thể hiện rõ từng nhánh trên canvas.
III. Yêu cầu phi chức năng
- Cơ chế đánh giá điều kiện phải nhất quán giữa builder test và runtime thực tế.
IV. Dependency (liên quan & phụ thuộc)
V. API Contract (dev viết)
- Chưa chốt API chi tiết.
VI. Test case (BA hoặc tester viết)
- TC1: Điều kiện đúng -> Flow đi đúng nhánh cấu hình.
- TC2: Điều kiện sai -> Flow đi nhánh còn lại.
- TC3: Thiếu input bắt buộc -> Node báo lỗi hoặc xử lý theo rule mặc định.