2. Cập nhật hồ sơ cá nhân#
Mục tiêu#
Cho phép người dùng xem và chỉnh sửa thông tin cá nhân sau khi đăng nhập.
Luồng nghiệp vụ#
- Người dùng truy cập trang "Thông tin tài khoản".
- Hệ thống hiển thị: ảnh đại diện, tên hiển thị, giới tính, ngày sinh, email.
- Người dùng chỉnh sửa và nhấn "Lưu thay đổi".
- Backend kiểm tra: tên và email không trống, email hợp lệ, ảnh JPG/PNG ≤ 5MB.
- Lưu thông tin và trả phản hồi thành công.
Ràng buộc dữ liệu#
| Trường | Kiểu | Bắt buộc | Ghi chú |
|---|---|---|---|
| Ảnh đại diện | File (JPG, PNG) | Không | ≤ 5MB |
| Tên hiển thị | Text | Có | Không để trống |
| Giới tính | Enum (Nam, Nữ, Khác) | Không | |
| Ngày sinh | Date | Không | |
| Text | Có | Định dạng email hợp lệ |
Tiêu chí chấp nhận (Acceptance Criteria)#
| # | Tiêu chí | Điều kiện đạt |
|---|---|---|
| AC-2.1 | Hiển thị thông tin hiện tại | Truy cập trang → hiển thị đầy đủ: avatar, tên, giới tính, ngày sinh, email |
| AC-2.2 | Cập nhật tên hiển thị | Sửa tên → Lưu → tên mới hiển thị trên header và trang cá nhân |
| AC-2.3 | Upload avatar hợp lệ | Upload ảnh JPG/PNG ≤ 5MB → avatar cập nhật thành công |
| AC-2.4 | Từ chối avatar không hợp lệ | Upload file > 5MB hoặc không phải JPG/PNG → hiển thị lỗi, không lưu |
| AC-2.5 | Validate email | Nhập email sai định dạng → hiển thị lỗi validation, không lưu |
| AC-2.6 | Tên không được trống | Xóa trắng tên → nhấn Lưu → hiển thị lỗi "Tên không được để trống" |