#!/usr/bin/env python3
"""
Build Obsidian vault from CAUHOIKHAOSATMS dataset — ERP Survey FPT x BTChem.
"""

VAULT = r"C:\antigra-DS\CLAW_LAM_VIEC\ERP\CAUHOIKHAOSATMS\Obsidian-KhaoSat-ERP"
import os, json, shutil

os.makedirs(f"{VAULT}/.obsidian", exist_ok=True)
os.makedirs(f"{VAULT}/01-PhongBan", exist_ok=True)
os.makedirs(f"{VAULT}/02-Module", exist_ok=True)
os.makedirs(f"{VAULT}/03-ThucThe", exist_ok=True)
os.makedirs(f"{VAULT}/04-KhaiNiem", exist_ok=True)
os.makedirs(f"{VAULT}/05-VanDeXuyenPhong", exist_ok=True)
os.makedirs(f"{VAULT}/06-BaoCaoGoc", exist_ok=True)

def w(fname, content):
    with open(f"{VAULT}/{fname}", "w", encoding="utf-8") as f:
        f.write(content)

# ── .obsidian config ──
w(".obsidian/app.json", json.dumps({
    "alwaysUpdateLinks": True, "newFileLocation": "current",
    "useMarkdownLinks": False, "showUnsupportedFiles": False,
    "attachmentFolderPath": "z-attachments",
    "promptDelete": False
}, indent=2, ensure_ascii=False))
w(".obsidian/graph.json", json.dumps({
    "collapse-filter": False, "search": "",
    "showTags": True, "showAttachments": False,
    "hideUnresolved": False, "showOrphans": True,
    "collapse-color-groups": False, "colorGroups": [],
    "collapse-display": False, "showArrow": False,
    "textFadeMultiplier": 0, "nodeSizeMultiplier": 1,
    "lineSizeMultiplier": 1, "collapse-forces": False,
    "centerStrength": 0.518, "repoStrength": 1.0,
    "linkStrength": 0.72, "linkDistance": 250,
    "scale": 1, "close": False
}))
w(".obsidian/core-plugins.json", json.dumps({
    "file-explorer": True, "graph": True, "backlink": True,
    "tag-pane": True, "page-preview": True, "search": True
}, indent=2))
w(".obsidian/community-plugins.json", json.dumps(["dataview"], indent=2))

# ── 17 PHÒNG BAN ──
phongban = {
    "01_Ban_ChuyenDoiSo": "Ban Chuyển đổi số",
    "02_Phong_KeToan_FIN": "Phòng Kế toán",
    "03_Kho_ThanhPham_WMS": "Kho Thành phẩm",
    "04_Phong_KinhDoanh_OM": "Phòng Kinh doanh",
    "05_Phong_MuaHang_VatTu_PO": "Phòng Mua hàng - Vật tư",
    "06_Xuong_Mau_MFG": "Xưởng Màu",
    "07_Xuong_SonNuoc_MFG": "Xưởng Sơn Nước",
    "08_Xuong_DauBong_DM_UV_MFG": "Xưởng Dầu Bóng",
    "09_Xuong_DungMoi_MFG": "Xưởng Dung Môi",
    "10_Xuong_DauDieu_MFG": "Xưởng Dầu Điều",
    "11_To_CoDien_BaoTri": "Tổ Cơ Điện - Bảo trì",
    "12_Phong_RD": "Phòng R&D",
    "13_Phong_QC1": "Phòng QC1",
    "14_Phong_QC2": "Phòng QC2",
    "15_VP_KyThuat_CSKH": "VP Kỹ thuật - CSKH",
    "16_To_Xe": "Tổ Xe",
    "17_Phong_HC_NhanSu_HR": "Phòng HC - Nhân sự"
}

