Menu: CiCC 6S → Phân quyền User
File:cicc-6s-api.phpfunctioncicc_6s_admin_users()
Bảng:wp_6s_users
1. Danh sách User
Bảng hiển thị tất cả user từ wp_6s_users:
| ID | Họ tên | Username | Vai trò | SĐT | Locations | Trạng thái | |
|---|---|---|---|---|---|---|---|
| 1 | Nguyễn Văn A | danhgia | R07 - Auditor | a@b.c | 090xxx | VPNS, C1, C5, CD | ✅ Active |
| 2 | Trần Văn B | truongnhom | R08 - Leader | b@b.c | 091xxx | C1, C2, C3 | ⏳ Inactive |
2. Thao tác (CRUD)
| Nút | Hành động |
|---|---|
| ✏️ | Sửa user: đổi role, locations, status |
| 🗑️ | Xóa user |
| ✅ Kích hoạt | Đổi status → active |
| ⏸️ Vô hiệu | Đổi status → inactive |
3. Form thêm/sửa User
Các trường
| Trường | Loại | Bắt buộc | Mô tả |
|---|---|---|---|
| Họ và tên | Text | ✅ | Tên hiển thị |
| Username | Text | ✅ | Tên đăng nhập |
| ✅ | Liên hệ | ||
| Số điện thoại | Text | ✅ | Đăng nhập thay thế |
| Mật khẩu | Password | ✅ (thêm) | Hash bcrypt |
| Vai trò (R01-R09) | Select | ✅ | 9 vai trò chuẩn |
| Kích hoạt | Checkbox | — | active/inactive |
| Vị trí phụ trách | Tree Picker | ✅ | Chọn từ cây phả hệ |
Chọn vị trí
- Dùng Tree Picker tương tự frontend
- Chọn nhiều location (checkbox đa chọn)
- Lưu dạng JSON array vào cột
assigned_locations
4. 9 Vai trò chuẩn
| Code | Tên | Scope | Mô tả |
|---|---|---|---|
| R01 | System Admin | Corporate | Quản trị hệ thống |
| R02 | 6S Chairman (CEO) | Corporate | Chiến lược, phê duyệt |
| R03 | Head of Steering (COO) | Corporate | Kế hoạch 1-3 năm |
| R04 | 6S Coordinator | Plant | Đào tạo, tiến độ |
| R05 | Sponsor (Plant Director) | Plant | Cấp nguồn lực |
| R06 | Head of Audit (CQO) | Plant | Tiêu chí, khen thưởng |
| R07 | 6S Auditor | Plant | Đánh giá hiện trường |
| R08 | 6S Leader | Location | Triển khai, treo/rút thẻ |
| R09 | 6S Team Member | Location | Thực hành hàng ngày |
5. Audit Trail
Bảng wp_6s_user_logs ghi lại:
- ✅ Kích hoạt/Vô hiệu hóa user
- 🔄 Thay đổi role
- 📝 Thay đổi assigned_locations
- Mỗi log ghi:
target_wp_user_id, action, actor_wp_user_id, old_value, new_value
6. Lưu ý
- User đăng ký từ mobile có
status='inactive'— Admin phải kích hoạt passwordlưu dạng bcrypt (wp_hash_password)user_6s_id(id trongwp_6s_users) ≠wp_user_id(WordPress)
Audio thuyết minh
Nghe hướng dẫnĐường dẫn minh họa:
audio/13-admin-phan-quyen.mp3Click play để nghe hướng dẫn bằng giọng đọc.
Screenshots

Chú thích: Bảng danh sách user 6S: ID, Họ tên, Username, Vai trò, Email, SĐT, Locations, Trạng thái

Chú thích: Form thêm/sửa user với Tree Picker chọn vị trí phụ trách
Tree Picker chọn locationĐường dẫn minh họa:
images/admin/admin-users-tree-picker.pngChú thích: Tree Picker đa chọn vị trí cho user
Bảng 9 vai trò chuẩnĐường dẫn minh họa:
images/admin/admin-users-roles.pngChú thích: Danh sách 9 vai trò R01-R09 với scope và mô tả
Audit Trail user logsĐường dẫn minh họa:
images/admin/admin-users-audit-log.pngChú thích: Log thay đổi role, locations, status của user