Tải bản đầy đủ (.docx) (53 trang)

đồ án phần mềm quản lí cafe

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.67 MB, 53 trang )

BỘ CÔNG THƯƠNG
TRƯỜNG ĐH CÔNG NGHIỆP THỰC PHẨM TP. HCM
KHOA CÔNG NGHỆ THÔNG TIN


ĐỒ ÁN LẬP TRÌNH WINDOWS NÂNG CAO
ĐỀ TÀI: Phần mềm quản lý quán Cafe
Giảng Viên Hướng Dẫn: Bùi Công Danh
Sinh viên thực hiện:
1. 2001140202 – Đặng Ái Quốc
2. 2001140293 - Nguyễn Thanh Tùng
TP.HỒ CHÍ MINH - 2017


Đồ án áp dụng mô hình thác nước

Bảng chi tiết phân công
Công việc
Khảo sát
Phân Tích
Thiết Kế Hệ Thống
Thiết Kế Giao Diện
Viết Code
Thực Thi Và Kiểm Thử
Hoàn Thiện Và Làm Báo Cáo

Người làm
Quốc, Tùng
Quốc, Tùng
Tùng
Tùng


Quốc
Quốc, Tùng
Quốc, Tùng

LỜI CẢM ƠN
Trong quá trình làm để tài, chân thành cảm ơn giảng viên đã cung cấp kiến thức nền
tảng cho nhóm em hoàn thành phần mềm.
Chúng em cũng xin cảm ơn sự giúp đỡ của các nhân viên trong quán cafe Aeon. Các
nhân viên đã cung cấp những thông tin mà nhóm em muốn. Mọi người khá vui vẻ và nhiệt
tình nên công đoạn khảo sát không gặp nhiều khó khăn.
Với lượng kiến thức chưa cao, nếu có thiếu sót mong thầy đóng góp ý kiến để nhóm em
làm tốt hơn.


MỤC LỤC
CHƯƠNG 1

TỔNG QUAN................................................................................................................4

1.1.

GIỚI THIỆU.............................................................................................................................4

1.2.

MỤC TIÊU VÀ PHẠM VI ĐỀ TÀI.........................................................................................4

1.2.1.

Mục tiêu.............................................................................................................................4


1.2.2.

Phạm vi đề tài....................................................................................................................5

1.3.

KHẢO SÁT HỆ THỐNG.........................................................................................................5

1.3.1.

Giới thiệu hệ thống đã khảo sát.........................................................................................5

1.3.2.

Quy trình nghiệp vụ quản lý danh mục món:....................................................................5

1.3.3.

Mô hình diễn tả quy trình nghiệp vụ( BPM )....................................................................7

1.4.

KẾT CHƯƠNG........................................................................................................................9

CHƯƠNG 2

PHÂN TÍCH HỆ THỐNG...........................................................................................11

2.1.


GIỚI THIỆU...........................................................................................................................11

2.2.

PHÂN TÍCH DỮ LIỆU..........................................................................................................11

2.2.1.

Giới thiệu mô hình erd....................................................................................................11

2.2.2.

Mô hình ERD..................................................................................................................12

2.3.

PHÂN TÍCH XỬ LÝ..............................................................................................................12

2.3.1.

Giới thiệu mô hình DFD.................................................................................................12

2.3.2.

Mô hình DFD..................................................................................................................13

2.4.

KẾT CHƯƠNG......................................................................................................................13


CHƯƠNG 3

THIẾT KẾ HỆ THỐNG..............................................................................................14

3.1.

GIỚI THIỆU...........................................................................................................................14

3.2.

MÔ HÌNH QUAN HỆ............................................................................................................14

3.2.1.

Giới thiệu mô hình..........................................................................................................14

3.2.2.

Mô hình trong SQL Server..............................................................................................14

3.2.3.

Xác định bảng, kiểu dữ liệu, khóa chính, khóa ngoại.....................................................15

3.3.

MÔ HÌNH PHÂN CẤP CHỨC NĂNG.................................................................................17

3.3.1.


Giới thiệu BFD................................................................................................................17

3.3.2.

Mô hình BFD..................................................................................................................17

3.4.

RÀNG BUỘC TOÀN VẸN....................................................................................................17

3.4.1.

Ràng buộc toàn vẹn miền giá trị......................................................................................18

3.4.2.

Ràng buộc toàn vẹn liên bộ.............................................................................................19

3.4.3.

Ràng buộc toàn vẹn liên thuộc tính.................................................................................22

3.4.4.

Ràng buộc toàn vẹn liên bộ - liên quan hệ......................................................................22

3.4.5.

Ràng buộc toàn vẹn do thuộc tính tổng hợp....................................................................23


3.5.

THIẾT KẾ GIAO DIỆN.........................................................................................................24

3.5.1.

Form đăng nhập...............................................................................................................24


3.5.2.

Form cấu hình..................................................................................................................25

3.5.3.

Form Quản Lý.................................................................................................................26

