User Story: Thay đổi trạng thái tài khoản (active/inactive)¶
1. Description¶
Là Admin, tôi muốn thay đổi trạng thái tài khoản người dùng giữa active và inactive, để kiểm soát quyền truy cập hệ thống khi cần tạm dừng hoặc kích hoạt lại tài khoản.
2. Acceptance Criteria¶
2.1 Happy Path¶
- GIVEN Admin đang ở màn hình Danh sách người dùng (SCR-SYS-10) và chọn một tài khoản đang active
- WHEN Admin nhấn nút "Tạm dừng" (hoặc chuyển trạng thái sang inactive)
- THEN hệ thống chuyển trạng thái tài khoản sang inactive, vô hiệu hóa session hiện tại của người dùng đó (nếu đang đăng nhập), và hiển thị thông báo thành công
- GIVEN Admin đang ở màn hình Danh sách người dùng và chọn một tài khoản đang inactive
- WHEN Admin nhấn nút "Kích hoạt" (hoặc chuyển trạng thái sang active)
- THEN hệ thống chuyển trạng thái tài khoản sang active và hiển thị thông báo thành công. Người dùng có thể đăng nhập lại qua SSO
2.2 Alternative Paths¶
- GIVEN Admin chọn nhiều tài khoản trên danh sách
- WHEN Admin thay đổi trạng thái hàng loạt (batch)
- THEN hệ thống cập nhật trạng thái cho tất cả tài khoản đã chọn và hiển thị thông báo tổng hợp kết quả
- GIVEN hệ thống hiển thị hộp thoại xác nhận trước khi thay đổi trạng thái
- WHEN Admin nhấn "Hủy"
- THEN hệ thống không thay đổi trạng thái tài khoản và quay về danh sách
2.3 Error Cases¶
- GIVEN Admin cố gắng tạm dừng chính tài khoản của mình
- WHEN Admin nhấn nút "Tạm dừng" trên tài khoản của mình
- THEN hệ thống hiển thị thông báo lỗi "Không thể tạm dừng tài khoản của chính mình" và không thay đổi trạng thái
- GIVEN hệ thống gặp lỗi kết nối khi thực hiện thay đổi trạng thái
- WHEN Admin nhấn nút thay đổi trạng thái
- THEN hệ thống hiển thị thông báo lỗi "Có lỗi xảy ra, vui lòng thử lại" và trạng thái tài khoản không thay đổi
3. Business Rules¶
- Tài khoản ở trạng thái inactive không thể đăng nhập vào hệ thống
- Khi tài khoản bị tạm dừng (chuyển sang inactive), session hiện tại của người dùng đó phải bị vô hiệu hóa ngay lập tức
- Admin không thể tạm dừng chính tài khoản của mình
- Việc thay đổi trạng thái không ảnh hưởng đến thông tin tài khoản (họ tên, email, đơn vị, vai trò)
- Tài khoản inactive có thể được kích hoạt lại bất kỳ lúc nào bởi Admin
4. Traceability¶
Feature: Feature EP-01-002: Quản lý người dùng
Related Use Cases:
Screens:
Business Flows:
- Không áp dụng
Business Entities:
Role Matrix:
Third-Party Integrations:
- Không áp dụng
5. Out of Scope¶
- Xóa tài khoản người dùng (thuộc Story-004)
- Tự động tạm dừng tài khoản sau thời gian không hoạt động
- Thông báo qua email cho người dùng khi tài khoản bị tạm dừng