Ý nghĩa của phầnmềm này giúp dễ dàng quản lý thông tin nhân viên, thông tin món ăn, lập hoá đơn vàviệc đăng ký lịch làm.Với chủ đề “ Website quản lý nhà hàng lập hoá đơn, đăng ký lịch là
Trang 1BỘ TÀI NGUYÊN VÀ MÔI TRƯỜNG
TRƯỜNG ĐẠI HỌC TÀI NGUYÊN VÀ MÔI TRƯỜNG
TP.HCM KHOA: HỆ THỐNG THÔNG TIN VÀ VIỄN THÁM
ĐỒ ÁN MÔN HỌC CÔNG NGHỆ PHẦN MỀM QUẢN LÝ NHÀ HÀNG
(Thanh Toán, Đăng Ký Lịch Làm Part-time)
TP Hồ Chí Minh, tháng 11 năm 2017
Trang 2Để góp phần nâng cao hiệu quả của việc quản lý nhà hàng Ý nghĩa của phầnmềm này giúp dễ dàng quản lý thông tin nhân viên, thông tin món ăn, lập hoá đơn vàviệc đăng ký lịch làm.
Với chủ đề “ Website quản lý nhà hàng (lập hoá đơn, đăng ký lịch làm) nhómchúng em chỉ thực hiện dưới dạng nghiên cứu và xây dựng các chức năng dựa vào việctìm hiểu thực tế và những kiến thức được học trên lớp, Nhưng với những nghiên cứudưới đây sẽ là nền tảng để phát triển sâu rộng hơn cho những đồ án môn học sau này
Do là lần đầu tiên chúng em tự xây dựng và thiết kế phần mềm Kèm với những
sự hạn chế ở khả năng cũng như kiến thức thực tế Xin cô thông cảm những sai xót của chúng em.
Trang 31 Xác đ nh yêu cầầu ị 2
2 Các ch c năng c a ch ứ ủ ươ ng trình 2
2.1 Ch c năng l p hoá đ n ứ ậ ơ 2
2.2 Ch c năng đăng ký l ch làm ứ ị 2
2.3 Ch c năng qu n lý nhần viên ứ ả 2
2.4 Ch c năng qu n lý món ăn ứ ả 2
3 Usecase 3
4 Đ c t usecase ặ ả 3
4.1 Usecase đăng nh p ậ 3
4.2 Usecase đăng ký l ch làm ị 3
4.3 Qu n lý hoá đ n ả ơ 4
4.4 Usecase qu n lý l ch làm ả ị 4
4.5 Usecase qu n lý món ăn ả 5
4.6 Usecase qu n lý nhần viên ả 5
5 Activity Diagram 6
5.1 Đăng nh p ậ 6
5.2 Đăng ký l ch làm ị 7
6 L ượ c đồầ Class Diagram(AD) 13
7 L ượ c đồầ tuầần t (Sequence Diagram_SD) ự 16
8 L ượ c đồầ ERD 19
9 M t sồố giao di n c a website ộ ệ ủ 20
10 M t sồố yêu cầầu khác c a khách hàng ộ ủ 24
CHƯƠNG III:PHÂN TÍCH CÁC CHỨC NĂNG 25
1 Ch c năng qu n lý nhần viên ứ ả 26
2 Ch c năng qu n lý món ăn ứ ả 27
3 Ch c năng l p hoá đ n ứ ậ ơ 28
4 Ch c năng đăng ký l ch làm ứ ị 29
CHƯƠNG IV: THIẾT KẾ CƠ SỞ DỮ LIỆU 31
1 B ng nhanvien ả 31
2 B ng monan ả 31
3 B ng calam ả 32
4 B ng hoadon ả 32
5 B ng phancong ả 32
CHƯƠNG V: XỬ LÝ DỮ LIỆU_CODE 33
Trang 42 Xoá thồng tin nhần viên: 34
3 S a thồng tin l ch phần cồng ử ị 34
4 Tính toán d li u: ữ ệ 35
5 Log out 35
6 Thêm d li u: ữ ệ 36
7 Kiêm tra thồng tin tr ướ c khi nhần viên th c hiên đăng ký ca làm ự 36
8 Ki m tra các thồng tin khi điêần vào các form ể 37
9 X lý đăng nh p ử ậ 37
CHƯƠNG VI: TEST CASE 38
CHƯƠNG VII: KẾT LUẬN 42
1 Nh ng vi c đã làm đ ữ ệ ượ 42 c 2 Nh ng vi c ch a làm đ ữ ệ ư ượ 42 c 3 H ướ ng phát tri n ể 42
Trang 5CHƯƠNG I: GIỚI THIỆU ĐỀ TÀI
1 Lý do chọn đề tài
Trong thời buổi công nghệ hiện nay, các hình thức quản lý thủ công trước kia bắtđầu giảm bớt_do những sự cố sai xót đáng tiếc ảnh hưởng đến người tiêu dùng/ kháchhàng lẫn các doanh nghiệp thương mại Thay vào đó, những phần mềm công nghệngày càng xuất hiện đa dạng, hổ trợ hầu hết các lĩnh vực: chính trị, kinh tế, giáo dục,môi trường, y tế, Những phần mềm đem lại những lợi ích vô cùng to lớn, hạn chếđược những sai xót đáng tiếc khi dùng phương pháp thủ công trước kia
Nhận thấy được nhu cầu trên cùng với qua tìm hiểu, chúng em xin phép xây dựng
hệ thống “Quản lý nhà hàng(thanh toán+đăng ký lịch làm part-time)”.
2 Các chức năng của Website
Website bao gồm 2 chức năng chính là thanh toán và đăng ký lịch làm.
Thanh toán: Cho phép các nhân viên lựa chọn món ăn, số lượng và lưu hoá đơn vào cơ sở dữ liệu.
Đăng ký lịch làm: Cho phép nhân viên chọn ca làm lưu vào cơ sở dữ liệu.
Trang 6
Trang 7CHƯƠNG II: MÔ TẢ CHỨC NĂNG VÀ YÊU CẦU
1 Xác định yêu cầu
Nhân viên lên trang web của nhà hàng chọn vào mục đăng kí lịch.Tích vào ca
mà mình có thể làm trong ngày(Có 3 ca) Khi khách gọi món, Nhân viên PV ghi lại yêu cầu của khách hàng Sau đó chuyển cho NVTN để thiết lập phiếu
thanh toán đồng thời chuyển order xuống bếp
NVTN lập hoá đơn thanh toán qua trang web quản lý nhà hàng_mục thanh toán.
khi khách hàng yêu cầu tính tiền, thu ngân in hoá đơn Sau khi thanh toán, lưuphiếu thanh toán vào cở sở dữ liệu
Mỗi hoá đơn thanh toán không quá 15 dòng
2 Các chức năng của chương trình
2.1 Chức năng lập hoá đơn
Hệ thống cho phép người dùng chọn món ăn và số lượng Sau khi chọn món
ăn thì đơn giá sẽ tự xuất hiện, sau khi chọn số lượng thì ô thành tiền sẽ xuất ratổng số tiền của món đó, sau đó ô tổng tiền cũng sẽ cập nhật tự động theo sốlượng mó ăn mà người dung chọn.Sau khi thanh toán với khách hàng và không
có sai sót nào thì lưu hoá đơn Thông tin hoá đơn bao gồm: Ngày, Số lượng,Đơn giá, Thành tiền,Tổng tiền
2.2 Chức năng đăng ký lịch làm
Hệ thống cho phép người dung chọn vào ca mà người dùng muốn, hệ thốngkiểm tra thông tin mà người dùng chọn, nếu hợp lệ hệ thống sẽ lưu lại lịch làm.Thông tin lịch làm bao gồm: Tên nhân viên, Thứ, Ca
2.3 Chức năng quản lý nhân viên
Hệ thống cho phép thêm, sửa, xoá nhân viên Thông tin nhân viên baogồm:Mã nhân viên, tên nhân viên, SĐT, địa chỉ, ngày sinh,chức vụ, password
2.4 Chức năng quản lý món ăn
Hệ thống cho phép thêm, sửa, xoá món ăn Thông tin nhân viên bao gồm:
Mã món, tên món, đơn giá
Trang 8 usecase này bắt đầu khi actor muốn đăng nhập vào web
Hệ thống yêu cầu actor nhập username và password, chọn chi nhánh nhàhàng mà mình đang làm việc
Actor nhập username, password
Hệ thống kiểm tra thông tin và cho actor đăng nhập vào hệ thống
+ Sự kiện khác:
Nếu trong sự kiện chính actor nhập sai username hoặc password thì hệ thống
sẽ báo lỗi Actor quay về đầu dòng sự kiện hoặc thoát ra
Yêu cầu đặc biệt: Để đảm bảo an toàn cho hệ thống, mỗi actor chỉ được phépnhập sai 3 lần, nếu vượt quá hệ thống sẽ tự động thoát
4.2 Usecase đăng ký lịch làm
Tóm tắt: usecase mô tả cách nhân viên vào web để đăng kí lịch làm
Dòng sự kiện:
+ Sự kiện chính:
Trang 9 Hệ thống đưa ra các lựa chọn gồm:
Chức vụ
Các ca làm việc để nhân viên chọn
Hệ thống kiểm tra thông tin lựa chọn và lưu vào CSDL
+ Sự kiện khác:
Nếu trong sự kiện chính lịch làm mà nhân viên chọn bị trùng hệ thống sẽ
từ chối nhận lịch đó và yêu cầu nhân viên chọn lại
4.3 Quản lý hoá đơn
U
se case lập hoá đơn:
Tóm tắt: use-case mô tả nhân viên Thu Ngân(NVTN) lập hoá đơn, ghi các món
ăn khách hàng order với nhân viên phục vụ(NVPV)
Dòng sự kiện: Use case bắt đầu khi NVPV đem phiếu ghi order của khách hàngđến quầy thu ngân Nhân viên nhập các món ăn khách gọi vào phiếu thanh toántrên app_website
U
se case lưu hoá đơn:
Tóm tắt: use case mô tả việc NVTN in hoá đơn thanh toán và lưu hoá đơn vào
cơ sở dữ liệu của nhà hàng
Dòng sự kiện:
+ Dòng sự kiện chính: khi khách hàng yêu cầu thanh toán, NVKD sẽ in hoá đơnhiện có đưa NVPV đem tới bàn khách đang ngồi Sau khi thanh toán trả phíhoàn tất, NVTN lưu lại hoá đơn vào cơ sở dữ liệu
+ Dòng sự kiện phụ: nếu khi khách hàng nhận hoá đơn, có sai soát sẽ đượcNVPV kiểm tra lại Nếu sai thì NVTN sẽ chỉnh lại hoá đơn rồi đưa khách hàngthanh toán
4.4 Usecase quản lý lịch làm
Tóm tắt: use case cho phép người quản lý xem các ca làm việc của nhân viên
đã đăng kí ca làm theo qui định của nhà hàng
Dòng sự kiện: QL đăng nhập vào hệ thống với quyền Quản Lý Xem xét các calàm từng ngày Nếu có ca làm nào thiếu nhân viên, QL sẽ liên hệ các NV khác
để bổ sung cho đủ mức tối thiểu số lượng NV cần có để hoạt động bình thường
Các yêu cầu đặc biệt: thể hiện rõ từng ca làm, từng nhân viên trực ca làm đó(bếp/ phục vụ)
Trang 104.5 Usecase quản lý món ăn
Tóm tắt: use case cho phép người quản lý thêm,xoá,sửa các món ăn
Dòng sự kiện: QL đăng nhập vào hệ thống với quyền Quản Lý và tiến hành:
Thêm món ăn: Quản lý nhập đầy đủ thông tin món ăn và bấm thêm món ăn
Xoá món ăn: Quản lý chọn món ăn cần xoá và bấm xoá
Sửa: Quản lý chọn sửa món ăn, sửa đổi thông tin món ăn theo nhu cầu vàbấm cập nhật
Các yêu cầu đặc biệt: Không
4.6 Usecase quản lý nhân viên
Tóm tắt: use case cho phép người quản lý thêm, xoá, sửa các nhân viên
Dòng sự kiện: QL đăng nhập vào hệ thống với quyền Quản Lý và tiến hành:
Thêm nhân viên: Quản lý nhập đầy đủ thông tin nhân viên và bấm thêmnhân viên
Xoá nhân viên: Quản lý chọn nhân viên cần xoá và bấm xoá
Sửa: Quản lý chọn sửa nhân viên, sửa đổi thông tin nhân viên theo nhu cầu
và bấm cập nhật
Các yêu cầu đặc biệt: Không
Trang 115 Activity Diagram
5.1 Đăng nhập
Bước 1:
Chức năng đăng nhập do tất cả người dung thực hiện
Khi đăng nhập người dùng thực hiện các công việc như sau
Chọn đăng nhập
Kiểm tra thông tin
Thông báo đăng nhập thành công
Bước 2 :
Chọn đăng nhập
Kiểm tra thông tin
Đúng:Đăng nhập thành công
Sai: yêu cầu nhập lại
Thông báo đăng nhập thành công
Bước 3:
Chức năng (function) đăng nhập có 3 hành động (action) làm thay đổi dữ liệu
Thứ tự hành động được sắp xếp theo thứ tự để hình thành một chức năng
Trang 125.2 Đăng ký lịch làm
Bước 1:
Chức năng đăng ký lịch làm do nhân viên thực hiện
Khi nhân viên muốn đăng ký lịch làm cần thực hiện các công việc như sau
Kiểm tra thông tin
Đủ người: Thông báo đủ số người và yêu cầu chọn lại
Chấp nhận: Chấp nhận đăng ký
Chấp nhận đăng ký
Trang 13Bước 3:
Chức năng (function) đăng nhập có 4 hành động (action) làm thay đổi dữ liệu
Thứ tự hành động được sắp xếp theo thứ tự để hình thành một chức năng
5.3 Lập hóa đơn
Bước 1:
Chức năng lập hóa đơn do nhân viên thu ngân thực hiện
Khi nhân viên thu ngân muốn lập hóa đơn cần thực hiện các công việc như sau
Chức năng (function) đăng nhập có 3 hành động (action) làm thay đổi dữ liệu
Thứ tự hành động được sắp xếp theo thứ tự để hình thành một chức năng
Trang 145.4 Lưu hóa đơn
Bước 1:
Chức năng lưu hóa đơn do nhân viên thu ngân thực hiện
Khi nhân viên thu ngân muốn lưu hóa đơn cần thực hiện các công việc như sau
Chọn in hóa đơn
Sửa hóa đơn
Lưu hóa đơn
Chức năng (function) đăng nhập có 3 hành động (action) làm thay đổi dữ liệu
Thứ tự hành động được sắp xếp theo thứ tự để hình thành một chức năng
Trang 155.5 Quản lí lịch làm
Bước 1:
Chức năng quản lí lịch làm do quản lí thực hiện
Khi quản lí muốn xem lịch làm cần thực hiện các công việc như sau
Chức năng (function) đăng nhập có 2 hành động (action) làm thay đổi dữ liệu
Thứ tự hành động được sắp xếp theo thứ tự để hình thành một chức năng
Trang 165.6 Quản lý món ăn
Bước 1:
Chức năng quản lí món ăn do quản lí thực hiện
Khi quản lí muốn thay đổi dữ liệu món ăn cần thực hiện các công việc như sau
Chức năng (function) đăng nhập có 3 hành động (action) làm thay đổi dữ liệu
Thứ tự hành động được sắp xếp theo thứ tự để hình thành một chức năng
Trang 175.7 Quản lý nhân viên
Bước 1:
Chức năng quản lí nhân viên do quản lí thực hiện
Khi quản lí muốn thay đổi dữ liệu nhân viên cần thực hiện các công việc như sau
Thêm nhân viên
Xoá nhân viên
Sửa nhân viên
Bước 2 :
Thêm nhân viên
Nhập thông tin nhân viên
Xoá nhân v nhân viên iên:
Chọn nhân viên cần xoá
Sửa nhân viên:
Chọn nhân viên cần sửa
Thay đổi thông tin nhân viên
Bước 3:
Chức năng (function) đăng nhập có 3 hành động (action) làm thay đổi dữ liệu
Thứ tự hành động được sắp xếp theo thứ tự để hình thành một chức năng
Trang 186 Lược đồ Class Diagram(AD)
6.1 Đăng Nhập:
6.2 Đăng ký lịch làm:
Trang 196.3 Quản lý lịch làm:
6.4 Quản lý hoá đơn:
Trang 206.5 Quản lý nhân viên
6.6 Quản lý món ăn
Trang 217 Lược đồ tuần tự (Sequence Diagram_SD)
7.1 Đăng nhập
Trang 227.2 Quản lý lịch làm
7.3 Xử lý hoá đơn
7.4 Đăng ký lịch làm
Trang 237.5 Quản lý nhân viên
7.6 Quản lý món ăn
Trang 248 Lược đồ ERD
9 Một số giao diện của website
Trang 25Trang chủ
Hình 1: Trang chủ
Trang 26Trang lập hoá đơn
Hình 2: Lập hoá đơn
Trang 27Trang đăng ký lịch làm
Hình 3: Đăng kí lịch làm
Trang quản lý nhân viên
Hình 4: Quản lý nhân viên
Trang 28Trang quản lý món ăn
Hình 5: Quản lí món ăn
Trang 29Trang đặt bàn
Hình 6: Đặt bàn
10 Một số yêu cầu khác của khách hàng
Hệ thống xử lý thông tin nhanh chóng, chính xác
Tốc độ truy cập nhanh
Giao diện trực quan, dễ sử dụng
Trang 30CHƯƠNG III:PHÂN TÍCH CÁC CHỨC NĂNG
Hình: Sơ đồ chức năng
Trang 311 Chức năng quản lý nhân viên
Khi đăng nhập bằng tài khoản Admin thì người dùng có thể truy cập vàotrang quản lý Ở trang này người dùng chọn vào mục quản lý nhân viên trênmenu, sau đó người dùng thực hiện việc thêm, sửa, xoá nhân viên
Chức năng thêm nhân viên: Admin sẽ nhập tất cả cả thông tin của nhânviên gồm mã nhân viên, tên nhân viên, SĐT, địa chỉ, ngày sinh,chức vụ,password vào bảng thêm nhân viên, sau đó bấm thêm nhân viên Hệ thống sẽlưu nhân viên mới vào cơ sở dữ liệu Lưu ý: Cần nhập tất cả các ô, nếu khôngnhập đủ sẽ không thêm được nhân viên mới
Hình 6: Thêm nhân viên
Chức năng xoá nhân viên: Admin chỉ cần bấm delete nhân viên cần xoá Hệ thống sẽ xoá nhân viên khỏi cơ sở dữ liệu
Trang 32Chức năng sửa nhân viên: Admin cần nhập mã món ăn, tên mới và giá mới.
Hình 7: Sửa nhân viên
Khi đăng nhập bằng tài khoản nhân viên sẽ không truy cập được vào trang quản lý này
2 Chức năng quản lý món ăn
Khi đăng nhập bằng tài khoản Admin thì người dùng có thể truy cập vàotrang quản lý Ở trang này người dùng chọn vào mục quản lý món ăn trênmenu, sau đó người dùng thực hiện việc thêm, sửa, xoá món ăn
Chức năng thêm món ăn: Admin sẽ nhập tất cả cả thông tin của món ăngồm mã món, tên món, đơn giá vào bảng thêm món ăn, sau đó bấm thêm món
ăn Hệ thống sẽ lưu món ăn mới vào cơ sở dữ liệu Lưu ý: Cần nhập tất cả các
ô, nếu không nhập đủ sẽ không thêm được món ăn mới
Trang 33Khi đăng nhập bằng tài khoản nhân viên sẽ không truy cập được vào trang quản lý này
3 Chức năng lập hoá đơn
Khi đăng nhập bằng tài khoản quản lý thì người dùng có thể truy cập vàotrang lập hoá đơn Ở trang này người dùng chọn vào mục lập hoá đơn trênmenu, sau đó người dùng chọn vào số bàn và chọn món ăn theo order củakhách
Sau đó nhân viên bấm lưu để lưu hoá đơn vào cơ sở dữ liệu
Trang 34Hình 10: Lập hoá đơn
4 Chức năng đăng ký lịch làm
Khi đăng nhập bằng tài khoản nhân viên thì người dùng có thể truy cậpvào trang đăng ký lịch làm Ở trang này người dùng chọn vào mục đăng ký lịchlàm trên menu, nhân viên chọn vào ca mình muốn làm và bấm nút đăng ký Hệthống sẽ kiểm tra thông tin mà nhân viên đã chọn Nếu hợp lệ sẽ xuất thông báocho nhân biết đăng ký thành công , nếu thông tin vi phạm các ràng buộc thì sẽxuất thông báo cho nhân viên biết là đăng ký không thành công và yêu cầu chọnlại.Lưu ý: Mỗi ca làm việc chỉ được tối đa 5 nhân viên và nếu nhân viên đãđăng ký ca ngày hôm đó r sẽ không được đăng ký lại
Bảng lịch làm sẽ cho nhân viên thấy ngày hôm đó, ca đó đã đủ nhân viênhay chưa và sẽ thể hiện số nhân viên đã đăng ký ca đó giờ đó
Trang 35Hình 11: Đăng ký lịch làm
Trang 36CHƯƠNG IV: THIẾT KẾ CƠ SỞ DỮ LIỆU
Xây dựng hệ thống chứa dữ liệu cho website(tạo trên MySQL)
1 Bảng nhanvien
Bảng nhanvien chứa thông tin về nhân viên gồm các trường:
MaNV: Mã nhân viên
HoTen: Họ và tên nhân viên
NgaySinh: Ngày sinh nhân viên
TenMon: Tên món ăn
DonGia: Đơn giá
Trang 373 Bảng calam
Bảng calam chứa thông tin về nhân viên gồm các trường:
Ca: Tên ca
TimeStart: Thời gian bắt đầu
TimeEnd: Thời gian kết thúc
4 Bảng hoadon
Bảng hoadon chứa thông tin về nhân viên gồm các trường:
MaHD: Mã hoá đơn
Ngay: Ngày lập hoá đơn
Trang 39CHƯƠNG V: XỬ LÝ DỮ LIỆU_CODE
1 Truy xuất thông tin lưu trữ trong cơ sở dữ liệu:
Trang 402 Xoá thông tin nhân viên:
3 Sửa thông tin lịch phân công
Trang 414 Tính toán dữ liệu:
5 Log out