3.5.4.

Form nghiệp vụ order bàn...............................................................................................31

3.5.5.

Form quản lý nhân viên...................................................................................................41

3.5.6.

Phân quyền nhân viên.....................................................................................................46


3.5.7.

Form quản lý bàn.............................................................................................................48

3.5.8.

Form quản lý danh mục món...........................................................................................50

3.5.9.

Form quản lý món...........................................................................................................50

3.5.10.

Form thống kê.............................................................................................................51

3.5.11.

Form quay số khách hàng may mắn............................................................................53

3.5.12.

Form ghi chú:...............................................................................................................53

CHƯƠNG 4

KẾT LUẬN.................................................................................................................55


DANH MỤC CÁC KÝ HIỆU VÀ CHỮ VIẾT TẮT

Viết tắt

Tiếng Anh

Tiếng Việt

CNTT
ERD
BFD
DFD
CSDL

Infomation Technoly
Entity-Relationship Diagram
Business Function Diagram
Data Flow Diagram
DataBase

Công Nghệ Thông Tin
Mô hình thực thể kết hợp
Mô hình quy trình nghiệp vụ
Mô hình dòng dữ liệu
Cơ sở dữ liệu

Trang 1


DANH MỤC CÁC HÌNH VẼ VÀ ĐỒ T
Hình 1. 1: Quy trình nghiệp vụ chức năng oder......................................................................................7
Hình 1. 2: Quy trình nghiệp vụ chức năng thay đổi món........................................................................8

Hình 1. 3: Quy trình nghiệp vụ chức năng chuyển/gộp bàn...................................................................8
Hình 1. 4: Quy trình nghiệp vụ tính tiền.................................................................................................9
Y
Hình 2. 1: Mô hình thực thể kết hợp ERD............................................................................................12
Hình 2. 2: Mô hình DFD cấp 0..............................................................................................................13
Hình 2. 3: Mô hình DFD cấp 1..............................................................................................................13
Hình 3. 1: Mô hình lược đồ quan hệ....................................................................................................14
Hình 3. 2: Mô hình BFD......................................................................................................................17
Hình 3. 3: Giao diện đăng nhập............................................................................................................24
Hình 3. 4: Giao diện cấu hình..............................................................................................................25
Hình 3. 5: Giao diện quản lý................................................................................................................26
Hình 3. 6: Thanh tác vụ........................................................................................................................27
Hình 3. 7: MenuStrip Hệ Thống...........................................................................................................27
Hình 3. 8: MenuStrip Quản Lý Bán Hàng...........................................................................................27
Hình 3. 9: MenuStrip Admin................................................................................................................28
Hình 3. 10: MenuStrip Công Cụ...........................................................................................................29
Hình 3. 11: MenuStrip Giải Trí.............................................................................................................29
Hình 3. 12 MenuStrip Giúp Đỡ.............................................................................................................30
Hình 3. 13: ToolStrip nghiệp vụ thường làm........................................................................................30
Hình 3. 14: Giao diện nghiệp vụ order bàn...........................................................................................31
Hình 3. 15: Giao diện thêm món hoàn thành........................................................................................33
Hình 3. 16: Giao diện giảm món hoàn thành........................................................................................34
Hình 3. 17: Giao diện xóa món hoàn thành...........................................................................................36
Hình 3. 18: Giao diện in hóa đơn..........................................................................................................37
Hình 3. 19: Giao diện chuyển bàn thành công......................................................................................40
Hình 3. 20: Giao diện gộp bàn thành công............................................................................................41
Hình 3. 21: Giao diện quản lý nhân viên...............................................................................................41
Hình 3. 22: Giao diện sau khi thêm nhân viên......................................................................................43
Hình 3. 23: Giao diện sửa thông tin hoàn thành....................................................................................44
Hình 3. 24: Giao diện xóa hoàn thành...................................................................................................45

Hình 3. 25: Giao diện quản lý nhóm người dùng..................................................................................46
Hình 3. 26: Giao diện thêm người dùng vào nhóm...............................................................................47
Hình 3. 27: Giao diện phân quyền theo màn hình.................................................................................48
Hình 3. 28: Giao diện quản lý bàn........................................................................................................49
Hình 3. 29: Giao diện quản lý món.......................................................................................................51
Hình 3. 30: Giao diện thống kê.............................................................................................................51
Hình 3. 31: Giao diện in hóa đơn báo cáo.............................................................................................52
Hình 3. 32: Giao diện quay số khách hàng may mắn............................................................................53
Hình 3. 33: Giao diện ghi chú...............................................................................................................53
Hình 3. 34: Giao diện phạt đăng nhập...................................................................................................54

Trang 2


