Màn hình chính frmMain1 btnBan Button Hiển thị form Bàn 2 btnMon Button Hiển thị form Món 3 btnChitieu Button Hiển thị form Chi tiêu 4 btnNhanvien Button Hiển thị form Nhân viên 5 btnB
Trang 1Báo cáo đồ án môn Lập Trình Cơ Sở Dữ Liệu
Đề tài: Quản lý Quán Cafe
Trang 2MỤC LỤC
MÔ TẢ ĐỀ TÀI 2
I Đặt vấn đề 2
II Yêu cầu chức năng 3
III Yêu cầu phi chức năng 3
PHÂN TÍCH 4
I Phân tích mô hình dữ liệu 4
1) Các quy trình nghiệp vụ chính 4
2) Mô hình thực thể kết hợp ER 4
3) Thuyết minh cho mô hình thực thể ER 5
II Phân tích mô hình quan niệm xử lý (Các mô hình DFD) 7
Mô hình DFD cấp 1 7
Mô hình DFD cấp 2 7
Mô hình DFD cấp 3 8
THIẾT KẾ 9
I Thiết kế mô hình dữ liệu 9
1) Chuyển đổi từ mô hình ER sang mô hình quan hệ 9
2) Đánh giá nhận xét mô hình quan hệ 9
3) Mô tả toàn bộ các ràng buộc toàn vẹn 10
4) Biểu đồ cơ sở dữ liệu 11
II Thiết kế giao diện 12
1) Thiết kế thực đơn 12
2) Thiết kế các màn hình 14
III Thiết kế báo biểu 34
1) Danh sách các báo biểu 34
2) Các nguồn dữ liệu nhập, xuất 34
KẾT LUẬN 35
I Đánh giá 35
II Hướng phát triển trong tương lai 35
Trang 3MÔ TẢ ĐỀ TÀI
I Đặt vấn đề
Một quán café có bán các loại thức uống, món ăn, giá các món ăn, thức uống
có thể thay đổi trong khoảng thời gian Người quản lý quán muốn quản lý việc thu, chi hàng ngày của quán để làm cơ sở tính thu nhập, tính lương và thưởng cho nhân viên.
Mỗi bàn có một nhân viên phục vụ chính (khi khách vào, nhân viên nào rảnh
sẽ được chỉ định phục vụ chính cho bàn đó), có một mã số, số chỗ ngồi Khách hàng
có thể gọi thức uống, món ăn và được nhân viên phục vụ chính ghi nhận lại trên phiếu, chuyển phiếu đến bộ phận quản lý và bộ phận phục vụ thức uống, món ăn.
Dữ liệu này được nhân viên thu ngân nhập liệu vào máy trước khi chuyển sang bộ phận phục vụ thức uống.
Khách hàng có thể gọi món mới, thay đổi món, số lượng Tùy theo yêu cầu của khách hàng, nhân viên có chuyển bàn hoặc ghép bàn Có phụ thu cho khu vực bàn khác nhau (máy lạnh, sân vuờn ) Khi khách gọi tính tiền thì nhân viên thu ngân sẽ in hóa đơn tính tiền và nhân viên phục vụ thu tiền
Trong ngày, các loại chi cũng được ghi nhận lại, thông tin gồm có: nhóm chi (chi mua thực phẩm, thức uống, chi đầu tư cơ sở vật chất, chi lương, thưởng, chi khác,…), số tiền chi.
Cuối ngày người quản lý có thể xem các báo cáo thống kê số lượng bán và doanh thu các loại (từng món, theo bàn, theo nhân viên) theo từng ngày, từng tuần cũng như từng tháng hoặc một khoảng thời gian để nắm được tình hình lợi nhuận của quán
Trang 4Thiết kế hệ thống phần mềm quản lý nhằm hỗ cho quán cafe những nghiệp
Hỗ trợ xem các báo biểu được thống kê một cách rõ ràng như doanh thu của quán bao gồm tổng số tiền quán đã chi và tổng số tiền quán thu được trong một khoảng thời gian xác định, trong ngày, tháng, năm
cụ thể
Hỗ trợ chức năng phân loại người sử dụng hệ thống để xác định rõ quyền hạn của từng người sử dụng.
III Yêu cầu phi chức năng
Xây dựng một hệ thống quản lý quán cafe an toàn, chất lương cao với chi phí phù hợp.
Nâng cao hoạt động của quán cafe thông qua việc tin học hóa bộ phận quản lý và tiết kiệm chi phí.
Giảm các thời gian thống kê doanh thu của quán.
Trang 5I Phân tích mô hình dữ liệu
1) Các quy trình nghiệp vụ chính
Hỗ trợ chức năng nhập liệu, lưu tữ trữ thông tin của từng khu vực, từng bàn trong mỗi khu vực, nhân viên của quán Tra cứu nhanh các thông tin khu vực của quán, phụ thu cho mỗi khu vực, giá của từng món trong thực đơn, thông tin cá nhân của nhân viên quán.
Hỗ trợ chức năng theo dõi tiến độ làm việc của nhân viên.
Hỗ trợ cho việc đưa ra nhận xét và kết quả thống kê doanh thu và chi tiêu của quán.
Hỗ trợ việc xác định bàn thuộc khu vực nào trong quán, món trong thực đơn thuộc loại món nào, nhân viên giữ chức vụ là nhân viên phục vụ hay nhân viên thu ngân
Hỗ trợ chức năng in ấn phiếu chi và hóa đơn thanh toán.
2) Mô hình thực thể kết hợp ER
Trang 63) Thuyết minh cho mô hình thực thể ER
Thuộc tính mô tả cho các thực thể
Thực thể LOẠI MÓN : Mã loại món, Tên loại món
Thực thể MÓN : Mã món, Tên món, Giá.
Thực thể KHU VỰC : Mã khu vực, Tên khu vực, Phụ
thu.
Thực thể BÀN : Mã bàn, Tên bàn.
Thực thể NHÂN VIÊN : Mã nhân viên, Tên nhân viên,
CMND, Địa chỉ, Điện thoại, Ngày sinh, Ngày vào làm.
Thực thể NHÂN VIÊN PHỤC VỤ : Mã nhân viên.
Thực thể NHÂN VIÊN THU NGÂN : Mã nhân viên,
UserName.
Thực thể USER : UserName, Password, Admin.
Thực thể NHÓM CHI : Mã nhóm chi, Tên nhóm chi.
Thực thể PHIẾU CHI : Mã phiếu chi, Ngày chi, Tổng
tiền chi, Lí do chi.
Mối kết hợp CT PHIẾU CHI : Tiền chi.
Thực thể HÓA ĐƠN : Mã hóa đơn, Ngày hóa đơn,
Tổng tiền, Đã thanh toán.
Mối kết hợp CT HÓA ĐƠN : Đơn giá, Số lượng.
Về cách qui định đặt thuộc tính tham gia làm khóa chính cho các thực thể
Thực thể LOẠI MÓN có Mã loại món là khóa chính.
Thực thể MÓN có Mã món là khóa chính.
Thực thể KHU VỰC có Mã khu vực là khóa chính.
Trang 7 Thực thể NHÂN VIÊN PHỤC VỤ có Mã nhân viên là
khóa chính.
Thực thể NHÂN VIÊN THU NGÂN có Mã nhân viên
là khóa chính.
Thực thể USER có UserName là khóa chính.
Thực thể NHÓM CHI có Mã nhóm chi là khóa chính.
Thực thể PHIẾU CHI có Mã phiếu chi là khóa chính.
Mối kết hợp CT PHIẾU CHI lấy khóa chính của các
thực thể PHIẾU CHI và NHÓM CHI để làm khóa
chính.
Thực thể HÓA ĐƠN có Mã hóa đơn là khóa chính.
Mối kết hợp CT HÓA ĐƠN lấy khóa chính của các
thực thể HÓA ĐƠN và MÓN để làm khóa chính.
Ghi chú
Thuộc tính Admin trong thực thể USER có thể là:
UserName là Admin (chủ quán).
UserName không là Admin (nhân viên thu ngân).
Thuộc tính Đã thanh toán trong thực thể HÓA ĐƠN có
thể là:
Hóa đơn đã được thanh toán.
Hóa đơn chưa được thanh toán.
Trang 8II Phân tích mô hình quan niệm xử lý (Các mô hình DFD)
Mô hình DFD cấp 1
Mô hình DFD cấp 2
Phiếu gọi món Thông tin tra cứu
Hóa đơn Kết quả tra cứu
Thông tin món,
cơ sở vật chất Thông tinnhân viên
Thông tin món, cơ sở vật chất Thông tin nhân viên
Thông tin gọi món
Hóa đơnThông tin
chi tiêuPhiếu chi thông tinYêu cầu Tra cứuKết quả
Trang 9 Mô hình DFD cấp 3
Phiếu chi
Dữ liệuphiếu chi
Dữ liệunhân viên
Hóa đơn
Dữ liệuhóa đơn
Dữ liệuhóa đơn
Trang 10THIẾT KẾ
I Thiết kế mô hình dữ liệu
1) Chuyển đổi từ mô hình ER sang mô hình quan hệ
2) Đánh giá nhận xét mô hình quan hệ
Chúng ta có mô hình quan hệ trên là tốt nhất đối với yêu cầu của hệ thống.
Trang 113) Mô tả toàn bộ các ràng buộc toàn vẹn
R1: Username trong quan hệ NHANVIENTHUNGAN là duy nhất.
Thuật toán:
nv1 NHANVIENTHUNGAN
nv2 NHANVIENTHUNGAN Nếu nv1.MaNV nv2.MaNV Thì nv1.UserName nv2.UserName Cuối nếu
Cuối
Cuối
B ng t m nh h ng: ảng tầm ảnh hưởng: ầm ảnh hưởng: ảng tầm ảnh hưởng: ưởng:
Cuối
Cuối
B ng t m nh h ng: ảng tầm ảnh hưởng: ầm ảnh hưởng: ảng tầm ảnh hưởng: ưởng:
Trang 124) Biểu đồ cơ sở dữ liệu
Trang 13II Thiết kế giao diện
In phiếu chi Nhân viên Nhóm chi Loại món Món Khu vực
Trang 14Tra cứu
Báo cáo
Nhân viên Nhóm chi Loại món Món Khu vực Bàn
Doanh thu nhân viên theo thời gian Doanh thu từng món theo thời gian Doanh thu khu vực theo thời gian Doanh thu của quán theo thời gian
Trang 15frmPhanQuyen frmResetPass frmDoiPass
frmThongtinquan
frmBan
frmChitieu frmSuahoadon
frmInphieuchi
Trang 16b) Mô tả các màn hình chính
Màn hình đăng nhập (Loginform)
1 Usernametextbox Textbox Nhập user người dùng
2 Passwordtextbox Textbox Nhập password người dùng
3 OK Button Đăng nhập người dùng
4 Cancel Button Đóng màn hình
Màn hình Reset password (frmResetPass)
1 txtPass Textbox Nhập password sẽ reset
Trang 17 Màn hình chính (frmMain)
1 btnBan Button Hiển thị form Bàn
2 btnMon Button Hiển thị form Món
3 btnChitieu Button Hiển thị form Chi tiêu
4 btnNhanvien Button Hiển thị form Nhân viên
5 btnBaocao Button Hiển thị form Báo cáo
6 btnPhanquyen Button Hiển thị form Phân quyền
7 btnDoimatkhau Button Hiển thị form Đổi mật khẩu
8 btnThongtinquan Button Hiển thị form Thông tin quán
9 btnThoat Button Thoát chương trình
10 cmbKhuvuc Combobox Chọn khu vực
11 cmbBan Combobox Chọn bàn
12 cmbLoaimon Combobox Chọn loại món
13 cmbNVPV Combobox Chọn nhân viên phục vụ
14 cmbSoluong Combobox Chọn số lượng
15 lstMon Listbox Chọn món
16 grddsBan Datagridview Hiển thị hóa đơn
17 btnThem Button Thêm món
18 btnSuaHD Button Sửa hóa đơn
19 btnThemHD Button Thêm hóa đơn
Trang 18 Màn hình phân quyền (frmPhanQuyen)
1 txtUser Textbox Nhập tên user
2 txtPass Textbox Nhập password cho user
3 txtTim Textbox Nhập tên nhân viên cần tìm
4 btnXoa Button Xóa user
5 btnTim Button Tìm user
6 btnResetPass Button Reset password user
7 btnAddAdmin Button Cấp quyền admin
8 btnRemoveAdmin Button Xóa quyền admin
9 btnThem Button Thêm user
10 ckbAdmin Checkbox Chọn quyền admin
11 grdNhanVien Datagridview Hiển thị thông tin nhân viên
12 optCoUser RadioButton Lựa chọn để hiển thị nhữngnhân viên đã cấp user
13 optChuaCoUser RadioButton Lựa chọn để hiển thị nhữngnhân viên chưa cấp user
14 optAdmin RadioButton
Lựa chọn để hiển thị nhữngnhân viên có user có quyềnadmin
Trang 19 Màn hình đổi mật khẩu (frmDoiPass)
1 txtPassCu Textbox Nhập password cũ
2 txtPassMoi Textbox Nhập password mới
3 btnOK Button Thay đổi password
4 btnThoat Button Đóng màn hình đổi mật khẩu
Trang 20 Màn hình thông tin quán (frmThongtinquan)
1 txtTenQuan Textbox Nhập tên quán
2 txtDiaChi Textbox Nhập địa chỉ quán
3 txtDienThoai Textbox Nhập số điện thoại quán
4 txtFax Textbox Nhập số fax quán
5 txtEmail Textbox Nhập địa chỉ email quán
6 txtWebsite Textbox Nhập địa chỉ website quán
7 btnThayDoi Button Cập nhật thông tin quán
8 btnThoat Button Đóng màn hình thông tin quán
Trang 21 Màn hình sửa hóa đơn (frmSuahoadon)
1 txtTenmon Textbox Nhập tên món
2 txtDongia Textbox Nhập đơn giá cho món
3 cboSoLuong Combobox Chọn số lượng món
4 grdChitiethoadon Datagridview Hiển thị thông tin món trong
hóa đơn
5 btnSua Button Sửa thông tin món trong hóđơn
6 btnXoa Button Xóa món trong hóa đơn
7 btnDoiban Button Đổi bàn cho hóa đơn
8 cboBanhd Combobox Chọn khu vực của quán
Trang 22 Màn hình chi tiêu của quán (frmChitieu)
Nhóm chi
1 txtTenNhomChi Textbox Nhập tên nhóm chi
2 btnThemNhomChi Textbox Thiết lập trạng thái thêm nhómchi
3 btnXoaNhomChi Button Xóa nhóm chi đã chọn trong
bảng nhóm chi (grdNhomChi)
4 btnSuaNhomChi Button Thiết lập trạng thái sửa nhómchi
5 btnLuuNhomChi Button Thêm mới nhóm chi hoặc cập
nhật thông tin nhóm chi
Trang 23 Lập phiếu chi
1 cboNhomchi Combobox Chọn nhóm chi
2 txtTienchi Textbox Nhập số tiền chi
3 txtLydochi Textbox Nhập lý do chi Multiline
4 grdPhieuchi Datagridview Chứa thông tin chi tiết các
phiếu chi
5 btnThemchitieu Button Thêm mới chi tiết chi vào bảngchi tiêu (grdPhieuchi)
6 btnSuachitieu Button Sửa chi tiết chi đã chọn trong
bảng chi tiêu (grdPhieuchi)
7 btnXoachitieu Button Xóa chi tiết chi đã chọn trongbảng chi tiêu (grdPhieuchi)
8 btnInphieuchi Button Thêm mới phiếu chi và in
phiếu chi
Trang 24 Màn hình in phiếu chi (frmInphieuchi)
1 CrystalReportViewerInphieuchi CrystalReportViewer Chứa CrystalReport (CrystalReportCTphieuchi)
2 CrystalReportCTphieuchi CrystalReport Hiển thị dữ liệu phiếu chi
Trang 25 Màn hình quản lý thông tin nhân viên (frmNhanvien)
Thông tin nhân viên
1 txtNhanvien Textbox Nhập họ tên nhân viên
2 txtCMND Textbox Nhập số CMND nhân viên
3 txtDiaChi Textbox Nhập địa chỉ nhân viên Multiline
4 txtdienthoai Textbox Nhập số điện thoại nhân viên
5 dtpNgaysinh DateTimePicker Chọn ngày sinh nhân viên
6 dtpNgayvaolam DateTimePicker Chọn ngày vào làm của nhân viên
7 grdNhanVien Datagridview Chứa thông tin của các nhân viên
8 btnThem Button Thiết lập trạng thái thêm nhân viên
9 btnXoa Button Xóa nhân viên đã chọn trong bảngthông tin nhân viên (grdNhanVien)
10 btnSua Button Thiết lập trạng thái sửa nhân viên
11 btnLuu Button Thêm mới nhân viên hoặc cập nhậtthông tin nhân viên
12 btnHuy Button Hủy trạng thái thêm, sửa nhân viên
Trang 26 Chức vụ
1 lblTenNV Label Hiển thị họ tên nhân viên
2 optChonNVPV RadioButton Chọn chức vụ phục vụ cho nhân viên
3 optChonNVTN RadioButton Chọn chức vụ thu ngân cho nhân viên
4 optNVPV RadioButton Chọn nhân viên là nhân viên phục vụđể tra cứu
5 optNVTN RadioButton Chọn nhân viên là nhân viên thu ngân
để tra cứu
6 optNVChuaCoCV RadioButton Chọn nhân viên chưa có chức vụ để tra
cứu
7 lnklblCapNhat LinkLabel Click để thực hiện chức năng cấp chức
vụ cho nhân viên
8 grdNhanVien2 Datagridview Chứa thông tin của các nhân viên
9 txtTim Textbox Nhập tên nhân viên để tra cứu
Trang 27 Màn hình quản lý thông tin Khu vực/Bàn (frmBan)
Khu vực
1 txtTenkv Textbox Nhập tên khu vực
2 txtPhuthu Textbox Nhập phụ thu cho khu vực
3 grdDskhuvuc Datagridview Hiển thị thông tin từng khu vực
4 btnThemKV Button Thiết lập trạng thái thêm khu vực
5 btnXoaKV Button Xóa khu vực đã chọn trong bảng
thông tin khu vực (grdDskhuvuc)
6 btnSuaKV Button Thiết lập trạng thái sửa khu vực
7 btnLuuKV Button Thêm mới khu vực hoặc cập nhậtthông tin khu vực
8 btnHuyKV Button Hủy trạng thái thêm, sửa khu vực
Trang 28 Bàn
1 cboKhuvucB Combobox Chọn khu vực
2 txtTenban Textbox Nhập tên bàn
3 grdDsban Datagridview Hiển thị thông tin từng bàn trongkhu vực
4 btnThemB Button Thiết lập trạng thái thêm bàn
5 btnXoaB Button Xóa bàn đã chọn trong bảng thông
tin bàn (grdDsban)
6 btnSuaB Button Thiết lập trạng thái sửa bàn
7 btnLuuB Button Thêm mới bàn hoặc cập nhật thông
tin bàn
8 btnHuyB Button Hủy trạng thái thêm, sửa bàn
Trang 29 Màn hình quản lý thông tin Loại món/Món (frmThucdon)
Loại món
1 txtTenloaimon Textbox Nhập tên loại món
2 grdDsloaimon Datagridview Hiển thị thông tin tên các loại món
3 btnThemloaimon Button Thiết lập trạng thái thêm loại món
4 btnXoaloaimon Button Xóa loại món đã chọn trong bảngthông tin loại món (grdDsloaimon)
5 btnSualoaimon Button Thiết lập trạng thái sửa loại món
6 btnLuuloaimon Button Thêm mới loại món hoặc cập nhậtthông tin loại món
7 btnHuyloaimon Button Hủy trạng thái thêm, sửa loại món
Trang 30 Món
1 txtTenmon Textbox Nhập tên món
2 cboLoaimon Combobox Chọn loại món để thêm, cập nhật
3 txtDongia Textbox Nhập đơn giá cho món
4 cboShowloaimon Combobox Chọn loại món để hiển thị trên bảngthông tin món (grdDsmon)
5 grdDsmon Datagridview Hiển thị thông tin các món
6 btnThemmon Button Thiết lập trạng thái thêm món
7 btnXoamon Button Xóa món đã chọn trong bảng thông
tin món (grdDsmon)
8 btnSuamon Button Thiết lập trạng thái sửa món
9 btnLuumon Button Thêm mới món hoặc cập nhật thôngtin món
10 btnHuymon Button Hủy trạng thái thêm, sửa món
Trang 31 Màn hình thống kê (frmBaocao)
Tra cứu phiếu chi
1 rdbNgayphieuchi RadioButton Sử dụng chức năng tra cứutheo ngày
2 rdbThangphieuchi RadioButton Sử dụng chức năng tra cứu
theo tháng
3 rdbNamphieuchi RadioButton Sử dụng chức năng tra cứutheo năm
4 rdbKhongtgphieuchi RadioButton Sử dụng chức năng tra cứu
theo khoảng thời gian
5 chkNVphieuchi CheckButton Sử dụng chức năng chọnnhân viên
6 cboNVThunganphieuchi Combobox Chọn nhân viên để tra cứu
7 dtpNgay1phieuchi DateTimePicker Chọn thời điểm bắt đầu
8 dtpNgay2phieuchi DateTimePicker Chọn thời điểm kết thúc
9 txtLidochi Textbox Hiển thị lý do chi Multiline
10 grdPhieuchi Datagridview Hiển thị thông tin các phiếu
chi
11 grdCTphieuchi Datagridview Hiển thị thông tin các chitiết phiếu chi
12 btnTimphieuchi Button Tra cứu phiếu chi
Trang 32 Thống kê nhân viên
1 optNVTN RadioButton Sử dụng chức năng thống
kê theo NVTN
2 optNVPV RadioButton Sử dụng chức năng thốngkê theo NVPV
3 optNgayTKNV RadioButton Sử dụng chức năng thống
kê theo ngày
4 optThangTKNV RadioButton Sử dụng chức năng thốngkê theo tháng
5 optNamTKNV RadioButton Sử dụng chức năng thống
kê theo năm
6 optKhoangThoiGianTKNV RadioButton Sử dụng chức năng thốngkê theo khoảng thời gian
7 dtpTKNV1 DateTimePicker Chọn thời điểm bắt đầu
8 dtpTKNV2 DateTimePicker Chọn thời điểm kết thúc
Chứa CrystalReport