TRƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
XÂY DỰNG ỨNG DỤNG QUẢN LÝ DỊCH VỤ CANGTIN
TRƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG HÀ NỘI
TRÊN HỆ ĐIỀU HÀNH ANDROID
HÀ NỘI – 2017
TRƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG HÀ NỘI
KHOA CÔNG NGHỆ THÔNG TIN
PHẠM THỊ BÍCH HẠ
XÂY DỰNG ỨNG DỤNG QUẢN LÝ DỊCH VỤ CANGTIN
TRƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG HÀ NỘI
TRÊN HỆ ĐIỀU HÀNH ANDROID
Chuyên ngành
Mã ngành
: Công nghệ thông tin
: D480201
NGƯỜI HƯỚNG DẪN: ThS. Đặng Thị Khánh Linh
HÀ NỘI – 2017
LỜI CẢM ƠN
Trong cuộc sống không có sự thành công nào mà không gắn liền với
những sự giúp đỡ mọi người dù ít hay nhiều, dù trực tiếp hay gián tiếp. Trong
suốt thời gian học tập nhất là trong quá trình làm đồ án, em đã nhận được rất
nhiều sự quan tâm giúp đỡ nhiệt tình của các thầy cô, bạn bè và gia đình.
Đầu tiên em xin gửi lời cảm ơn sâu sắc đến Ths. Đặng Thị Khánh Linh,
cô đã trực tiếp hướng dẫn và giúp đỡ em rất nhiều trong thời gian em làm
khóa luận này.
Em cũng xin gửi lời cảm ơn các thầy cô giáo trong Khoa đã nhiệt tình
giúp đỡ em trong quá trình học tập tại trường.
Cuối cùng, em xin gửi lời cảm ơn chân thành tới gia đình và bạn bè đã
luôn giúp đỡ, động viên và tạo điều kiện tốt nhất cho em trong suốt quá trình
học tập cũng như trong cuộc sống.
Vì năng lực có hạn nên bài báo cáo của em còn nhiều hạn chế và không
thể tránh khỏi những thiếu sót, mong thầy cô và các bạn có những ý kiến đóng
góp để em có thể hoàn thiện và phát triển đề tài hơn.
Em xin chân thành cảm ơn!
LỜI CAM ĐOAN
Em xin cam đoan đây là đề tài nghiên cứu của riêng em và được sự
hướng dẫn khoa học của Ths.Đặng Thị Khánh Linh. Các nội dung nghiên
cứu, kết quả trong đề tài này là trung thực và chưa công bố dưới bất kỳ hình
thức nào trước đây. Những số liệu trong các bảng biểu phục vụ cho việc phân
tích, nhận xét, đánh giá được chính tác giả thu thập từ các nguồn khác nhau có
ghi rõ trong phần tài liệu tham khảo.
Ngoài ra, trong đồ án còn sử dụng một số nhận xét, đánh giá cũng như số
liệu của các tác giả khác, cơ quan tổ chức khác đều có trích dẫn. Nếu phát
hiện có bất kỳ sự gian lận nào em xin hoàn toàn chịu trách nhiệm về nội
dung đồ án của mình. Trường đại học Tài nguyên và Môi trường cùng Khoa
Công nghệ thông tin không liên quan đến những vi phạm tác quyền, bản
quyền do em gây ra trong quá trình thực hiện (nếu có).
Em xin chân thành cảm ơn!
Hà Nội, tháng 6, năm 2017
Sinh viên thực hiện
Phạm Thị Bích Hạ
MỤC LỤC
LỜI CẢM ƠN
LỜI CAM ĐOAN
DANH MỤC CÁC BẢNG
DANH MỤC CÁC HÌNH
DANH MỤC CÁC KÝ HIỆU, CÁC CHỮ VIẾT TẮT
MỞ ĐẦU ................................................................................................................... 1
CHƯƠNG 1: CƠ SỞ LÝ THUYẾT ....................................................................... 4
1.1. Tổng quan về hệ điều hành Android .................................................................... 4
1.2. Kiến trúc Android .............................................................................................. 4
1.2.1. Tầng ứng dụng ................................................................................................. 4
1.2.2. Application framework .................................................................................... 5
1.2.3. Library .............................................................................................................. 5
1.2.4. Android Runtime .............................................................................................. 6
1.2.5. Linux kernel ..................................................................................................... 6
1.3. Các thành phần trong một ứng dụng Android .................................................... 6
1.4. Hệ quản trị cơ sở dữ liệu Mysql .......................................................................... 8
1.4.1. Mysql là gì? ...................................................................................................... 8
1.4.2 Tại sao lại sử dụng Mysql? ............................................................................... 9
1.4.3 Một số câu lệnh sử dụng trong Mysql ............................................................. 10
1.5. Ngôn ngữ lập trình PHP .................................................................................... 13
1.5.1. Định nghĩa PHP .............................................................................................. 13
1.5.2. Cú pháp .......................................................................................................... 13
1.5.3. Kiểu dữ liệu .................................................................................................... 14
CHƯƠNG 2: PHÂN TÍCH THIẾT KẾ HỆ THỐNG ........................................ 15
2.1. Mô tả bài toán .................................................................................................... 15
2.2. Biểu đồ usecase ................................................................................................. 15
2.3. Mô tả các chức năng chính của hệ thống .......................................................... 16
2.4. Biểu đồ phân rã chức năng ................................................................................ 17
2.4.1. Biểu đồ phân rã chức năng quản lý thực đơn ................................................. 17
2.4.2. Biểu đồ phân rã chức năng quản lý danh mục thực đơn ................................ 18
2.4.3. Biểu đồ phân rã chức năng quản lý tài khoản ................................................ 18
2.4.4. Biểu đồ phân rã chức năng quản lý vị trí căng tin ......................................... 19
2.4.5. Biểu đồ phân rã chức năng xem thông tin ..................................................... 19
2.4.6. Biểu đồ phân rã chức năng gọi món ............................................................... 20
2.4.7. Biểu đồ phân rã chức năng tìm kiếm ............................................................. 20
2.4.8. Biểu đồ use case phân rã chức năng thống kê ................................................ 21
2.5. Biểu đồ hoạt động ............................................................................................. 21
2.5.1. Biểu đồ hoạt động chức năng đăng nhập ....................................................... 21
2.5.2. Biểu đồ hoạt động chức năng đăng ký tài khoản ........................................... 22
2.5.3. Biểu đồ hoạt động chức năng đổi mật khẩu người dùng ............................... 23
2.5.4. Biểu đồ hoạt động chức năng quản lý thực đơn ............................................. 24
2.5.5. Biểu đồ hoạt động chức năng quản lý danh mục thực đơn ............................ 27
2.5.6. Biểu đồ hoạt động chức năng quản lý tài khoản ............................................ 30
2.5.7. Biểu đồ hoạt động chức năng gọi món ........................................................... 33
2.5.8. Biểu đồ hoạt động chức năng tìm kiếm ......................................................... 34
2.5.9. Biểu đồ hoạt động chức năng xem thông tin ................................................. 36
2.5.10. Biểu đồ hoạt động chức năng thống kê ........................................................ 39
2.5.11. Biểu đồ hoạt động chức năng góp ý kiến ..................................................... 40
2.5.12. Biểu đồ hoạt động chức năng hủy gọi thực đơn .......................................... 40
2.5.13. Biểu đồ hoạt động chức năng sửa vị trí căng tin .......................................... 41
2.6. Biểu đồ trạng thái .............................................................................................. 41
2.6.1. Biểu đồ trạng thái chức năng quản lý thực đơn ............................................. 41
2.6.2. Biểu đồ trạng thái chức năng quản lý danh mục thực đơn ............................. 43
2.6.3. Biểu đồ trạng thái chức năng quản lý tài khoản ............................................. 44
2.7. Biểu đồ tuần tự .................................................................................................. 46
2.7.1. Biểu đồ tuần tự chức năng đăng nhập ............................................................ 46
2.7.2. Biểu đồ tuần tự chức năng đăng ký tài khoản ................................................ 47
2.7.3. Biểu đồ tuần tự chức năng đổi mật khẩu ........................................................ 48
2.7.4. Biểu đồ tuần tự chức năng quản lý thực đơn ................................................. 49
2.7.5. Biểu đồ tuần tự chức năng quản lý danh mục thực đơn ................................. 52
2.7.6. Biểu đồ tuần tự chức năng quản lý tài khoản ................................................. 55
2.7.7. Biểu đồ tuần tự chức năng tìm kiếm thông tin ............................................... 58
2.7.8. Biểu đồ tuần tự chức năng thống kê ............................................................... 61
2.7.9. Biểu đồ tuần tự chức năng góp ý kiến thực đơn ............................................ 62
2.7.10. Biểu đồ tuần tự chức năng xem thông tin .................................................... 63
2.7.11. Biểu đồ tuần tự chức năng gọi thực đơn ...................................................... 66
2.8.Thiết kế hệ thống ................................................................................................ 66
2.8.1. Bảng hóa đơn: bills ........................................................................................ 67
2.8.2. Bảng danh mục món ăn: categories ............................................................... 67
2.8.3. Bảng bình luận: comments ............................................................................. 67
2.8.4. Bảng món ăn: foods ....................................................................................... 68
2.8.5. Bảng địa điểm: locations ................................................................................ 68
2.8.6. Bảng các món đã gọi trong hóa đơn: ordered_dishes .................................... 68
2.8.7. Bảng cài đặt: settings ..................................................................................... 69
2.8.8. Bảng người dùng: users .................................................................................. 69
2.9.9. Mô hình quan hệ ............................................................................................. 70
2.9. Biểu đồ lớp ........................................................................................................ 70
CHƯƠNG 3: XÂY DỰNG PHẦN MỀM ............................................................. 71
3.1. Thiết kế giao diện người dùng .......................................................................... 71
3.2. Web người quản trị ........................................................................................... 82
KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN CỦA ĐỀ TÀI .................................... 90
DANH MỤC TÀI LIỆU THAM KHẢO .............................................................. 92
DANH MỤC BẢNG
Bảng 2.1: Các Actor của bài toán ............................................................................. 15
Bảng 2.2: Bảng bills ................................................................................................. 67
Bảng 2.3: Bảng categories ........................................................................................ 67
Bảng 2.4: Bảng comments ....................................................................................... 67
Bảng 2.5: Bảng foods ............................................................................................... 68
Bảng 2.6: Bảng locations: ........................................................................................ 68
Bảng 2.7: Bảng ordered_dishes ................................................................................ 68
Bảng 2.8: Bảng settings ............................................................................................ 69
Bảng 2.9: Bảng users ................................................................................................ 69
DANH MỤC HÌNH
Hình 1.1: Cấu trúc stack hệ thống Android ................................................................4
Hình 1.2: Các thành phần cấu trúc Android ................................................................6
Hình 1.3: Ví dụ về mã PHP đã được làm nổi bật bằng màu nhúng trong HTML ....14
Hình 2.1: Biểu đồ usecase Tổng quát hệ thống quản lý căng tin Hunre ...................16
Hình 2.2: Biểu đồ usecase phân rã chức năng quản lý thực đơn ..............................17
Hình 2.3: Biểu đồ usecase phân rã chức năng quản lý danh mục thực đơn..............18
Hình 2.4: Biểu đồ usecase phân rã chức năng quản lý tài khoản của admin ............18
Hình 2.5: Biểu đồ usecase phân rã chức năng quản lý căng tin ................................19
Hình 2.6: Biểu đồ usecase phân rã chức năng xem thông tin của admin..................19
Hình 2.7: Biểu đồ usecase phân rã chức năng xem thông tin của người dùng .........19
Hình 2.8: Biểu đồ usecase phân rã chức năng gọi món ............................................20
Hình 2.9: Biểu đồ usecase phân rã chức năng tìm kiếm của admin .........................20
Hình 2.10: Biểu đồ usecase phân rã chức năng tìm kiếm của người dùng ...............20
Hình 2.11: Biểu đồ usecase phân rã chức năng thống kê .........................................21
Hình 2.12: Biểu đồ hoạt động chức năng đăng nhập ................................................21
Hình 2.13: Biểu đồ hoạt động chức năng đăng ký tài khoản ....................................22
Hình 2.14: Biểu đồ hoạt động chức năng đổi mật khẩu ............................................23
Hình 2.15: Biểu đồ hoạt động chức năng thêm thực đơn .........................................24
Hình 2.16: Biểu đồ hoạt động chức năng sửa thực đơn ............................................25
Hình 2.17: Biểu đồ hoạt động chức xóa thực đơn ....................................................26
Hình 2.18: Biểu đồ hoạt động chức năng thêm danh mục thực đơn .........................27
Hình 2.19: Biểu đồ hoạt động chức năng sửa danh mục thực đơn ...........................28
Hình 2.20: Biểu đồ hoạt động chức năng xóa danh mục thực đơn ...........................29
Hình 2.21: Biểu đồ hoạt động chức năng thêm tài khoản .........................................30
Hình 2.22: Biểu đồ hoạt động chức năng sửa tài khoản ...........................................31
Hình 2.23: Biểu đồ hoạt động chức năng xóa tài khoản ...........................................32
Hình 2.24: Biểu đồ hoạt động chức năng gọi món ...................................................33
Hình 2.25: Biểu đồ hoạt động chức năng tìm kiếm thực đơn ...................................34
Hình 2.26: Biểu đồ hoạt động chức năng tìm kiếm danh mục thực đơn ..................35
Hình 2.27: Biểu đồ hoạt động chức năng tìm kiếm tài khoản ..................................35
Hình 2.28: Biểu đồ hoạt động chức năng xem thông tin thực đơn ...........................36
Hình 2.29: Biểu đồ hoạt động chức năng xem thông tin danh mục thực đơn ..........36
Hình 2.30: Biểu đồ hoạt động chức năng xem thông tin tài khoản...........................37
Hình 2.31: Biểu đồ hoạt động chức năng xem thông tin hóa đơn ............................37
Hình 2.32: Biểu đồ hoạt động chức năng xem lịch sử gọi món ................................38
Hình 2.33: Biểu đồ hoạt động chức năng xem vị trí căng tin ...................................38
Hình 2.34: Biểu đồ hoạt động chức năng xem thông tin ứng dụng ..........................39
Hình 2.35: Biểu đồ hoạt động chức năng thống kê ...................................................39
Hình 2.36: Biểu đồ hoạt động chức năng góp ý kiến ................................................40
Hình 2.37: Biểu đồ hoạt động chức năng hủy gọi thực đơn .....................................40
Hình 2.38: Biểu đồ hoạt động chức năng sửa vị trí căng tin .....................................41
Hình 2.39: Biểu đồ tuần tự chức năng thêm thực đơn ..............................................41
Hình 2.40: Biểu đồ tuần tự chức năng sửa thực đơn .................................................42
Hình 2.41: Biểu đồ tuần tự chức năng xóa thực đơn ................................................42
Hình 2.42: Biểu đồ tuần tự chức năng thêm danh mục thực đơn .............................43
Hình 2.43: Biểu đồ tuần tự chức năng sửa danh mục thực đơn ................................43
Hình 2.44: Biểu đồ tuần tự chức năng xóa danh mục thực đơn ................................44
Hình 2.45: Biểu đồ tuần tự chức năng thêm tài khoản..............................................44
Hình 2.46: Biểu đồ tuần tự chức năng thêm tài khoản..............................................45
Hình 2.47: Biểu đồ tuần tự chức năng xóa tài khoản ................................................45
Hình 2.48 Biểu đồ tuần tự chức năng đăng nhập ......................................................46
Hình 2.49: Biểu đồ tuần tự chức năng đăng ký tài khoản .........................................47
Hình 2.50: Biểu đồ tuần tự chức năng đổi mật khẩu ................................................48
Hình 2.51: Biểu đồ tuần tự chức năng thêm thực đơn ..............................................49
Hình 2.52 Biểu đồ tuần tự chức năng sửa thực đơn ..................................................50
Hình 2.53: Biểu đồ tuần tự chức năng xóa thực đơn ................................................51
Hình 2.54: Biểu đồ tuần tự chức năng thêm danh mục thực đơn .............................52
Hình 2.55: Biểu đồ tuần tự chức năng sửa danh mục thực đơn ................................53
Hình 2.56: Biểu đồ tuần tự chức năng xóa danh mục thực đơn ................................54
Hình 2.57: Biểu đồ tuần tự chức năng thêm tài khoản..............................................55
Hình 2.58: Biểu đồ tuần tự chức năng sửa tài khoản ................................................56
Hình 2.59: Biểu đồ tuần tự chức năng xóa tài khoản ................................................57
Hình 2.60: Biểu đồ tuần tự chức năng tìm kiếm thực đơn ........................................58
Hình 2.61: Biểu đồ tuần tự chức năng tìm kiếm danh mục thực đơn .......................59
Hình 2.62: Biểu đồ tuần tự chức năng tìm kiếm tài khoản .......................................60
Hình 2.63: Biểu đồ tuần tự chức năng thống kê .......................................................61
Hình 2.64: Biểu đồ tuần tự chức năng góp ý kiến thực đơn .....................................62
Hình 2.65: Biểu đồ tuần tự chức năng xem thông tin thực đơn ................................63
Hình 2.66: Biểu đồ tuần tự chức năng xem thông tin danh mục thực đơn ...............64
Hình 2.67: Biểu đồ tuần tự chức năng xem thông tin tài khoản ...............................65
Hình 2.68: Biểu đồ tuần tự chức năng gọi thực đơn .................................................66
Hình 2.69: Mô hình quan hệ trong Sql ......................................................................70
Hình 2.70: Biểu đồ lớp ..............................................................................................70
Hình 3.1: Form login .................................................................................................71
Hình 3.2: Form đăng ký ............................................................................................72
Hình 3.3: Form giao diện chính ................................................................................73
Hình 3.4: Form danh sách đồ uống ...........................................................................74
Hình 3.5: Form thông tin thực đơn ...........................................................................74
Hình 3.6: Form thanh toán tại vị trí căng tin .............................................................75
Hình 3.7: Form thanh toán shipper tại vị trí cụ thể ...................................................76
Hình 3.8: Form vị trí người đặt thực đơn ..................................................................77
Hình 3.9: Form menu ................................................................................................78
Hình 3.10: Form các món đã gọi ...............................................................................78
Hình 3.11: Form lịch sử hóa đơn ..............................................................................79
Hình 3.12: Form chi tiết hóa đơn ..............................................................................79
Hình 3.13: Form tìm kiếm .........................................................................................80
Hình 3.14: Form xem thông tin tài khoản .................................................................81
Hình 3.15: Form sửa thông tin tài khoản ..................................................................81
Hình 3.16: Form thông tin căng tin ...........................................................................82
Hình 3.17: Form đăng nhập admin ...........................................................................82
Hình 3.18: Form giao diện người quản trị ................................................................83
Hình 3.19: Form thêm thực đơn mới ........................................................................84
Hình 3.20: code thêm thực đơn mới..........................................................................85
Hình 3.21: Form sửa thực đơn ..................................................................................85
Hình 3.22: Code sửa thực đơn ..................................................................................86
Hình 3.23: Form xác nhận hóa đơn ...........................................................................87
Hình 3.24: Form thống kê .........................................................................................88
Hình 3.25: Form quản lý vị trí căng tin .....................................................................89