MỞ ĐẦU
Ngày nay, CNTT được áp dụng một cách triệt để vào trong các mô hình, ứng dụng
trong hầu hết cách lĩnh vực. Đóng vai trò rất quan trọng, là nhu cầu cần thiết trong đời
sống hiện nay. Việc áp dụng các thành tựu về CNTT đã giúp thay thế các phương pháp thủ
công bằng các chương trình máy tính. Các phần mềm được ra đời ngày càng nhiều đáp
ứng được các nhu cầu thiết yếu.
Lập trình ra những phần mềm đó là các lập trình viên. Nhờ có các phần mềm mà
mọi người làm việc dễ dàng, tiết kiệm thời gian, nhân lực và bảo mật tốt hơn. Tuy nhiên
cần phải có vốn hiểu biết về thực tế về khách hàng thì mới có thể thiết kế phần mềm đạt
hiệu quả. Các chương trình được thiết kế phải có độ chính xác cao và đáp ứng tốt các nhu
cầu của khách hàng. Vừa phù hợp với túi tiền lại phù hợp với khả năng của khách hàng
chính là yếu tố đảm bảo sự bền vững lâu dài.
Trong tương lai, những phần mềm quản lý là công cụ không thể thiếu cho bất kỳ
doanh nghiệp nào. Để thấy được tầm quan trọng của CNTT, nhiều sinh viên đã áp dụng
công nghệ thông tin để thiết kế các phần mềm quản lý. Chính vì thế nhóm em đã lựa chọn:
“Phần mềm quản lý quán Cafe” làm đề tài môn “Lập trình Windows nâng cao”.


Trang 3


CHƯƠNG 1 TỔNG QUAN
1.1. GIỚI THIỆU
Các quán cà phê hiện nay có số lượng khách hàng ngày càng tăng. Công đoạn phục
vụ khách hàng cần ngày một tốt hơn, chính xác và nhanh chóng. Tuy nhiên công tác thủ
công mà nhiều quán thực hiện vẫn còn nhiều hạn chế như:



Tra cứu thông tin về hàng hóa mất nhiều thời gian và không chính xác.
Lưu trữ thông tin nhâp xuất hàng hóa về thu, chi cần nhiều loại giấy tờ cồng

kềnh và kém hiệu quả.
 Cập nhật thông tin hàng ngày tốn nhiều thời gian.
 Khó khăn trong quá trình hiện báo cao thống kê, nhất là khi có sự đột xuất.
 Nhân viên có thể vô tình tính nhầm làm hóa đơn bị sai khác so với thực tế.
Nhận thấy có thể áp dụng CNTT vào có thể giải quyết được những vấn đề thiếu sót
trên nên nhóm em đã lựa chọn thiết kế phần mềm Quản Lý quán cafe.
Lý do chọn đề tài này vì nhóm em muốn vấn đề quản lý công việc bán hàng sẽ trở
nên dễ dàng hơn, Ngoài ra mong muốn của nhóm là giúp các nhân viên giảm bớt những
khó khăn trong quá trình làm việc.
1.2. MỤC TIÊU VÀ PHẠM VI ĐỀ TÀI
1.2.1. Mục tiêu
Phần mềm cho phép quản lý các quy trình nghiệp vụ cần thiết của một quán
cafe bao gồm:









Gọi món mới, đổi món.
Chuyển vị trí bàn, gộp các bàn.
Tính tiền, xuất hóa đơn.
Thêm, xóa, sửa thông tin nhân viên.
Phân quyền nhân viên.
Quản lý đăng nhập vào phần mềm.
In báo cáo thống kê theo thời gian cố định.

1.2.2. Phạm vi đề tài
Được thực hiện trong phạm vi giới hạn của môn lập trình windows nâng cao,
được khảo sát dựa trên các quán cafe trên địa bàn quận Tân Phú. Phần mềm có thể áp
dụng cho nhiều quán cá nhân với quy mô nhỏ.
1.3. KHẢO SÁT HỆ THỐNG
1.3.1. Giới thiệu hệ thống đã khảo sát
Trang 4


Bộ phận phục vụ sẽ giao MENU khi khách vào quán. Khách có quyền tùy ý lựa
chọn đồ uống.
Sau khi chọn xong sẽ có 2 phiếu gửi đi 2 nơi. 1 phiếu chuyển cho quầy pha
chế, phiếu còn lại chuyển xuống quầy thu ngân nhập vào máy tính.
Bộ phận pha chế có nhiệm vụ pha đồ uống căn cứ vào phiếu yêu cầu của khách.
Sau đó nhân viên phục vụ sẽ mang đồ uống lên cho khách.
Trong trường hợp đồ uống của khách chưa mang lên mà khách có nhu cầu đổi

