BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC CÔNG NGHỆ TP. HCM
BÁO CÁO ĐỒ ÁN MƠN HỌC
Lập trình trên thiết bị di động
Ngành: CƠNG NGHỆ THƠNG TIN
Chun ngành: Cơng Nghệ Phần Mềm
Giảng viên hướng dẫn : Nguyễn Chí Tồn
Sinh viên thực hiện
TP. Hồ Chí Minh, 2021
1
:
MỤC LỤC
GIỚI THIỆU................................................................................................4
GIỚI THIỆU THÀNH VIÊN........................................................................5
ĐỐI TƯỢNG SỬ DỤNG VÀ CHỨC NĂNG...............................................6
1- App for Admin (Android)..................................................................6
2- App for User (Android)......................................................................6
THIẾT KẾ HỆ THỐNG...............................................................................7
SƠ ĐỒ PHÂN CẤP CHỨC NĂNG..............................................................8
LUỒNG VẬN HÀNH CỦA ỨNG DỤNG....................................................9
THIẾT KẾ DỮ LIỆU.................................................................................10
GIAO DIỆN CHI TIẾT CỦA ỨNG DỤNG...............................................14
CẤU TRÚC DATA FIREBASE..................................................................15
GIAO DIỆN CHI TIẾT CỦA ỨNG DỤNG...............................................18
KIỂM TRA HOẠT ĐỘNG..........................................................................43
ĐÓNG GÓI VÀ TRIỂN KHAI...................................................................46
Lên kế hoạch triển khai..........................................................................46
Khảo sát và xây dựng hệ thống..............................................................46
Cài đặt phần mềm...................................................................................46
Đào tạo sử dụng......................................................................................46
KẾT LUẬN.................................................................................................47
Điểm mạnh:............................................................................................47
Điểm yếu:...............................................................................................47
Hướng phát triển:....................................................................................47
LỜI CẢM ƠN.............................................................................................48
2
3
GIỚI THIỆU
- Đặt món từ xa là một hình thức đã được áp dụng phổ biến tại cái nhà hàng
lớn tại các quốc gia phát triển như Mỹ, Nhật Bản, Hàn Quốc, Singapore,...
- Ưu điểm của việc này chính là giảm thiểu tối đa việc ghi nhớ đơn đặt hàng
trong quá trình vận hành một nhà hàng, kết hợp với công nghệ mới sẽ mang
lại cho thực khách một trải nghiệm hiện đại, linh hoạt hơn, nó cịn giúp cho
nhà hàng vận hành được chính xác hơn. Trên hết, trong tình hình dịch
Covid- 19 đang hồnh hành như hiện nay, việc đặt hàng trực tuyến giúp mọi
người tránh được tình trạng tụ tập nơi đông người và lây lan dịch bệnh trong
cộng đồng.
- Với hiện trạng sự phát triển của các nhà hàng ngày càng nhiều và quy mô
ngày lớn theo thời gian và sự phát triển nhanh chóng của cơng nghệ điện thoại
thơng minh, nên nhóm họp và đưa ra ý tưởng về một ứng dụng đặt món ăn từ
xa, hoạt động trên thiết bị di động cá nhân để có thể giúp các nhà hàng linh
hoạt hơn trong k
3
4
hâu vận hành cho doanh nghiệp của mình.
4
5
ĐỐI TƯỢNG SỬ DỤNG VÀ CHỨC NĂNG
1- App for Admin (Android)
Đăng nhập với phân quyền Admin (Số điện thoại cá nhân, mật khẩu)
được tạo sẵn trên hệ thống dữ liệu Firebase
Chỉnh sửa thông tin Menu
Nhận thông báo đơn hàng từ User (Push notification)
Xem thông tin các đơn đặt hàng từ User
Thay đổi trạng thái đơn đặt hàng (Đã đặt hàng) hoặc (Đang gửi thức
ăn) hoặc (Đã gửi thức ăn)
2- App for User (Android)
Đăng ký và đăng nhập bằng số điện thoại cá nhân
Nhận OTP xác nhận tài khoản đăng nhập bằng số điện thoại đã đăng ký
Xem thông tin menu
Chức năng giỏ hàng cho phép người dùng chọn món ăn từ Menu và
thêm vào giỏ hàng
Có chức năng thay đổi hoặc xố đơn hàng khi khách muốn thay đổi
món ăn, thêm món ăn hoặc khi đặt nhầm món (trong giỏ hàng)
Thêm địa chỉ giao hàng
Xem lại trạng thái đơn hàng
Lấy lại mật khẩu và thông tin User
Đăng xuất
6
THIẾT KẾ HỆ THỐNG
Mơ hình hệ thống
u cầu phần
cứng
Admin:
Smarphone chạy hệ điều hành Android, kết nối internet
Cài đặt phiên bản mới nhất của ứng dụng
Máy tính có trình duyệt được kết nối internet
User:
- Smarphone chạy hệ điều hành Android, kết nối internet
- Cài đặt phiên bản mới nhất của ứng dụng
7
SƠ ĐỒ PHÂN CẤP CHỨC NĂNG
App User
App Admin
8
LUỒNG VẬN HÀNH CỦA ỨNG DỤNG
1. Luồng của App Admin
Admin sẽ được đăng ký 1 tài khoản Admin trên hệ thống Firebase với số điện
thoại cá nhân và mật khẩu đi kèm.
Admin đăng nhập vào App Admin bằng thơng tin đã được tạo trước đó.
Sau khi đăng nhập thành công sẽ hiện lên trang chủ.
Trang chủ của App Admin sẽ hiển thị danh mục các món ăn theo loại.
Khi nhận Notification
Khi khách hàng đặt món sẽ có thơng báo cho app Admin về đơn hàng
mới
2. Luồng của App User
Người dùng sẽ chủ động đăng ký và đăng nhập bằng số điện thoại và mật
khẩu cá nhân.
Sau khi đăng nhập vào hệ sẽ hiện lên Menu chính gồm các danh mục món ăn
Người dùng có thể chọn vào từng danh mục để xem các món ăn cụ thể.
Sau khi duyệt menu xong, lựa chọn những món u thích và cho vào giỏ
hàng, chọn số lượng món ăn theo nhu cầu.
Người dùng nhấn nút “Đặt hàng”, ứng dụng sẽ tạo một đơn hàng tương
ứng với 1 trong 3 trạng thái sau: “Đã đặt hàng – Đã gửi thức ăn – Đang
gửi thức ”.
Người dùng có thể sửa/ xố đơn hàng của mình khi muốn đặt thêm hoặc
đặt nhầm trong giỏ hàng.
Người dùng sẽ được thông báo về trạng thái đơn hàng của mình khi
phía Admin thay đổi tình trạng đơn hàng.
Luồng chạy để cập nhật mật khẩu
o Tại màn hình đăng nhập người dùng chọn Quên mật khẩu
o Điền số điện thoại đăng kí trên hệ thống
o Sau đó được nhận OTP về số điện thoại và xác nhập mã OTP
o Cuồi cùng nhập thông tin mới và cập nhật thông tin
9
THIẾT KẾ DỮ LIỆU
Mơ hình cơng nghệ ứng dụng
Server
Firebase
Client
Android
Database
SQL, Firebase
Mơ hình quan hệ thực thể (ERD)
10
Admin
Tên cột
Ý nghĩa
Kiểu dữ liệu
Ghi chú
phone
Số điện thoại
ObjectId
PRIMARY KEY
name
Tên Admin
String
FOREIGN KEY
Password
Mật khẩu
String
required
IsStaff
“true” = admin
“false” = user
Booolean
User
Tên cột
Ý nghĩa
Kiểu dữ liệu
Ghi chú
userPhone
Số điện thoại
ObjectId
PRIMARY KEY
name
Tên Admin
String
FOREIGN KEY
Password
Số điện thoại
Number
required
IsStaff
“true” = admin
“false” = user
Boolean
Category
Tên cột
menuId
name
Ý nghĩa
ID danh mục
món ăn
Tên sản phẩm
Kiểu dữ liệu
Ghi chú
ObjectId
PRIMARY KEY
String
FOREIGN KEY
11
image
Hình ảnh
String
Default: null
Rating
Tên cột
Ý nghĩa
Kiểu dữ liệu
Ghi chú
userPhone
Số điện thoại
Number
PRIMARY KEY
foodID
ID món ăn
ObjectId
FOREIGN KEY
String
Default: 0
String
Default: “”
rateValue
comment
Mức độ đánh
giá
Bình luận
Request
Tên cột
Ý nghĩa
_id
userPhone
Số điện thoại
người dùng
Kiểu dữ liệu
Ghi chú
ObjectId
PRIMARY KEY
Number
FOREIGN KEY
userName
Tên người dùng
String
FOREIGN KEY
address
Địa chỉ
String
Default: “”
total
Tổng giá
Number
foods
Các món ăn
String
status
Tình trạng đơn
hàng
String
Default: true
12
Foods
Tên cột
Ý nghĩa
_id
menuId
ID danh mục
món ăn
Kiểu dữ liệu
Ghi chú
ObjectId
PRIMARY KEY
String
FOREIGN KEY
name
Tên món ăn
String
FOREIGN KEY
image
Hình ảnh
String
Default: “”
description
Mơ tả
String
Default: “”
Price
Giá
Number
Default: 0
discount
Khuyến mãi
Number
Default: 0
13
GIAO DIỆN CHI TIẾT CỦA ỨNG DỤNG
Sơ đồ tổ chức giao diện
App User
App Admin
14
CẤU TRÚC DATA FIREBASE
15
17
16
18
GIAO DIỆN CHI TIẾT CỦA ỨNG DỤNG
Giao diện App User
Màn hình chào ứng dụng
18
Màn hình Đăng ký/ Đăng nhập
19
Màn hình Đăng ký OTP
20
Màn hình đăng ký
21
22
Màn hình Đăng nhập
22
23
23
Màn hình Chính
24
Màn hình Thực đơn chi tiết
25
Màn hình tìm kiếm
26