Dự án

Tổng quan

Hồ sơ

Task #1612

Cập nhật bởi Minh Khánh Lê cách đây 3 tháng

Ở màn hình xử phạt vi phạm, có tính năng xét duyệt học viên vi phạm thành học viên bị xử phạt, lấy từ danh sách sinh viên vi phạm ở kêt quả kiểm tra 

 1. Cấu trúc dữ liệu liên quan: 
 * Màn hình tương tác với 2 bảng: Bảng chính Kết quả kiểm tra (InspectionResult - hiển thị ở khối bên trái) và bảng trung gian Học viên vi phạm (InspectionResult_Learner - hiển thị ở 2 khối bên phải). 

 2. Giao diện và Luồng tương tác: 

 Khối bên trái (Danh sách kết quả): Hiển thị danh sách Kết quả kiểm tra.  
 * Hỗ trợ lọc theo: Tên kế hoạch, Mô tả, Trạng thái. 

 Luồng Master-Detail: Khi click chọn vào 1 dòng Kết quả ở khối bên trái -> Hệ thống tự động load dữ liệu sang 2 bảng bên phải: 
 * Bảng phía trên bên phải (Danh sách học viên bị xử phạt): Hiển thị danh sách học viên từ bảng trung gian có điều kiện is_disciplined = true. Hỗ trợ lọc theo các cột dữ liệu học viên hiển thị trên Grid. 
 * Bảng phía dưới bên phải (Danh sách học viên vi phạm): Hiển thị danh sách học viên từ bảng trung gian có điều kiện is_disciplined = false. Hỗ trợ lọc theo các cột dữ liệu học viên hiển thị trên Grid. 

 3. Logic xử lý các nút bấm nghiệp vụ: 
 * Màn hình này KHÔNG có các chức năng: Thêm, Sửa, Xóa, Sao chép. 

 Nút "Duyệt xử phạt" (Thực hiện ở bảng phía dưới): 
 * Điều kiện: Hoạt động khi tích chọn ít nhất 1 học viên ở bảng phía dưới (Chưa duyệt). 
 * Hành động: Khi bấm nút -> Hiển thị Popup yêu cầu nhập "Lý do xử phạt" cho các học viên được chọn. 
 * Kết quả: Sau khi xác nhận thành công, các học viên này sẽ được cập nhật cột is_disciplined = true kèm lý do vừa nhập -> Tự động biến mất khỏi bảng dưới và nhảy lên hiển thị ở bảng trên. 

 Nút "Bỏ duyệt xử phạt" (Thực hiện ở bảng phía trên): 
 * Điều kiện: Hoạt động khi tích chọn ít nhất 1 học viên ở bảng phía trên (Đã duyệt). 
 * Hành động: Khi bấm nút -> Hiển thị Popup xác nhận huỷ duyệt. 
 * Kết quả: Sau khi xác nhận -> Cập nhật cột is_disciplined = false và xóa trắng lý do vi phạm cũ -> Học viên tự động biến mất khỏi bảng trên và quay trở lại bảng dưới.

Quay lại