đồ uống khác thì nhân viên phục vụ sẽ thông báo cho bộ phận pha chế ngừng làm và
viết lại yêu cầu mới. Đưa yêu cầu mới cho pha chế và thu ngân.
Khi khách hàng có nhu cầu thanh toán, nhân viên phục vụ sẽ lấy hóa đơn thanh
toán từ thu ngân và giao cho khách. Khách sẽ đến quầy thu ngân để thanh toán và
nhận được phiếu thanh toán. Bộ phận thanh toán sẽ lưu thông tin khách hàng và máy
tính để theo dõi độ thường xuyên.
Công việc cần làm vào cuối ngày đó là thống kê số lượng khách và doanh thu
của ngày hôm đó và giao cho quản lý.
1.3.2. Quy trình nghiệp vụ quản lý danh mục món:
Nhân viên sẽ tiến hành thêm nhóm món ăn mới, sửa hoặc xóa món ăn tùy vào
yêu cầu bằng phần mềm. Sau khi hoàn thành, công đoạn tiếp theo đó là phân loại lại
danh mục các món ăn.
 Quản lý món ăn:
Những món ăn mới sẽ được thêm vào đúng với danh mục. Có thể xóa hay sửa
món ăn trong các danh mục. Sau khi hoàn thành cần phân loại món ăn.
 Quản lý bàn:
Áp dụng trong trường hợp khách hàng có nhu cầu gộp bàn, chuyển bàn hoặc
hủy bàn. Nhân viên sẽ tiến hành tương tác với phần mềm để xử lý. Bàn sẽ được phân
chia theo từng khu vực để tiện quản lý.
 Quản lý nhân viên
Khi có nhân viên mới thì q uản trị viên sẽ thêm một tài khoản nhân viên. Sau đó
sẽ phân quyền truy cập cho tài khoản đó. Với những tài khoản đã tạo rồi và cần thay
đổi thông tin cũng phải do quản trị viên tiến hành thao tác trên phần mềm. Nếu nhân
viên nghỉ việc thì quản trị viên sẽ xóa tài khoản nhân viên khỏi CSDL.
 Quản lý order bàn
Trang 5


Sau khi khách bước vào. Nhân viên sẽ tiến hành hỏi khách dùng đổ uống gì.
Nhân viên sẽ nhân viên sẽ thông báo cho quầy thu ngân sau khi biết yêu cầu từ

khách. Quầy thu ngân sẽ tiến hành nhập liệu vào phần mềm. Nhân viên tiếp tục đến
quầy pha chế và thông báo thức uống khách gọi. Bộ phận pha chế sẽ tiến hành pha
chế theo đúng yêu cầu của khách. Sau khi pha xong, nhân viên phục vụ sẽ mang lên
cho khách.
Trong quá trình pha chế chưa làm xong, khách có thể yêu cầu đổi món thông
qua nhân viên phục vụ. Nhân viên phục vụ yêu cầu quầy pha chế ngưng làm để biết
yêu cầu mới của khách. Nhân viên phục vụ sẽ tiếp nhận yêu cầu đổi món của khách
và thông báo cho quầy pha chế. Quầy pha chế sẽ thay đổi món theo yêu cầu của
khách. Sau đó nhân viên phục vụ sẽ thông báo cho quầy thu ngân. Quầy thu ngân sẽ
chỉnh sửa thông tin yêu cầu vào phần mềm.
Khi khách có nhu cầu chuyển bàn, nhân viên sẽ kiểm tra bàn cần chuyển đến đã
có khách sử dụng hay chưa. Nếu chưa có thì thực hiện chuyển bàn cho khách. Ngược
lại thì thông báo cho khách để khách chọn bàn mới.
Nếu khách có nhu cầu gộp bàn, nhân viên sẽ kiểm tra bàn cần gộp đã có khách
sử dụng hay chưa. Nếu có thì gộp bàn cho khách. Ngược lại thì thông báo bàn không
tồn tại.
Khi khách muốn tính tiền, nhân viên phục vụ sẽ tiến lại quầy thu ngân để lấy
hóa đơn tính tiền cho khách. Phần mềm sẽ tiến hành in hóa đơn của đúng bàn khách
muốn trả tiền. Khách sẽ tiến lại quầy thu ngân để trả tiền và lấy phiếu thanh toán.
Ngoài ra để kiểm tra độ thường xuyên của khách hàng, nhân viên thu ngân sẽ lưu
thông tin khách vào CSDL của máy tính.
 Quản lý thống kê
Theo kỳ (Cuối mỗi ngày, mỗi tháng,..) nhân viên sẽ tiến hành truy cập vào
CSDL của máy tính và in ra số lượng khách kèm doanh thu để làm báo cáo thống kê.
Sau đó nhân viên sẽ giao lại cho quản lý.
1.3.3. Mô hình diễn tả quy trình nghiệp vụ( BPM )

Trang 6
Hình 1. 1: Quy trình nghiệp vụ chức năng oder



Hình 1. 2: Quy trình nghiệp vụ chức năng thay đổi món
Trang 7


Hình 1. 3: Quy trình nghiệp vụ chức năng chuyển/gộp bàn

Hình 1. 4: Quy trình nghiệp vụ tính tiền

Trang 8