dep_descriptions = {
    "01_Ban_ChuyenDoiSo": "Ban Chuyển đổi số (CĐS) là đơn vị điều phối dự án ERP phía BTChem. Đầu mối: Quách Thanh Tâm. Quản lý: Fit/Gap, Blueprint, Data Migration, Phân quyền, Tích hợp hệ thống, Cutover/Go-live.",
    "02_Phong_KeToan_FIN": "Phòng Kế toán (FIN). Đầu mối: Trần Thị Bé Mười. Quản lý tài chính: Kế toán bán hàng (check hạn mức → xuất HĐ → ký số → gửi KH → thu tiền), kế toán mua hàng (3-way matching), tính giá thành, BCTC cuối tháng. Hệ thống: FAST + hóa đơn điện tử.",
    "03_Kho_ThanhPham_WMS": "Kho Thành phẩm (KTP). Đầu mối: Trần Thị Bích Trúc. Quản lý: TP.05 (Dầu Bóng), TP.03 (UV), TP.02+KX4A (Sơn Nước), TP.06 (Màu), TP.04 (Dung Môi), TP.CXL (hàng lỗi). Xuất theo FEFO/FIFO. Quản lý lot bắt buộc.",
    "04_Phong_KinhDoanh_OM": "Phòng Kinh doanh (PKD/OM). Đầu mối: Nguyễn Thị Truyên. Quản lý: Báo giá → Đơn hàng → KHSX → Giao hàng → Hóa đơn → Thu tiền. Hệ thống: FAST + Base + Excel. Pain point lớn: không biết tồn kho/ công nợ real-time.",
    "05_Phong_MuaHang_VatTu_PO": "Phòng Mua hàng - Vật tư (PVT/PO). Đầu mối: Nguyễn Lương Thành. Trả lời chi tiết nhất về Master Data (62 cột). Quản lý: Mua hàng (Procure to Pay), Data Migration, Kho NVL, Ngoại lệ. Đề xuất quy tắc mã hóa mới.",
    "06_Xuong_Mau_MFG": "Xưởng Màu. Sản xuất theo MTO thuần (make-to-order). Batch nhỏ. Điểm kiểm soát chính: kiểm tra màu (độ bóng, lượng nhỏ). Không có công đoạn nghiền. QC: Trưởng xưởng kiểm tra công thức.",
    "07_Xuong_SonNuoc_MFG": "Xưởng Sơn Nước (XSN). MTO+MTS, batch. Quy trình: Cân đong → Phối trộn → Nghiền/phân tán → Kiểm tra độ mịn → Pha màu → Gia công → KTCL → Đóng gói. Batch size ~100kg/mẻ. Hao hụt 2-5%. Thời gian mẻ ~1-2 ngày.",
    "08_Xuong_DauBong_DM_UV_MFG": "Xưởng Dầu Bóng. Sản xuất UV + NC + PU. File khảo sát hiện bị copy nhầm từ Xưởng Dung Môi, cần làm lại. CẢNH BÁO: file trả lời chưa chính xác.",
    "09_Xuong_DungMoi_MFG": "Xưởng Dung Môi. MTO+MTS, batch 1000kg/lô. Quy trình: Cân đong → Phối trộn → Kiểm tra độ hòa tan → KTCL → Đóng gói. Hao hụt 0.4-0.8%. Không có nghiền. Thời gian mẻ ~4-8h.",
    "10_Xuong_DauDieu_MFG": "Xưởng Dầu Điều. Quản lý Kho & Tồn kho + Quản lý chất lượng (Quality) + Sản xuất (Manufacturing). Dữ liệu khảo sát còn hạn chế.",
    "11_To_CoDien_BaoTri": "Tổ Cơ Điện - Bảo trì. Quản lý: KPI-BI. Hỗ trợ kỹ thuật và bảo trì thiết bị cho toàn bộ nhà máy.",
    "12_Phong_RD": "Phòng R&D (Research & Development). Đầu mối: Nguyễn Thị Kim Bằng. Kiểm tra NVL đầu vào (trừ màu). Cùng QC xây dựng chỉ tiêu chất lượng. Cấp BOM (công thức giấy → xưởng). Trưởng phòng RD (GĐ) phê duyệt công thức.",
    "13_Phong_QC1": "Phòng QC1. Kiểm soát chất lượng: NVL màu đầu vào (30%/lot), BTP, TP, hàng lưu kho (3-6 tháng). Quy trình NCR qua Base. Kiểm tra công thức xưởng màu. Chưa có trả lời khảo sát đầy đủ.",
    "14_Phong_QC2": "Phòng QC2. Đầu mối: Hà Thị Nam. Trả lời chi tiết nhất (⭐5). Kiểm tra BTP, TP cuối SX, hàng lưu kho. 9 loại báo cáo QC. CAPA đầy đủ (root cause, CA, PA). Truy xuất 2 chiều.",
    "15_VP_KyThuat_CSKH": "VP Kỹ thuật - CSKH. Quy trình: PKD chuyển yêu cầu KH → Làm mẫu → Góp ý ứng dụng → Thẻ màu KH ký → Kiểm tra tại KH → Báo cáo. Cũng phụ trách quản lý chất lượng và KPI-BI.",
    "16_To_Xe": "Tổ Xe. Phụ trách vận chuyển và giao hàng. Làm việc với Kho TP và Bảo vệ. Module chính: Bán hàng (Quote to Cash).",
    "17_Phong_HC_NhanSu_HR": "Phòng HC - Nhân sự (HR). Quản lý: KPI-BI, Cutover/Go-live, Phân quyền, Tổng quan DN & Phạm vi."
}

