Hơn nữa khi chúng ta quản lý bằng cách như vậy thì sẽ gặp rấtnhiều khó khăn trong việc tìm kiếm và chỉnh sửa thông tin của một nhân viên hay loại thứcuống nào đó.. TAIKHOAN_MANHANVIEN ph
KHẢO SÁT THỰC TẾ VÀ NGHIÊN CỨU KHẢ TH
Khảo sát thực tế (đi thực tế hoặc giả lập)
Hiện nay nhu cầu uống coffe tăng, với lượng khách càng ngày càng tăng, để phục vụ khách được tốt hơn, chính xác hơn và nhanh chóng hơn thì chủ quán đang từng bước tin học hoá các khâu quản lí Đặc biệt là trong công tác kế toán và quản lí hàng hoá,đồ uống Bởi vì với công tác thủ công trước đó mà cửa hàng thực hiện đã bộc lộ nhiều hạn chế như sau:
- Tra cứu thông tin về hàng hoá, các đại lí cung cấp hàng và khách hàng mất nhiều thời gian và nhiều khi không chính xác.
- Lưu trữ thông tin về nhập xuất hàng hoá, về thu chi cần nhiều loại giấy tờ nên cồng kềnh và không đạt hiệu quả
- Cập nhật các thông tin hằng ngày tốn nhiều thời gian và khó khăn trong việc thực hiện báo cáo thống kê, nhất là khi có sự việc đột xuất
Trước tình hình đó vấn đề đặt ra là xây dựng một hệ thống thông tin mới hoàn thiện hơn đáp ứng được các yêu cầu cơ bản sau:
- Giảm khối lượng ghi chép nhằm lưu trữ thông tin
- Cập nhật dữ liệu nhanh chóng, chính xác và kịp thời
- Thống kê được số lượng hàng hoá nhập xuất,thu chi và tình hình doanh thu của cửa hàng.
- Tự động in các hoá đơn cần thiết như: phiếu yêu cầu nhập hàng, hoá đơn nhập hàng, phiếu thu, phiếu chi
- Có khả năng lưu trữ thông tin lâu dài, đảm bảo truy vấn nhanh khi cần thiết
Nhu cầu khả thi của bài toán
Chọn bài toán QUẢN LÝ QUÁN CAFE
+ Quản lí: TAIKHOAN, MATKHAU, MANHANVIEN, MABAN, MAHOADON, MADOUONG, GIOBD, GIOKT, MACALAM, DOANHTHU, LUONGNHANVIEN
TAIKHOAN_MANHANVIEN (phân biệt tài khoản của từng nhân viên)
MANHANVIEN_MACALAM (phân biệt nhân viên nào của ca làm nào, kiểm tra việc nhân viên đăng kí trùng ca)
MABAN_MANHANVIEN_MAHOADON (phân biệt và biết được nhân viên đang phụ trách bàn nào)
DOANHTHU (thống kê doanh thu hằng ngày hoặc hằng tháng)
DOANHTHU_MANHANVIEN (thống kê lương của nhân viên hằng tháng) + Nhân viên: nhân viên chỉ cần 1 số chức năng để tạo hóa đơn, quản lí bàn cũng như thanh toán cho khách -TAIKHOAN, MATKHAU, MANHANVIEN
MÔ TẢ TÓM TẮT BÀI TOÁN
Một quán Cafe cần tin học hóa khâu quản lý quán Cafe như sau:
- Một chỗ cho bán Cafe có nhiều bàn khác nhau được phân biệt với nhau bằng số bàn Để có thể bắt đầu cho việc quản lý quán Cafe đầu tiên chúng ta sẽ cấp cho họ admin để đăng nhập quản lý hệ thống nên đăng ký cho nhân viên mỗi bạn một tài khoản riêng biệt trên thiết bị để dễ kiểm soát hóa đơn và vị trí đứng nhận bàn của từng nhân viên gồm các thông tin như: Mã nhân viên, Tên nhân viên, Địa chỉ, SĐT, Ngày sinh Sau khi đăng ký thì nhân viên sẽ đăng nhập tài khoản gồm các thông tin sau: Mã nhân viên, Mật khẩu (Hệ thống quản lý có thể đăng ký nhiều tài khoản admin khác nhau hoặc có thể sử dụng 1 admin cho nhiều hệ thống tùy thuộc vào ý của chủ quán (người mua hệ thống quản lý))
- Quản lý có thể thay đổi menu thêm sửa các món, sửa lại hóa đơn (số bàn khách ngồi), doanh số cuối tháng và tổng đơn trong ca (ngày).
- Sau khi đã có tài khoản cho nhân viên thì chúng ta sẽ đăng nhập vào và chọn ca làm phù hợp Để có thể chọn được ca làm trên hệ thống thì hệ thống sẽ yêu cầu các thông tin như: Mã ca, Tên ca, Giờ bắt đầu, Giờ kết thúc, Giá tiền làm theo tiếng
- Để có thể giúp quản lý thống kê và trả lương chính xác nhất thì chúng ta cần có bảng chi tiết lương nhân viên bao gồm: Mã ca, Mã nhân viên, Lương tháng,Thành tiền.
- Tùy thuộc vào quy mô kinh doanh của quán thì số lượng bàn trong mỗi quán sẽ thay đổi khác nhau Khi khách đến quán ngồi và chọn lựa bàn để ngồi thì nhân viên sẽ đến để gợi ý menu và đợi khách gọi món Để có thể kiểm soát tốt được số lượng khách đông hay ít không sợ bị bỏ sót khách, tùy thuộc trên số bàn được ngồi cũng như có thể kiểm tra được thái độ của nhân viên với khách để dễ khiển trách thì ta sẽ có bảng bàn với các thuộc tính như: Mã bàn, Mã nhân viên, Tên bàn.
- Về thức uống của quán thường sẽ khá đa dạng nên chúng ta sẽ chia ra thành nhiều loại thức uống với thuộc tính: Mã loại, Tên loại Khi đã phân loại thức uống để dễ tạo thành menu trên hệ thống quản lý thì chúng ta sẽ tạo ra bảng thức uống để dễ cập nhật, thay đổi, chỉnh sửa menu với các thuộc tính như: Mã thức uống, Tên thức uống, Giá, Mã loại Ngoài ra nếu khách muốn thay đổi món order ngay lúc gọi món thì nhân viên cũng có thể chỉnh sửa (chỉ cần sửa trước khi làm món thức uống là được).
- Khi đã thư giãn và uống nước xong khách có thể gọi nhân viên ra để thanh toán. Lúc này bạn nhân viên sẽ vào hệ thống để xuất hóa đơn ra với các thuộc tính như:
Mã hóa đơn, Mã nhân viên, Mã bàn, Ngày xuất hóa đơn, Thành tiền Và sau đó vào chi tiết hóa đơn để xuất hóa đơn ra gửi khách bao gồm các thuộc tính là: Mã thức uống, Số lượng, Mã hóa đơn, Đơn giá Ngoài ra về phương thức thanh toán khách có thể chọn lựa giữa việc thanh toán tiền mặt hoặc thanh toán bằng ví điện tử.
- Vào thời gian cuối tháng, hệ thống sẽ tự tính ra doanh thu trong tháng cho quán để xem được số tiền kiếm được trong 1 tháng theo số hóa đơn thanh toán ngồi tại quán và hóa đơn bán mang về của quán.
ĐỀ XUẤT CSDL THÍCH HỢP CHO BÀI TOÁN
Sơ đồ CSDL quan hệ - ERD
Hình 1 – Mô hình ERD (biểu diễn bằng Case Studio)
Danh sách các bảng
1 Loại thức uống Thông tin loại thức uống
2 Thức uống Thông tin thức uống
3 Chi tiết hóa đơn Thông tin chi tiết hóa đơn
4 Hóa đơn Thông tin hóa đơn
6 Nhân viên Thông tin của nhân viên
7 Chi tiết lương nhân viên Thông tin chi tiết lương nhân viên
8 Quản lý ca làm Thông tin quản lý ca làm
9 Tài khoản Thông tin tài khoản
10 Loại tài khoản Thông tin loại tài khoản
Chuyển từ mô hình ERD sang lượt đồ quan hệ
Loại Thức Uống: (Mã Loại, Tên Loại)
Thức Uống: (Mã Thức Uống, Tên, Đơn Giá, Mã Loại)
Chi Tiết Hóa Đơn: (Mã Hóa Đơn, Mã Thức Uống, Số Lượng)
Hóa Đơn: (Mã Hóa Đơn, Ngày Xuất, Mã Nhân Viên, Mã Bàn)
Bàn: (Mã Bàn, Tên Bàn)
Nhân Viên: (Mã Nhân Viên, Tên Nhân Viên, Địa Chỉ, Ngày Sinh)
Chi Tiết Lương Nhân Viên: (Mã Nhân viên, Mã Ca, Thành Tiền, Lương Tháng) Quản lý Ca Làm: (Mã Ca, Tên Ca, Giờ Bắt Đầu, Giờ Kết Thúc, Số Tiền) Tài Khoản: (Mã Nhân Viên, Mật khẩu)
Loại Tài Khoản: (Mã loại tài khoản, Tên tài khoản)
Quan hệ: Loại thức uống
STT Thuộc tính Kiểu Độ dài Ý nghĩa Ràng buộc
1 Mã Loại VARCHAR 10 Mã loại PK
2 Tên Loại NVARCHAR 50 Tên Loại Not Null
Quan hệ: Thức uống
STT Thuộc tính Kiểu Độ dài Ý nghĩa Ràng Buộc
1 Mã Thức Uống VARCHAR 10 Mã thức uống PK
2 Tên NVARCHAR 50 Tên thức uống Not Null
3 Đơn Giá DOUBLE 200 Giá thức uống Gia Ban >0
4 Mã Loại VARCHAR 10 Mã loại FK
Quan hệ: Chi tiết hóa đơn
STT Thuộc tính Kiểu Độ dài Ý nghĩa Ràng Buộc
1 Mã Hóa Đơn VARCHAR 10 Mã hóa đơn FK
2 Mã Thức Uống VARCHAR 10 Mã thức uống FK
3 Số Lượng INT 200 Số lượng >=0
Quan hệ: Hóa đơn
STT Thuộc tính Kiểu Độ dài Ý nghĩa Ràng Buộc
1 Mã Hóa Đơn VARCHAR 10 Mã hóa đơn PK
3 Mã Nhân Viên VARCHAR 10 Mã nhân viên FK
4 Mã Bàn VARCHAR 10 Mã bàn FK
Quan hệ: Bàn
STT Thuộc tính Kiểu Độ dài Ý nghĩa Ràng Buộc
1 Mã Bàn VARCHAR 10 Mã bàn PK
2 Tên Bàn NVARCHAR 50 Tên bàn FK
Quan hệ: Nhân viên
STT Thuộc tính Kiểu Độ dài Ý nghĩa Ràng
1 Mã Nhân Viên VARCHAR 10 Mã nhân viên PK
2 Tên Nhân Viên NVARCHAR 50 Tên nhân viên Not Null
3 Địa Chỉ NVARCHAR 50 Địa chỉ Not Null
Quan hệ: Chi tiết lương nhân viên
STT Thuộc tính Kiểu Độ dài Ý nghĩa Ràng Buộc
1 Mã Nhân viên VARCHAR 10 Mã nhân viên FK
2 Mã Ca VARCHAR 10 Mã ca FK
3 Thành Tiền INT 50 Thành tiền >0
4 Lương Tháng INT 50 Lương tháng >0
Quan hệ: Quản lý ca làm
STT Thuộc tính Kiểu Độ dài Ý nghĩa Ràng Buộc
1 Mã Ca VARCHAR 10 Mã ca PK
2 Tên Ca NVARCHAR 50 Tên ca Not Null
5 Số Tiền INT Số tiền >0
Quan hệ: Tài khoản
STT Thuộc tính Kiểu Độ dài Ý nghĩa Ràng Buộc
1 Mã Nhân Viên VARCHAR 10 Mã nhân viên PK
2 Mật khẩu NVARCHAR 50 Mật khẩu Not Null
Quan hệ: Loại tài khoản
STT Thuộc tính Kiểu Độ dài Ý nghĩa Ràng Buộc
VARCHAR 10 Mã loại tài khoản
2 Tên Tài Khoản NVARCHAR 50 Tên tài khoản Not Null
UseCase Đăng nhập
Hình 2 - Sơ đồ UseCase đăng nhập và đăng ký tài khoản cho nhân viên UC-0.1
UseCase Quản lý nhân viên
Hình 3 – Sơ đồ UseCase quản lý thông tin nhân viên UC-0.2
UseCase Quản lý thức uống
Hình 4 – Sơ đồ UseCase quản lý thức uống UC-0.3
UseCase Quản lý bán hàng
Hình 4 – Sơ đồ UseCase quản lý bán hàng UC-0.4
UseCase Thống kê
Hình 5 – Sơ đồ UseCase Thống kê UC-0.5
Activity đăng nhập
Activity quản lí nhân viên
Hình 7 - Activity quản lý nhân viên
Activity quản lý bàn
Hình 8 - Activity quản lý bàn
Sequence Diagram Đăng nhập
Hình 9 - Sequence Diagram Đăng nhập
Sequence Diagram Quản lý bàn
Hình 10 - Sequence Diagram Quản lý bàn
Sequence Diagram Quản lý nhân viên
Hình 11 - Sequence Diagram Quản lý nhân viên
CÁC QUY TẮC QUẢN LÝ DỰA TRÊN PHỤ THUỘC HÀM VÀ ĐÁNH GIÁ LƯỢC ĐỒ CSDL
3) MANHANVIEN TENNHANVIEN DIACHI, TENNHANVIEN NGAYSINH, TENNHANVIEN SDT
4) MACA TENCA GIOBATDAU, TENCA GIOKETTHUC,
5) MATAIKHOAN TENTAIKHOAN, MATAIKHOAN MANHANVIEN, MATAIKHOAN MATKHAU
6) MABAN TENBAN, MABAN MAHOADON NGAYXUAT
NHANVIEN ( MANV, TENNHANVIEN, DIACHI, NGAYSINH, SDT)
QUANLYCALAM ( MACA, TENCA, GIOBATDAU, GIOKETTHUC, SOTIEN)
- Xét lược đồ, quan hệ NHANVIEN, QUANLYCALAM, TAIKHOAN, BAN, HOADON, THUCUONG, LOAITHUCUONG mọi thuộc tính đều là thuộc tính đơn.
- Tất cả thuộc tính không khóa đều phụ thuộc đầy đủ vào các khóa của lược đồ.
- Mọi thuộc tính không khóa đều không phụ thuộc bắc cầu vào một khóa nào của lược đồ
=> Sau khi đánh giá, lược đồ thuộc dạng chuẩn 3
PHỤ THUỘC ĐA TRỊ
- MATHUCUONG ->> MALOAI là phụ thuộc đa trị => Không dư thừa thuộc tính.
- MAHOADON->> MANHANVIEN, MABAN là phụ thuộc đa trị => Không dư thừa thuộc tính.
- MABAN->> MANHANVIEN là phụ thuộc đa trị => Không dư thừa thuộc tính
- MATHUCUONG, MAHOADON->> MATAIKHOAN là phụ thuộc đa trị => Không dư thừa thuộc tính.
XÂY DỰNG ĐỒ THỊ QUAN HỆ
Hình 6 – Tạo cung và quan hệ cung
PTH(NI ) PTH_THUA(NI
Rỗng Rỗng Rỗng Rỗng Rỗng
Rỗng Rỗng Rỗng Rỗng Rỗng
Rỗng Rỗng Rỗng Rỗng Rỗng
TENLOAI) Rỗng Rỗng Rỗng Rỗng Rỗng
CON ĐƯỜNG TRUY XUẤT VÀ NGỮ NGHĨA
8->9->10: Truy xuất thông tin mã thức uống và loại thức uống để đưa vào chi tiết hóa đơn 8->7->1: Truy xuất thông tin mã nhân viên xuất hóa đơn
8->7->6->1: Truy xuất thông tin mã bàn và nhân viên phụ trách bàn được thanh toán 8->4: Truy xuất quyền sửa hóa đơn
2->3: Truy xuất thông tin ca làm của nhân viên
2->1: Truy xuất nhân viên từ ca làm để tính lương
5->1: Truy xuất mã nhân viên từ tài khoản
5->4: Truy xuất quyền tài khoản
TRUY VẤN VÀ THỐNG KÊ
Đăng nhập và phân quyền
Insert bill info (chi tiết hóa đơn)
Thêm discount vào bảng bill và update bảng bill gán discount về = 0
Thêm tổng tiền vào bảng bill
Nhận danh sách hóa đơn theo ngày