1.4. KẾT CHƯƠNG
Với sự giúp đỡ của các nhân viên trong quán đã cung cấp khá nhiều thông tin cho
nhóm em trong quá trình khảo sát đề tài. Nhóm chúng em thấy được các công tác mà quán
đã áp dụng khá tốt. Đã có phần mềm riêng giúp các công đoạn diễn ra suôn sẻ.
Tuy nhiên vẫn còn nhiều nhược điểm mà quán chưa khắc phục được:
 Đầu tiên là việc phân chia các nhân viên vẫn chưa hợp lý. Có lẽ do bị giới hạn
bởi số người nên 1 người không bao giờ làm 1 việc cố định.
 Vì có thể làm nhiều việc cùng lúc cho nên sẽ dễ dẫn đến sai sót trong 1 số
trường hợp (khách đông tiếp khách hay pha chế không kịp).
 Phần mềm còn yếu nên khả năng bảo mật chưa cao.
 Phần mềm mà quán sử dụng đã lỗi thời, có nhiểu điểm chưa cập nhật mới.
 Nếu phàn mềm xảy ra sự cố phải mất thời gian liên hệ với bộ phận sửa chữa.
Bất tiện trong nhiều trường hợp (Khách muốn đổi bàn, tính tiền,...)
Từ đó nhóm em đã quyết định tạo nên 1 phần mềm để khắc phục những nhược điểm
mà nhóm em đã khảo sát được tại quán.
Giai đoạn Chương I đã kết thúc với nhiều thông tin hữu ích. Để áp dụng các thông
tin đó hợp lý cần phải tiến hành đi qua bước tiếp theo đó là Chương II: Phân Tích Hệ
Thống.


Trang 9


CHƯƠNG 2

PHÂN TÍCH HỆ THỐNG

2.1. GIỚI THIỆU
Giai đoạn khảo sát ở Chương I khá quan trọng bởi vì mọi dữ liệu có được để làm ra
phần mềm đều phụ thuộc vào công đoạn này.
Đây là giai đoạn đầu tiên của quá trình thiết kế một phần mềm. Mọi thông tin khảo
sát được đều sử dụng vào thiết kế hệ thống.
Chỉ một phần sai thì dễ rơi vào tình trạng sai toàn bộ cả hệ thống. Tuy nhiên nếu
khảo sát tốt thì hệ thống sẽ hoạt động tốt.
Càng nhiều ràng buộc thì phần mềm càng ổn định, tuy nhiên sai một phần sẽ ảnh
hưởng đến những phần liên quan.
Nhờ có giai đoạn này mà có thể biết được những ưu, nhược điểm từ đó đề ra các giải
pháp khắc phục và tạo ra phần mềm hoàn thiện.
2.2. PHÂN TÍCH DỮ LIỆU
2.2.1. Giới thiệu mô hình erd
Mô hình thực thể kết hợp (ERD) bao gồm có các thực thể, danh sách thuộc tính
và những mối kết hợp. Mô hình này chủ yếu dùng để biểu diễn sự kết hợp giữa các
thực thể dưới dạng sơ đồ. Nhóm em đã phân tích được mô hình ERD thành các bảng
như sau:
 FoodCategory (IdFC, NameFC)
 Food (IdF, NameF, DVTF, PriceF)
 BiiiInfo (IdBI, CountBI)
 Bill (IdB, DateCheckInB, DateCheckOutB, TennvB, DisPriceB, TotalPriceB,
statusB)

 TableFood (IdTF, NameTF)
 Lobby (IdL, NameL)
 Account (UserName, PlayName, PassWord, Sdt, Type)
 ND_nhomND (IdND, GhiChuND)
 NhomNguoidung (IdNND, TenNND, GhiChuND)
 PhanQuyen (IdPQ, CoQuyenPQ)
Trang 10


 ManHinh (IdMH, TenMH)
2.2.2. Mô hình ERD

Hình 2. 1: Mô hình thực thể kết hợp ERD

2.3. PHÂN TÍCH XỬ LÝ
2.3.1. Giới thiệu mô hình DFD
Mô hình dòng dữ liệu (DFD) là loại mô hình được thiết kế để hiển thị sự trao
đổi về dữ liệu giữa các đối tượng chạy trong phần mềm. Dữ liệu vào cần những gì,
dữ liệu ra sẽ có những gì.
2.3.2. Mô hình DFD

Hình 2. 2: Mô hình DFD cấp 0

Trang 11
Hình 2. 3: Mô hình DFD cấp 1


2.4. KẾT CHƯƠNG
Trong chương này nhóm em đã có được mô hình ERD, DFD. Đây là 2 mô hình rất
quan trọng cần phải có để tiến đến công đoạn tiếp theo. Công đoạn này sẽ là sự kết hợp

của 2 mô trình trên, đó là công đoạn Thiết Kế Hệ Thống.