for code, name in phongban.items():
    desc = dep_descriptions[code]
    nr = code[:2]
    # Determine modules from PhongBan directory
    module_folder = f"C:/antigra-DS/CLAW_LAM_VIEC/ERP/CAUHOIKHAOSATMS/PhongBan/{code}"
    known_modules = {
        "01": ["KPI-BI", "DataMigration", "Cutover", "NgoaiLe", "PhanQuyen", "TichHop", "TongQuan"],
        "02": ["KPI-BI", "DataMigration", "MasterData", "Finance", "NgoaiLe", "PhanQuyen", "TongQuan"],
        "03": ["QuoteToCash", "KPI-BI", "DataMigration", "MasterData", "KhoTonKho", "Manufacturing"],
        "04": ["QuoteToCash", "KPI-BI", "MasterData", "KhoTonKho", "NgoaiLe", "TongQuan"],
        "05": ["KPI-BI", "DataMigration", "MasterData", "KhoTonKho", "ProcureToPay", "NgoaiLe"],
        "06": ["KPI-BI", "MasterData", "KhoTonKho", "Quality", "Manufacturing"],
        "07": ["KPI-BI", "MasterData", "KhoTonKho", "Quality", "Manufacturing"],
        "08": ["KPI-BI", "MasterData", "KhoTonKho", "Quality", "Manufacturing"],
        "09": ["KhoTonKho", "Quality", "Manufacturing"],
        "10": ["KhoTonKho", "Quality", "Manufacturing"],
        "11": ["KPI-BI"],
        "12": ["KPI-BI", "MasterData", "Quality", "Manufacturing"],
        "13": ["KPI-BI", "MasterData", "KhoTonKho", "Quality", "Manufacturing"],
        "14": ["KPI-BI", "MasterData", "KhoTonKho", "Quality", "Manufacturing"],
        "15": ["KPI-BI", "Quality"],
        "16": ["QuoteToCash"],
        "17": ["KPI-BI", "Cutover", "PhanQuyen", "TongQuan"]
    }
    mods = known_modules.get(code, [])
    mod_links = "\n".join(f"- [[{m}]]" for m in mods)
    
    w(f"01-PhongBan/{code}_{name}.md", f"""# {name}

> **Mã phòng ban:** `{code}`

{desc}

## Module khảo sát
{mod_links}

## Quan hệ
- Thuộc: [[MOC-CAUHOIKHAOSATMS]] — Dự án ERP
- Liên quan: [[FPT]], [[Microsoft Dynamics 365 Business Central]]
""")

# ── 14 MODULE ──
modules = {
    "TongQuan": ("Tổng quan DN & Phạm vi", "23 câu. Xác định phạm vi dự án, mục tiêu, kỳ vọng của từng phòng ban."),
    "MasterData": ("Dữ liệu danh mục (Master Data)", "25 câu. Quản lý danh mục: NVL, SP, NCC, khách hàng. Vật Tư trả lời chi tiết nhất với 62 cột. Đề xuất quy tắc mã hóa mới (101-120 cho NVL)."),
    "QuoteToCash": ("Bán hàng (Quote to Cash)", "45 câu. Quy trình báo giá → đơn hàng → SX → giao hàng → hóa đơn → thu tiền. PKD trả lời chính. Phát hiện 16 lỗi khi kiểm tra chéo sơ đồ."),
    "ProcureToPay": ("Mua hàng (Procure to Pay)", "~20 câu. Quy trình mua hàng: đề nghị → duyệt → PO → nhập kho → 3-way matching → thanh toán. Vật Tư trả lời."),
    "KhoTonKho": ("Kho & Tồn kho", "19 câu. Quản lý nhập/xuất/tồn, lot, FEFO/FIFO, kiểm kê, vị trí kho (bin). 4 xưởng + KTP + Vật Tư trả lời."),
    "Manufacturing": ("Sản xuất (Manufacturing)", "46 câu (nhiều nhất). Mô hình MTO/MTS, BOM, quy trình SX, batch size, hao hụt, thiết bị. 4 xưởng + RD trả lời."),
    "Quality": ("Quản lý chất lượng (Quality)", "17-27 câu. 6 điểm kiểm tra: NVL đầu vào → BTP → TP → trước xuất → định kỳ → tại KH. NCR, CAPA, COA. QC2 trả lời chi tiết nhất."),
    "Finance": ("Kế toán tài chính (Finance - VAS)", "~30 câu. Check hạn mức, xuất HĐ, ký số, 3-way matching, tính giá thành, BCTC. Thiếu dữ liệu kiểm tra chéo."),
    "TichHop": ("Tích hợp hệ thống (Integration)", "~10 câu. Tích hợp FAST, Base, hệ thống cân, hóa đơn điện tử, chữ ký số."),
    "DataMigration": ("Chuyển đổi dữ liệu (Data Migration)", "~10 câu. Chiến lược di chuyển dữ liệu từ FAST/Excel lên BC. User có 2-3 tháng chuẩn hóa dữ liệu."),
    "PhanQuyen": ("Phân quyền - Phê duyệt - Kiểm soát", "~10 câu. Phân quyền người dùng, workflow phê duyệt, kiểm soát truy cập."),
    "KPI-BI": ("Báo cáo - KPI - BI", "5 câu. Dashboard BGĐ, báo cáo tự động, KPI: OTIF, vòng quay kho, tỷ lệ lỗi, doanh số, tuổi nợ."),
    "NgoaiLe": ("Ngoại lệ - Tình huống đặc biệt", "~10 câu. Edge cases: mặt hàng mới chưa có báo giá, đơn gấp, hủy đơn sau SX, giao hàng nhiều lần."),
    "Cutover": ("Cutover - Go-live - Hỗ trợ vận hành", "~10 câu. Chuẩn bị cutover, đánh giá sẵn sàng, hỗ trợ 2 tháng đầu, bảo hành 3-6 tháng.")
}

