BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM
ĐỒ ÁN MÔN MÃ NGUỒN MỞ
XÂY DỰNG WEBSITE QUẢN LÝ NHÀ HÀNG
Ngành: CÔNG NGHỆ THÔNG TIN
Chuyên ngành: CÔNG NGHỆ PHẦN MỀM
Giảng viên hướng dẫn: Ths. Võ Tấn Dũng
Sinh viên thực hiện: Nguyễn Thanh Phong (MSSV: 1711060613)
Lê Văn Chiến (MSSV: 1711060048)
Ngô Thanh Quí (MSSV: 1711062029)
TP. Hồ Chí Minh, 2021
ii
LỜI CẢM ƠN
Chúng em xin cám ơn Ban Giám Hiệu nhà trường- Khoa Công Nghệ Thông Tin
viện Nhật đã tạo điều kiện cho chúng em có điều kiện thực hiện đề tài này
Chúng em xin chân thành cảm ơn thầy ThS.Võ Tấn Dũng đã tận tâm hướng dẫn
chúng em qua những buổi meeting để trao đổi với chúng em thầy có đưa ra những tài
liệu giúp chúng em có thể tham khảo để hoàn thành tốt hơn đồ án của mình, ngoài ra
thầy đã giám sát chặt chẽ chúng em về tiến độ hoàn thành trong những tuần qua.
Mặc dù đã cố gắng hoàn thiện đồ án ở mức tốt nhất, tuy nhiên, do bước đầu chúng
em bắt đầu làm đồ án, tìm hiểu và xây dựng trong một thời gian và lượng kiến thức còn
hạn chế cho nên đồ án của chúng em sẽ không tránh khỏi những thiếu sót. Chúng em
mong nhận được sự quan tâm, thông cảm và những đóng góp quý báu của thầy để đồ án
chúng em ngày càng hoàn thiện hơn.
Chúng em xin chân thành cảm ơn!
iii
LỜI CAM ĐOAN
Chúng em xin cam đoan đây là sự nghiên cứu và qua sự hướng dẫn của Ths.Võ
Tấn Dũng. Các nội dung của đồ án và kết quả của đồ án là trung thực và chưa công bố
dưới bất kì hình thức nào trước đây. Trong quá trình làm đồ án chúng em có tham khảo
tài liệu có nguồn gốc rõ ràng và minh bạch.
Chúng em xin cam đoan nếu như có vấn đề gì liên quan đến đồ án thì chúng em
xin chịu toàn bộ trách nhiệm.
Sinh viên thực hiện
iv
NHẬN XÉT CỦA GIẢNG VIÊN
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
.............................................................................................................................
Giảng viên
Võ Tấn Dũng
MỤC LỤC
LỜI CẢM ƠN.....................................................................................................ii
LỜI CAM ĐOAN ..............................................................................................iii
NHẬN XÉT CỦA GIẢNG VIÊN ......................................................................iv
MỤC LỤC ..........................................................................................................v
DANH MỤC HÌNH VẼ ĐỒ THỊ......................................................................vii
Chương 1. TỔNG QUAN....................................................................................1
1.1. Giới thiệu đề tài........................................................................................1
1.2 Mô tả bài toán............................................................................................1
1.3 Các mục tiêu chính của hệ thống ...............................................................2
1.4 Phương pháp nghiên cứu và môi trương phát triển:....................................2
1.4.1 Công cụ hỗ trợ....................................................................................2
1.4.2. Môi trường phát triển ........................................................................3
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT ....................................................................4
2.1 Giớ thiệu về Php........................................................................................4
2.2 Laravel Framework....................................................................................4
2.3 Mô hình MVC trong Laravel Framework..............................................5
2.4 PHPmyadmin........................................................................................6
2.5 Xampp..................................................................................................6
CHƯƠNG 3: PHÂN TÍCH THIẾT KỆ HỆ THỐNG...........................................7
3.1 Các ký hiệu cơ bản ....................................................................................7
3.2 Danh sách actor .........................................................................................9
3.3 Danh sách use case ....................................................................................9
3.4 Sơ đồ use case .........................................................................................10
3.5 Sơ đồ class diagram.................................................................................10
CHƯƠNG 4: KẾT QUẢ THỰC NGHIỆM ĐẠT ĐƯỢC..................................11
4.1 Giao diện login ........................................................................................11
4.2 Giao diện trang chủ..................................................................................11
4.3 Giao diện trang quản lý category .............................................................12
4.4 Giao diện trang quản lý menu ..................................................................12
4.5 Giao diện trang quản lý table ...................................................................13
4.6 Giao diện trang quản lý user ....................................................................13
4.7 Giao diện trang Cashier ......................................................................14
4.8 Giao diện trang thanh toán:......................................................................14
4.9 Giao diện trang in hóa đơn:......................................................................15
4.10 Giao diện trang Report:..........................................................................15
4.11 Giao diện trang đăng xuất......................................................................16
CHƯƠNG 5: KẾT LUẬN VÀ KIẾN NGHỊ .....................................................17
1. 5.1 Kết luận ........................................................................................17
2. 5.2 Hướng phát triển...........................................................................17
TÀI LIỆU THAM KHẢO .................................................................................18
DANH MỤC HÌNH VẼ ĐỒ THỊ
Hình 1: Sự phổ biến của Laravel so với một số nền tảng khác......................................4
Hình 2: Cấu trúc mô hình MVC...................................................................................5
Hình 3: Sơ đồ User case tổng quan ............................................................................10
Hình 4: Class Diagram...............................................................................................10
Hình 5 Giao diện login...............................................................................................11
Hình 6:Giao diện trang chủ........................................................................................11
Hình 7: Giao diện trang quản lý category...................................................................12
Hình 8: Giao diện trang quản lý menu .......................................................................12
Hình 9: Giao diện trang quản lý table.........................................................................13
Hình 10: Giao diện trang quản lý user........................................................................13
Hình 11: Giao diện trang Cashier...............................................................................14
Hình 12: Giao diện trang thanh toán ..........................................................................14
Hình 13: Giao diện trang in hóa đơn ..........................................................................15
Hình 14: Chọn ngày xuất hóa đơn..............................................................................15
Hình 15: Thôn tin hóa đơn xuất theo ngày .................................................................15
Hình 16: Trang đăng xuất ..........................................................................................16
Chương 1: Tổng quan
Website quản lí nhà hàng
Chương 1. TỔNG QUAN
1.1. Giới thiệu đề tài
Ngày nay với sự bùng nổ và pháp triển mạnh mẽ của lĩnh vực Công nghệ thông tin
đặc biệt với sự ra đời của Internet, nó đang dần trở thành một phần không thể thiếu của
cuộc sống con người. Công nghệ thông tin đang được phát triển và ứng dụng mạnh mẽ
trong các lĩnh vực quản lý sản xuất, quản lý kinh doanh, dịch vụ, quản lý xã hội cũng
như tất cả các lĩnh vực khác. Thực tế đã cho thấy hiệu quả của tin học khi áp dụng vào
công tác quản lý, nó đã làm giảm bớt công tác bàn giấy đồng thời góp phần đáng kể
trong việc thống kê tránh những sai sót trong kinh doanh. Có thể nói tin học đã trở thành
một công cụ hữu hiệu đem lại hiệu quả trong công tác quản lý và kinh doanh.
Quản lý nhà hàng là một trong những nhu cầu thiết thực đó. Việc duy trì và phát
triển nhà hàng không chỉ dừng lại ở những món ăn ngon, mà còn cần giải quyết được
những phức tạp, khó khăn trong công việc quản lý về tài chính, nhân sự… và những
chiến lược kinh doanh của nhà hàng.
Đáp ứng những nhu cầu đó, nhóm chúng em đã chọn đề tài “Xây dựng website
quản lý nhà hàng” để xây dựng và phát triển. Website được thiết kế dựa trên thực tế
nghiệp vụ của nhà hàng để có khả năng đáp ứng và hỗ trợ tốt trong công việc quản lý và
kinh doanh của nhà hàng, tránh nhầm lẫn sai sót, đồng thời hỗ trợ cho việc tìm kiếm
thông tin nhanh chóng, chính xác.
1.2 Mô tả bài toán
Nhằm đáp ứng các yêu cầu đặt ra là cần một phần mềm website được thiết kế
dựa trên thực tế nghiệp vụ của nhà hàng để có khả năng đáp ứng và hỗ trợ tốt cho công
việc quản lý và kinh doanh của nhà hàng. Chương trình được thiết kế với giao diện thân
thiện dễ sử dụng cho người dùng bao gồm các chức năng quản lý cho người quản trị
cũng như giới thiệu, quảng bá nhà hàng, các món ăn và các nhu cầu cần thiết phục vụ
cho khách hàng.
Dựa trên nền tảng đó, chương trình được phát triển theo hướng framework để có
thể linh hoạt và hiệu quả hơn trong việc xây dựng và sử dụng. Cụ thể, chương trình phần
mềm quản lý nhà hàng của nhóm em được lập trình bằng ngôn ngữ PHP, chạy trên nền
tảng Laravel Framework và kết nối bằng cơ sở dữ liệu SQL.
Chương 1: Tổng quan
Website quản lí nhà hàng
1.3 Các mục tiêu chính của hệ thống
Yêu cầu về mặt giao diện:
- Giao diện Website thân thiện, dễ sử dụng, phân chia trên các thể loại khác
nhau
Yêu cầu về mặt chức năng:
Các chức năng đã thực hiện:
Quản lý tài khoản
Quản lý món ăn
Đặt bàn
Quản lý danh mục
Thống kê
Các chức năng chưa thực hiện.
Mục tiêu:
Giúp cho người dùng có thể quản lý nhà hàng một cách dễ dàng và tiết
kiệm được chi phí và thời gian quản lý.
Đối tượng sử dụng:
Đối tượng sử dụng website là người quản lý nhà hàng.
1.4 Phương pháp nghiên cứu và môi trương phát triển:
1.4.1 Công cụ hỗ trợ
Công cụ lập trình
Các công cụ hỗ trợ cho việc lập trình để hoàn thiện một ứng dụng với ngày nay
không hề thiếu về vấn đề đó. Vấn đề là việc bạn chọn các công cụ nào để thực hiện
chúng và có thể tiếp cận được nó một cách tốt nhất. Việc lựa chọn ngôn ngữ phù hợp
cũng giúp cho tác giả có thể hoàn thành và tận dụng được tốt nhất những lợi ích mà nó
mang lại.
Visual Studio Code
Database: mySQL
Công cụ quản lý và phân chia task.
Chương 1: Tổng quan
Website quản lí nhà hàng
Để cho việc quản lý dễ dàng hơn các công việc hay nắm bắt được các danh mục
công việc tốt hơn và quản lý các source code trở nên chuyên nghiệp hơn thì nhóm có sử
dụng 2 công cụ chính đó là:
GITLAB: Đây là một công, cụ dịch vụ cung cấp kho lưu trữ mã nguồn Git dựa
trên nền web cho các dự án phát triển phần mềm. Nhóm đã đưa tất cả Source
Code của đồ án này lên đây để lưu trữ tránh trường hợp bị hư hỏng về máy làm
ảnh hưởng đến đồ án và tiến độ đề ra.
TRELLO: đây là một công cụ quản lý công việc hiệu quả khi làm việc theo
nhóm, giúp mọi người trong cùng một team chỉ cần nhìn qua là biết được có
những đầu việc nào, ai đang làm gì và làm đến giai đoạn nào.
1.4.2. Môi trường phát triển
Môi trường phần cứng
- CPU: Pentium IV 3.0 GHz hoặc cao hơn
- RAM: tối thiểu 4 GB
- HDD: dung lượng tối thiểu trống 2G
Môi trường phần mềm
- Hệ điều hành: Windows
- Công cụ phát triển: Visual Studio Code
Chương 2: Cơ sở lý thuyết
Website quản lí nhà hàng
CHƯƠNG 2: CƠ SỞ LÝ THUYẾT
2.1 Giớ thiệu về Php
PHP (PHP Hypertext Preprocessor) là ngôn ngữ lập trình kịch bản mã nguồn mở
phía server được thiết kế để dễ dàng xây dựng các trang web động. Mã PHP có thể thực
thi trên server để tạo ra mã HTML và xuất ra trình duyệt web theo yêu cầu của người sử
dụng. PHP cho phép xây dựng ứng dụng web trên mạng internet tương tác với mọi cơ
sở dữ liệu như MySQL, Oracle, …
PHP được tối ưu hóa cho các ứng dụng web, tốc độ nhanh, nhỏ gọn, dễ học, thời
gian xây dựng sản phẩm tương đối ngắn hơn so với các ngôn ngữ khác nên PHP đã
nhanh chóng trở thành một ngôn ngữ lập trình phổ biển và được ưa chuộng.
2.2 Laravel Framework
Laravel là một bộ mã nguồn PHP Framework hoàn toàn miễn phí, được thiết kế
và xây dựng theo chuẩn mô hình MVC. Laravel được phát hành theo giấy phép MIT,
với mã nguồn của nó được lưu trữ trên GitHub. Phiên bản đầu tiên được phát hành ngày
22 tháng 1 năm 2012 bởi Taylor Otwell.
Hình 1: Sự phổ biến của Laravel so với một số nền tảng khác
Chương 2: Cơ sở lý thuyết
Website quản lí nhà hàng
Có hơn 20 Framework mã nguồn mở PHP khác nhau, nhưng Laravel Framework
là phổ biến nhất, xếp sau là Zendframework, Symfony, CodeIgniter, Yii Framework…
Đây là một framework khá mới mẻ nhưng bù lại nó có hướng dẫn sử dụng khá đầy đủ,
rõ ràng và dễ hiểu. Cùng với đó là cộng đồng phát triển rộng lớn trên toàn thế giới.
Những tính năng nổi bật của Laravel bao gồm cú pháp dễ hiểu, rõ ràng, một hệ
thống đóng gói modular và quản lý gói phụ thuộc, nhiều cách khác nhau để truy cập vào
các cơ sở dữ liệu quan hệ, nhiều tiện ích khác nhau hỗ trợ việc triển khai và bảo trì ứng
dụng.
2.3Mô hình MVC trong Laravel Framework
Mô hình MVC là mô hình 3 lớp bao gồm: Model, View, Controller
Trong đó:
- Model: thành phần chứa dữ liệu
- View: thành phần hiển thị giao diện trên màn hình
- Controller: thành phần kiểm soát model và điều khiển view để hiển thị cho
người dùng
Hình 2: Cấu trúc mô hình MVC
Route: Nhiệm vụ chính của Router là định tuyến những controller cụ thể nào từ
phía request của người sử dụng
Controller: Khi được Router gọi, Controller sẽ tiếp nhận lời gọi và xử lý. Nó có
thể trả lại trực tiếp dạng text, tạo và truyề hoặc không truyền các tham số cho
View, hay gọi các hàm của Model để tương tác với CSDL…
View: chỉ ra các layout được dùng
Model: chạy trực tiếp các câu SQL
Chương 2: Cơ sở lý thuyết
Website quản lí nhà hàng
2.4PHPmyadmin
PhpMyAdmin là một ứng dụng web miễn phí cung cấp GUI sử dụng kết hợp với
hệ thống quản lý cơ sở dữ liệu MySQL.
PhpMyAdmin có thể sử dụng cho hầu hết các hệ điều hành, nó có thể xuất và
nhập cơ sở dữ liệu được tạo và quản lý bởi MySQL DBMS, cũng như làm việc với một
số định dạng dữ liệu khác.
Các tính năng chung:
- Tạo và xóa người dùng, quản lý quyền người dùng
- Tạo, thay đổi, xóa cơ sở dữ liệu
- Tìm kiếm đối tượng trong toàn bộ cơ sở dữ liệu
- Nhập và xuất dữ liệu theo các định dạng khác nhau
- Sao lưu cơ sở dữ liệu MySQL ở chế độ thủ công
2.5Xampp
Xampp là chương trình tạo web server được ứng dụng trên các hệ điều hành Linux,
MacOS, Windows, Cross-platform, Solaris. Xampp hoạt động dựa trên sự tích hợp của
5 phần mềm chính là Cross-Platform (X), Apache (A), MariaDB (M), PHP (P) và Perl
(P), nên tên gọi Xampp cũng là viết tắt từ chữ cái đầu của 5 phần mềm này.
Phần mềm Xampp là một loại ứng dụng phần mềm khá phổ biến và thường hay được
các lập trình viên sử dụng để xây dựng và phát triển các dựa án website theo ngôn ngữ
PHP. Xampp được sử dụng cho mục đích nghiên cứu, phát triển website qua Localhost
của máy tính cá nhân. Xampp được ứng dụng trong nhiều lĩnh vực từ học tập đến nâng
cấp, thử nghiệm Website của các lập trình viên.
Ưu điểm lớn nhất của Xampp là không phải trả phí bản quyền và sử dụng mã nguồn
mở, bên cạnh đó cấu hình của web server này tương đối đơn giản, gọn nhẹ nên được sử
dụng ngày càng phổ biến hiện nay.
Chương 3: Phân tích thiết kế hệ thống
Website quản lí nhà hàng
CHƯƠNG 3: PHÂN TÍCH THIẾT KỆ HỆ THỐNG
3.1 Các ký hiệu cơ bản
Biểu diễn các Actor (tác nhân) biểu
diễn người hay hệ thống khác tương tác với
hệ thống hiện tại.
Biểu diễn các Use Case (tình huống sử
dụng) biểu diễn chuỗi hành động mà hệ
thống thực hiện.
Biểu diễn mối quan hệ giữa Actor
(người dùng) và UseCase (chức năng của hệ
thống)
Quan hệ <<Include>> thể hiện Use
Case này chứa Use Case khác.
Use case A được gọi là Include B nếu
trong xử lý của A có gọi đến B ít nhất 1 lần.
Quan hệ <<Extend>> thể hiện User
Case này mở rộng Use Case khác.
Use case B được gọi là Exntend A nếu
use case B được gọi bởi A nếu thỏa mãn điều
kiện nào đó.
Chương 3: Phân tích thiết kế hệ thống
Website quản lí nhà hàng
Quan hệ tổng quát hóa (thừa kế):
Use case A được gọi là Generalization
Use Case B nếu Use Case B là một trường
hợp riêng của Use Case A.
Biểu đồ Lớp ClassDiagram:
- Mô tả các đối tượng và mối quan hệ
của chúng trong hệ thống.
- Mô tả các thuộc tính và các hành vi
(Behavior) của đối tượng.
Quan hệ Generalization: Thể hiện rằng
một lớp A kế thừa từ một lớp B (Hay Class
A là trường hợp riêng của Class B; Class B
là tổng quát của Class A). Gọi là quan hệLà
một (Is a)
Quan hệ Composition:
Thể hiện rằng một lớp A bao hàm lớp
B. Nhưng lớp B không thể tồn tại độc lập
(tức không thuộc lớp nào). Tức là, nếu có B
thì phải suy ra được A.
Biểu diễn mô tả các ký hiệu
Chương 3: Phân tích thiết kế hệ thống
Website quản lí nhà hàng
3.2 Danh sách actor
STT Tên actor Ý nghĩa
1 Người quản trị
Là người sử dụng
website quản lý nhà
hàng.
Bảng 1: Danh sách actor
3.3 Danh sách use case
STT Tên usecase Use case phân rã
1 Quản lý User
Thêm user
Sửa user
Xóa user
2 Quản lý Menu
Thêm menu
Sửa menu
Xóa menu
3 Quản lý Table
Thêm table
Sửa table
Xóa table
4 Quản lý Category
Thêm category
Sửa category
Xóa category
5 Cashier
Chọn bàn.
Chọn món.
Thanh toán.
In hóa đơn
6 Report Show report
7 Log in
8 Log out
Bảng 2: Danh sách Use Case
Chương 3: Phân tích thiết kế hệ thống
Website quản lí nhà hàng
3.4 Sơ đồ use case
3.5 Sơ đồ class diagram
Hình 3: Sơ đồ User case tổng quan
Hình 4: Class Diagram
Chương 4: Kết quả thực nghiệm đạt được
Website quản lí nhà hàng
CHƯƠNG 4: KẾT QUẢ THỰC NGHIỆM ĐẠT ĐƯỢC
4.1 Giao diện login
4.2 Giao diện trang chủ
Hình 5 Giao diện login
Hình 6:Giao diện trang chủ
Chương 4: Kết quả thực nghiệm đạt được
Website quản lí nhà hàng
4.3 Giao diện trang quản lý category
4.4 Giao diện trang quản lý menu
Hình 7: Giao diện trang quản lý category
Hình 8: Giao diện trang quản lý menu
Chương 4: Kết quả thực nghiệm đạt được
Website quản lí nhà hàng
4.5 Giao diện trang quản lý table
4.6 Giao diện trang quản lý user
Hình 9: Giao diện trang quản lý table
Hình 10: Giao diện trang quản lý user
Chương 4: Kết quả thực nghiệm đạt được
Website quản lí nhà hàng
4.7Giao diện trang Cashier
4.8 Giao diện trang thanh toán:
Hình 11: Giao diện trang Cashier
Hình 12: Giao diện trang thanh toán
Chương 4: Kết quả thực nghiệm đạt được
Website quản lí nhà hàng
4.9 Giao diện trang in hóa đơn:
4.10 Giao diện trang Report:
Hình 13: Giao diện trang in hóa đơn
Hình 14: Chọn ngày xuất hóa đơn
Hình 15: Thôn tin hóa đơn xuất theo ngày
Chương 4: Kết quả thực nghiệm đạt được
Website quản lí nhà hàng
4.11 Giao diện trang đăng xuất
Hình 16: Trang đăng xuất
Chương 5: Kết luân và kiến nghị
Website quản lí nhà hàng
CHƯƠNG 5: KẾT LUẬN VÀ KIẾN NGHỊ
1. 5.1 Kết luận
Kết quả đạt được:
Có một kiến thức mới về PHP Framework
Hiểu cách thao tác với CSDL theo phương pháp mà Laravel Framework
cung cấp
Hiểu cách thức hoạt động của một trang web động
Tạo được trang web có giao diện thân thiện, thuận tiện cho người sử dụng
Hạn chế:
Trình độ còn hạn chế
Ứng dụng chưa đầy đủ các chức năng
2. 5.2 Hướng phát triển
1. Hoàn thiện các chức năng còn thiếu và chưa hoàn thiện
2. Phần website cần thiết kế bắt mắt hơn.
3. Tăng cường cung cấp thêm dữ liệu đa dạng.
Tài liệu tham khảo
Website quản lí nhà hàng
TÀI LIỆU THAM KHẢO
[1] Class Diagrams-https://www.uml-diagrams.org/class-diagrams.html
[2] Use Case Diagrams-https://www.uml-diagrams.org/use-case-diagrams.html
[3] Giới thiệu về Laravel https://viblo.asia/p/gioi-thieu-ve-laravel-924lJrnzlPM
[4] ThS. Nguyễn Kim Hưng (2018), Phần mềm mã nguồn mở, Bộ giáo dục và đào tạo
Đại học Công nghệ Tp.HCM.
[5] XAMPP là gì? Cách cài đặt và sử dụng XAMPP trên Windows và Linux---
https://wiki.matbao.net/xampp-la-gi-cach-cai-dat-va-su-dung-xampp-tren-
windows-va-linux/