NĐ-LARK-PG-DIR — Kế hoạch ngắn gọn bắt đầu hướng Lark → PG → Directus → PDF/Nuxt
NĐ-LARK-PG-DIR — Kế hoạch ngắn gọn bắt đầu hướng Lark → PG → Directus → PDF/Nuxt
Trạng thái: DRAFT khởi động Tác giả: Incomex Hội đồng AI / GPT Ngày: 2026-04-12 Mục tiêu: Chốt nhanh hướng triển khai mới theo phạm vi hẹp, khả thi và tạo giá trị sớm.
1. Quyết định nền
1.1. Chuyển dữ liệu có chọn lọc từ Lark sang PG
Không đặt mục tiêu đọc toàn bộ Lark. Chỉ chọn một số dữ liệu cố định, ổn định, có ích cho đầu ra tài liệu.
1.2. Luồng xử lý mới
Luồng mới được chuẩn hóa như sau:
Lark → PG → Directus → PDF app/file maker (qua API) → Nuxt
Luồng này chạy song song với luồng hiện tại:
Directus → Nuxt
Luồng cũ vẫn phục vụ hiển thị dữ liệu hiện có. Luồng mới chỉ phục vụ render file/PDF từ dữ liệu được lấy chọn lọc từ Lark.
2. Mục tiêu giai đoạn đầu
Chưa làm generic connector toàn hệ. Chỉ làm một pipeline nhỏ, khép kín, chạy được thật:
- chọn 1 đầu ra PDF cụ thể,
- chọn 1 table nguồn chính trong Lark,
- lấy một bộ field cố định,
- đưa vào PG,
- cho Directus đọc,
- gọi một PDF app/file maker để sinh file,
- Nuxt hiển thị link/kết quả file render.
3. Phương án khả thi nhất
3.1. Reader
Dùng Cổng 2 làm tuyến đọc chính từ Lark vì đây là cổng ổn định nhất cho read-only và batch.
3.2. PG
PG dùng để:
- lưu raw records,
- lưu bảng chuẩn hóa phục vụ render,
- theo dõi trạng thái job và output file.
3.3. Directus
Directus dùng để:
- đọc dữ liệu chuẩn hóa từ PG,
- cung cấp API cho PDF app/file maker,
- quản lý metadata file render nếu cần.
3.4. PDF app/file maker
Chọn một app nhẹ, nhận dữ liệu qua API, sinh file PDF theo template cố định.
Yêu cầu đầu ra:
- có layout cố định,
- có vùng chữ ký / đóng dấu sẵn,
- trả về file hoặc đường dẫn file để Nuxt hiển thị.
4. Câu hỏi cần chốt tiếp theo
4.1. Chọn loại tài liệu nào làm đầu tiên?
Ưu tiên loại tài liệu:
- có giá trị nghiệp vụ rõ,
- ít phụ thuộc workflow phức tạp,
- field đầu ra tương đối cố định.
4.2. Chọn table nguồn nào trong Lark?
Chỉ nên chọn 1 table nguồn chính ở vòng đầu.
4.3. Bộ field cố định gồm những gì?
Chỉ giữ các field thật sự dùng để render file.
4.4. PDF app/file maker nào phù hợp?
Tiêu chí chọn:
- nhẹ,
- gọi API đơn giản,
- render HTML/template ra PDF ổn,
- chèn nền/chữ ký/con dấu sẵn được.
5. Các bước lớn để bắt đầu
- Chốt loại tài liệu PDF đầu tiên.
- Chốt table nguồn và field whitelist từ Lark.
- Thiết kế schema PG tối giản cho job này.
- Dùng Cổng 2 kéo dữ liệu có chọn lọc về PG.
- Cho Directus đọc bảng chuẩn hóa.
- Kết nối PDF app/file maker qua API.
- Render thử với dữ liệu thật.
- Cho Nuxt hiển thị kết quả file render.
6. Kết luận ngắn
Hướng này khả thi hơn nhiều so với mục tiêu hiểu toàn bộ Lark trước. Đây là một vertical slice rõ ràng, tạo giá trị sớm, và vẫn mở đường cho việc mở rộng dần về sau.