CSKH — Tính năng¶
Ai dùng: nhân viên CSKH, Quản lý CSKH, AM, QLCH, KTV. Đường vào: /app › Rail CSKH (chân menu: "Đồng bộ từ Base CSKH"). Bản ghi mở thẳng bằng liên kết sâu ?cskh_table=<bảng>&cskh_record=<record> (dùng trong thẻ thông báo).
Quyền¶
Vai trò CSKH đọc từ vai trò trên chính Base CSKH ("Đang đọc vai trò Lark Base CSKH…") kết hợp cột quyền trên bảng Phân quyền Portal: Báo cáo CSKH (CSKH_REPORTS), Xử lý ticket CSKH (CSKH_OPERATE), Hồ sơ 360 nhân sự (CSKH_EMPLOYEE_360). Admin phải tick các cột này.
| Vai trò | Thấy | Được sửa |
|---|---|---|
| CSKH / Quản lý CSKH | Toàn bộ bảng nghiệp vụ, báo cáo (nếu có CSKH_REPORTS), 360 (nếu có quyền), Cài đặt | Theo quyền Base |
| AM | 8 bảng nghiệp vụ; không thấy báo cáo, 360 | sai_so, happy, lich_hen, maps, truc_page, camera (các cột ghi chú AM) |
| QLCH | sai_so, maps, truc_page, camera, nhuc_mat | Các cột xử lý/xác nhận của QLCH |
| KTV | Chỉ 2.1 XỬ LÝ NHỨC MẮT | 4 cột "KTV Xử lý lần 1–4" |
| KTV, QLCH, AM | — | Không thấy mục Cài đặt |
Mỗi lượt ghi lưu vào D1 cskh_write_log (ghi bù nếu lỗi mỗi 20 phút) rồi chép sang bảng LOG.
Menu¶
| Nhóm | Mục |
|---|---|
| — | Trang chủ · Hàng đợi của tôi |
| Báo cáo | 0 Tổng quan · 2 Hệ thống & vận hành (CSKH-Pages-Map-Camera toàn hệ thống, Tổng hợp đánh giá phục vụ, Target cuộc gọi, Điểm phục vụ cụm/P.TNKH, Điểm CĐNT, Báo cáo vận hành…) · 3 Lịch hẹn & nhóm lỗi (Lịch hẹn kính theo AM/cửa hàng/nhóm lỗi, Nhóm lỗi Camera, SL cuộc gọi – sai số, Nhức mắt) |
| Nghiệp vụ CSKH | 1.0 Phân bổ DATA · 1.1 HAPPY CALL · 1.2 SAI SỐ · 1.3 KHÔNG HÀI LÒNG · 1.4 SAO WOW · 1.5 LỊCH HẸN KÍNH |
| Bảo hành & Maps | 2.1 XỬ LÝ NHỨC MẮT · 2.2 MAPS |
| Trực Page & Camera | 3.1 TRỰC PAGE · 4.1 CAMERA |
| Nhân sự | 5.1 Tra cứu nhân sự (360) |
| Cài đặt | 0. Cài đặt |
Thứ tự đầy đủ các báo cáo trong nhóm 0/2/3: cần xác nhận trên giao diện.
1. Hàng đợi của tôi¶
Thẻ việc cần xử lý gom từ các bảng nghiệp vụ (getCskhDataset('queue')): mã phiếu, khách, cửa hàng, nội dung, trạng thái, hạn, AM phụ trách, loại lỗi. Lọc theo hạn (Quá hạn / Sắp đến hạn / Tất cả), nguồn (bảng), cửa hàng, tìm kiếm; đếm số thẻ theo bảng. Bấm Xử lý → mở đúng bảng và bản ghi.
2. Làm việc trên bảng nghiệp vụ (ví dụ 1.2 SAI SỐ)¶
1. Chọn bảng ở menu. Lưới kiểu Lark Base: lọc, sắp xếp, tìm, tuỳ chỉnh trường.
2. Bấm một dòng → khung chi tiết; sửa ô được phép (ô không được phép bị khoá).
3. Lưu → ghi về Base; có nhật ký.

Tick "Gửi thông báo"/"Chuyển thông tin" trên Base hoặc portal → Worker nhận event Base và gửi thẻ Lark cho AM/QLCH/KTV. Thẻ có nút mở thẳng bản ghi.