for code, (vname, desc) in modules.items():
    w(f"02-Module/{code}_{vname}.md", f"""# {vname}

> **Mã module:** `{code}`

{desc}

## Phòng ban trả lời
- Xem trong từng phòng ban tại [[MOC-CAUHOIKHAOSATMS]]

## Liên quan
- Thuộc: [[MOC-CAUHOIKHAOSATMS]] — Dự án ERP
- Hệ thống: [[Microsoft Dynamics 365 Business Central]]
""")

# ── THỰC THỂ ──
entities = {
    "FPT": "**FPT Digital** — Đối tác triển khai ERP. Đầu mối chính. Triển khai Microsoft Dynamics 365 Business Central cho BTChem. Quy trình: Workshop → Demo → Fit/Gap → Blueprint → Build → UAT → Go-live → Bảo hành.",
    "Microsoft Dynamics 365 Business Central": "**Microsoft Dynamics 365 Business Central (BC)** — Hệ thống ERP mới thay thế FAST. Cloud-based, tích hợp Office 365. Modules: OM, PO, INV, MFG, FIN, QM, WMS.",
    "FAST": "**FAST** — Phần mềm kế toán hiện tại của BTChem. Dùng cho: bán hàng, kho, hóa đơn điện tử. Hạn chế: không hỗ trợ SX & BOM, không quản lý được quy trình sản xuất.",
    "Base": "**Base.vn** — Nền tảng phê duyệt/giao việc hiện tại. Dùng cho: quy trình KPH (NCR), duyệt báo giá, kiểm tra công nợ.",
    "Ban Chuyển đổi số": "**Ban Chuyển đổi số (CĐS)** — Đơn vị điều phối dự án ERP phía BTChem. Đầu mối: Quách Thanh Tâm. Quản lý khảo sát, workshop, fit/gap.",
    "Quách Thanh Tâm": "**Quách Thanh Tâm** — Đầu mối Ban CĐS. Gửi email khảo sát ERP cho các phòng ban. Quản lý Project Folder.",
    "Nguyễn Thị Truyên": "**Nguyễn Thị Truyên** — Đầu mối Phòng Kinh doanh. Trả lời khảo sát Bán hàng (Quote to Cash) + KPI + Ngoại lệ.",
    "Nguyễn Lương Thành": "**Nguyễn Lương Thành** — Đầu mối Phòng Vật tư. Trả lời chi tiết nhất Master Data (62 cột) + Mua hàng + Kho + Data Migration.",
    "Trần Thị Bích Trúc": "**Trần Thị Bích Trúc** — Đầu mối Kho Thành phẩm. Trả lời Bán hàng + KPI + Master Data + Kho + Sản xuất.",
    "Nguyễn Thị Kim Bằng": "**Nguyễn Thị Kim Bằng** — Đầu mối Phòng R&D. Trả lời Quality + Master Data + KPI + Sản xuất (46 câu). Nhiều mục trống.",
    "Lê Đăng Học": "**Lê Đăng Học** — Đầu mối Phòng Kỹ thuật + Xưởng Dung Môi. Trả lời Quality + KPI + Kho + Sản xuất.",
    "Hà Thị Nam": "**Hà Thị Nam** — Đầu mối Phòng QC2. Trả lời chi tiết nhất (5 sao). Quality 27 câu + KPI.",
    "Trần Thị Bé Mười": "**Trần Thị Bé Mười** — Đầu mối Phòng Kế toán. Trả lời CAU 1-7 + TSCĐ + Hệ thống TK + Biểu mẫu (3 PDF).",
    "Nguyễn Hoàng Anh Thư": "**Nguyễn Hoàng Anh Thư** — Tổng hợp khảo sát. Trả lời Quality + Sản xuất + Master Data + Kho + KPI.",
    "BGĐ": "**Ban Giám Đốc (BGĐ)** — Phê duyệt báo giá, phiếu đề nghị, điều chỉnh tồn kho. Cần dashboard quản trị real-time.",
    "KPH": "**Không phù hợp (KPH / Non-Conformance)** — Hàng không đạt QC. Quy trình: NCR → cách ly → R&D đánh giá → rework/scrap/giảm cấp. Quản lý trên Base."
}

