1 / 79

Đồ Án Cuối Kỳ SẮP XẾP THỜI KHÓA BIỂU

TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TPHCM. LỚP 09TC. Thực hiện:. Nguyễn Duy Phương Trần Hoàng Quốc Dũng. Phạm Quang Nam Bùi Thiện Vinh. Đồ Án Cuối Kỳ SẮP XẾP THỜI KHÓA BIỂU. LÝ DO CHỌN ĐỀ TÀI.

xander
Download Presentation

Đồ Án Cuối Kỳ SẮP XẾP THỜI KHÓA BIỂU

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. TRƯỜNG ĐẠI HỌC KHOA HỌC TỰ NHIÊN TPHCM LỚP 09TC Thực hiện: Nguyễn Duy Phương Trần Hoàng Quốc Dũng Phạm Quang Nam Bùi Thiện Vinh Đồ Án Cuối Kỳ SẮP XẾP THỜI KHÓA BIỂU SắpXếpThờiKhóaBiểu

  2. LÝ DO CHỌN ĐỀ TÀI • Khi công nghệ thông tin chưa phát triển thì việc xây dựng nên các chương trình quản lý là rất khó chủ yếu bằng những phương pháp thủ công. Ngày nay với sự phát triển của công nghệ thông tin đã góp phần giải quyết các bài toán lập trình được tối ưu hơn, nhẹ nhàng hơn. • Khi áp dụng công nghệ thông tin vào ngành Giáo dục, thực tế đã cho thấy hiệu quả của nó trong các phần mềm hỗ trợ giáo dục như phần mềm xếp thời khóa biểu, quản lý học sinh, sinh viên, xếp lịch thi,…, • Từ những lý do trên, chúng tôi xin chọn đề tài: “sắp xếp thời khóa biểu” nhằm mục đích góp phần giảm nhẹ công việc và tiết kiệm thời gian cho các trường trong việc sắp xếp thời khóa biểu. Sắp Xếp Thời Khóa Biểu

  3. SƠ ĐỒ CLASS CLASS HE CLASS KHOA CLASS NGANH CLASS LOP CLASS GIAO VIEN CLASS MON HOC CLASS PHONG CLASS THOI KHOA BIEU Sắp Xếp Thời Khóa Biểu

  4. BẢNG MÔ TẢ Đối tượng Hệ Sắp Xếp Thời Khóa Biểu

  5. BẢNG MÔ TẢ (tt) Đối tượng Khoa Sắp Xếp Thời Khóa Biểu

  6. BẢNG MÔ TẢ (tt) Đối tượng Ngành Sắp Xếp Thời Khóa Biểu

  7. BẢNG MÔ TẢ (tt) Đối tượng Lớp Sắp Xếp Thời Khóa Biểu

  8. BẢNG MÔ TẢ (tt) Đối tượng Giáo Viên Sắp Xếp Thời Khóa Biểu

  9. BẢNG MÔ TẢ (tt) Đối tượng Môn Học Sắp Xếp Thời Khóa Biểu

  10. BẢNG MÔ TẢ (tt) Đối tượng Phòng Học Sắp Xếp Thời Khóa Biểu

  11. BẢNG MÔ TẢ (tt) Đối tượng Thời Khóa Biểu Sắp Xếp Thời Khóa Biểu

  12. SƠ ĐỒ CHỨC NĂNG Giao diện chính của chương trình sắp xếp thời khóa biểu Hệ thống Danh mục Thời khóa biểu Help Khoa Thoát Xây dựng thời khóa biểu About Lớp học Tra cứu tkb theo tên giáo viên Môn học Tra cứu tkb theo lớp Giáo viên Phòng Hệ đào tạo Ngành Sắp Xếp Thời Khóa Biểu

  13. Mở kết nối và truy vấn trên SQL Public Shared Sub ExecNoneQuery(ByVal strSQL As String) Open() Dim command As SqlCommand command = New SqlCommand(strSQL, m_connection) command.ExecuteNonQuery() Close() End Sub Public Shared Function ExecQuery(ByVal strSQL As String) As DataTable Open() Dim adapter As SqlDataAdapter adapter = New SqlDataAdapter(strSQL, m_connection) Dim dt As New DataTable adapter.Fill(dt) Close() Return dt End Function Sắp Xếp Thời Khóa Biểu

  14. FORM CHÍNH  Giao diện chính đề tài Quản Lý Thời Khóa Biểu của nhóm. Thiết kế đơn giản, sử dụng Menustrip để tạo liên kết Menu đến các form chương trình Sắp Xếp Thời Khóa Biểu

  15. FORM KHOA (tt) Sắp Xếp Thời Khóa Biểu

  16. FORM KHOA (tt) DataGridView Hiểnthịthông tin MãKhoa, TênKhoa, Diễngiải • MãKhoa – TênKhoa– DiễnGiải: Thông tin được load từ database trênfrmKhoathông qua KhoaDAO.vb Public Shared Function SelectAll() As DataTable Dim strSQL As String = "select * from Khoa" Dim dt As DataTable dt = SQLProvider.ExecQuery(strSQL) Return dt Sắp Xếp Thời Khóa Biểu

  17. FORM KHOA (tt) Xửlý button Thêm ds Khoa (Button Thêm) Thêmthông tin khoavào CSDL • Hàmkiểmtravàxửlýtrùngmãkhoa / tênkhoa If tam > 0 Then MsgBox("Không được nhập trùng Mã Khoa ! Vui lòng nhập lại !") txtMaKhoa.Text = "" txtMaKhoa.Focus() ElseIf tam1 > 0 Then MsgBox("Không được nhập trùng Tên Khoa ! Vui lòng nhập lại !") txtTenKhoa.Text = "" txtTenKhoa.Focus() Sắp Xếp Thời Khóa Biểu

  18. FORM KHOA (tt) Xửlý button Thêm ds Khoa (Button Thêm) Thêmthông tin khoavào CSDL • Insert vào CSDL Dim strSQL As String = "Insert into Khoa(MaKhoa,TenKhoa,Diengiai) Values('" & _khoa.Makhoa & "',N'" & _khoa.Tenkhoa & "',N'" & _khoa.Diengiai & "')" Sắp Xếp Thời Khóa Biểu

  19. FORM KHOA (tt) Xửlý button Xóa ds Khoa (Button Xóa) Xóathông tin khoatrong form và CSDL • Xửlý button xóavà load lại ds: Tại Form KhoaDAO.Delete(khoa) LoadDanhSach() Xử lý trên Database Dim strSQL As String = "delete from Khoa where MaKhoa = '" & _khoa.MaKhoa & "'" Sắp Xếp Thời Khóa Biểu

  20. FORM KHOA (tt) Xửlý button Sửa ds Khoa (Button sửa) Sửalạithông tin Khoatrong CSDL • Xửlýtrùngmãkhoa – tênkhoa If tam > 0 Then MsgBox("Không được nhập trùng Mã Khoa ! Vui lòng nhập lại !") txtMaKhoa.Text = "" txtMaKhoa.Focus() ElseIf tam1 > 0 Then MsgBox("Không được nhập trùng Tên Khoa ! Vui lòng nhập lại !") txtTenKhoa.Text = "" txtTenKhoa.Focus() • Trên KhoaDAO Dim strSQL As String = "Update Khoa set TenKhoa = N'" & _khoa.Tenkhoa & "', Diengiai = N'" & _khoa.Diengiai & "' where MaKhoa = '" & _khoa.Makhoa & "'" Sắp Xếp Thời Khóa Biểu

  21. FORM KHOA (tt) Xửlý button Tìm ds Khoa (Button Tìm) TìmkhoatheotênKhoa • Tìmkhoatheotên (TênKhoavàMãKhoalàgiátrịduynhất) Dim strSQL As String = "select * from Khoa where TenKhoa like N'%" & _khoa.Tenkhoa & "%'" Sắp Xếp Thời Khóa Biểu

  22. FORM KHOA (tt) Xửlý button in ds Khoa (Button In) Xuấtra form BaoCaoKhoa Private Sub frmBaoCaoKhoa_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.KhoaTableAdapter.Fill(Me.QL_TKBDataSet.Khoa) Me.ReportViewer1.RefreshReport() End sub Sắp Xếp Thời Khóa Biểu

  23. FORM LỚP Sắp Xếp Thời Khóa Biểu

  24. FORM LỚP Load Form + DataGridView Hiểnthịthông tin lớp (mãlớp, tênlớp, khoa, ngành) • Load Form  lấy thông tin in ra các thuộc tính trong textbox readonly txtMaLop.Focus() Hien_thi_khoa() Hien_thi_he() Hien_thi_nganh() LoadDanhSach() • DataGridView Dim strSQL As String = "select * from Lop" Dim dt As DataTable dt = SQLProvider.ExecQuery(strSQL) Return dt Sắp Xếp Thời Khóa Biểu

  25. FORM LỚP (tt) Button Thêm Thêmthông tin Lớpvào form và CSDL • Xử lý trùng mã lớp và tên lớp If tam > 0 Then MsgBox("Không được nhập trùng Mã Lớp!") txtMaLop.Text = "" txtMaLop.Focus() ElseIf tam1 > 0 Then MsgBox("Không được nhập trùng Tên Lớp!") txtTenLop.Text = "" txtTenLop.Focus() • Thêm DS lớp trên CSDL Dim strSQL As String = "Insert into Lop (Malop, Tenlop, Tenkhoa,Chuyennganh,Tenhe,Sosv,Nienkhoa) Values('" & _lop.MaLop & "',N'" & _lop.TenLop & "',N'" & _lop.TenKhoa & "',N'" & _lop.ChuyenNganh & "',N'" & _lop.TenHe & "'," & _lop.SiSo & ",'" & _lop.NienKhoa & "')" Sắp Xếp Thời Khóa Biểu

  26. FORM LỚP (tt) Button Xóa Xóathông tin Lớpkhỏi form và CSDL • Xóa thông tin lớp dựa vào Mã Lớp cần xóa Public Shared Sub Delete(ByVal _lop As LopDTO) Dim strSQL As String = "delete from Lop where Malop = '" & _lop.MaLop & "'" SQLProvider.ExecNoneQuery(strSQL) End Sub Sắp Xếp Thời Khóa Biểu

  27. FORM LỚP (tt) Button Sửa Sửathông tin Lớpvàupadtetrong CSDL • Update trong CSDL Dim strSQL As String = "Update Lop set Tenlop = N'" & _lop.TenLop & "', Tenkhoa = N'" & _lop.TenKhoa & "', Chuyennganh = N'" & _lop.ChuyenNganh & "', Tenhe = N'" & _lop.TenHe & "', Sosv = " & _lop.SiSo & ", Nienkhoa = '" & _lop.NienKhoa & "' where Malop = '" & _lop.MaLop & "'" Sắp Xếp Thời Khóa Biểu

  28. FORM LỚP (tt) Button Tìm Tìmdanhsáchlớptheotênlớp Public Shared Function SelectByLop(ByVal _lop As LopDTO) As DataTable Dim dt As DataTable Dim strSQL As String = "select * from Lop where Tenlop like N'%" & _lop.TenLop & "%'" dt = SQLProvider.ExecQuery(strSQL) Return dt Sắp Xếp Thời Khóa Biểu

  29. FORM LỚP (tt) Button In XuấtradanhsáchlớptrênfrmBaoCaoLop Private Sub frmBaoCaoLop_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.LopTableAdapter.Fill(Me.QL_TKBDataSet.Lop) Me.ReportViewer1.RefreshReport() End sub Sắp Xếp Thời Khóa Biểu

  30. FORM MÔN HỌC Sắp Xếp Thời Khóa Biểu

  31. FORM MÔN HỌC (tt) Load Form + DataGridView Hiểnthịthông tin MônHọc (mã MH, tên MH, tínchỉ, HK, nămhọc) • Load Form  lấy thông tin in ra các thuộc tính trong textbox readonly Hien_thi_hocky() hien_thi_namhoc() LoadDanhSach() • DataGridView Dim strSQL As String = "select * from MonHoc" Dim dt As DataTable dt = SQLProvider.ExecQuery(strSQL) Return dt Sắp Xếp Thời Khóa Biểu

  32. FORM MÔN HỌC (tt) Button Thêm Thêmthông tin mônhọcvào CSDL • Xử lý trùng mã môn học If tam > 0 Then MsgBox("Không được nhập trùng Mã Môn Học ! Vui lòng nhập lại !") txtMaMH.Text = "" txtMaMH.Focus() • Thêm vào CSDL Dim strSQL As String = "Insert into MonHoc(Mamon,Tenmon,Hocky,Namhoc,Sotinchi) Values('" & _mh.Mamon & "',N'" & _mh.Tenmon & "','" & _mh.Hocky & "','" & _mh.Namhoc & "'," & _mh.Sotinchi & ")" Sắp Xếp Thời Khóa Biểu

  33. FORM MÔN HỌC (tt) Button Xóa Xóathông tin mônhọckhỏi CSDL • Xóamônhọctrong CSDL dựavàoMãmônhọc Dim strSQL As String = "delete from MonHoc where Mamon = '" & _mh.Mamon & "'" SQLProvider.ExecNoneQuery(strSQL) Sắp Xếp Thời Khóa Biểu

  34. FORM MÔN HỌC (tt) Button Sửa Sửathông tin lớphọcvà update trong CSDL • Kiểm tra và xử lý nếu trùng mã môn học If tam > 0 Then MsgBox("Không được nhập trùng Mã Môn Học ! Vui lòng nhập lại !") txtMaMH.Text = "" txtMaMH.Focus() • Update CSDL Dim strSQL As String = "Update MonHoc set Mamon = '" & _mh.Mamon & "',Tenmon = N'" & _mh.Tenmon & "', Hocky = '" & _mh.Hocky & "', Namhoc = '" & _mh.Namhoc & "', SoTinChi = " & _mh.Sotinchi & " where Mamon = '" & _mh.Mamon & "'" SQLProvider.ExecNoneQuery(strSQL) Sắp Xếp Thời Khóa Biểu

  35. FORM MÔN HỌC (tt) Button Tìm Tìmkiếmthông tin mônhọc • Tìm thông tin môn học dựa vào tên môn học Dim dt As DataTable Dim strSQL As String = "select * from MonHoc where Tenmon like N'%" & _mh.Tenmon & "%'" dt = SQLProvider.ExecQuery(strSQL) Return dt Sắp Xếp Thời Khóa Biểu

  36. FORM MÔN HỌC (tt) Button In In thông tin mônhọctrongfrmBaoCaoMon Private Sub frmBaoCaoMon_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.MonHocTableAdapter.Fill(Me.QL_TKBDataSet.MonHoc) Me.ReportViewer1.RefreshReport() Sắp Xếp Thời Khóa Biểu

  37. FORM GIÁO VIÊN Sắp Xếp Thời Khóa Biểu

  38. FORM GIÁO VIÊN(tt) Form Load + DataGridView Hiểnthịthông tin (Magv, ngàysinh, giớitính,dântộc,khoa,chứcvụ,hocvị) • Load Form  lấy thông tin in ra các thuộc tính trong textbox readonly Hien_thi_khoa() hien_thi_chucvu() hien_thi_dantoc() hien_thi_hocvi() hien_thi_phongban() hien_thi_gioitinh() LoadDanhSach() • Load DS DataGridView Dim strSQL As String = "select * from GiaoVien" Dim dt As DataTable dt = SQLProvider.ExecQuery(strSQL) Return dt Sắp Xếp Thời Khóa Biểu

  39. FORM GIÁO VIÊN(tt) Button Thêm Thêmgiáoviênvàodanhsáchtrong CSDL • Xửlýtrùngmãgiáoviên If tam > 0 Then MsgBox("Không được nhập trùng Mã Giáo Viên ! Vui lòng nhập lại !") txtMaGV.Text = "" txtMaGV.Focus() • Thêmgiáoviênvào CSDL Dim strSQL As String = "Insert into GiaoVien(Magv,Hoten,Ngaysinh,Gioitinh,Dantoc,Khoa,Chucvu,Hocvi,Phongban,Quequan) Values('" & _gv.MaGV & "',N'" & _gv.HoTen & "','" & _gv.NgaySinh & "',N'" & _gv.GioiTinh & "',N'" & _gv.DanToc & "',N'" & _gv.Khoa & "',N'" & _gv.ChucVu & "',N'" & _gv.HocVi & "',N'" & _gv.PhongBan & "',N'" & _gv.QueQuan & "')" Sắp Xếp Thời Khóa Biểu

  40. FORM GIÁO VIÊN(tt) Button Xóa Xóathông tin giáoviênkhỏidanhsáchvà CSDL • Xóa thông tin giáo viêndựa vào Mã giáo viên Dim strSQL As String = "delete from GiaoVien where Magv = '" & _gv.MaGV & "'" SQLProvider.ExecNoneQuery(strSQL) Sắp Xếp Thời Khóa Biểu

  41. FORM GIÁO VIÊN(tt) Button Sửa Thayđổithông tin giáoviêntrong CSDL • Kiểm tra điều kiện trùng mã giáo viên If tam > 0 Then MsgBox("Không được nhập trùng Mã Giáo Viên ! Vui lòng nhập lại !") txtMaGV.Text = "" txtMaGV.Focus() • Update thông tin trong CSDL Dim strSQL As String = "Update GiaoVien set Hoten = N'" & _gv.HoTen & "', Ngaysinh = '" & _gv.NgaySinh & "', Gioitinh = N'" & _gv.GioiTinh & "', Dantoc = N'" & _gv.DanToc & "', Khoa = N'" & _gv.Khoa & "', Chucvu = N'" & _gv.ChucVu & "', Hocvi = N'" & _gv.HocVi & "', Phongban = N'" & _gv.PhongBan & "', Quequan = N'" & _gv.QueQuan & "' where Magv = '" & _gv.MaGV & "'" Sắp Xếp Thời Khóa Biểu

  42. FORM GIÁO VIÊN(tt) Button Tìm Tìmkiếmthông tin giáoviênxuấtramànhình • Tìm kiếm giáo viên dựa vào họ tên của giao viên cần tìm Dim dt As DataTable Dim strSQL As String = "select * from GiaoVien where HoTen like N'%" & _gv.HoTen & "%'" dt = SQLProvider.ExecQuery(strSQL) Return dt Sắp Xếp Thời Khóa Biểu

  43. FORM GIÁO VIÊN(tt) Button In In thông tin giáoviênramànhìnhfrmBaoCaoGV Private Sub frmBaoCaoGV_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.GiaoVienTableAdapter.Fill(Me.QL_TKBDataSet.GiaoVien) Me.ReportViewer1.RefreshReport() End Sub Sắp Xếp Thời Khóa Biểu

  44. FORM PHÒNG HỌC Sắp Xếp Thời Khóa Biểu

  45. FORM PHÒNG HỌC (tt) Form Load + DataGridView Hiểnthịthông tin (Sốphòng, loạiphòng, sứcchứa, thiếtbị) • Load Form  lấy thông tin in ra các thuộc tính trong textbox readonly LoadDanhSach() Hien_thi_loaiphong() • Load DS DataGridView Dim strSQL As String = "select * from PhongHoc" Dim dt As DataTable dt = SQLProvider.ExecQuery(strSQL) Return dt Sắp Xếp Thời Khóa Biểu

  46. FORM PHÒNG HỌC (tt) Button Thêm Thêmphòngvào form và CSDL • Kiểm tra trùng lặp số hiệu phòng If tam > 0 Then MsgBox("Không được nhập trùng Số Hiệu Phòng ! Vui lòng nhập lại !") txtSoPhong.Text = "" txtSoPhong.Focus() • Thêmphòngvào CSDL Dim strSQL As String = "Insert into PhongHoc(Sohieuphong,Loaiphong,Succhua,Thietbi) Values('" & _phong.Sohieuphong & "',N'" & _phong.Loaiphong & "'," & _phong.Succhua & ",N'" & _phong.Thietbi & "')" Sắp Xếp Thời Khóa Biểu

  47. FORM PHÒNG HỌC (tt) Button Xóa Xóaphòngkhỏi form và CSDL • Xóa thông tin phòng dựa vào số hiệu phòng Dim strSQL As String = "delete from PhongHoc where Sohieuphong = '" & _phong.Sohieuphong & "'" SQLProvider.ExecNoneQuery(strSQL) Sắp Xếp Thời Khóa Biểu

  48. FORM PHÒNG HỌC (tt) Button Sửa Sửathông tin phòngtrong form và CSDL • Kiểm tra trùng lặp phòng dựa vào số hiệu phòng If tam > 0 Then MsgBox("Không được nhập trùng Số Hiệu Phòng ! Vui lòng nhập lại !") txtSoPhong.Text = "" txtSoPhong.Focus() • Update thông tin vào CSDL Dim strSQL As String = "Update PhongHoc set LoaiPhong = N'" & _phong.Loaiphong & "', Succhua = " & _phong.Succhua & ", Thietbi = N'" & _phong.Thietbi & "' where Sohieuphong = '" & _phong.Sohieuphong & "'" SQLProvider.ExecNoneQuery(strSQL) Sắp Xếp Thời Khóa Biểu

  49. FORM PHÒNG HỌC (tt) Button Tìm Tìm ds phòngtrong CSDL • Tìm phòng dựa vào loại phòng Dim dt As DataTable Dim strSQL As String = "select * from PhongHoc where Loaiphong like N'%" & _phong.Loaiphong & "%'" dt = SQLProvider.ExecQuery(strSQL) Return dt Sắp Xếp Thời Khóa Biểu

  50. FORM PHÒNG HỌC (tt) Button In In ds phòngtrênfrmBaoCaoPhong Private Sub frmBaoCaoPhong_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load Me.PhongHocTableAdapter.Fill(Me.QL_TKBDataSet.PhongHoc) Me.ReportViewer1.RefreshReport() Sắp Xếp Thời Khóa Biểu

More Related