Giao diện
Quản trị hệ thống
Ai dùngQuản trị viên Nhân viên phân bổ & QC
Người dùng
Dịch vụ: user-service, ghi vào Keycloak qua Admin API. Quyền: users:read|write.
| Mã | Yêu cầu |
|---|---|
| FR-ADM-1 | Tạo người dùng: email (cũng là tên đăng nhập), Họ, Tên (cần ít nhất một, cả khi tạo và khi sửa: NAME_REQUIRED), mật khẩu tạm 8–200 ký tự. Tài khoản bật sẵn, email coi như đã xác thực, bắt buộc đổi mật khẩu lần đầu đăng nhập. |
| FR-ADM-2 | Hiển thị tên theo thứ tự Họ rồi Tên (firstName lastName). |
| FR-ADM-3 | Gán vai trò thay toàn bộ tập vai trò của người dùng; vai trò lạ bị từ chối (UNKNOWN_ROLE). Vai trò mặc định của Keycloak không hiển thị, không sửa. |
| FR-ADM-4 | Gửi đặt lại mật khẩu, Gửi xác thực email gửi email hành động của Keycloak. |
| FR-ADM-5 | Không xoá người dùng; Vô hiệu hóa tài khoản chặn đăng nhập, dữ liệu và phân công giữ nguyên. Kích hoạt lại tài khoản để mở lại. |
| FR-ADM-6 | Người dùng bị xoá trực tiếp trên Keycloak phải được đánh dấu xoá trong bản sao, kiểm tra mỗi giờ. |
Cấu hình hệ thống
Dịch vụ: system-setting-service. Đọc: AD, MG, PM, WS, QC (processing-record-settings:read); sửa: AD.
| Mã | Yêu cầu |
|---|---|
| FR-ADM-7 | Tab Chung (mở mặc định): Tên công ty đầy đủ, Tên viết tắt, Địa điểm lập biên bản, và Người ký của công ty gồm hai chức danh cố định Thủ kho, Bộ Phận Sản Xuất, chỉ sửa họ tên. Dùng cho Biên bản gia công, Định mức và Phiếu nhập kho. Tab Biên bản gia công: chức danh Bên B, chức danh và họ tên Bên A của Định mức, chức danh Bên B của Định mức. Mỗi tab lưu vào bản ghi riêng (/api/system-settings/general, /api/system-settings/processing-record), có Lưu, Khôi phục mặc định riêng; chỉnh sửa chưa lưu ở tab kia giữ nguyên. |
| FR-ADM-8 | Mọi ô được cắt khoảng trắng, ≤ 200 ký tự. Thông tin công ty và mọi chức danh bắt buộc; họ tên để trống là ký tay. Hai chức danh người ký của công ty do server cố định: API Chung không nhận, luôn trả recordSignerA1Title = Thủ kho, recordSignerA2Title = Bộ Phận Sản Xuất. Khi nâng cấp, giá trị Chung đã lưu trong bản ghi Biên bản gia công được chuyển sang bản ghi Chung. |
| FR-ADM-9 | Đọc cấu hình trả cả giá trị đang dùng (đã lưu, đè lên mặc định) và mặc định; Khôi phục mặc định điền lại mặc định, bấm Lưu mới áp dụng. |
| FR-ADM-17 | Tab Biên bản vượt định mức: Bên A Đại diện bởi (mặc định Nguyễn Thành Công) và Chức vụ (mặc định Trưởng ca sản xuất), cả hai bắt buộc, ≤ 200 ký tự, cắt khoảng trắng. Lưu riêng (/api/system-settings/compensation-record), cùng quyền đọc, sửa như trên. |
Cài đặt hiển thị
Dịch vụ: user-setting-service, lưu theo người dùng. Chỉ có tác dụng ở không gian NV phân bổ & QC.
| Mã | Yêu cầu |
|---|---|
| FR-ADM-10 | Người dùng ẩn được tối đa 9 phần: vendor_drill_water, company_weighing, weights, spoil_weights, qc, note, attachments (chi tiết phiếu), reference_weights, line_weight_plate (phân bổ). Mặc định không ẩn gì. |
| FR-ADM-11 | Thay đổi lưu ngay, áp dụng trên mọi thiết bị của người đó. Ẩn chỉ là hiển thị; dữ liệu giữ nguyên. Hiện tất cả bật lại mọi phần. |
Đồng bộ
Dịch vụ: sync-service. Quyền: sync:read|write (AD).
| Mã | Yêu cầu |
|---|---|
| FR-ADM-12 | Có 14 tác vụ: NCC, phân công NCC, sản phẩm (kèm danh mục), người dùng, nhân công, phương tiện, HTX, kế hoạch, bảng giá, phiếu mua dừa, phiếu mua cơm dừa, tệp đính kèm, phân bổ sơ chế, bản ghi cân xe. |
| FR-ADM-13 | Chạy một tác vụ: dịch vụ nguồn phát lại toàn bộ bảng lên luồng sự kiện để mọi bản sao được dựng lại. Phiếu mua dừa còn được tính lại số liệu, trạng thái, số lô trước khi phát. |
| FR-ADM-14 | Trạng thái: Chưa chạy, Đang chạy, Thành công, Thất bại, kèm lần chạy gần nhất (thời điểm, thời gian, số bản ghi). |
| FR-ADM-15 | Mỗi tác vụ chỉ một lần chạy cùng lúc (SYNC_ALREADY_RUNNING). Lần chạy quá 24 giờ bị đánh dấu thất bại. Gọi dịch vụ nguồn lỗi: thất bại ngay. |
| FR-ADM-16 | Đồng bộ chạy nền; người khác vẫn dùng hệ thống bình thường. |