﻿# Hướng dẫn phân quyền (PhinBill 1.1)

> Bản nháp tài liệu cho người dùng. Phần pháp lý về dữ liệu nhân viên đang chờ luật sư rà (xem `docs/RELEASE_CHECKLIST.md` mục 16).

## Ba vai trò

| Chức năng | Thu ngân | Quản lý | Chủ |
|---|---|---|---|
| Bán hàng, thanh toán, in phiếu | ✅ | ✅ | ✅ |
| Giảm giá | tới **20%** (Chủ chỉnh được); hơn thì cần PIN Quản lý/Chủ | mọi mức | mọi mức |
| Hủy đơn chưa thanh toán | ✅ (có lý do) | ✅ | ✅ |
| Hủy đơn đã thanh toán | cần PIN Quản lý/Chủ | ✅ | ✅ |
| Lịch sử đơn | chỉ đơn của mình, hôm nay | tất cả | tất cả |
| Báo cáo, xuất Excel/CSV/PDF | ❌ | ✅ | ✅ |
| Sổ thu chi, danh mục thu chi, ảnh chứng từ | ❌ | ✅ | ✅ |
| Kho, công thức món, kiểm kê (bán hàng vẫn tự trừ kho) | ❌ | ✅ | ✅ |
| Sửa thực đơn, bàn, nạp Excel | ❌ | ✅ | ✅ |
| Thông tin quán, máy in | ❌ | ✅ | ✅ |
| Sao lưu, khôi phục, xóa dữ liệu | ❌ | ❌ | ✅ |
| Nhân viên và bảo mật, nhật ký thao tác | ❌ | ❌ | ✅ |

## Lần đầu dùng
1. Mở app → **Thiết lập tài khoản Chủ** (tên + PIN 6 số, không dùng số quá dễ như 123456).
2. App hiện **mã khôi phục** (24 ký tự). **Viết hoặc in ra giấy** và cất nơi an toàn. Mã chỉ hiện một lần.
3. Vào *Cài đặt → Nhân viên và bảo mật* để thêm nhân viên với PIN tạm; họ sẽ phải đổi PIN ở lần đăng nhập đầu.
4. Có thể có **nhiều Chủ**. App không cho tắt hay hạ quyền Chủ cuối cùng.

## Hằng ngày
- Mở app luôn phải chọn tên và nhập PIN. Rời quầy thì bấm **ổ khóa** ở góc trên; đơn đang mở vẫn còn.
- Sai PIN 5 lần: khóa 30 giây, tăng dần tới 15 phút.
- Tự khóa sau N phút không thao tác: tùy chọn trong *Nhân viên và bảo mật* (mặc định tắt).
- Thu ngân giảm giá quá ngưỡng: chọn tên Quản lý/Chủ và nhập PIN của họ tại chỗ.

## Quên PIN
- **Nhân viên/Quản lý:** Chủ vào *Nhân viên và bảo mật → Đặt lại PIN* (PIN tạm, người đó phải đổi lại).
- **Chủ:** màn hình đăng nhập → *Chủ quên PIN? Dùng mã khôi phục*. Mã dùng một lần, xong app cấp mã mới – lại ghi ra giấy.
- Mất cả PIN lẫn mã (và không còn Chủ nào khác): chỉ còn cách xóa dữ liệu cài đặt rồi khôi phục từ tệp sao lưu.

## Nhật ký thao tác
Chủ xem ở *Cài đặt → Nhật ký thao tác*: đăng nhập sai, đổi quyền, hủy đơn, giảm giá có duyệt, xuất dữ liệu, sao lưu/khôi phục/xóa... Không có PIN trong nhật ký, không sửa/xóa từng dòng, tự xóa sau 6 tháng.

## Mã hóa tệp sao lưu (từ G1)
*Cài đặt → Sao lưu và khôi phục dữ liệu → Mã hóa tệp sao lưu → Bật mã hóa* (chỉ Chủ). Đặt **mật khẩu sao lưu** (≥ 10 ký tự) và **in/viết mã khôi phục sao lưu** (26 ký tự) cất riêng với ổ USB sao lưu. Máy không lưu mật khẩu. Mở tệp: *Khôi phục → chọn tệp →* nhập mật khẩu hoặc mã khôi phục (mở được cả trên máy khác). **Mất cả hai thì không thể mở lại các bản sao.**

## Sao lưu tự động (từ G2)
*Sao lưu và khôi phục → Sao lưu tự động ra ngoài máy → Bật* (chỉ Chủ; cần bật mã hóa trước). Chọn một thư mục **ngoài máy bán hàng**: ổ USB, ổ mạng, hoặc thư mục đồng bộ của Google Drive for desktop/OneDrive. App tự lưu bản mã hóa khi mở app, 15 phút sau thay đổi và khi đóng app; giữ 7 ngày gần nhất. Nếu quá 2 ngày không thành công, Trang chủ hiện banner đỏ cho Chủ và Quản lý. **Khôi phục:** *Chọn tệp để khôi phục* → chọn một tệp `phinbill_auto_*.phinbill` → nhập mật khẩu hoặc mã khôi phục sao lưu.

## Sổ doanh thu S1a-HKD (chỉ Chủ)
1. *Cài đặt → Thông tin quán →* mục **Thông tin hộ kinh doanh**: điền mã số thuế, địa điểm kinh doanh, họ tên người đại diện (và sửa chữ cột "Giao dịch" nếu cần).
2. *Báo cáo →* chọn kỳ (Hôm nay / 7 ngày / Tháng này / Chọn ngày) *→ biểu tượng tải xuống → Xuất Sổ doanh thu (S1a-HKD)*.
3. Đọc các lưu ý, tick "đã đọc", chọn nơi lưu. Tệp Excel có mỗi ngày một dòng (tổng doanh thu đơn **đã thanh toán**, sau giảm giá, theo ngày tạo đơn) và dòng Tổng cộng; điền ngày ký, ký tên, đóng dấu.
4. Khi in: chọn khổ A4 và "Fit to page" trong Excel.
**Quan trọng:** PhinBill không phải phần mềm kế toán và **không xuất hóa đơn điện tử**. Mẫu S1a chỉ dùng cho nhóm hộ theo quy định; nếu hộ của bạn thuộc nhóm phải dùng mẫu sổ khác hoặc xuất hóa đơn điện tử thì cần giải pháp khác. Hãy nhờ kế toán xem lại số liệu trước khi nộp.

## Lưu ý quan trọng
- **PIN chỉ ngăn dùng nhầm quyền trên màn hình**, không mã hóa dữ liệu. Ai có quyền vào máy Windows vẫn đọc được tệp dữ liệu — hãy đặt mật khẩu Windows.
- **Tệp sao lưu không mã hóa** và chứa nhật ký 6 tháng (có tên nhân viên). Không chứa PIN hay mã khôi phục. Cất kỹ, đừng gửi qua kênh không tin cậy.
- Khôi phục tệp sao lưu **giữ nguyên tài khoản nhân viên** của máy này và **gộp** nhật ký (không làm mất nhật ký hiện có).
- Hãy **thông báo cho nhân viên** rằng app ghi nhật ký thao tác kèm tên họ.
