Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống
1
/ 54 trang
THÔNG TIN TÀI LIỆU
Thông tin cơ bản
Định dạng
Số trang
54
Dung lượng
1,66 MB
Nội dung
TÀI LIỆU DỰ ÁN HỆ THỐNG QUẢN LÝ ĐÀO TẠO - EDUSYS GIẢNG VIÊN : NGUYỄN VĂN TÈO HỌC VIÊN : NGUYỄN TRẦN MỸ NGUYÊN LỚP/KỲ : IT17314/FA22 JUNE 12, 2022 LẬP TRÌNH CITY EDUCATION CENTER MỤC LỤC Giới thiệu dự án .4 1.1 Giới thiệu công ty LapTrinhCity 1.2 Yêu cầu công ty 1.3 Lập kế hoạch dự án .4 Phân tích yêu cầu khách hàng 2.1 Sơ đồ Use Case 2.2 Đặc tả yêu cầu hệ thống (SRS) 2.2.1 Quản lý nhân viên 2.2.2 Quản lý chuyên đề .6 2.2.3 Quản lý người học .6 2.2.4 Quản lý khóa học .6 2.2.5 Quản lý học viên 2.2.6 Quản lý tổng hợp – thống kê .7 2.2.7 Đăng nhập 2.2.8 Đổi mật .8 2.3 Sơ đồ triển khai yêu cầu hệ thống 2.3.1 Sơ đồ triển khai 2.3.2 Yêu cầu hệ thống .8 Thiết kế ứng dụng 3.1 Mơ hình cơng nghệ ứng dụng .9 3.2 Thực thể 3.2.1 Sơ đồ quan hệ thực thể (ERD) 3.2.2 Chi tiết thực thể .11 3.3 Giao diện 14 3.3.1 Sơ đồ tổ chức giao diện 14 3.3.2 Giao diện cửa sổ 14 3.3.3 Giao diện chức 15 3.3.4 Các giao diện hỗ trợ khác 24 Thực dự án .27 4.1 Tạo giao diện với Swing 27 4.1.1 Cửa sổ (EduSysJFrame) 27 4.1.2 Các cửa sổ quản lý 30 4.1.3 Cửa sổ tổng hợp thống kê (ThongKeJDialog) 36 4.1.4 Các giao diện hỗ trợ khác 37 4.2 Tạo CSDL với SQL Server .40 4.2.1 Sơ đồ quan hệ 40 4.2.2 Chi tiết bảng 40 4.2.3 Thủ tục lưu 43 4.3 Lập trình CSDL 44 4.3.1 Mơ hình tổ chức lập trình CSDL .44 4.3.2 JdbcHelper (XJdbc) 44 4.3.3 Entity Class DAO .45 4.4 Thư viện tiện ích .48 4.5 Lập trình nghiệp vụ 48 4.5.1 Cửa sổ EduSysJFrame 48 4.5.2 Các cửa sổ hỗ trợ tổ chức 49 4.5.3 Các cửa sổ chức quản lý 49 4.5.4 Cửa sổ chức tổng hợp - thống kê 51 Kiểm thử phần mềm sửa lỗi 51 5.1 DangNhapJDialog .51 5.2 DoiMatKhauJDialog 51 5.3 NhanVienJDialog 51 5.4 ChuyenDeJDialog .52 5.5 NguoiHocJDialog .52 5.6 KhoaHocJDialog .52 5.7 HocVienJDialog 52 5.8 ThongKeJDialog .52 Đóng gói triển khai 52 6.1 Sản phẩm phần mềm 52 6.2 Hướng dẫn cài đặt .53 KẾT LUẬN 53 7.1 Khó khăn 53 7.2 Thuận lợi 53 7.3 Hướng phát triển .53 TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS GIỚI THIỆU DỰ ÁN 1.1 GIỚI THIỆU CƠNG TY LAPTRINHCITY Giới thiệu cơng ty LapTrinhCity trạng công ty Công ty LAPTRINHCITY trung tâm đào tạo ngắn hạn khóa tin học theo chuyên đề Photoshop, Java, Web Việc quản lý khóa học, học viên, bảng điểm danh thu thực thông qua excel Trung tâm gặp khó khăn số lượng người học ngày nhiều nên việc quản lý excel gặp nhiều khó khăn 1.2 U CẦU CỦA CƠNG TY Nêu yêu cầu công ty LapTrinhCity LapTrinhCity mong muốn xây dựng phần mềm để giải khó khăn Đánh giá tính khả thi (năng lực, khả thực dự án này) 1.3 LẬP KẾ HOẠCH DỰ ÁN Lập kế hoạch kế hoạch dự án theo mẫu sau TT 1.1 2.1 3.1 4.1 5.1 HẠNG MỤC Phân tích yêu cầu khách hàng Vẽ sơ đồ use cases BẮT ĐẦU KẾT THÚC … Thiết kế ứng dụng Thiết kế mơ hình cơng nghệ … Thực dự án Tạo giao diện … Kiểm thử Xây dựng kịch bảng kiểm thử … Đóng gói & triển khai Đóng gói sản phẩm … PHÂN TÍCH U CẦU KHÁCH HÀNG Tiến hành phân tích yêu cầu khách hàng theo bước sau TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS KẾT QUẢ TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS 2.1 SƠ ĐỒ USE CASE Vẽ sơ đồ use case để phác họa phạm vị ứng dụng vai trò sử dụng Nên chia nhiều mức để tránh rối sơ đồ 2.2 ĐẶC TẢ YÊU CẦU HỆ THỐNG (SRS) Hãy mô tả cách cụ thể chức sơ đồ use case Mỗi chức cần mô tả vấn đề sau: o Làm công việc Mục đích o Dữ liệu liên quan: cần thiết để chức hoạt động o Đối tượng sử dụng 2.2.1 QUẢN LÝ NHÂN VIÊN MÔ TẢ CHỨC NĂNG: TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS Chức quản lý nhân viên sử dụng để quản lý thông tin nhân viên Yêu cầu chức liệt kê danh sách nhân viên, xem thông tin chi tiết nhân viên, thêm nhân viên mới, cập nhật thông tin xóa nhân viên tồn DỮ LIỆU LIÊN QUAN: Thông tin nhân viên gồm: mã nhân viên, họ tên, mật đăng nhập, vai trò nhân viên (gồm trưởng phòng nhân viên bình thường) ĐỐI TƯỢNG SỬ DỤNG: Sau đăng nhập nhân viên sử dụng chức này, ngoại trừ xóa có trưởng phòng sử dụng 2.2.2 QUẢN LÝ CHUYÊN ĐỀ MÔ TẢ CHỨC NĂNG: Chức quản lý chuyên đề sử dụng để quản lý thông tin nhân chuyên đề Yêu cầu chức liệt kê danh sách chuyên đề, xem thông tin chi tiết chuyên đề, thêm chuyên đề mới, cập nhật thơng tin xóa chun đề tồn DỮ LIỆU LIÊN QUAN: Thông tin nhân viên gồm: mã chuyên đề, tên chuyên đề, học phí, thời lượng, hình, mơ tả ĐỐI TƯỢNG SỬ DỤNG: Sau đăng nhập nhân viên sử dụng chức này, ngoại trừ xóa có trưởng phịng sử dụng 2.2.3 QUẢN LÝ NGƯỜI HỌC MÔ TẢ CHỨC NĂNG: Chức quản lý người học sử dụng để quản lý thông tin người học Yêu cầu chức liệt kê danh sách người học, xem thông tin chi tiết người học, thêm người học, cập nhật thơng tin xóa người học tồn DỮ LIỆU LIÊN QUAN: Thông tin nhân viên gồm: mã người học, họ tên, ngày sinh, giới tính, điện thoại, email, ghi chú, mã nhân viên, ngày đăng kí ĐỐI TƯỢNG SỬ DỤNG: Sau đăng nhập nhân viên sử dụng chức này, ngoại trừ xóa có trưởng phòng sử dụng TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS 2.2.4 QUẢN LÝ KHĨA HỌC MƠ TẢ CHỨC NĂNG: Chức quản lý khóa học sử dụng để quản lý thơng tin khóa học Yêu cầu chức liệt kê danh sách khóa học, xem thơng tin chi tiết khóa học, thêm khóa học mới, cập nhật thơng tin xóa khóa học tồn DỮ LIỆU LIÊN QUAN: Thông tin nhân viên gồm: Mã khóa học, mã chun đề, học phí, thời lượng, ngày khai giảng, ghi chú, mã nhân viên, ngày tạo ĐỐI TƯỢNG SỬ DỤNG: Sau đăng nhập nhân viên sử dụng chức này, ngoại trừ xóa có trưởng phòng sử dụng 2.2.5 QUẢN LÝ HỌC VIÊN MÔ TẢ CHỨC NĂNG: Chức quản lý học viên sử dụng để quản lý thông tin học viên Yêu cầu chức liệt kê danh sách học viên, xem thông tin chi tiết học viên, thêm học viên mới, cập nhật thông tin xóa học viên tồn DỮ LIỆU LIÊN QUAN: Thông tin nhân viên gồm: mã nhân viên, họ tên, mật đăng nhập, vai trò nhân viên (gồm trưởng phòng nhân viên bình thường) ĐỐI TƯỢNG SỬ DỤNG: Sau đăng nhập nhân viên sử dụng chức này, ngoại trừ xóa có trưởng phòng sử dụng 2.2.6 QUẢN LÝ TỔNG HỢP – THỐNG KÊ MÔ TẢ CHỨC NĂNG: Chức quản lý tổng hợp - thống kê sử dụng để quản lý thông tin nhân viên Yêu cầu chức liệt kê danh sách nhân viên, xem thông tin chi tiết nhân viên, thêm nhân viên mới, cập nhật thơng tin xóa nhân viên tồn tài DỮ LIỆU LIÊN QUAN: Thông tin nhân viên gồm: Bảng điểm, người học, điểm chuyên đề, doanh thu ĐỐI TƯỢNG SỬ DỤNG: Sau đăng nhập nhân viên sử dụng chức TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS 2.2.7 ĐĂNG NHẬP MÔ TẢ CHỨC NĂNG: Chức quản lý nhân viên sử dụng để quản lý thông tin nhân viên Yêu cầu chức liệt kê danh sách nhân viên, xem thông tin chi tiết nhân viên, thêm nhân viên mới, cập nhật thơng tin xóa nhân viên tồn tài DỮ LIỆU LIÊN QUAN: Thông tin nhân viên gồm: mã nhân viên, họ tên, mật đăng nhập, vai trò nhân viên (gồm trưởng phòng nhân viên bình thường) ĐỐI TƯỢNG SỬ DỤNG: Sau đăng nhập nhân viên sử dụng chức này, ngoại trừ xóa có trưởng phịng sử dụng 2.2.8 ĐỔI MẬT KHẨU MÔ TẢ CHỨC NĂNG: Chức quản lý nhân viên sử dụng để quản lý thông tin nhân viên Yêu cầu chức liệt kê danh sách nhân viên, xem thông tin chi tiết nhân viên, thêm nhân viên mới, cập nhật thơng tin xóa nhân viên tồn tài DỮ LIỆU LIÊN QUAN: Thông tin nhân viên gồm: mã nhân viên, họ tên, mật đăng nhập, vai trò nhân viên (gồm trưởng phòng nhân viên bình thường) ĐỐI TƯỢNG SỬ DỤNG: Sau đăng nhập nhân viên sử dụng chức này, ngoại trừ xóa có trưởng phịng sử dụng 2.3 SƠ ĐỒ TRIỂN KHAI VÀ YÊU CẦU HỆ THỐNG Đưa mơ hình triển khai ứng dụng thực tế để từ điều kiện cần thiết cho việc triển khai ứng dụng 2.3.1 SƠ ĐỒ TRIỂN KHAI Đưa mơ hình triển khai ứng dụng thực tế 2.3.2 YÊU CẦU HỆ THỐNG Liệt kê phần cứng, phần mềm cần thiết để hệ thống thực THIẾT KẾ ỨNG DỤNG Dựa vào tài liệu phân tích mục để phác thảo: TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS o Mơ hình cơng nghệ o Giao diện o Thực thể 3.1 MƠ HÌNH CƠNG NGHỆ ỨNG DỤNG Phác thảo mơ hình cơng nghệ ứng dụng hệ thống phần mềm Giải thích rõ thành phần mơ hình 3.2 THỰC THỂ Căn vào SRS để thiết kế thực thể Cần phải hoàn thiện phần theo yêu cầu sau 3.2.1 SƠ ĐỒ QUAN HỆ THỰC THỂ (ERD) Vẽ sơ đồ thể mối quan hệ thực thể Nên chia thành mức (tổng quát chi tiết) để dễ đọc, dễ hiểu TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS 4.1.4.3 Cửa sổ đăng nhập (DangNhapJDialog) GIAO DIỆN ĐẶT TÊN CÁC ĐIỀU KHIỂN TT ĐIỀU KHIỂN TÊN GIÁ TRỊ 4.1.4.4 Cửa sổ đổi mật (DoiMatKhauJDialog) GIAO DIỆN TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS ĐẶT TÊN CÁC ĐIỀU KHIỂN TT ĐIỀU KHIỂN TÊN GIÁ TRỊ 4.2 TẠO CSDL VỚI SQL SERVER 4.2.1 SƠ ĐỒ QUAN HỆ Hình: Sơ đồ quan hệ Ràng buộc: Mô tả ràng buộc quan hệ 4.2.2 CHI TIẾT CÁC BẢNG Mỗi bảng cần viết theo hướng dẫn sau đây: 4.2.2.1 Bảng NhanVien CẤU TRÚC BẢNG TÊN CỘT MaNV MatKhau HoTen VaiTro KIỂU DỮ LIỆU NVARCHAR(20) NVARCHAR(50) NVARCHAR(50) BIT MÃ LỆNH TẠO BẢNG RÀNG BUỘC PK, NOT NULL NOT NULL NOT NULL DEFAULT MÔ TẢ Mã nhân viên Mật Họ tên trưởng phòng, nhân viên CREATE TABLE NhanVien ( MaNV NVARCHAR(50) NOT NULL, MatKhau NVARCHAR(50) NOT NULL, HoTen NVARCHAR(50) NOT NULL, VaiTro BIT NOT NULL, PRIMARY KEY(MaNV) ) CÂU LỆNH SQL CƠ BẢN TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS INSERT UPDATE DELETE SELECT INTO NhanVien (MaNV, MatKhau, HoTen, VaiTro) VALUES (?, ?, ?, ?) NhanVien SET MatKhau = ?, HoTen = ?, VaiTro = ? WHERE MaNV = ? FROM NhanVien WHERE MaNV = ? * FROM NhanVien WHERE MaNV = ? 4.2.2.2 Bảng ChuyenDe CẤU TRÚC BẢNG TÊN CỘT MaCD TenCD HocPhi ThoiLuong Hinh MoTa KIỂU DỮ LIỆU Nchar(5) Nvarchar(50) Float Int Nvarchar(50) Nvarchar(255) MÃ LỆNH TẠO BẢNG RÀNG BUỘC PK, NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL NOT NULL MÔ TẢ Mã chuyên đề Tên chuyên đề Học phí Thời lượng Hình ảnh Mơ tả CREATE TABLE ChuyenDe ( MaCD NCHAR(5) NOT NULL, TenCD NVARCHAR(50) NOT NULL, HocPhi Float NOT NULL, ThoiLuong Int NOT NULL, Hinh NVARCHAR(50) NOT NULL, MoTa NVARCHAR(255) NOT NULL, PRIMARY KEY(MaCD) ) CÂU LỆNH SQL CƠ BẢN INSERT INTO ChuyenDe (MaCD,TenCD, TenCD, ThoiLuong, Hinh, Mota) VALUES (?, ?, ?, ?,?,?) UPDATE ChuyenDe SET MaCD = ?, TenCD = ?,ThoiLuong = ? , Hinh = ? , Mota = ? WHERE MaCD = ? DELETE FROM ChuyenDe WHERE MaCD = ? SELECT * FROM ChuyenDe WHERE MaCD = ? 4.2.2.3 Bảng NguoiHoc CẤU TRÚC BẢNG TÊN CỘT MANH HOTEN GIOITINH NGAYSINH DIENTHOA I EMAIL GHICHU MANV NgayDK KIỂU DỮ LIỆU Nchar(7) Nvarchar(50) Bit Date Nvarchar(24) RÀNG BUỘC PK, NOT NULL NOT NULL DEFAULT NOT NULL NOT NULL MÔ TẢ MÃ NGƯỜI HỌC HỌ VÀ TÊN GIỚI TÍNH NGÀY SINH ĐIỆN THOẠI Nvarchar(50) Nvarchar(255) Nvarchar(20) Date NOT NULL NULL PK, NOT NULL DEFAULT GETDATE() EMAIL GHI CHÚ MÃ NHÂN VIÊN NHẬP NGÀY ĐĂNG KÝ TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS MÃ LỆNH TẠO BẢNG CREATE TABLE [dbo].[NguoiHoc]( [MaNH] [nchar](7) NOT NULL, [HoTen] [nvarchar](50) NOT NULL, [NgaySinh] [date] NOT NULL, [GioiTinh] [bit] NOT NULL, [DienThoai] [nvarchar](50) NOT NULL, [Email] [nvarchar](50) NOT NULL, [GhiChu] [nvarchar](max) NULL, [MaNV] [nvarchar](50) NOT NULL, [NgayDK] [date] NOT NULL, CONSTRAINT [PK_NguoiHoc] PRIMARY KEY CLUSTERED ( [MaNH] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] TEXTIMAGE_ON [PRIMARY] CÂU LỆNH SQL CƠ BẢN INSERT INTO Nguoihoc (MaNH,HoTen, NgaySinh, GioiTinh, DienThoai, Email, GhiChu, MaNV, NgayDK) VALUES (?, ?, ?, ?,?,?) UPDATE Nguoihoc SET MaNH = ?, HoTen = ?, NgaySinh = ? , GioiTinh = ? , DienThoai = ? WHERE MaNH = ?, DELETE FROM ChuyenDe WHERE MaCD = ? SELECT * FROM ChuyenDe WHERE MaCD = ? 4.2.2.4 Bảng KhoaHoc CẤU TRÚC BẢNG TÊN CỘT MaKH MaCD HocPhi ThoiLuong NgayKG GhiChu MaNV NgayTao KIỂU DỮ LIỆU Int Nchar(5) Float Int Date Nvarchar(255) Nvarchar(20) Date MÃ LỆNH TẠO BẢNG RÀNG BUỘC PK, tự tăng FK, not null Not null Not null Not null Null FK, not null DEFAULT GETDATE() MÔ TẢ Mã khóa học Mã chun đề Học phí Thời lượng(giờ) Ngày khai giảng Ghi khóa học Mã nhân viên nhập Ngày đăng ký CREATE TABLE [dbo].[KhoaHoc]( [MaKH] [int] IDENTITY(1,1) NOT NULL, [MaCD] [nchar](5) NOT NULL, [HocPhi] [float] NOT NULL, [ThoiLuong] [int] NOT NULL, [NgayKG] [date] NOT NULL, [GhiChu] [nvarchar](50) NULL, [MaNV] [nvarchar](50) NOT NULL, [NgayTao] [date] NOT NULL, CONSTRAINT [PK_KhoaHoc] PRIMARY KEY CLUSTERED TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS ( [MaKH] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] CÂU LỆNH SQL CƠ BẢN 4.2.2.5 Bảng HocVien CẤU TRÚC BẢNG TÊN CỘT MaHV MaKH MaNH Diem KIỂU DỮ LIỆU Int Int Nchar(7) Float MÃ LỆNH TẠO BẢNG RÀNG BUỘC PK, tự tăng FK, not null FK, not null Default -1 MƠ TẢ Mã học viên Mã khóa học Mã người học Điểm cuối môn CREATE TABLE [dbo].[HocVien]( [MaHV] [int] IDENTITY(1,1) NOT NULL, [MaKH] [int] NOT NULL, [MaNH] [nchar](7) NOT NULL, [Diem] [float] NOT NULL, CONSTRAINT [PK_HocVien] PRIMARY KEY CLUSTERED ( [MaHV] ASC )WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY] ) ON [PRIMARY] CÂU LỆNH SQL CƠ BẢN 4.2.3 THỦ TỤC LƯU Mỗi thủ tục lưu cần làm rõ vấn đề sau đây: o Mô tả, mục đích sử dụng o Tham số vào o Kết 4.2.3.1 Sp_BangDiem() MÃ NGUỒN CREATE PROC sp_BangDiem(@MaKH INT) AS BEGIN SELECT nh.MaNH, nh.HoTen, hv.Diem FROM HocVien hv JOIN NguoiHoc nh ON nh.MaNH=hv.MaNH WHERE hv.MaKH = @MaKH ORDER BY hv.Diem DESC TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS MÔ TẢ THAM SỐ KẾT QUẢ END Proc sử dụng để truy vấn bảng điểm khóa học @MaKH mã khóa học cần truy vấn bảng điểm [MaNH, TenNH, Diem] 4.2.3.2 Sp_DoanhThu() MÃ NGUỒN MÔ TẢ THAM SỐ KẾT QUẢ 4.2.3.3 Sp_LuongNguoiHoc() MÃ NGUỒN MÔ TẢ THAM SỐ KẾT QUẢ 4.2.3.4 Sp_DiemChuyenDe() MÃ NGUỒN MƠ TẢ THAM SỐ KẾT QUẢ 4.3 LẬP TRÌNH CSDL 4.3.1 MƠ HÌNH TỔ CHỨC LẬP TRÌNH CSDL Hình mô tả (DAO+JdbcHelper+Entity+CSDL) 4.3.2 JDBCHELPER (XJDBC) Mô tả lớp XJdbc Hướng dẫn sử dụng phương thức tiện ích XJdbc MƠ TẢ: XJdbc lớp tiện ích hỗ trợ lập trình JDBC Lớp gồm phương thức mô tả phần hướng dẫn sử dụng sau HƯỚNG DẪN SỬ DỤNG: XJdbc.query(String sql, Object…args): ResultSet o Truy vấn liệu từ CSDL o Tham số sql: câu lệnh SELECT truy vấn có chứa ? o Tham số: args giá trị cung cấp cho dấu ? SQL o Kết quả: ResultSet XJdbc.update(String sql, Object…args): int o Thao tác CSDL (INSERT, UPDATE, DELETE) TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS o Tham số sql: câu lệnh INSERT, UPDATE, DELETE có chứa ? o Tham số: args giá trị cung cấp cho dấu ? SQL o Kết quả: số ghi có ảnh hưởng XJdbc.value(String sql, Object…args): Object o Truy vấn giá trị từ CSDL o Tham số sql: câu lệnh SELECT truy vấn có chứa ? o Tham số: args giá trị cung cấp cho dấu ? SQL o Kết quả: đối tượng chứa giá trị truy vấn 4.3.3 ENTITY CLASS VÀ DAO Mỗi mục cần làm rõ vấn đề sau o Mô hình mơ tả lớp thực thể o Mơ hình mô tả lớp DAO 4.3.3.1 Class Diagram TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS 4.3.3.2 EduSysDAO EduSysDAO lớp trừu tượng, tổng quát (Generic) đặc tả hành động truy xuất CSDL mà lớp DAO cụ thể phải có Các phương thức thực truy xuất CSDL mô tả sau TT PHƯƠNG THỨC insert(E) update(E) delete(K) selectById(K): E selectAll(): List selectBySql(String, Object…): List MÔ TẢ HOẠT ĐỘNG Thêm ghi với liệu entity E Cập nhật ghi với liệu entity E Xóa ghi với mã K Truy vấn ghi với mã K Truy vấn tất ghi Truy vấn ghi tùy vào sql args Trên hoạt động truy xuất CSDL Trong lớp DAO cụ thể, DAO viết mã cho phương thức với E lớp Entity K kiểu khóa cụ thể đồng thời bổ sung thêm hoạt động truy xuất đặc thù riêng DAO cần thiết TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS 4.3.3.3 NhanVien NhanVienDAO DIỄN GIẢI THÀNH PHẦN NhanVien NhanVienDA O MÔ TẢ Là lớp thực thể mô tả liệu nhân viên Là lớp DAO cụ thể hóa hoạt động truy xuất CSDL với bảng NhanVien E cụ thể hóa NhanVien K cụ thể hóa String SQL câu lệnh thao tác liệu bảng NhanVien 4.3.3.4 ChuyenDe & ChuyenDeDAO … 4.3.3.5 NguoiHoc & NguoiHocDAO … TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS 4.3.3.6 KhoaHoc & KhoaHocDAO … 4.3.3.7 HocVien & HocVienDAO … 4.3.3.8 ThongKeDAO … 4.4 THƯ VIỆN TIỆN ÍCH Mơ tả lớp tiện ích sau tương tự JdbcHelper(XJdbc) mục 4.3.2 o XImage o XDate o MsgBox o Auth 4.5 LẬP TRÌNH NGHIỆP VỤ Mỗi cửa sổ chức sau cần o Sơ đồ tổ chức công nghệ o Mô tả tất hành vi người sử dụng tương tác lên chức giao diện (có thể sử dụng lưu đồ thuật toán hoạt loại sơ đồ Activity Diagram, Sequence Diagram - loại sơ đồ học môn Nhập môn kỹ thuật phần mềm) 4.5.1 CỬA SỔ CHÍNH EDUSYSJFRAME TT PHƯƠNG THỨC init() openDoiMatKhau() 10 11 startDongHo() dangXuat () ketThuc () openNhanVien () openKhoaHoc () openChuyenDe () openNguoiHoc () openHocVien () openThongKe () MÔ TẢ Phương thức gọi ứng dụng bắt đầu chạy để Mở cửa sổ chào Mở cửa sổ đăng nhập Bắt đầu hiển thị đồng hồ hệ thống Phương thức gọi click vào mục menu nút toolbar để mở cửa sổ đổi mật TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS 12 13 openGioiThieu () openHuongDan () 4.5.2 CÁC CỬA SỔ HỖ TRỢ TỔ CHỨC 4.5.2.1 ChaoDialog TT PHƯƠNG THỨC init() MÔ TẢ Phương thức gọi để thực việc sau: Hiển thị cửa sổ hình Tăng giá trị ProgressBar, đóng cửa sổ giá trị max 4.5.2.2 DangNhapJDialog TT PHƯƠNG MÔ TẢ THỨC init() dangNhap() ketThuc() 4.5.2.3 DoiMatKhauJDialog TT PHƯƠNG MÔ TẢ THỨC init() doiMatKhau() huyBo() 4.5.2.4 GioiThieuJDialog TT PHƯƠNG MÔ TẢ THỨC init() 4.5.3 CÁC CỬA SỔ CHỨC NĂNG QUẢN LÝ 4.5.3.1 NhanVienJDialog TT 10 11 12 13 PHƯƠNG MÔ TẢ THỨC init() insert() update() delete() getForm() setForm() clearForm() edit() fillTable() updateStatus() first() prev() next() TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS 14 last() 4.5.3.2 ChuyenDeJDialog TT 10 11 12 13 14 15 PHƯƠNG MÔ TẢ THỨC init() insert() update() delete() getForm() setForm() clearForm() edit() fillTable() updateStatus() first() prev() next() last() chonAnh() 4.5.3.3 NguoiHocJDialog TT 10 11 12 13 14 15 PHƯƠNG MÔ TẢ THỨC init() insert() update() delete() getForm() setForm() clearForm() edit() fillTable() updateStatus() first() prev() next() last() timKiem() 4.5.3.4 KhoaHocJDialog TT PHƯƠNG THỨC init() insert() update() delete() getForm() MÔ TẢ TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS 10 11 12 13 14 15 16 setForm() clearForm() edit() fillTable() updateStatus() first() prev() next() last() fillComboBoxChuyenDe() chonChuyenDe() 4.5.3.5 HocVienJDialog TT PHƯƠNG THỨC init() fillComboBoxChuyenDe() fillComboBoxKhoaHoc() fillTableHocVien() fillTableNguoiHoc() addHocVien() removeHocVien() updateDiem() MÔ TẢ 4.5.4 CỬA SỔ CHỨC NĂNG TỔNG HỢP - THỐNG KÊ TT PHƯƠNG THỨC MÔ TẢ init() selectTab () fillComboBoxKhoaHoc () fillTableBangDiem () getXepLoai () fillTableLuongNguoiHoc () fillTableDiemChuyenDe () fillComboBoxNam () fillTableDoanhThu () KIỂM THỬ PHẦN MỀM VÀ SỬA LỖI 5.1 DANGNHAPJDIALOG T H MƠ TẢ TÌNH HUỐNG DỮ LIỆU MẪU Đăng nhập để trống tên mật Đăng nhập sai tên TeoVN, songsong Đăng nhập sai mật TeoNV, 123 Đăng nhập TeoNV, songlong KẾT QUẢ TRÔNG ĐỢI FIX Yêu cầu nhập ok Sai tên đăng nhập Sai mật Đóng cửa sổ not 95% TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS 5.2 DOIMATKHAUJDIALOG T H MƠ TẢ TÌNH HUỐNG 5.3 NHANVIENJDIALOG T H MƠ TẢ TÌNH HUỐNG 5.4 CHUYENDEJDIALOG T H MƠ TẢ TÌNH HUỐNG 5.5 NGUOIHOCJDIALOG T H MƠ TẢ TÌNH HUỐNG 5.6 KHOAHOCJDIALOG T H MÔ TẢ TÌNH HUỐNG 5.7 HOCVIENJDIALOG T H MƠ TẢ TÌNH HUỐNG DỮ LIỆU MẪU KẾT QUẢ TRƠNG ĐỢI FIX DỮ LIỆU MẪU KẾT QUẢ TRÔNG ĐỢI FIX DỮ LIỆU MẪU KẾT QUẢ TRÔNG ĐỢI FIX DỮ LIỆU MẪU KẾT QUẢ TRÔNG ĐỢI FIX DỮ LIỆU MẪU KẾT QUẢ TRÔNG ĐỢI FIX DỮ LIỆU MẪU KẾT QUẢ TRÔNG ĐỢI FIX TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS TAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYSTAI.LIEU.du.an.he.THONG.QUAN.ly.dao.tao.EDUSYS