Những khái niệm mới mẻ, mơ hồ về lập trình mà các bạn được học như xử lý ngoại lệ, những kiểu dữ liệu mở rộng, bảo mật mã nguồn đều sẽ được trang bị ngay trong C Sharp.C Sharp là ngôn ng
Trang 1ĐẠI HỌC ĐÀ NẴNG PHÂN HIỆU ĐẠI HỌC ĐÀ NẴNG TẠI KON TUM
-
KEOVONGSA PHETMANY
BÁO CÁO ĐỒ ÁN TỐT NGHIỆP
ĐỀ TÀI: XÂY DỰNG WEBSITE QUẢN LÝ KÝ TÚC XÁ
Kon Tum, Tháng 7 năm 2021
Trang 2ĐẠI HỌC ĐÀ NẴNG PHÂN HIỆU ĐẠI HỌC ĐÀ NẴNG TẠI KON TUM
-
BÁO CÁO ĐỒ ÁN TỐT NGHIỆP
ĐỀ TÀI: XÂY DỰNG WEBSITE QUẢN LÝ KÍ TÚC XÁ
Kon Tum, Tháng 7 năm 2021
SVTH : KEOVONGSA PHETMANY MSSV : 16152480201022
GVHD : TS Đông Ngọc Nguyễn Thịnh
Trang 3LỜI CẢM ƠN
Lần đầu tiên cho em xin được gửi lời cảm ơn quý thầy cô trong khoa Kỹ thuật – Nông nghiệp, Trường Phân hiệu Đại học Đà Nẵng đã tận tình truyền đạt kiến thức trong những năm em học tập tại trường Với vốn kiến thức được tiếp thu trong quá trình học không chỉ là nền tảng cho quá trình nghiên cứu đồ án mà còn là hành trang quý báu để em bước vào đời một các vững chắc và tự tin
Trong thời gian làm đồ án tốt nghiệp, em đã nhận được nhiều sự giúp đỡ, đóng góp ý kiến và chỉ bảo nhiệt tình của thầy cô, và bạn bè
Em xin gửi lời cảm ơn chân thành đến Ts Đông Ngọc Nguyễn Thịnh đã tận tình
hướng dẫn, chỉ bảo em trong suốt quá trình làm đồ án
Em cũng xin chân thành cảm ơn các thầy cô giáo trong trường Phân hiệu Đại học
Đà Nẵng nói chung, các thầy cô trong Khoa Kỹ Thuật – Nông Nghiệp nói riêng đã dạy
dỗ cho em kiến thức về các môn đại cương cũng như các môn chuyên ngành, giúp em
có được cơ sở lý thuyết vững vàng và tạo điều kiện giúp đỡ em trong suốt quá trình học tập
Em cũng xin gửi lời cảm ơn các thầy cô giáo và nhà trường đã tạo điều kiện tốt nhất để em có được môi trường học tập tốt nhất
Cuối cùng, em xin chân thành cảm ơn gia đình và bạn bè, đã luôn tạo điều kiện, quan tâm, giúp đỡ, động viên em trong suốt quá trình học tập và hoàn thành đồ án tốt nghiệp
Với điều kiện thời gian cũng như kinh nghiệm còn hạn chế của một học viên, luận văn này không thể tránh được những thiếu sót Em rất mong nhận được sự chỉ bảo, đóng góp ý kiến của các thầy cô để em có điều kiện bổ sung, nâng cao ý thức của mình, phục vụ tốt hơn công việc thực tế sau này
Em xin chân thành cảm ơn!
Sinh viên Keovongsa Phetmany
Trang 4i
MỤC LỤC
DANH MỤC HÌNH ii
Chương 1 – Tổng quan đề tài 1
1.1 Lý do chọn đề tài 1
1.2 Mục tiêu của đề tài 1
1.3 Đối tượng và phạm vi nghiên cứu 1
1.4 Phương pháp nghiên cứu 1
Chương 2 – Cơ sở lý luận 2
2.1 Tổng quan ngôn ngữ C# 2
2.1.1 Ngôn ngữ C là gì ? 2
2.1.2 Ưu nhược điểm 2
2.1.3 Ngôn ngữ đa nền tảng 2
2.1.4 Ngôn ngữ an toàn và hiệu quả 2
2.2 Mô hình lập trình MVC 3
2.2.1 Khái niệm 3
2.2.2 Cách làm việc 4
2.3 Hệ quản trị cơ sở dữ liệu SqlServer 5
2.3.1 Khái niệm hệ quản trị cơ sở dữ liệu 5
2.3.2 SqlServer là gì ? 5
Chương 3 – Phân tích thiết kế hệ thống 6
3.1 Mô tả tổng quan 6
3.1.1 Sơ đồ use case 6
3.1.2 Sơ đồ tuần tự 6
3.1.3 Sơ đồ lớp 9
3.1.4 Sơ đồ cơ sở dữ liệu 10
3.2 Kết quả 10
3.2.1 Đăng nhập 10
3.2.2 Quản lý phòng 11
3.2.3 Quản lý nhân viên 13
3.2.4 Quản lý sinh viên vi phạm 14
3.2.5 Quản lý hóa đơn theo phòng 15
3.2.6 Quản sinh viên 16
3.2.7 Quản lý thông báo cho sinh viên 18
3.2.8 Sinh viên yêu cầu chuyển phòng 19
3.2.9 Sinh viên xem thông báo 20
3.2.10 sinh viên xem hóa đơn 20
Chương 4 Kết luận 21
4.1 Kết quả đạt được 21
4.2 Khó khăn gặp phải 21
4.3 Hướng phát triển 21
Trang 5ii
DANH MỤC HÌNH
Hình 2.1: Mô hình MVC (model–view–controller) 4
Hình 2.2: Luồng sự kiện được xử lý trong MVC 4
Hình 3.1: Đăng nhập 10
Hình 3.2: Thông tin phòng 11
Hình 3.3: Tạo phòng mới 11
Hình 3.4: Chỉnh sửa thông tin phòng 12
Hình 3.5: Chi tiết phòng 12
Hình 3.6: Thông tin nhân viên 13
Hình 3.7: chỉnh sửa thông tin nhân viên 13
Hình 3.8: Thông tin vi phạm của sinh viên 14
Hình 3.9: Chỉnh sửa nội dung vi phạm 14
Hình 3.10: Thêm sinh viên vi phạm 15
Hình 3.11: Thông tin hóa đơn 15
Hình 3.12: Chỉnh sửa thông tin hóa đơn 16
Hình 3.13: Thông tin sinh viên 16
Hình 3.14: Chỉnh sửa thông tin sinh viên 17
Hình 3.15: Chuyển phòng 17
Hình 3.16: Thông tin thông báo 18
Hình 3.17: Thêm mới thông báo cho sinh viên 18
Hình 3.18: Chỉnh sửa thông tin tin thông báo 19
Hình 3.19: Sinh viên yêu cầu chuyển phòng 19
Hình 3.20: Sinh viên xem thông báo 20
Hình 3.21: Sinh viên xem hóa đơn 20
Trang 6Số lượng sinh viên nội trú rất lớn nên việc quản lý bằng tay rất phức tạp và khó khăn, tất cả thông tin được lưu trữ trên giấy nên việc lưu trữ cập nhật và tìm kiếm thông tin rất khó khăn và tốn rất nhiều thời gian Ngày nay thời đại Công nghệ thông tin phát triển, nhận thấy việc xây dựng nên một website hỗ trợ việc quản lý sinh viên một cách khoa học và tiện lợi hơn cách quản lý cũ là cấp thiết Vậy nên em xin chọn
đề tài “Xây dựng website quản lý Kí túc xá Phân hiệu Đà Nẵng tại Kon Tum” để làm
đồ án tốt nghiệp của mình
1.2 Mục tiêu của đề tài
Với những lý do nêu trên, đề tài: “Xây dựng website quản lý Kí túc xá Phân hiệu
Đà Nẵng tại Kon Tum” ra đời nhắm phục vụ các mục tiêu các chức năng được hoàn thiện cho website bao gồm:
Đúng với nghiệp vụ quản lý sinh viên tại phân hiệu
Giao diện dễ sử dụng, có tính thẩm mỹ cao và có thể co giản phù hợp với mọi thiết bị và trên mọi màn hình
Thuận tiện trong việc quản lý sinh viên được hiệu quả và nhanh chóng hơn
1.3 Đối tượng và phạm vi nghiên cứu
Quy trình quản lý sinh viên, các khoản phí của sinh viên để từ đó xây dựng website quản lý sinh viên và các khoản phí liên quan
1.4 Phương pháp nghiên cứu
Khảo sát hiện trạng tìm hiểu quy trình quản lý kí túc xá Phân hiệu Đại học Đà Nẵng tại Kon Tum
Trang 7Hai thành phần cốt lõi của NET Framework không thể thiếu cho bất kỳ ứng
dụng hoặc dịch vụ được phát triển trên nền tảng này là Common Language Runtime
(CLR) và NET Framework Class Library (FCL)
Trong đó Common Language Runtime (CLR) có nhiệm vụ quản lý bộ nhớ, thực thi code, xử lý lỗi,….NET Framework Class Library (FCL) được sử dụng để
phát triển các ứng dụng từ command line đến Graphical User Interface (GUI)
2.1.2 Ưu nhược điểm
C Sharp là ngôn ngữ đơn giản Ngôn ngữ này sử dụng khá đơn giản Nếu như
bạn đã sử dụng quen các ngôn ngữ như C hay C++ hoặc thậm chí là Java thì việc dùng
C Sharp cũng khá giống C# loại bỏ một vài sự phức tạp của những ngôn ngữ như Java
và c++, bao gồm việc loại bỏ những macro, những template, đa kế thừa, và lớp cơ sở
ảo
2.1.3 Ngôn ngữ đa nền tảng
C # nó là ngôn ngữ lập trình đa nền tảng Chúng ta có thể xây dựng các ứng dụng NET được triển khai trên các nền tảng Windows, Linux và Mac
2.1.4 Ngôn ngữ an toàn và hiệu quả
C# là một ngôn ngữ an toàn và hiệu quả Ngôn ngữ C# không cho phép chuyển đổi các kiểu dữ liệu có thể dẫn đến mất dữ liệu hoặc những vấn đề khác C# giúp các nhà phát triển viết code an toàn C# cũng tập trung vào việc viết code một cách hiệu quả
C Sharp là ngôn ngữ hiện đại thông dụng, ít từ khóa và dễ hiểu
Nó có chứa đầy đủ các đặc tính cần có Những khái niệm mới mẻ, mơ hồ về lập trình mà các bạn được học như xử lý ngoại lệ, những kiểu dữ liệu mở rộng, bảo mật
mã nguồn đều sẽ được trang bị ngay trong C Sharp.C Sharp là ngôn ngữ lập trình
thuần hướng đối tượng Ngôn ngữ này đáp ứng đầy đủ 4 tính chất của hướng đối
tượng như:
Tính trừu tượng (abstraction)
Tính đóng gói (encapsulation)
Trang 83
Tính đa hình (polymorphism)
Tính kế thừa (inheritance)
C# là ngôn ngữ mạnh mẽ
Garbage Collector: C# Tự động thu hồi vùng nhớ không dùng
Versioning: Đảm bảo sự tương thích giữa lớp con và lớp cha
Kiểm soát và xử lý ngoại lệ exception: Đoạn mã bị lỗi sẽ không được thực thi Type – safe: Không cho gán các kiểu dữ liệu khác nhau
C Sharp là ngôn ngữ ít từ khóa
C# sử dụng giới hạn những từ khóa Phần lớn các từ khóa được dùng để mô tả thông tin Nhiều người nghĩ rằng một ngôn ngữ có nhiều từ khóa thì sẽ mạnh hơn Điều này không phải sự thật, ít nhất là trong trường hợp ngôn ngữ C# Ngoài ra, còn một số lý do làm C# là ngôn ngữ lập trình được sử dụng rộng rãi như:
C Sharp rất dễ để học
C Sharp giúp tạo các chương trình, ứng dụng đơn giản, hiệu quả
C Sharp có thể biên dịch trên nhiều nền tảng máy tính khác nhau
C Sharp có cấu trúc ngôn ngữ giống với ngôn ngữ truyền thống Vì vậy, người dùng cũng khá dễ dàng tiếp cận và học nhanh với C#
C Sharp chính là một phần của NET Framework, nên được sự chống lưng khá lớn đến từ bộ phận này
C Sharp được phát triển dựa trên nền tảng Java, C++ nên mang nhiều ưu điểm của các ngôn ngữ đó
C# có IDE Visual Studio cùng nhiều plug-in vô cùng mạnh mẽ
Ngoài ra, ngôn ngữ này cùng còn nhược điểm đó là: Nhược điểm lớn nhất của C#
là chỉ chạy trên nền Windows và có cài NET Framework Thao tác đối với phần cứng yếu hơn so với ngôn ngữ khác, hầu hết phải dựa vào windows Nhưng từ khi có net core ra đời thì đây không còn là nhược điểm đối với C#
2.2 Mô hình lập trình MVC
2.2.1 Khái niệm
ASP.NET MVC là một framework web được phát triển bởi Microsoft, thực thi
mô hình MVC (model–view–controller) ASP.NET MVC là 1 phần mềm mã mở, tách rời với thành phần độc quyền ASP.NET Web Forms ASP.NET MVC đang nổi lên là phương pháp phát triển web mạnh nhất và phổ biến nhất trên nền ASP.NET hiện nay Trong các phiên bản sau của ASP.NET, ASP.NET MVC, ASP.NET Web API,
và ASP.NET Web Pages (nền tảng chỉ dùng trang Razor)sẽ được trộn chung vào MVC
6
Dựa trên nền ASP.NET, ASP.NET MVC cho phép các nhà phát triển phần mềm xây dựng ứng dụng web như là một cấu thành của 3 vai trò: Model, View và Controller Mô hình MVC định nghĩa ứng dụng web với 3 tầng logic: Model (tầng business – business layer)
Trang 9Controller (điều khiển đầu vào – input control): Giữ nhiệm vụ nhận điều hướng các yêu cầu từ người dùng và gọi đúng những phương thức xử lý chúng… Chẳng hạn thành phần này sẽ nhận request từ url và form để thao tác trực tiếp với Model
2.2.2 Cách làm việc
Hình 2.1: Mô hình MVC (model–view–controller)
Đây là một cách đơn giản để mô tả lại luồng sự kiện được xử lý trong MVC:
– User tương tác với View, bằng cách click vào button, user gửi yêu cầu đi
– Controller nhận và điều hướng chúng đến đúng phương thức xử lý ở Model
– Model nhận thông tin và thực thi các yêu cầu
– Khi Model hoàn tất việc xử lý, View sẽ nhận kết quả từ Model và hiển thị lại cho người dùng
Hình 2.2: Luồng sự kiện được xử lý trong MVC
Trang 105
2.3 Hệ quản trị cơ sở dữ liệu SqlServer
2.3.1 Khái niệm hệ quản trị cơ sở dữ liệu
Hệ quản trị cơ sở dữ liệu là một tập hợp chương trình giúp cho người sử dụng tạo ra, duy trì và khai thác một cơ sở dữ liệu Đó là một hệ thống phần mềm phổ dụng, cung cấp môi trường và công cụ giúp cho việc định nghĩa, xây dựng và
thao tác cơ sở dữ liệu cho các ứng dụng khác nhau một cách dễ dàng
Định nghĩa một cơ sở dữ liệu là đặc tả các kiểu dữ liệu, các cấu trúc, các ràng
buộc cho các dữ liệu sẽ được lưu trữ
Xây dựng cơ sở dữ liệu là lưu trữ dữ liệu lên các phương tiện lưu trữ được hệ
quản trị cơ sở dữ liệu kiểm soát
Thao tác trên một cơ sở dữ liêu là quá trình truy vấn cơ sở dữ liệu để lấy ra các dữ liệu cụ thể, cập nhật cơ sở dữ liệu, tạo ra các báo cáo từ dữ liệu
Mỗi hệ quản trị cơ sở dữ liệu có một ngôn ngữ định nghĩa dữ liệu riêng (DDL Data Definition Languague) Đây là ngôn ngữ dùng để định nghĩa, khai báo cấu trúc của của cơ sở dữ liêu Những người thiết kế và quản trị cơ sở dữ liệu thực hiện các công việc khai báo cấu trúc cơ sở dữ liệu Các chương trình khai báo cấu trúc CSDL được viết bằng ngôn ngữ DDL mà hệ quản trị CSDL cho phép
-Các chương trình ứng dụng được viết bằng các ngôn ngữ lập trình C++/C#/Java/Delphi kết hợp với các ngôn ngữ thao tác dữ liệu (DML - Data Manipulation Language) thông qua các thư viện hoặc đối tượng kết nối CSDL được ngôn ngữ lập trình hỗ trợ: ODBC, RDO, ADO,…
Các hệ quản trị cơ sở dữ liệu quan hệ ngày nay phổ biến sử dụng các ngôn
ngữ DDL và DML dựa trên ngôn ngữ SQL
2.3.2 SqlServer là gì ?
Phần mềm được Microsoft phát triển dựa trên RDBMS Cũng là một ORDBMS (Hệ quản trị cơ sở dữ liệu quan hệ đối tượng) Một nền tảng độc lập
Phần mềm sử dụng cả giao diện dòng lệnh và giao diện GUI
Hỗ trợ ngôn ngữ SQL (trước đây là SEQUEL - ngôn ngữ truy vấn tiếng Anh có cấu trúc) - vốn là sản phẩm của IB
Trang 116
Chương 3: Phân tích thiết kế hệ thống
3.1 Mô tả tổng quan
3.1.1 Sơ đồ use case
Sơ đồ 3.1: Sơ đồ Use case
Quản lú phòng Quản lý sinh viên
Trang 127
- Thêm nhân viên
Sơ đồ 3.3: Thêm nhân viên
Quản lý thông tin nhân viên, thêm thông tin nhân viên mới hoặc chỉnh sửa, xóa nhân viên khi không còn làm quản lý nữa
- Thêm sinh viên vào phòng
Sơ đồ 3.4: Thêm sinh viên vào phòng
Thêm sinh viên vào phòng, chọn phòng sinh viên cần thêm vào Sau đó có thể
Trang 138
- Thêm thông báo cho sinh viên
Sơ đồ 3.5: Thêm thông báo sinh viên
Quản trị viên thêm thông báo gửi đến sinh viên
- Thiết lập hóa đơn
Sơ đồ 3.6: Thiết lập hóa đơn
Quản trị viên thiết lập hóa đơn thanh toán cho từng phòng
- Sinh viên yêu cầu chuyển phòng
Sơ đồ 3.7: Sinh viên yêu cầu chuyển phòng
Simh viên yêu cầu chuyển phòng và nhân viên sẽ duyệt yêu cầu và sinh viên sẽ được chuyến đến phòng đó
Trang 149
3.1.3 Sơ đồ lớp
Sơ đồ 3.8: Sơ đồ lớp
Trang 1510
3.1.4 Sơ đồ cơ sở dữ liệu
Sơ đồ 3.9: Sơ đồ cơ sở dữ liệu 3.2 Kết quả
3.2.1 Đăng nhập
Hình 3.1: Đăng nhập
Trang người dùng đăng nhập vào hệ thống
Trang 1712
c Chỉnh sửa thông tin phòng
Hình 3.4: Chỉnh sửa thông tin phòng
Thông tin chỉnh sửa bao gồm số lượng giường và loại phòng
d Chi tiết phòng
Hình 3.3: Chi tiết phòng
Chi tiết phòng sẽ cho người quản trị xem được thông tin của phòng và thông tin của sinh viên ở trong phòng này
Trang 1813
3.2.3 Quản lý nhân viên
a Thông tin nhân viên
Hình 3.4: Thông tin nhân viên
Thông tin nhân viên bao gồm tên nhân viên, số điện thoại, địa chỉ, chức vụ
b Chỉnh sửa thông tin nhân viên
Hình 3.5: chỉnh sửa thông tin nhân viên
Chỉnh sửa thông tin nhân viên, thông tin chỉnh sửa bao gồm: Tên nhân viên, số điện thoại, địa chỉ, chức vụ
Trang 1914
3.2.4 Quản lý sinh viên vi phạm
a Thông tin vi phạm của sinh viên
Hình 3.6: Thông tin vi phạm của sinh viên
- Thông tin sinh viên vi phạm bao gồm: nội dung vi phạm, ngày vi phạm và tên sinh viên vi phạm
b Chỉnh sửa nội dung vi phạm
Hình 3.7: Chỉnh sửa nội dung vi phạm
- Thông tin chỉnh sửa bao gồm: nội dung vi phạm và thời gian vi phạm
Trang 2015
c Thêm sinh viên vi phạm
Hình 3.8: Thêm sinh viên vi phạm
- Chọn sinh viên vi phạm trong kí túc xá
- Điền nội dung sinh viên vi phạm
3.2.5 Quản lý hóa đơn theo phòng
a Thông tin hóa đơn
Hình 3.9: Thông tin hóa đơn
Thông tin hóa đơn bao gồm mã phòng và ngày lập và nhân viên lập hóa đơn, tổng tiền của hóa đơn
Trang 2116
b Chỉnh sửa thông tin hóa đơn
Hình 3.10: Chỉnh sửa thông tin hóa đơn
Thông tin chỉnh sửa bao gồm ngày lập và chỉ số cuối của công tơ điện
3.2.6 Quản sinh viên
a Thông tin sinh viên
Hình 3.11: Thông tin sinh viên
Trang quản lý thông tin sinh viên, thông tin sinh viên bao gồm: tên sinh viên, lớp, khoa, khóa, số điện thoại, địa chỉ, giới tính, quốc gia, phòng hiện tạ