CHƯƠNG 3 THIẾT KẾ HỆ THỐNG
3.1. GIỚI THIỆU
Sau quá trình phân tích hệ thống ở bước 2, chúng ta đã có gần nh ư đ ầy đ ủ thông
tin để đến với bước 3. Đây là bước thiết kế hệ thống cho phần mềm. Hệ th ống sẽ được
thiết kế dựa trên mô hình quan hệ.
3.2. MÔ HÌNH QUAN HỆ
3.2.1. Giới thiệu mô hình
Mô hình quan hệ là loại mô hình được thiết kế sau khi đã có dữ liệu. Mô hình
này khá phổ biến và hiện nay thường được áp dụng trong Microsoft Access, SQL
Server,...
Mô hình này khá giống với ERD, tuy nhiên mô hình ERD không có khóa ngoại,
ngoài ra ERD bắt buộc phải có loại liên kết giữa 2 thực thể (1-1, 1-n, n-1, n-n).
Trong 1 bảng có ít nhất 1 thuộc tính để làm khóa chính. Ngoài ra khi 2 bảng liên
kết với nhau thì 1 trong 2 bảng sẽ lấy thuộc tính khóa chính của bảng kia để làm khóa
ngoại cho bảng này.
Trang 12


3.2.2. Mô hình trong SQL Server

Hình 3. 1: Mô hình lược đồ quan hệ

3.2.3. Xác định bảng, kiểu dữ liệu, khóa chính, khóa ngoại
a. Bảng DM_ManHinh
Tên trường
MaManHinh
TenManHinh


Diễn giải
Mã Màn Hình
Tên Màn Hình

Null


Kiểu DL
char
nvarchar

Khóa Chính


Tham chiếu

Kiểu DL
char
char
bit

Khóa Chính


Tham chiếu

b. Bảng QL_PhanQuyen
Tên trường
id
MaMH

CoQuyen

Diễn giải
ID Phân Quyền
Mã Màn Hình
Có Quyền

MaNhom

Mã Nhóm

Null


DM_ManHinh
QL_NhomNguo
iDung

int

c. Bảng QL_NhomNguoiDung
Tên trường
MaNhom
TenNhom
GhiChu

Diễn giải
Mã Nhóm
Tên Nhóm
Ghi Chú


Null


Kiểu DL
char
nvarchar
nvarchar

Khóa Chính


Tham chiếu

Khóa Chính


Tham chiếu

d. Bảng QL_NguoiDungNhomNguoiDung
Tên trường
UserName

Diễn giải
Tên Tài Khoản

Null

Kiểu DL
nvarchar


Account
Trang 13


MaNhom

Mã Nhóm

GhiChu

Ghi Chú

char



QL_NhomNguo
iDung



nvarchar

Diễn giải
Tên Tài Khoản
Tên Người
Mật Khẩu
Hoạt Động


Null

Kiểu DL
nvarchar
nvarchar
nvarchar
bit

Khóa Chính


Tham chiếu

Diễn giải
ID Hóa Đơn
Thời Gian Vào
Thời Gian Ra
ID Tên Bàn
Tên Nhân Viên
Giảm Giá
Tổng Tiền

Null

Khóa Chính


Tham chiếu





Kiểu DL
int
datetime
datetime
int
nvarchar
int
float

Null

Kiểu DL

Khóa Chính

int



e. Bảng Account
Tên trường
UserName
PlayName
PassWord
HoatDong




f. Bảng Bill
Tên trường
id
DateCheckIn
DateCheckOut
IdTable
Tennv
DisPrice
TotalPrice



TableFood
Account

g. Bảng BillInfo
Tên trường
Id
IdBill
IdFood
count

Diễn giải
ID Chi Tiết Hóa
Đơn
ID Hóa Đơn
ID Món Gọi
Số Lượng

int

int
int

Tham chiếu
Bill
Food

h. Bảng Food
Tên trường
IdFood
Name
DVT
IdCategory
price

Diễn giải
ID Món Gọi
Tên Món
Đơn Vị Tính
ID Loại Món
Giá

Null


Kiểu DL
int
nvarchar
nvarchar
int

float

Khóa Chính


Kiểu DL
int

Khóa Chính


Tham chiếu

FoodCategory

i. Bảng FoodCategory
Tên trường
Id

Diễn giải
ID Loại Món

Null

Tham chiếu
Trang 14


name


Tên Loại Món

nvarchar

j. Bảng TableFood
Tên trường
Id
idlobby
name

Diễn giải
ID Loại Món
ID Sảnh
Tên Loại Món

Null

Kiểu DL
int
int
nvarchar

Khóa Chính


Kiểu DL
int
nvarchar

Khóa Chính



Tham chiếu
Lobby

k. Bảng Lobby
Tên trường
Id
name

Diễn giải
ID Sảnh
Tên Sảnh

Null

Tham chiếu

3.3. MÔ HÌNH PHÂN CẤP CHỨC NĂNG
3.3.1. Giới thiệu BFD
Mô hình phân cấp chức năng cho biết được một cách tổng quát các chức năng
cơ bản bên trong hệ thống. Mỗi chức năng sẽ có nhiệm vụ khác nhau. Ngoài ra một
chức năng sẽ được chia thành nhiều chức năng con.
3.3.2. Mô hình BFD

