Professional Documents
Culture Documents
Tailieunhanh Xay Dung Website Kinh Doanh Nha Hang Am Thuc Nhat Bannihonfood 2252
Tailieunhanh Xay Dung Website Kinh Doanh Nha Hang Am Thuc Nhat Bannihonfood 2252
Tailieunhanh Xay Dung Website Kinh Doanh Nha Hang Am Thuc Nhat Bannihonfood 2252
ĐỒ ÁN HỌC PHẦN
Tên học phần: LẬP TRÌNH WEB
Công nghệ thông tin đã trở thành trụ cột chính của nền kinh
tế tri thức, ứng dụng công nghệ thông tin vào việc quản lý các
hoạt động xã hội và nghiên cứu hay trao đổi mua bán. Phạm vi
ứng dụng của công nghệ thông tin ngày càng mở rộng trên nhiều
lĩnh vực: Truyền thông, đo lường, tự động hoá, quản lý các hoạt
động của con người và xã hội . Những lợi ích mà các phần mềm
ứng dụng mang lại là đáng kể như: Xử lý thông tin nhanh chóng,
chính xác, khoa học, giảm bớt nhân lực và công sức, phí tổn thấp
và hiệu quả công việc nâng cao một cách rõ rệt.
Việc ứng dụng tin học vào các lĩnh vực cửa cuộc sống ngày
càng được quan tâm và sử dụng hiệu quả. Đem lại lợi ích to lớn về
mọi mặt. Với đề tài “ website kinh doanh nhà hàng ẩm thực Nhật
Bản Nihonfood” website được xây dựng với nhu cầu của sự nhanh
– tiện, người dùng có thể đặt đồ ăn online chỉ bằng vài thao tác
đơn giản
LỜI CẢM ƠN
Chúng em xin gửi lời cảm ơn chân thành đến thầy Dương
Thành Phết đã hướng dẫn chúng tôi trong suốt quá trình học và
quá trình làm báo cáo đồ án này. Xin gửi lời cảm ơn đến các bạn
trong nhóm đã nhiệt tình cống hiến trong suốt thời gian học tập
nhằm thực hiện tốt dự án và học hỏi thêm nhiều kinh nghiệm quý
báu.
Võ Thị Cẩm Vy
Trương Thiên Lảnh
Trần Ngọc Hưng
Tự đánh giá
Nội dung công việc thực
TT MSS/Họ tên Tỷ lệ &
hiện
Điểm
1911061254 – Sản phẩm và chi tiết
- – Đăng ký, đăng nhập
– Đăng nhập admin,
1 Trần Ngọc Hưng trang chủ admin 30%
– Các chức năng của
Admin 8.5
– Báo cáo, chương 1,2
1911062471
- – Giao diện
Trương Thiên Lảnh – Trang chủ
– Phân trang
2 – Giao diện Form News 40%
– Giao diện Form About 9
– Nhúng API
– Báo cáo, chương 5
1911060646 – Các sơ đồ UC
- – Cơ sở dữ liệu 30%
– Giỏ hàng
Võ Thị Cẩm Vy – Đặt hàng 8.5
3
– Báo cáo, chương 3,4
MỤC LỤC
Chương I: GIỚI THIỆU ĐỀ TÀI..................................................................6
1.1 LÝ DO CHỌN ĐỀ TÀI...................................................................6
1.2 MỤC TIÊU CỦA NHÓM..............................................................6
1.3 GIỚI THIỆU ĐỀ TÀI......................................................................7
1.4 MỘT SỐ CÔNG NGHỆ SỬ DỤNG..........................................7
1.4.1 ASP.NET MVC 5..........................................................................7
1.4.2 JQUERY......................................................................................8
1.4.3 NODEJS......................................................................................8
1.4.4 REACTJS.....................................................................................8
1.4.5 API...............................................................................................9
1.4.6 SQL..............................................................................................9
1.4.7 Mô Hình ENTITY FRAMEWORK.............................................11
1.5 HỆ THỐNG NGƯỜI DÙNG......................................................12
1.6 YÊU CẦU CHỨC NĂNG............................................................13
1.6.1. Đối với người quảng trị................................................................13
1.6.2. Đối với người dùng......................................................................13
1.7 YÊU CẦU PHI CHỨC NĂNG...................................................13
1.8 PHẠM VI DỰ ÁN.........................................................................13
Chương II: PHÂN TÍCH THIẾT KẾ HỆ THỐNG...................................15
2.1 MÔ TẢ CHỨC NĂNG.................................................................15
2.2 TRANG NGƯỜI DÙNG..............................................................15
2.3 TRANG NGƯỜI QUẢN LÍ (ADMIN)....................................16
2.4 PHÂN TÍCH CHỨC NĂNG NGƯỜI DÙNG........................17
2.5 PHÂN TÍCH CHỨC NĂNG CỦA ADMIN............................18
2.6 SƠ ĐỒ TỔNG QUÁT USE CASE...........................................19
2.6.1 Use case quản lý nghiệp vụ............................................19
2.6.2 Use case quản lý đối tượng cơ bản..............................21
2.6.3 Use case quản lý đối tượng ngoài................................21
2.6.4 Use case phân rã chức năng quản lý giỏ hàng.......23
2.6.5 Class Diagram......................................................................24
4
Nhà hàng NihonFood là nhà hàng với phong cách Nhật Bản
có địa chỉ tại số ….. Nhà hàng có không gian rộng với tổng diện
tích sử dụng gần 600 m2 gồm 3 phòng VIP lớn phục vụ từ 10 đến
30 khách, nhà sàn với sức chứa 140 khách. Nhà Sàn với diện tích
280m2 được coi là nhà hàng mang phong cách Nhật Bản đẹp và
lớn nhất thành phố HCM , được đặt tại vị trí rất thuận lợi cho giao
thông nhưng vẫn tách biệt gần như với sự ồn ào vốn có của một
thành phố. Không gian nhà hàng, từ những chậu cây xanh được bố
trí như những điểm nhấn sinh động cho đến những luồng gió mát
được thổi từ nhiều hướng.
Không chỉ nổi tiếng những món sashimi , sushi trứ danh với
các nguyên liệu tươi ngon nhất được đánh bắt tại Việt Nam hoặc
vận chuyển trực tiếp từ chợ hải sản lừng danh Tsukiji và Osaka của
Nhật Bản, nhà hàng nhật bản Nihon còn có khu Yakitori &Beer
Kitchen, nơi các đầu bếp thực hiện món nướng yakitori với các
nguyên liệu cũng nổi bật không kém như bò Wagyu hay bò Angus
được nướng trên bếp than đỏ rực để mang lại những hương vị
tuyệt vời nhất. Tinh hoa ẩm thực Nhật Bản với mỗi món ăn là một
tác phẩm nghệ thuật cùng sự tận tâm của hơn 20 đầu bếp hàng
đầu đã làm nên hương vị Nhật Bản thuần khiết.
Asp.Net MVC phát triển trên mẫu thiết kế chuẩn MVC, cho
phép người sử dụng phát triển các ứng dụng phần mềm. MVC là
tên một mẫu phát triển ứng dụng, phương pháp này chia nhỏ một
ứng dụng thành ba thành phần để cài đặt, mỗi thành phần đóng
một vai trò khác nhau và ảnh hưởng lẫn nhau, đó là models, views,
và controllers.
Tách bạch các tác vụ của ứng dụng (logic nhập liệu, business
logic, và logic giao diện), dễ dàng kiểm thử và mặc định áp dụng
hướng phát triển TDD. Tất cả các tính năng chính của mô hình
MVC được cài đặt dựa trên interface và được kiểm thử bằng cách
sử dụng các đối tượng mocks, mock object là các đối tượng mô
phỏng các tính năng của những đối tượng thực sự trong ứng dụng.
Bạn có thể kiểm thử unit-test cho ứng dụng mà không cần chạy
controller trong tiến trình ASP.NET, và điều đó giúp unit test được
áp dụng nhanh chóng và tiện dụng. Bạn có thể sử dụng bất kỳ nền
tảng unit-testing nào tương thích với nền tảng .NET.
1.4.2 JQUERY
JQuery là thư viện được viết từ JavaScript, jQuery giúp xây
dựng các chức năng bằng Javascript dễ dàng, nhanh và giàu tính
năng hơn.
JQuery không phải là một ngôn ngữ lập trình riêng biệt mà
hoạt động liên kết với JavaScript. Với jQuery, bạn có thể làm được
nhiều việc hơn mà lại tốn ít công sức hơn. jQuery cung cấp các API
giúp việc duyệt tài liệu HTML, hoạt ảnh, xử lý sự kiện và thao tác
AJAX đơn giản hơn. JQuery hoạt động tốt trên nhiều loại trình duyệt
khác nhau.
1.4.3 NODEJS
NodeJS là một nền tảng được xây dựng trên V8 JavaScript
Engine – trình thông dịch thực thi mã JavaScript, giúp xây dựng các
ứng dụng web một cách đơn giản và dễ dàng mở rộng.
Phần Core bên dưới của Nodejs được viết hầu hết bằng C++
nên cho tốc độ xử lý và hiệu năng khá cao.
1.4.4 REACTJS
ReactJS được hiểu nôm na là một thư viện trong đó có chứa
nhiều JavaScript mã nguồn mở và cha đẻ của ReactJS đó chính là
một ông lớn với cái tên ai cũng biết đó chính là Facebook. Mục đích
của việc tạo ra ReactJS là để tạo ra những ứng dụng website hấp
dẫn với tốc độ nhanh và hiệu quả cao với những mã hóa tối thiểu.
Và mục đích chủ chốt của ReactJS đó chính là mỗi website khi đã
sử dụng ReactJS thì phải chạy thật mượt thật nhanh và có khả
năng mở rộng cao và đơn giản thực hiện.
1.4.5 API
API là viết tắt của Application Programming Interface –
phương thức trung gian kết nối các ứng dụng và thư viện khác
nhau. Nó cung cấp khả năng truy xuất đến một tập các hàm hay
dùng, từ đó có thể trao đổi dữ liệu giữa các ứng dụng.
10
1.4.6 SQL
– Hệ quản trị cơ sở dữ liệu SQL Server
SQL Server được cấu tạo bởi nhiều thành phần như Database
Engine, Reporting Services, Notification Services, Integration
Services, Full Text Search Service…. Các thành phần này khi phối
hợp với nhau tạo thành một giải pháp hoàn chỉnh giúp cho việc lưu
trữ và phân tích dữ liệu một cách dễ dàng.
Integration Services: là tập hợp các đối tượng lập trình và các
công cụ đồ họa cho việc sao chép, di chuyển và chuyển đổi dữ
11
liệu. Khi bạn làm việc trong một công ty lớn thì dữ liệu được lưu
trữ ở nhiều nơi khác nhau như được chứa trong: Oracle, SQL
Server, DB2, Microsoft Access… và bạn chắc chắn sẽ có nhu cầu di
chuyển dữ liệu giữa các server này. Ngoài ra, bạn còn muốn định
dạng dữ liệu trước khi lưu vào database. Chắc chắn Integration
Services sẽ giúp bạn giải quyết được công việc này dễ dàng.
Full Text Search Service: là một thành phần đặc biệt trong
việc truy vấn và đánh chỉ mục dữ liệu văn bản không cấu trúc được
lưu trữ trong các cơ sở dữ liệu SQL Server.
Entity Framework được phát hành lần đầu tiên vào năm
2008, nó là phương tiện tương tác chính giữa các ứng dụng .NET
và cơ sở dữ liệu quan hệ. Entity Framework là một ánh xạ quan hệ
đối tượng (ORM), một loại công cụ giúp đơn giản hóa ánh xạ giữa
12
các đối tượng trong phần mềm của bạn với các bảng và cột của cơ
sở dữ liệu quan hệ. Entity Framework có mã nguồn mở độc lập
với .NET Framework.
Entity Framework có thể tạo các câu lệnh truy cấn cần thiết
để đọc hoặc ghi dữ liệu trong cơ sở dữ liệu và thực thi chúng cho
bạn.
Entity Framework có lớp ánh xạ chi tiết hơn để bạn có thể tùy
chỉnh ánh xạ. Ví dụ, bằng cách ánh xạ một thực thể vào nhiều
bảng trong cơ sở dữ liệu hoặc thậm chí nhiều thực thể vào một
bảng.
Application (ứng dụng): Tầng chứa giao diện tương tác với
người dùng, có thể là ứng dụng web hoặc ứng dụng Windows
Forms. Tầng này thường sử dụng Repository pattern để làm việc
với cơ sở dữ liệu thông qua Entity Framework.
Object Services: Tầng chứa quá trình tương tác giữa ứng
dụng và database, hay nói cách khác nó là nơi chủ yếu để truy cập
dữ liệu từ database và trả ngược kết quả về giao diện. Object
13
Services cung cấp các tiện ích để truy vết các thay đổi và cập nhật
thay đổi trở lại ở database.
EntityClient Data Provider: Đây là tầng cung cấp các kết nối,
diễn dịch các truy vấn thực thể thành truy vấn nguồn dữ liệu, trả
về data reader để EF dùng chuyển dữ liệu thực thể thành các đối
tượng. Phần này kết nối ADO.NET Data Providers để gửi hoặc lấy
dữ liệu từ database.
Mô hình khái niệm (CSDL): Mô hình khái niệm chứa các lớp
mô hình và mối quan hệ giữa các lớp này. Nó độc lập với mô hình
quan hệ các bảng trong database.
14
– Mang đến trải nghiệm tuyệt vời về văn hóa sứ mặt trời
mọc cho những người chưa từng tiếp xúc.
1.8 PHẠM VI DỰ ÁN
16
Qua quá trình khảo sát theo những tiêu chí của các trang
web về lĩnh vực ẩm thực và ý kiến khách quan từ nhiều nguồn
xung quanh như bạn bè, anh chị, người khách hàng đã và đang sử
dụng các dịch vụ online mua hàng đặt biệt là những người đã từng
sử dụng dịch vụ từ đó chúng tôi đã thiết kế ra 2 giao diện chính đó
là giao diện người dùng và giao diện quản trị viên.
– Hiển thị các món ăn mới nhất, các món ăn hot hay được bán
chạy nhất.
– Hiển thị các món ăn được sắp xếp theo một tiêu chí cụ thể
giúp khách hàng dễ dàng tìm kiếm.
– Có menu chi tiết cụ thể và đầy đủ về thức ăn, đồ uống.
– Các món ăn được đặt hàng nhiều nhất sẽ hiện ở trang chủ
giúp người mua dễ dàng lựa chọn sản phẩm.
– Phân bố dàn trang logic, dễ theo dõi.
– Màu sắc trang nhã, sử dụng màu sắc trendy.
– Link trang thân thiện giúp người dùng dễ dàng tìm kiếm.
– Có các bài viết về nguồn gốc và câu chuyện của nó tạo sự
hứng thú, quan tâm cho người dùng.
– Phân loại thành nhiều chuyên mục loại sản phẩm khác
nhau.
17
– Nội dung có bố cục khoa học, đẹp mắt, thân thiện với
khách hàng, hiển thị đầy đủ chi tiết thông tin về các loại
sản phẩm.
– Sản phẩm liên quan đến sản phẩm đang xem.
– Thể hiện đầy đủ kích cỡ, số lượng một cách chi tiết.
– Nút đặt hàng cho mỗi sản phẩm.
– Có thể thêm sản phẩm, giảm sản phẩm và xóa sản phẩm.
– Có thể xem được chi tiết thông tin của cá nhân và cập
nhật thêm thông tin cho bản thân.
– Muốn thay đổi mật khẩu có thể thay đổi ngay khi đã đăng
nhập.
– Xem thông tin đơn hàng đã được xử lý.
– Đăng ký thành viên, để được giảm giá
– Đăng nhập để đặt món ăn.
– Tích hợp thanh toán trực tuyến từ nhiều hình thức khác
nhau như VN PAY, Momo…
2.3 TRANG NGƯỜI QUẢN LÍ (ADMIN)
Đăng nhập để quản trị tất cả nội dung trên website, người làm chủ
ứng dụng có quyền kiểm soát mọi hoạt động của hệ thống, nó đòi
hỏi sự chính xác các thao tác quản trị. Người này được cấp
username và password để đăng nhập hệ thống thực hiện chức
năng của mình như:
18
– Tạo đồ ăn, thức uống mới theo từng chuyên mục, loại đồ
ăn, thức uống.
– Sửa nội dung đồ ăn, thức uống, hoặc đồ ăn, thức uống
sang danh mục, thể loại tin khác.
– Cập nhật giá đồ ăn, thức uống và các thông tin khác.
– Chèn hình ảnh vào nội dung bài viết, chèn liên kết.
– Tự động hoàn thành liên kết tiêu đề seo phục vụ cho seo
website.
– Xem danh sách tài khoản thành viên và quản trị viên.
– Tạo tài khoản quản trị mới toàn quyền quản trị thêm, sửa,
xóa.
– Khóa tài khoản của khách hàng hoặc quản trị viên.
– Thống kê doanh thu bán hàng trong tuần trong tháng, tính
lợi nhuận thu được.
2.4 PHÂN TÍCH CHỨC NĂNG NGƯỜI DÙNG
1 Đăng ký tài - Khách hàng cần đăng kí tài khoản thì mới
khoản có thể mua hàng và đặt hàng.
4 Thanh toán - Thanh toán trực tuyến thông qua giao diện
trực tuyến thân VN PAY hoặc Momo.
20
21
– Khách hàng có thể tương tác với các chức năng bao gồm:
Đặt hàng, và khi nhận hàng sẽ thanh toán.
– Admin sẽ kiểm tra thông tin khi khách hàng đặt hàng, lập
phiếu giao hàng, lập hóa đơn.
22
– Khách hàng có thể lên website của nhà hàng để tìm món
ăn, xem thông tin món ăn, quản lý giỏ hàng của mình.
– Admin có thể quản lý món ăn, cập nhật món ăn, loại món
ăn.
2.6.3 Use case quản lý đối tượng ngoài
23
24
– Khách hàng có thể quản lý thông tin giỏ hàng của mình, có các
tác vụ như xem giỏ hàng, thay đổi số lượng của sản phẩm mình
đã thêm vào giỏ, xóa sản phẩm.
– Đăng nhập để dễ dàng trao đổi thông tin với admin hơn (khách
hàng không cần đăng nhập vẫn có thể quản lý giỏ hàng của
mình).
25
26
Hình 3.1 Cơ sở dữ liệu của website kinh doanh nhà hàng ẩm thực
nhật bản NIHONFOOD
27
28
Bảng món ăn
Tên Thuộc Tính Diễn Giải Kiểu Dữ Ràng
Liệu Buộc
MAMONAN Mã món ăn int Khóa
Chính
MALOAI Tên thuộc nvarchar(5 Khóa phụ
tính 0)
TENMONAN Tên món ăn nvarchar(1
00)
GIA Giá món ăn varchar(10
)
ANHMONANH Ảnh món varchar(50
ăn )
MOTA Mô tả varchar(50
)
NGAYCAPNHAT Ngày cập DATETIME
nhật
món Chính
TENLM Tên loại nvarchar(3
món 0)
Bảng Admin
Tên Thuộc Diễn Giải Kiểu Dữ Ràng
Tính Liệu Buộc
USERADMIN Tài khoản varchar(50 Khóa
admin ) Chính
PASSADMIN Password varchar(50
admin )
HOTENADMI Họ tên admin nvarchar(1
N 00)
30
31
32
– Với giao diện đơn giản nhưng bắt mắt chúng tôi mang đến
cho khách hàng sự dễ chịu, thư giãn của ẩm thực Nhật Bản.
– Khách hàng có thể dễ dàng tiếp cận với các món ăn được
hiển thị ngay trên trang chủ và được cập nhật liên tục dựa
vào ngày ra mắt món ăn.
4.1.3 Giao diện Menu
33
– Khi khách hàng bấm vào trang menu sẽ hiển thị những món
ăn khác nhau dựa vào loại món ăn.
– Chức năng này sẽ giúp người dùng tìm kiếm món ăn theo loại
món ăn.
– Khi khách hàng bấm vào loại món ăn sẽ hiển thị đúng loại
món ăn đó ở trang menu.
34
– Nếu thông tin đăng nhập trùng với dữ liệu trong database
thì đăng nhập thành công và chuyển về trang chủ.
– Nếu đăng nhập thành công sẽ chuyển qua trang chủ.
35
– Khi click vào sản phẩm bất kì ở menu hoặc trang chủ sẽ đi tới
chi tiết sản phẩm của chính sản phẩm đó. Phía dưới sẽ có các
món ăn cùng loại.
36
37
H
ình 4.12 Giao diện giỏ hàng khi trống
38
– Khi phân trang sẽ giúp khách hàng không phải kéo trang
xuống nhiều hơn.
39
- Có thể xem các tin tức về nhà hàng ở trong bảng này.
40
41
42
43
44
- Khi khách hàng thanh toán sẽ in những thông tin khách hàng
như họ tên, địa chỉ, sdt,...
45
46
47
- Muốn vào form quản lý bắt buộc admin phải đăng nhập vì an
toàn bảo mật.
48
- Có thể chỉnh sửa, xem chi tiết, xóa các món ăn ở form này.
49
– Các thông tin như món ăn, loại món, giá món ăn, mô tả,.. sẽ
được hiển thị để admin có thể dễ dàng xem. Admin muốn
sửa thông tin thì bấm vào điều chỉnh.
4.2.4 Chức năng sửa món ăn
– Khi Admin muốn chỉnh sửa thông tin món ăn sẽ hiển thị
như trên.
– Có thể chỉnh loại món, tên món, giá món ăn,..mô tả.
– Ảnh món ăn sau khi cập nhật sẽ xuống cơ sở dữ liệu.
– Bấm lưu thông tin để tất cả thông tin sẽ cập nhật xuống
cơ sở dữ liệu.
50
52
53
54
55
[2] https://www.w3schools.com/angular/default.asp
[3] https://stackoverflow.com/search?q=learning+php
[4] https://Myclass.vn
[5] http://www.tutorialsteacher.com/mvc/asp.net-mvc-tutorials
[6] https://www.w3schools.com/bootstrap4/default.asp
[7] http://thayphet.net/product-cat/176-lap-trinh-website-asp.net-
mvc-5.html
[9] Slide bài giảng và bài tập thực hành lập trình web của thầy
Dương Thành Phết.
[10] Tài liệu giáo trình + bài tập thực hành Cơ sở dữ liệu của thầy
Cao Tùng Anh.
[11] Tài liệu tham khảo tập hợp từ nhiều đồ án và nhiều trang
website.
56