for name, desc in entities.items():
    w(f"03-ThucThe/{name}.md", f"# {name}\n\n{desc}\n\n## Liên quan\n- Thuộc: [[MOC-CAUHOIKHAOSATMS]] — Dự án ERP FPT x BTChem\n")

# ── KHÁI NIỆM ──
concepts = {
    "FitGap": "**Fit/Gap** — Phân tích chênh lệch giữa quy trình hiện tại (As-Is) và quy trình lý tưởng (To-Be). ✅ Fit = tính năng có sẵn. ⚠️ Gap-cấu hình = cần cấu hình thêm. 🔧 Gap-customize = cần lập trình thêm.",
    "Blueprint": "**Blueprint** — Tài liệu thiết kế giải pháp tổng thể. Đầu ra của GĐ2 (Phân tích & Thiết kế). Chốt quy trình liên thông giữa các phòng ban.",
    "UAT": "**User Acceptance Testing (UAT)** — Kiểm thử người dùng cuối. Key user trực tiếp thao tác với Test case. Mục tiêu: 100% ngữ cảnh công việc thực tế.",
    "Cutover": "**Cutover** — Chuẩn bị vận hành. Đánh giá sẵn sàng (dữ liệu, mùa vụ, con người). Sau chọn ngày Go-live, lùi ~3 tuần chuẩn bị số dư đầu ngày.",
    "DataMigration": "**Data Migration** — Di chuyển dữ liệu từ FAST/Excel lên BC. User có 2-3 tháng chuẩn hóa dữ liệu. Phương án: Excel Tool hoặc tool DB.",
    "Workshop": "**Workshop** — Thu thập & tổng hợp quy trình. ~3 ngày/bộ phận. FPT gửi câu hỏi khảo sát trước. User tải lên tài liệu vận hành hiện tại.",
    "As-Is To-Be": "**As-Is vs To-Be** — As-Is = quy trình hiện tại (thực tế đang vận hành). To-Be = quy trình mục tiêu (sau khi triển khai ERP). Phân tích Fit/Gap đo khoảng cách giữa hai trạng thái.",
    "KeyUser": "**Key User / Super User** — Người dùng chủ chốt mỗi phòng ban. Được FPT đào tạo onsite. Sau đó tự đào tạo lại cho nhân viên mới. Tối thiểu 2 người/phòng ban (backup).",
    "KPI": "**KPI (Key Performance Indicators)** — Các chỉ số cần theo dõi: OTIF, vòng quay kho, tỷ lệ lỗi, giá thành, doanh số, tuổi nợ, dòng tiền.",
    "NCR": "**Non-Conformance Report (NCR)** — Báo cáo hàng không phù hợp. QC phát hiện → ghi NCR → cách ly → R&D đánh giá → xử lý (rework/scrap/giảm cấp).",
    "CAPA": "**Corrective and Preventive Action (CAPA)** — Hành động khắc phục (CA) & phòng ngừa (PA). Root cause → CA → PA. QC2 trả lời đầy đủ.",
    "FEFO_FIFO": "**FEFO vs FIFO** — FEFO = First Expiry First Out (hàng có hạn dùng). FIFO = First In First Out (hàng không hạn dùng). Kho TP áp dụng cả hai.",
    "BOM": "**Bill of Materials (BOM)** — Định mức nguyên vật liệu. Hiện tại RD gửi công thức giấy cho xưởng. Cần quản lý trên BC. Version BOM theo cải tiến/thay NCC."
}