Quản Lý Quán CaFe
3.4.

Quản Lý Hệ Thống


RÀNG BUỘC TOÀN VẸN

Quản Lý Thống Kê

Quản Lý Tài Khoản

3.4.1. Ràng buộc toàn vẹn miền giá trị

Báo Cáo

Quản
Lý Bàn
Thông
Tin Nhân Viên
3.4.1.1.
Trong lược đồ quan
hệ Bill

 R1= “Mọi hóa đơn đều có thời gian vào nhỏ hơn thời gian hiện tại.”

Quản Lý
Món
PhânNhân Viên
 t  Bill: t.DateCheckIn
getdate()

Thống Kê

 Bối cảnh: Bill


Quản Lý
 Oder
Bảng tầm ảnh hưởng:
R1
Bill

Thêm

Xóa

Sửa

+

-

+

Hình 3. 2: Mô hình BFD

 R2= “Mọi hóa đơn đều có thời gian ra nhỏ hơn thời gian hiện tại.”
Trang 15


 t  Bill: t.DateCheckOut < getdate()
 Bối cảnh: Bill
 Bảng tầm ảnh hưởng:
R2


Thêm

Xóa

Sửa

Bill

+

-

+

 R3 = “Mọi hóa đơn có giảm giá phải lớn hơn hoặc bằng 0 và nhỏ hơn hoặc
bằng 100”
 t  Bill: t. DisPrice=< 100 and t. DisPrice>= 0
 Bối cảnh: Bill
 Bảng tầm ảnh hưởng:
R3

Thêm

Xóa

Sửa

Bill

+


+

+

3.4.1.2. Trong lược đồ quan hệ BillInfo
 R4 = “Mọi chi tiết hóa đơn có sô lượng phải lớn hơn 0”
 b  BillInfo: b.count > 0
 Bối cảnh: BillInfo
 Bảng tầm ảnh hưởng:
R4

Thêm

Xóa

Sửa

BillInfo

+

+

+

3.4.1.3. Trong lược đồ quan hệ Food
 R5 = “Mọi món ăn có giá tiền phải lớn hơn 0”
 c  Food: c.price > 0
 Bối cảnh: Food

 Bảng tầm ảnh hưởng:
R5

Thêm

Xóa

Sửa

Food

+

+

+
Trang 16


3.4.2. Ràng buộc toàn vẹn liên bộ
3.4.2.1. Trong lược đồ quan hệ DM_ManHinh
 R6:”Mỗi màn hình phải có mã là duy nhất”
 Mô tả: mh1 , mh2  DM_ManHinh: mh1≠ mh2, mh1.MaManHinh ≠
mh2.MaManHinh
 Bối cảnh: DM_ManHinh
 Bảng tầm ảnh hưởng:
R6

Thêm


Xóa

Sửa

DM_ManHinh

+

-

+

3.4.2.2. Trong lược đồ quan hệ QL_NhomNguoiDung
 R7:”Mỗi nhóm phải có mã là duy nhất”
 Mô tả: nh1 , nh2  QL_NhomNguoiDung: nh1≠ nh2, nh1.MaNhom ≠
nh2.MaNhom
 Bối cảnh: QL_NhomNguoiDung
 Bảng tầm ảnh hưởng:
R7

Thêm

Xóa

Sửa

QL_NhomNguoiDun
g

+


-

+

3.4.2.3. Trong lược đồ quan hệ Account
 R8:”Mỗi nhân viên phải có username là duy nhất”
 Mô tả: nv1 ,nv2  Account: nv1 ≠ nv2, nv1.UserName ≠ nv1.UserName
 Bối cảnh: Account
 Bảng tầm ảnh hưởng:
R8

Thêm

Xóa

Sửa

Account

+

-

+

3.4.2.4. Trong lược đồ quan hệ Bill
 R9:”Mỗi hóa đơn phải có số hóa đơn là duy nhất”
 Mô tả: hd1 ,hd2  Bill: hd1 ≠ hd2, hd1.id ≠ hd1.id
Trang 17



 Bối cảnh: Bill
 Bảng tầm ảnh hưởng:
R9

Thêm

Xóa

Sửa

Bill

+

-

+

3.4.2.5. Trong lược đồ quan hệ TableFood
 R10:”Mỗi bàn phải có mã bàn là duy nhất”
 Mô tả: b1 ,b2  TableFood: b1 ≠ b2, b1.id ≠ b1.id
 Bối cảnh: TableFood
 Bảng tầm ảnh hưởng:
R10

Thêm

Xóa


Sửa

TableFood

+

-

+

3.4.2.6. Trong lược đồ quan hệ lobby
 R11:”Mỗi sảnh phải có mã sảnh là duy nhất”
 Mô tả: s1 ,s2  lobby: s1 ≠ s2, s1.id ≠ s1.id
 Bối cảnh: lobby
 Bảng tầm ảnh hưởng:
R11

Thêm

Xóa

Sửa

lobby

+

-


+

