Với đề tài này, nhóm chúng em mong muốn áp dụng các kiến thức đã đượchọc trong trường cùng với việc tìm hiểu nghiên cứu ngôn ngữ và môi trường lậptrình để xây dựng một hệ thống quản lý k
Trang 1BỘ GIÁO DỤC & ĐÀO TẠO TRƯỜNG ĐẠI HỌC PHENIKAA KHOA CÔNG NGHỆ THÔNG TIN
***
-BÀI TẬP LỚN KẾT THÚC HỌC PHẦN
MÔN Công nghệ NET
Đề tài: Phát triển phần mềm quản lý khách sạn
Thành viên:
Giảng viên hướng dẫn: Phạm Ngọc Hưng
Hà Nội, ngày 17 tháng 05 năm 2023
MỤC LỤC
Trang 2LỜI MỞ ĐẦU 1
NỘI DUNG 2
CHƯƠNG I : GIỚI THIỆU CƠ SỞ LÝ THUYẾT 2
1 Mục đích: 2
2 Phạm vi: 2
3 Đối tượng sử dụng: 2
4 Công nghệ sử dụng: 2
4.1.Visual Studio: 2
4.2 SQL Server: 4
CHƯƠNG II : CÀI ĐẶT VÀ TRIỂN KHAI 6
1 Cài đặt môi trường phát triển: 6
2 Triển khai ứng dụng: 6
3 Cách kết nối database với Visual Studio: 6
CHƯƠNG III: MÔ TẢ NGHIỆP VỤ 7
1 Yêu cầu chung đối với chương trình: 7
1.1 Yêu cầu chức năng: 7
1.2 Yêu cầu phi chức năng: 8
1.3 Yêu cầu miền: 8
2 Tổng quan chức năng của chương trình: 9
2.1 Sơ đồ chức năng của chương trình: 9
2.2 Bảng cơ sở dữ liệu: 10
2.3 Tác nhân admin với đối với hệ thống: 11
CHƯƠNG IV: GIAO DIỆN HỆ THỐNG 12
1 Giao diện đăng nhập: 12
2 Giao diện trang chủ: 13
CHƯƠNG VI: PHƯƠNG PHÁP THỰC HIỆN VÀ KẾT QUẢ 14
1 Phương pháp thực hiện: 14
2 Kết quả: 14
KẾT LUẬN 14
Trang 3Bảng phân công công việc
Trang 4LỜI MỞ ĐẦU
Ngày nay cùng với sự phát triển của khoa học công nghệ , các ứng dụng tin học đang là một phần không thể thiếu trong cuộc sống con người ,nó góp phần đẩy mạnh công nghiệp hóa hiện đại hóa đất nước Máy tính cùng với những phần mềm
là công cụ đắc lực giúp ta quản lý , tổ chức , sắp xếp và xử lý công việc một cách nhanh chóng và chính xác
Ở Việt Nam hiện nay , máy tính điện tử đặc biệt là máy vi tính trong nhiều năm qua đã được sử dụng rộng rãi Sự phát triển của công nghệ phần mềm , phần cứng đã đưa chúng ta từng bước tiếp cận với công nghệ thông tin trong mọi lĩnh vực nhằm đáp ứng những nhu cầu của con người Một trong số đó là việc đưa tin học vào ứng dụng để quản lý rất hữu ích vì chúng ta bỏ ra ít thời gian mà lại thu được hiệu quả cao , chính xác và tiện lợi
Quản lý khách sạn là một trong những công việc tương đối phức tạp, tốn nhiều thời gian và công sức Chính vì vậy, tin học hóa trong lĩnh vực quản lí khách sạn là một yêu cầu tất yếu Muốn quản lý tốt cần có được các phần mềm tốt, phần mềm phải đảm bảo được độ bảo mật cao, dễ sử dụng và nhiều tiện ích Đề tài là một yêu cầu thiết thực trong quản lý của hầu hết các khách sạn đang hoạt động hiện nay
Từ lâu bài toàn về quản lý đã được ứng dụng rộng rãi trong hầu hết các lịch vực Hiểu được tầm quan trọng của môn học cùng với các kiến thức đã tích lũy
được trong suốt học kỳ nhóm chúng em xin lựa chọn đề tài “Phát triển phần mềm quản lý khách sạn”.
Trang 5Với đề tài này, nhóm chúng em mong muốn áp dụng các kiến thức đã được học trong trường cùng với việc tìm hiểu nghiên cứu ngôn ngữ và môi trường lập trình để xây dựng một hệ thống quản lý khách sạn được hiệu quả
NỘI DUNG CHƯƠNG I : GIỚI THIỆU CƠ SỞ LÝ THUYẾT
1 Mục đích:
Bài tập lớn “Phát triển phần mềm quản lý khách sạn” được thực hiện với mục đích xây dựng một ứng dụng quản lý khách sạn hiện đại , hiệu quả, dễ sử dụng, tiết kiệm thời gian cho người dùng Đồng thời, bài tập lớn cũng giúp sinh viên nắm chắc kiến thức về lập trình C#
2 Phạm vi:
Phạm vi của bài tập lớn bao gồm việc xây dựng quản lý khách sạn trên nền tảng c#, hỗ trợ quản lý phòng, quản lý khách hàng và các chức năng đăng kí phòng khách sạn cho khách hàng Ứng dụng này hướng tới đối tượng người dùng là quản trị viên
3 Đối tượng sử dụng:
Đối tượng sử dụng chính của quản lý khách sạn là quản trị viên (admin) Quản trị có quyền truy cập vào toàn bộ hệ thống , quản lý thông tin của khách hàng, của phòng thêm, sửa, xóa, đặt phòng, trả phòng
4 Công nghệ sử dụng:
4.1.Visual Studio:
Visual Studio là một trong những công cụ hỗ trợ lập trình website rất nổi tiếng hiện nay của Microsoft và chưa có một phần mềm nào có thể thay thế được
nó Visual Studio được viết bằng hai ngôn ngữ đó chính là C# và VB+ Đây là hai
Trang 6ngôn ngữ lập trình giúp người dùng có thể lập trình được hệ thống một cách dễ dàng và nhanh chóng nhất thông qua Visual Studio
Visual Studio là một phần mềm lập trình hệ thống được sản xuất trực tiếp từ Microsoft Từ khi ra đời đến nay, Visual Studio đã có rất nhiều các phiên bản sử dụng khác nhau Điều đó giúp cho người dùng có thể lựa chọn được phiên bản tương thích với dòng máy của mình cũng như cấu hình sử dụng phù hợp nhất Bên cạnh đó, Visual Studio còn cho phép người dùng có thể tự chọn lựa giao diện chính cho máy của mình tùy thuộc vào nhu cầu sử dụng
Một số tính năng của phần mềm Visual Studio:
Biên tập mã: Giống như bất kỳ một IDE khác, Visual Studio gồm có một trình
soạn thảo mã hỗ trợ tô sáng cú pháp và hoàn thiện mả bằng cách sử dụng IntelliSense không chỉ cho các hàm, biếnvà các phương pháp mà còn sử dụng cho các cấu trúc ngôn ngữ như: Truy vấn hoặc vòng điều khiển
Bên cạnh đó, các trình biên tập mã Visual Studio cũng hỗ trợ cài đặt dấu trang trong mã để có thể điều hướng một cách nhanh chóng và dễ dàng Hỗ trợ các điều hướng như: Thu hẹp các khối mã lệnh, tìm kiếm gia tăng, Visual Studio còn
có tính năng biên dịch nền tức là khi mã đang được viết thì phần mềm này sẽ biên dịch nó trong nền để nhằm cung cấp thông tin phản hồi về cú pháp cũng nhưbiên dịch lỗi và được đánh dấu bằng các gạch gợn sóng màu đỏ
Trình gỡ lỗi: Visual Studio có một trình gỡ lỗi có tính năng vừa lập trình gỡ lỗi cấp máy và gỡ lỗi cấp mã nguồn Tính năng này hoạt động với cả hai mã quản
lý giống như ngôn ngữ máy và có thể sử dụng để gỡ lỗi các ứng dụng được viết bằng các ngôn ngữ được hỗ trợ bởi Visual Studio
Trang 7Thiết kế Windows Forms Designer: Được sử dụng với mục đích xây dựng GUI sử dụng Windows Forms, được bố trí dùng để xây dựng các nút điều khiển bên trong hoặc cũng có thể khóa chúng vào bên cạnh mẫu Điều khiển trình bày dữ liệu có thể được liên kết với các nguồn dữ liệu như: Cơ sở dữ liệu hoặc truy vấn WPF Designer: Tính năng này cũng giống như Windows Forms Designer có công dụng hỗ trợ kéo và thả ẩndụ Sử dụng tương tác giữa người và máy tính nhắm mục tiêu vào Windows PresentationFoundation
Web designer/development: Visual Studio cũng có một trình soạn thảo và thiết kế website cho phép các trang web được thiết kế theo tính năng kéo và thả đối tượng Mục đích là để hỗ trợ người dùng tạo trang web dễ dàng hơn, những yêu cầu đơn giản như thiết kế web du lịch hay các trang giới thiệucủa công ty có thể sử dụng tính năng này vì nó vẫn đảm bảo cho bạn sở hữu được một website hoàn chỉnh
4.2 SQL Server:
SQL Server 2019 là một hệ thống quản lý cơ sở dữ liệu (Relational Database ManagementSystem (RDBMS)) sử dụng Transact – SQL để trao đổi dữ liệu giữa Client computer vàSQL Server computer Một RDBMS bao gồm databases, database engine và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác nhau trong RDBMS.SQL Server 2019 được tối ưu để có thể chạy trên môi trường cơ sở
dữ liệu rất lớn (VeryLarge Database Environment) lên đến TeraByte và có thể phục
vụ cùng lúc cho hàng ngàn user SQL Server 2019 có thể kết hợp “ăn ý” với các server khác như Microsoft InternetInformation Server (IIS), E-Commerce Server, Proxy Server
- Các phiên bản của SQLServer 2019:
Trang 8+ Enterprise: Hỗ trợ không giới hạn số lượng CPU và kích thước Database.
Hỗ trợ không giới hạn RAM (nhưng tùy thuộc vào kích thước RAM tối đa mà HĐH hỗ trợ) và các hệ thống 64bit
+ Standard: Tương tự như bản Enterprise nhưng chỉ hỗ trợ 4 CPU Ngoài ra phiên bản này cũng không được trang bị một số tính năng cao cấp khác
+Workgroup: Tương tự bản Standard nhưng chỉ hỗ trợ 2 CPU và tối đa 3GB RAM Express: Bản miễn phí, hỗ trợ tối đa 1CPU, 1GB RAM và kích thước Database giới hạn trong 4GB
SQL là viết tắt của Structured Query Language, là công cụ sử dụng để tổ chức, quản lý và truy xuất dữ liệu được lưu trữ trong các cơ sở dữ liệu SQL là một
hệ thống ngôn ngữ bao gồm tập các câu lệnh sử dụng để tương tác với cơ sở dữ liệu quan hệ Khả năng của SQL vượt xa so với một công cụ truy xuất dữ liệu, mặc dù đây là mục đích ban đầu khi SQL được xây dựng nên và truy xuất dữ liệu vẫn còn
là một trong những chức năng quan trọng của nó SQL được sử dụng để điều khiển tất cả các chức năng mà một hệ quản trị cơ sở dữ liệu cung cấp cho người dùng bao gồm:
Định nghĩa dữ liệu: SQL cung cấp khả năng định nghĩa các cơ sở dữ liệu, các cấu trúc lưu trữ và tổ chức dữ liệu cũng như mối quan hệ giữa các thành phần dữ liệu
Truy xuất và thao tác dữ liệu: Với SQL, người dùng có thể dễ dàng thực hiện các thao tác truy xuất, bổ sung, cập nhật và loại bỏ dữ liệu trong các cơ sở dữ liệu
Trang 9CHƯƠNG II : CÀI ĐẶT VÀ TRIỂN KHAI
1 Cài đặt môi trường phát triển:
- Cài đặt Visual Studio phiên bản 2019.
- Cài đặt cấu hình cơ sở dữ liệu SQL Server 2019
2 Triển khai ứng dụng:
- Tạo cấu trúc thư mục dự án theo cấu trúc gói (package) và lớp (class) đã thiết kế
- Tạo các lớp (class) viết mã code cho các chức năng
- Tạo cơ sở dữ liệu và các quản lý liên quan đến nội dung đề tài trên hệ quản trị cơ
sở dữ liệu
- Kiểm tra kết nối giữa ứng dụng và cơ sở dữ liệu thông qua các phương thức trong Database
- Triển khai giao diện người dùng cho các chức năng liên quan nội dung đề tài
- Thêm các sự kiện, xử lý sự kiện cho các thành phần giao diện
3 Cách kết nối database với Visual Studio:
Tạo project cần làm trong Visual Studio -> tạo folder chứa code -> tạo class chứa code thực thi kết nối đến cơ sở dữ liệu
Trang 10CHƯƠNG III: MÔ TẢ NGHIỆP VỤ
1 Yêu cầu chung đối với chương trình:
1.1 Yêu cầu chức năng:
Hệ thống quản lý khách sạn cần cung cấp một giao diện đơn giản trực quan
để quản lý thông tin liên quan đến phòng và khách hàng Hệ thống cho phép quản trị viên (admin) thực hiện các công việc sau
- Đăng nhập vào hệ thống để truy cập các chức năng quản lý
- Thêm, sửa, xóa thông tin phòng, khách hàng
- Thêm, sửa, xóa giá phòng
- Đặt phòng cho khách hàng
- Trả phòng cho khách hàng
Trang 111.2 Yêu cầu phi chức năng:
- Giao diện thân thiện: Hệ thống phải có giao diện người dùng thân thiện, dễ
sử dụng để người dùng có thể sử dụng một cách thuận tiện và nhanh chóng
- Đáp ứng nhu cầu của người sử dụng: Hệ thống cần đáp ứng nhu cầu của người sử dụng bao gồm các chức năng và tính năng cần thiết để quản lý phòng, khách hàng
- Bảo mật thông tin: Hệ thống cần đảm bảo tính bảo mật thông tin để bảo vệ thông tin khách hàng và tránh những trường hợp mất mát dữ liệu
- Hiệu suất cao: Hệ thống cần có hiệu suất cao để xử lý nhanh các yêu cầu của người dùng đảm bảo tính ổn định
1.3 Yêu cầu miền:
- Chạy được trên hệ điều hành Windows 8/10/11
- Hệ quản trị cơ sở dữ liệu SQL Server
Trang 122 Tổng quan chức năng của chương trình:
2.1 Sơ đồ chức năng của chương trình:
Mô tả sơ đồ chức năng:
- Đăng nhập: Người quản trị đăng nhập vào hệ thống quản lý khách sạn bằng tài khoản của hệ thống
- Quản lý phòng:
Hiển thị phòng trống, liệt kê phòng có người thuê
Trang 13 Thêm phòng vào danh sách.
Cập nhật lại thông tin phòng
Xóa phòng trong danh sách
Đặt , trả phòng
2.2 Bảng cơ sở dữ liệu:
Trang 142.3 Tác nhân admin với đối với hệ thống:
Trang 15CHƯƠNG IV: GIAO DIỆN HỆ THỐNG
1 Giao diện đăng nhập:
< Window x : Class ="QUANLYKHACHSAN.MainWindow"
xmlns ="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns : x ="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns : d ="http://schemas.microsoft.com/expression/blend/2008"
xmlns : mc ="http://schemas.openxmlformats.org/markup-compatibility/2006"
xmlns : local ="clr-namespace:QUANLYKHACHSAN"
mc : Ignorable ="d"
Title ="Quản lý khách sạn" Height ="450" Width ="800" FontFamily ="Times New Roman">
< Grid >
< Menu Margin ="0,0,0,0" Background ="#f7f4e5">
< MenuItem x : Name ="btnHeThong" Header ="Hệ thống" FontFamily ="Times New Roman"
FontSize ="18" Height ="45" Width ="115">
< MenuItem.Icon >
< Image Source ="/img/system.png" Width ="16" Height ="16"/>
</ MenuItem.Icon >
</ MenuItem >
< Separator Style ="{ StaticResource x Static { : MenuItem SeparatorStyleKey}}"/>
< MenuItem x : Name ="btnBaoCao" Header ="Báo cáo" FontFamily ="Times New Roman"
FontSize ="18" Height ="45" Width ="115">
< MenuItem.Icon >
< Image Source ="/img/report.png" Width ="16" Height ="16"/>
</ MenuItem.Icon >
</ MenuItem >
< Separator Style ="{ StaticResource x Static { : MenuItem SeparatorStyleKey}}"/>
< MenuItem x : Name ="btnThoat" Header ="Thoát" FontFamily ="Times New Roman"
FontSize ="18" Height ="45" Width ="115">
< MenuItem.Icon >
< Image Source ="/img/out.png" Width ="16" Height ="16"/>
</ MenuItem.Icon >
Trang 16< GridSplitter HorizontalAlignment ="Left" Height ="377" Margin ="0,57,0,0"
VerticalAlignment ="Top" Width ="313"/>
< GridSplitter HorizontalAlignment ="Left" Height ="377" Margin ="308,57,0,0"
VerticalAlignment ="Top" Width ="492"/>
< ListBox x : Name ="lbMain" Margin ="0,57,492,0"/>
</ Grid >
</ Window >
Trang 172 Giao diện trang chủ:
Trang 18CHƯƠNG VI: PHƯƠNG PHÁP THỰC HIỆN VÀ KẾT QUẢ
1 Phương pháp thực hiện:
- Thiết kế giao diện sử dụng WPF với các chức năng quản lý phòng, đặt và trả phòng Có lưu thông tin khách đặt phòng, thời gian thuê và giá tiền
- Sử dụng WPF để liên kết các tính năng với các button, trường dữ liệu trên giao diện
- Sử dụng SQL Server để lưu trữ dữ liệu cũng như kết nối với Visual Studio để truy xuất dữ liệu
2 Kết quả:
- Thiết kế giao diện đơn giản, các chức năng thân thiện và dễ dàng sử dụng
- Đăng nhập được xử lý chính xác, bảo mật thông tin
Trang 19- Chương trình hoạt động ổn định, không xảy ra lỗi, đáp ứng tốt các yêu cầu cơ bản
KẾT LUẬN
Tóm lại từ mô hình quản lý khách sạn Thông qua đó chúng ta có thể dùng
mô hình này ứng dụng vào các tổ chức mô hình tương tự khác… Mô hình này đưa
ra một số chức năng phù hợp với yêu cầu cần thiết cơ bản cần thiết để tiến hành quản lý khách sạn hiệu quả và chặt chẽ hơn Do thời gian ngắn cho nên các chức năng chưa được hoàn chỉnh, hệ thống dữ liệu chưa đầy đủ, giao diện thiết kế chưa thẩm mỹ Trong suốt quá trình làm, nhóm đã học tập cũng như tiếp thu được rất nhiều kiến thức Nhóm chúng em rất mong nhận được những ý kiến đóng góp từ thầy cô để sản phẩm có hoàn thiện hơn