for name, desc in concepts.items():
    w(f"04-KhaiNiem/{name}.md", f"# {name}\n\n{desc}\n\n## Liên quan\n- Thuộc: [[MOC-CAUHOIKHAOSATMS]] — Dự án ERP FPT x BTChem\n")

# ── VẤN ĐỀ XUYÊN PHÒNG ──
cross_issues = {
    "NhapLieuThuCong": "**Nhập liệu thủ công nhiều lần** — Dữ liệu phải nhập lại trên nhiều hệ thống (Fast, Excel, Base). Liên quan: PKD, KTP, PKT. Giải pháp: ERP tự động đồng bộ.",
    "ThieuTuDongHoa": "**Thiếu tự động hóa quy trình** — SO → SX → Giao hàng → HĐ đều có bước thủ công. Liên quan: PKD, KTP, PKT.",
    "PhuThuocExcel": "**Phụ thuộc Excel** — Báo giá, KHSX, lịch xe, báo cáo đều làm trên Excel. Liên quan: PKD, KTP.",
    "ThieuRealTime": "**Không có real-time visibility** — Không theo dõi được trạng thái đơn hàng, tồn kho, SX. Liên quan: PKD, KTP, BGĐ.",
    "QuanLyLotKhongDongBo": "**Quản lý lot không đồng bộ** — Quy tắc đặt mã lô khác nhau giữa các xưởng. Liên quan: KTP, SX.",
    "MaHangKhongChuanHoa": "**Mã hàng không chuẩn hóa** — Phân chia theo xưởng nhưng không đồng bộ, 1 SP nhiều mã. Liên quan: KTP, PKD, KT.",
    "KiemSoatCongNoThuCong": "**Kiểm soát công nợ thủ công** — Phải gửi Base cho kế toán kiểm tra từng đơn. Liên quan: PKD, Kế toán.",
    "ThieuGiaThanhLo": "**Không tính được giá thành theo lô** — Ảnh hưởng báo giá & phân tích lợi nhuận. Liên quan: PKD, Kế toán, SX.",
    "ThieuDashboard": "**Thiếu dashboard quản trị** — BGĐ không có công cụ tổng quan real-time. Liên quan: BGĐ, tất cả phòng ban."
}

for name, desc in cross_issues.items():
    w(f"05-VanDeXuyenPhong/{name}.md", f"# {name}\n\n{desc}\n\n## Liên quan\n- Thuộc: [[MOC-CAUHOIKHAOSATMS]] — Dự án ERP\n")

# ── BÁO CÁO GỐC ──
reports = {
    "Bao_cao_Tong_hop_Tra_loi_Khao_sat": "**Báo cáo tổng hợp trả lời khảo sát** — Tổng hợp 59 file từ 15 email. 9 phòng ban trả lời. Chi tiết từng module: Quality (17-27 câu), Manufacturing (46 câu), Master Data (25 câu).",
    "KET_QUA_KIEM_TRA_CHEO_PKD": "**Kiểm tra chéo sơ đồ PKD** — Đối chiếu sơ đồ PKD với dữ liệu trả lời thật. Phát hiện: 2 sai, 9 thiếu, 5 chưa chính xác. Tổng 16 lỗi.",
    "KET_QUA_KIEM_TRA_CHEO_QM_RD_KT": "**Kiểm tra chéo QM/RD/KT** — Đối chiếu 12 file. Phát hiện: QA không tồn tại, R&D+QC cùng định nghĩa chỉ tiêu, thiếu FEFO.",
    "FPT_ERP_Roadmap": "**Lộ trình triển khai ERP FPT** — 5 giai đoạn: Chuẩn bị (~1 tuần) → Phân tích (~2 tháng) → Xây dựng (~14 tuần) → Kiểm thử (~2 tháng) → Go-live + BH (3-6 tháng). Tổng ~8-9 tháng.",
    "BAO_CAO_KIEM_TRA_SO_DO": "**Báo cáo kiểm tra sơ đồ quy trình** — Phát hiện 12 lỗi (5 nghiêm trọng). Xưởng Dầu Bóng bị copy nhầm dữ liệu Dung Môi."
}

for code, desc in reports.items():
    w(f"06-BaoCaoGoc/{code}.md", f"# {code}\n\n{desc}\n\n## Liên quan\n- Thuộc: [[MOC-CAUHOIKHAOSATMS]] — Dự án ERP FPT x BTChem\n- Nguồn: `CAUHOIKHAOSATMS/`\n")