3. KTV xử lý nhức mắt¶
KTV nhận DM khi có dòng 2.1 mới → mở liên kết → điền "KTV Xử lý lần n" → lưu.
4. Báo cáo¶
Báo cáo kỳ hiện tại đọc bảng BC; kỳ đã chốt đọc BCLT. Heatmap theo ngày (đếm D-1 đóng băng 00:05).
5. Tra cứu 360 (5.1)¶
Nhập mã nhân viên (User ID) → xem tổng hợp lỗi/điểm của nhân viên trên các bảng CSKH. Cần cột Hồ sơ 360 nhân sự (CSKH_EMPLOYEE_360).
6. Cài đặt¶
Danh mục lựa chọn (0.3) và cấu hình module. Ẩn với KTV, QLCH, AM.
Ảnh cần chụp¶
Portal: https://one-anna-api.tungpham-hn219.workers.dev/app (đăng nhập Lark). Ảnh đặt vào thư mục images/ của module này, đúng tên file. Che (làm mờ) số tiền lương, CCCD, số tài khoản, số điện thoại khách hàng trước khi đưa vào tài liệu.
| File | Nội dung | Đường dẫn / thao tác | Vai trò đăng nhập | Trạng thái cần chụp |
|---|---|---|---|---|
images/cskh-hang-doi.png |
Hàng đợi của tôi | https://one-anna-api.tungpham-hn219.workers.dev/app › CSKH › Hàng đợi của tôi | Nhân viên CSKH | Có ≥ 3 việc chờ; che SĐT khách |
images/cskh-bang-sai-so.png |
Bảng 1.2 SAI SỐ | https://one-anna-api.tungpham-hn219.workers.dev/app › CSKH › Nghiệp vụ CSKH › 1.2 - SAI SỐ | Nhân viên CSKH | Lưới có dữ liệu; che tên/SĐT khách |
images/cskh-chi-tiet-ban-ghi.png |
Chi tiết bản ghi đang sửa | https://one-anna-api.tungpham-hn219.workers.dev/app?cskh_table=&cskh_record= |
AM | Khung chi tiết mở, ô AM đang sửa |
images/cskh-the-thong-bao.png |
Thẻ thông báo Lark (SAI SỐ / TRỰC PAGE) | App Lark › chat với bot ONE - ANNA | AM hoặc QLCH | Thẻ vừa nhận, có nút mở bản ghi |
images/cskh-ktv-nhuc-mat.png |
KTV — 2.1 XỬ LÝ NHỨC MẮT | https://one-anna-api.tungpham-hn219.workers.dev/app › CSKH › Bảo hành & Maps › 2.1 | KTV | Chỉ thấy 1 bảng; 4 cột KTV sửa được |
images/cskh-tong-quan.png |
Báo cáo 0 Tổng quan | https://one-anna-api.tungpham-hn219.workers.dev/app › CSKH › Báo cáo › Tổng quan | Quản lý CSKH | Tháng hiện tại |
images/cskh-bc-he-thong.png |
BC CSKH-PAGES-MAP-CAMERA toàn hệ thống | https://one-anna-api.tungpham-hn219.workers.dev/app › CSKH › Báo cáo › Hệ thống & vận hành | Quản lý CSKH | Tháng hiện tại |
images/cskh-360.png |
Tra cứu 360 | https://one-anna-api.tungpham-hn219.workers.dev/app › CSKH › Nhân sự › 5.1 Tra cứu | Quản lý CSKH có Hồ sơ 360 nhân sự | Đã nhập 1 mã NV thử; che tên |
images/cskh-cai-dat.png |
Cài đặt CSKH | https://one-anna-api.tungpham-hn219.workers.dev/app › CSKH › 0. Cài đặt | Quản lý CSKH | Mặc định |
Tự động liên quan (trích sổ trigger)¶
Trích từ docs/04-van-hanh/triggers.md (sinh tự động từ code). Bật/tắt từng job không cần deploy qua bảng D1 trigger_switches — xem Tổng quan › Trigger.
| Job — mô tả | Tác động | Giờ chạy (VN) |
|---|---|---|
bcltLockBackfillOnce — MỘT LẦN (28/09): bù BC → BCLT cho record BC có event trong ngày bị kẹt Queue — upsert ép ghi theo khoá, không xoá; kết quả KV bclt:backfill:20260928, xong thì tự bỏ qua |
reconcile | — |
cskhArchiveHourly — Sao lưu BC Base CSKH → bảng LT mỗi giờ |
archive | phút 00 mỗi giờ |
cskhAuditToBase — Mỗi giờ :45 — chép nhật ký sửa ô CSKH (D1 cskh_write_log, con trỏ KV) sang Base "LOG - Nhật ký chỉnh sửa CSKH" |
sync | phút 45 mỗi giờ |
cskhBcltLockPendingDrain — Chạy tiếp event khoá BC → BCLT dở (hàng chờ D1) — chỉ tạo dòng BCLT thiếu |
reconcile | mỗi 5 phút cả ngày |
cskhBcltLockReconcile — Khoá dòng BC → BCLT (đối soát định kỳ) |
reconcile | phút 00 mỗi giờ |
cskhCameraRemindCron — Nhắc hạn CAMERA (1 lần / bản ghi) |
notify | mỗi 20 phút cả ngày |
cskhHeatmapFreezeD1 — Heatmap CSKH: đóng băng đếm thô ngày D-1 → HM tổng/AM/cửa hàng (00:05 VN) |
sync | 00:05 VN hằng ngày |
cskhMapsRemindCron — Nhắc hạn MAPS (1 lần / bản ghi) |
notify | mỗi 20 phút cả ngày |
cskhOpsDayDigests — Digest TRỰC PAGE / MAPS / HAPPY CALL 17:00 |
notify | 17:00 VN hằng ngày |
cskhPagesRemindCron — Nhắc hạn TRỰC PAGE (1 lần / bản ghi) |
notify | mỗi 20 phút cả ngày |
cskhSaiSoAmNoteDigest — Digest SAI SỐ cho AM 17:00 |
notify | 17:00 VN hằng ngày |
cskhSyncBcCameraAllStoreStartOfMonth — BC Camera toàn hệ thống: seed mùng 1 VN (tháng mới) |
seed | 02:00 VN hằng ngày |
cskhSyncBcCameraStaffDaily — BC Camera theo NV: bổ sung NV mới |
seed | 02:00 VN hằng ngày |
cskhSyncBcCameraStaffStartOfMonth — BC Camera theo NV: seed NV cửa hàng (chạy hằng ngày 01:00 VN, create-if-missing) |
seed | 01:00 VN hằng ngày |
cskhSyncBcCdntKtvDaily — BC ĐIỂM CĐNT – KTV: bổ sung NV mới 08:00 VN |
seed | 08:00 VN hằng ngày |
cskhSyncBcCdntKtvStartOfMonth — BC ĐIỂM CĐNT – KTV: seed đầu tháng từ 0.1 (Vị trí làm việc = Kỹ thuật viên) |
seed | 08:00 VN hằng ngày |
cskhSyncBcCdntStylistDaily — BC ĐIỂM CĐNT – STYLIST: bổ sung NV mới 08:00 VN |
seed | 08:00 VN hằng ngày |
cskhSyncBcCdntStylistStartOfMonth — BC ĐIỂM CĐNT – STYLIST: seed đầu tháng từ 0.1 (Vị trí làm việc = Stylist) |
seed | 08:00 VN hằng ngày |
cskhSyncBcKtvDaily — BC Nhức mắt – KTV: bổ sung hằng ngày |
seed | 05:00 VN hằng ngày |
cskhSyncBcKtvStartOfMonth — BC Nhức mắt – KTV: seed đầu tháng |
seed | 02:30 VN hằng ngày |
cskhSyncBcNhucMatMonthly — Đồng bộ 2.1 Nhức mắt → BC mỗi giờ |
sync | phút 00 mỗi giờ 08–22h VN |
cskhSyncBcSlCuocGoiSaiSoStartOfMonth — SL cuộc gọi – Sai số: seed từng ngày × cửa hàng ngày 1 |
seed | 03:00 VN hằng ngày |
cskhTrucPageLateDigest — TRỰC PAGE lượt hai 23:05 |
notify | 23:05 VN hằng ngày |
reconcileNhucMatNotify — Gửi bù DM KTV 2.1 Nhức mắt bị sót (24h gần nhất) |
reconcile | mỗi 20 phút cả ngày |
runCskhPageWriteGuard — Ghi bù giải trình TRỰC PAGE bị mất |
reconcile | mỗi 20 phút cả ngày |
runCskhWriteReconcile — Ghi bù lượt ghi ô lỗi kỹ thuật (từ cskh_write_log) |
reconcile | mỗi 20 phút cả ngày |
runLichHenKinhNotify — Lịch hẹn kính trong ngày → AM + KTV + Stylist |
notify | mỗi 20 phút cả ngày 09:30 VN hằng ngày |
runLichHenKinhRemind — Nhắc trước giờ hẹn 3 tiếng |
notify | mỗi 20 phút cả ngày |
Event Base (khi bản ghi thay đổi):
| Bảng | Làm gì |
|---|---|
| 2.2 MAPS | Tick Gửi thông báo → DM; Điểm trừ → TOÀ TUYÊN ÁN |
| 4.1 CAMERA | Tick Gửi thông báo + stamp khi QLCH Xác nhận |
| 3.1 TRỰC PAGE | Tick Gửi thông báo → DM AM+QLCH; QLCH Xử lý → stamp + DM |
| 1.3 KHÔNG HÀI LÒNG – HAPPY CALL | Dòng mới/sửa đủ điều kiện → thông báo |
| 2.1 XỬ LÝ NHỨC MẮT | Dòng mới → DM KTV + stamp Thời gian gửi thông báo KTV; sửa cột CS → trả lời trong thread |
| 1.5 LỊCH HẸN KÍNH | Tick Gửi thông báo → phiếu; AM ghi chú → cập nhật phiếu |
| 1.2 SAI SỐ | Tick Chuyển thông tin → DM AM+QLCH; ghi chú → stamp thời gian |
| BC ĐIỂM CĐNT | Khoá dòng BC → BCLT |
| BC ĐIỂM PHỤC VỤ P.TNKH | Khoá dòng BC → BCLT |
| BC ĐIỂM PHỤC VỤ CỤM | Khoá dòng BC → BCLT |
| BC ĐIỂM PHỤC VỤ HỆ THỐNG | Khoá dòng BC → BCLT |
| BC SL CUỘC GỌI – SAI SỐ | Khoá dòng BC → BCLT |
| BC Hoàn thành target cuộc gọi CSKH | Khoá dòng BC → BCLT |
| BC ĐIỂM CĐNT – KTV | Khoá dòng BC → BCLT |
| BC ĐIỂM CĐNT – STYLIST | Khoá dòng BC → BCLT |