{ "schema_version": 2, "diagram_type": "workflow", "meta": { "title": "Quy trình TO-BE — Đối soát cuối ca (mẫu)", "quality_profile": "showcase", "views": [ { "id": "duong-chinh", "label": "Đường chính", "focus": [ "START", "B1", "B2", "D1", "END" ], "note": "Không lệch thì kết thúc ngay sau đối soát tự động." }, { "id": "nhanh-lech", "label": "Nhánh có sai lệch", "focus": [ "D1", "B3", "B4", "END" ], "note": "Có lệch: hệ thống tạo phiếu, trưởng nhóm duyệt." } ] }, "lanes": [ { "id": "cua_hang", "label": "Cửa hàng" }, { "id": "he_thong", "label": "Hệ thống đối soát" }, { "id": "truong_nhom", "label": "Trưởng nhóm" }, { "id": "ngoai_le", "label": "Ngoại lệ", "variant": "exception" } ], "phases": [ { "id": "thu_thap", "label": "Thu thập", "fromCol": 0, "toCol": 1 }, { "id": "doi_soat", "label": "Đối soát tự động", "fromCol": 2, "toCol": 3, "variant": "emphasis" }, { "id": "xu_ly", "label": "Xử lý lệch", "fromCol": 4, "toCol": 5 } ], "mainPath": [ "START", "B1", "B2", "D1", "END" ], "nodes": [ { "id": "START", "lane": "cua_hang", "col": 0, "type": "external", "label": "Kết ca", "sublabel": "sự kiện kích hoạt", "width": 120 }, { "id": "B1", "lane": "cua_hang", "col": 1, "type": "frontend", "label": "🆕 B1 Tải file POS", "sublabel": "SCR-01 · ROLE-01", "width": 150 }, { "id": "B2", "lane": "he_thong", "col": 2, "type": "backend", "label": "🆕 B2 Đối soát tự động", "sublabel": "BR-014 · ⏱ ≤ 5 phút", "width": 170 }, { "id": "D1", "lane": "he_thong", "col": 3, "type": "backend", "label": "D1 Có sai lệch?", "sublabel": "ngưỡng BR-015", "width": 140 }, { "id": "B3", "lane": "he_thong", "col": 4, "type": "backend", "label": "🔄 B3 Tạo phiếu lệch", "sublabel": "CHENH_LECH · Chờ duyệt", "width": 160 }, { "id": "B4", "lane": "truong_nhom", "col": 5, "type": "frontend", "label": "⬜ B4 Duyệt phiếu", "sublabel": "SCR-04 · ROLE-02", "width": 150 }, { "id": "END", "lane": "he_thong", "col": 5, "type": "database", "label": "Kết thúc", "sublabel": "ghi sổ đối soát", "width": 130 }, { "id": "X1", "lane": "ngoai_le", "col": 2, "type": "security", "label": "File hỏng", "sublabel": "E-POS-0400", "width": 160 } ], "edges": [ { "from": "START", "to": "B1", "label": "cuối ca" }, { "from": "B1", "to": "B2", "label": "file hợp lệ", "variant": "emphasis" }, { "from": "B2", "to": "D1", "variant": "emphasis" }, { "from": "D1", "to": "END", "label": "không lệch", "variant": "emphasis" }, { "from": "D1", "to": "B3", "label": "lệch > ngưỡng", "role": "branch" }, { "from": "B3", "to": "B4", "label": "gửi duyệt", "role": "branch" }, { "from": "B4", "to": "END", "label": "đã duyệt", "role": "branch" }, { "from": "B1", "to": "X1", "label": "file sai định dạng", "variant": "security", "role": "error" }, { "from": "X1", "to": "B1", "label": "tải lại", "variant": "dashed", "role": "return" } ], "cards": [ { "dot": "emerald", "title": "Thay đổi so với AS-IS", "items": [ "🆕 B1, B2 thay bước copy Excel thủ công (A2, A3 bỏ)", "Thời gian đối soát từ 2 giờ xuống ≤ 5 phút (GOAL-01)" ] }, { "dot": "rose", "title": "Ngoại lệ", "items": [ "File sai định dạng trả về cửa hàng kèm E-POS-0400, không vào đối soát", "Lệch vượt ngưỡng BR-015 bắt buộc trưởng nhóm duyệt (SoD)" ] } ] }