# ── MASTER MOC ──
w("MOC-CAUHOIKHAOSATMS.md", """# 🗺️ MOC — Khảo sát ERP FPT x BTChem

> **Thư mục:** `ERP/CAUHOIKHAOSATMS/`
> **Dự án:** Microsoft Dynamics 365 Business Central
> **Đối tác:** [[FPT]] Digital
> **Ngày khảo sát:** 07/2026 — **Tổng số:** 59 file từ 15 email

---

## 📊 Tổng quan

Khảo sát ERP do [[Ban Chuyển đổi số]] ([[Quách Thanh Tâm]]) gửi đến các phòng ban. Mỗi phòng trả lời theo module. Kết quả được tổng hợp, kiểm tra chéo với sơ đồ quy trình hiện tại.

**Phát hiện chính:**
- [[FPT]] ghi nhận 5 phòng ban chưa hoàn thành khảo sát
- 16 lỗi khi kiểm tra chéo sơ đồ [[PKD]]
- [[QA]] — Không tồn tại phòng QA riêng, R&D kiểm tra NVL đầu vào
- Xưởng Dầu Bóng bị copy nhầm dữ liệu Xưởng Dung Môi

---

## 🏢 Phòng ban (17)

| # | Phòng ban | Đầu mối | Trạng thái |
|:-:|:----------|:--------|:----------:|
| 01 | [[01_Ban_ChuyenDoiSo\|Ban Chuyển đổi số]] | Quách Thanh Tâm | ⭐⭐⭐⭐⭐ |
| 02 | [[02_Phong_KeToan_FIN\|Phòng Kế toán]] | Trần Thị Bé Mười | ⭐⭐⭐⭐ |
| 03 | [[03_Kho_ThanhPham_WMS\|Kho Thành phẩm]] | Trần Thị Bích Trúc | ⭐⭐⭐ |
| 04 | [[04_Phong_KinhDoanh_OM\|Phòng Kinh doanh]] | Nguyễn Thị Truyên | ⭐⭐ |
| 05 | [[05_Phong_MuaHang_VatTu_PO\|Phòng Mua hàng - Vật tư]] | Nguyễn Lương Thành | ⭐⭐⭐⭐⭐ |
| 06 | [[06_Xuong_Mau_MFG\|Xưởng Màu]] | — | ⭐⭐ |
| 07 | [[07_Xuong_SonNuoc_MFG\|Xưởng Sơn Nước]] | — | ⭐⭐ |
| 08 | [[08_Xuong_DauBong_DM_UV_MFG\|Xưởng Dầu Bóng]] | — | ⚠️ Sai dữ liệu |
| 09 | [[09_Xuong_DungMoi_MFG\|Xưởng Dung Môi]] | Lê Đăng Học | ⭐⭐ |
| 10 | [[10_Xuong_DauDieu_MFG\|Xưởng Dầu Điều]] | — | ⭐⭐ |
| 11 | [[11_To_CoDien_BaoTri\|Tổ Cơ Điện - Bảo trì]] | — | ⭐ |
| 12 | [[12_Phong_RD\|Phòng R&D]] | Nguyễn Thị Kim Bằng | ⭐⭐ |
| 13 | [[13_Phong_QC1\|Phòng QC1]] | — | ⭐ |
| 14 | [[14_Phong_QC2\|Phòng QC2]] | Hà Thị Nam | ⭐⭐⭐⭐⭐ |
| 15 | [[15_VP_KyThuat_CSKH\|VP Kỹ thuật - CSKH]] | — | ⭐⭐ |
| 16 | [[16_To_Xe\|Tổ Xe]] | — | ⭐ |
| 17 | [[17_Phong_HC_NhanSu_HR\|Phòng HC - Nhân sự]] | — | ⭐ |

---

## 📦 Module khảo sát (14)

| Module | Số câu | Phòng ban chính |
|:-------|:------:|:----------------|
| [[TongQuan\|Tổng quan DN & Phạm vi]] | 23 | PKD, Kế toán, Vật tư, CĐS, HR |
| [[MasterData\|Dữ liệu danh mục (Master Data)]] | 25 | **Vật tư** ⭐, Kho, RD, QC |
| [[QuoteToCash\|Bán hàng (Quote to Cash)]] | 45 | **PKD**, Kho TP |
| [[ProcureToPay\|Mua hàng (Procure to Pay)]] | ~20 | **Vật tư** |
| [[KhoTonKho\|Kho & Tồn kho]] | 19 | Kho TP, Vật tư, 4 xưởng |
| [[Manufacturing\|Sản xuất (Manufacturing)]] | **46** | 4 xưởng, RD |
| [[Quality\|Quản lý chất lượng (Quality)]] | 17-27 | **QC2** ⭐, PKT, RD, QC1 |
| [[Finance\|Kế toán tài chính (Finance)]] | ~30 | **Kế toán** |
| [[TichHop\|Tích hợp hệ thống]] | ~10 | CĐS |
| [[DataMigration\|Chuyển đổi dữ liệu]] | ~10 | CĐS, Vật tư |
| [[PhanQuyen\|Phân quyền - Phê duyệt]] | ~10 | CĐS, HR |
| [[KPI-BI\|Báo cáo - KPI - BI]] | 5 | Tất cả |
| [[NgoaiLe\|Ngoại lệ]] | ~10 | PKD, Vật tư |
| [[Cutover\|Cutover - Go-live]] | ~10 | CĐS, HR |

**Tổng số câu:** ~309

---

## 🏗️ Thực thể chính

| Nhóm | Thực thể |
|:-----|:---------|
| **Đối tác** | [[FPT]] |
| **Hệ thống** | [[Microsoft Dynamics 365 Business Central]], [[FAST]], [[Base]] |
| **Nội bộ** | [[Ban Chuyển đổi số]], [[BGĐ]], [[KPH]] |
| **Nhân sự** | [[Quách Thanh Tâm]], [[Nguyễn Thị Truyên]], [[Nguyễn Lương Thành]], [[Trần Thị Bích Trúc]], [[Nguyễn Thị Kim Bằng]], [[Lê Đăng Học]], [[Hà Thị Nam]], [[Trần Thị Bé Mười]], [[Nguyễn Hoàng Anh Thư]] |

---

## 📐 Khái niệm

[[FitGap]] · [[Blueprint]] · [[UAT]] · [[Cutover]] · [[DataMigration]] · [[Workshop]] · [[As-Is To-Be]] · [[KeyUser]] · [[KPI]] · [[NCR]] · [[CAPA]] · [[FEFO_FIFO]] · [[BOM]]

---

## 🔴 Vấn đề xuyên phòng ban

1. [[NhapLieuThuCong]] — Nhập liệu thủ công nhiều lần
2. [[ThieuTuDongHoa]] — Thiếu tự động hóa
3. [[PhuThuocExcel]] — Phụ thuộc Excel
4. [[ThieuRealTime]] — Không real-time visibility
5. [[QuanLyLotKhongDongBo]] — Lot không đồng bộ
6. [[MaHangKhongChuanHoa]] — Mã hàng không chuẩn
7. [[KiemSoatCongNoThuCong]] — Công nợ thủ công
8. [[ThieuGiaThanhLo]] — Không có giá thành lô
9. [[ThieuDashboard]] — Thiếu dashboard BGĐ

---

## 📄 Báo cáo gốc

- [[Bao_cao_Tong_hop_Tra_loi_Khao_sat]] — Tổng hợp chính
- [[KET_QUA_KIEM_TRA_CHEO_PKD]] — Kiểm tra chéo PKD
- [[KET_QUA_KIEM_TRA_CHEO_QM_RD_KT]] — Kiểm tra chéo QM/RD/KT
- [[FPT_ERP_Roadmap]] — Lộ trình 5 giai đoạn
- [[BAO_CAO_KIEM_TRA_SO_DO]] — Kiểm tra sơ đồ 12 lỗi

---

## 🗺️ Lộ trình triển khai

1. **Chuẩn bị** (~1 tuần) — Kick-off, kênh giao tiếp
2. **Phân tích & Thiết kế** (~2 tháng) — Workshop, Demo, Fit/Gap, Blueprint
3. **Xây dựng** (~14 tuần) — Cấu hình, Lập trình, Data Migration
4. **Triển khai & Kiểm thử** (~2 tháng) — Đào tạo, UAT, Cut-over
5. **Vận hành & Hỗ trợ** (2 tháng + BH 3-6 tháng) — Go-live, Bảo hành

**Tổng thời gian:** ~8-9 tháng

---

*Dự án ERP FPT Digital x BTChem — Khảo sát câu hỏi 07/2026*
""")

print("✅ Obsidian vault built successfully!")
print(f"📁 {VAULT}")
print(f"📊 {len(phongban)} departments, {len(modules)} modules, {len(entities)} entities, {len(concepts)} concepts, {len(cross_issues)} cross-issues, {len(reports)} reports")
