WP-ADM-HUB-01 — Super-admin Gmail + Dashboard thống kê / user / phân quyền
Domain: D-USER · D-AUTH · D-RIDES · D-DELIVERY
Surfaces: ADM · API
Status: IMP
Date: 2026-08-20
Super-admin
Login Dashboard = email OTP, không mật khẩu.
- Email mới:
minhtiensolutions@gmail.com ADMIN_EMAILStrongapi/.env.example- Ô login Dashboard mặc định email này
Prod (OWNER trên VPS):
ADMIN_EMAILS=minhtiensolutions@gmail.com
Rồi chạy một lần (local hoặc VPS, cùng DB):
cd api && npm run admin:super
Tạo/cập nhật user + role ADMIN. OTP gửi Gmail đó. ADMIN_BOOTSTRAP_ENABLED trên prod thường tắt — script Prisma gán role, không cần bật bootstrap.
Email cũ admin@minhtien.cloud vẫn ADMIN trong DB cho đến khi gỡ trên màn Người dùng.
Dashboard thiếu → đã thêm
| Màn | Việc |
|---|---|
| Tổng quan | KPI người dùng · đặt xe đang chạy · giao hàng · đơn FNB + số user theo 7 JWT role |
| Người dùng | Tìm email/SĐT/tên · lọc role · PATCH quyền |
| Đặt xe / đơn | Tab Đặt xe + Đơn FNB + Giao hàng (GET /delivery/admin) |
Phân quyền: luôn giữ USER, không gỡ ADMIN cuối.
API (tag users + delivery)
GET /users/admin/overviewGET /users/admin?q=&role=PATCH /users/admin/:id/rolesGET /delivery/admin
Files
api/src/modules/users/users-admin.controller.tsapi/src/modules/users/users-admin.util.tsapi/prisma/set-super-admin.mjsdashboard/src/modules/users/UsersModule.tsxdashboard/src/modules/overview/OverviewModule.tsxdashboard/src/modules/ops/OpsModule.tsx