3.4.2.7. Trong lược đồ quan hệ Food
 R12:”Mỗi món ăn phải có mã món ăn là duy nhất”
 Mô tả: m1 ,m2  Food: m1 ≠ m2, m1.id ≠ m1.id
 Bối cảnh: Food
 Bảng tầm ảnh hưởng:
R12

Thêm

Xóa

Sửa

Food

+

-

+
Trang 18


3.4.2.8. Trong lược đồ quan hệ FoodCategory
 R13:”Mỗi danh mục món ăn phải có mã danh mục là duy nhất”
 Mô tả: dm1 , dm2  FoodCategory: dm1 ≠ dm2, dm1.id ≠ dm1.id
 Bối cảnh: FoodCategory
 Bảng tầm ảnh hưởng:

R13

Thêm

Xóa

Sửa

FoodCategory

+

-

+

3.4.3. Ràng buộc toàn vẹn liên thuộc tính
3.4.3.1. Trong lược đồ quan hệ Bill
 R14= “Mọi hóa đơn đều có thời gian vào nhỏ hơn thời gian ra và nhỏ hơn
thời gian hiện tại.”
 t  Bill: t.DateCheckIn < t. DateCheckOut and t. DateCheckOut < getdate()
 Bối cảnh: Bill
 Bảng tầm ảnh hưởng:
R14

Thêm

Xóa

Sửa


Bill

+

-

+

 R15 = “Mọi hóa đơn có tổng tiền phải lớn 0 và lớn hơn số tiền giảm giá”
 t  Bill: t. TotalPrice >= 0 and t. TotalPrice > ( t. DisPrice* t. TotalPrice)
 Bối cảnh: Bill
 Bảng tầm ảnh hưởng:
R15

Thêm

Xóa

Sửa

Bill

-

-

+

3.4.4. Ràng buộc toàn vẹn liên bộ - liên quan hệ

 R16 = “Mỗi hóa đơn phải có ít nhất 1 chi tiết hóa đơn”
 t  Bill, c BillInfo : t.id = c.idBill
 Bối cảnh: Bill, BillInfo
Trang 19


 Bảng tầm ảnh hưởng:
R16

Thêm

Xóa

Sửa

Bill

-

+

+

BillInfo

+

-

+


 R17 = “Mỗi món ăn phải thuộc 1 danh mục món ăn”
 t  Food, c  FoodCategory: t.idCategory = c.id
 Bối cảnh: Food, FoodCategory
 Bảng tầm ảnh hưởng:
R17

Thêm

Xóa

Sửa

Food

-

+

+

FoodCategory

+

-

+

 R18 = “Mỗi bàn phải thuộc 1 sảnh”

 t  TableFood, c  lobby: t.idlobby = c.id
 Bối cảnh: TableFood, lobby
 Bảng tầm ảnh hưởng:
R18

Thêm

Xóa

Sửa

TableFood

-

+

+

lobby

+

-

+

3.4.5. Ràng buộc toàn vẹn do thuộc tính tổng hợp
 R19 = “Tổng thành tiền bằng số lượng*đơn giá”
 t  Bill, c BillInfo, d Food: t.TotalPrice= c.count*d.price

 Bối cảnh: Bill, BillInfo, Food
 Bảng tầm ảnh hưởng:
R19

Thêm

Xóa

Sửa

Bill

-

+

+

BillInfo

+

+

+

Food

+


+

+
Trang 20


3.5. THIẾT KẾ GIAO DIỆN
3.5.1. Form đăng nhập
Sau khi nhập vào Tên Đăng Nhập và Mật Khẩu, người dùng nhấn vào Button
Đăng Nhập. Đây là form sử dụng code Ado.net. Phần mềm sẽ tiến hành kiểm tra các
trường hợp và trả về kết quả.



Nếu nhập đúng: Load Form quản lí với quyền tương ứng với tài khoản.
Nếu nhập sai: Thông báo nhập sai và bắt đăng nhập lại. Đồng thời tính vào 1 lần

nhập sai, nếu nhập sai liên tục quá 3 lần thì sẽ bị thông báo khóa và phạt không thao
tác bất kỳ thứ gì trên form theo số giây quy định (thông báo lần 1 thì 10s, lần 2 thì
20s,...)
 Nếu chuỗi cấu hình sai: Xuất cấu lệnh sai chuỗi cấu hình và chuyển sang form
cấu hình.
3.5.2. Form cấu hình

Hình 3. 3: Giao diện đăng nhập

Hình 3. 4: Giao diện cấu hình

Tại đây người dùng sẽ tiến hành chỉnh sửa lại chuỗi cấu hình cho đúng. Đây là
form sử dụng code Ado.net. Nhấn OK sẽ lưu lại chuỗi cấu hình và quay về form

Đăng Nhập. Người dùng vẫn sẽ Tiến hành lại các bước đăng nhập.
Sau khi đăng nhập thành công, phần mềm sẽ chuyển sang form Quản Lý
Trang 21


×