1. Trang chủ
  2. » Công Nghệ Thông Tin

Đồ án cơ sở dữ liệu, khoa công nghệ thông tin (1)

11 20 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 11
Dung lượng 273,27 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

o Nhân viên thu ngân sẽ tiến hành lập hóa đơn cho khách và để hóa đươn đó ở trạng thái chờ thanh toán.. Khi khách hàng dùng xong sản phẩm và muốn thanh toán thì sẽ đi ra đi ra quầy thu n

Trang 1

Chương I : Mô hình và bài toán nghiệp vụ của quán café

A Những vẫn đề cần đặt ra

1 Nhiệm vụ và mục đích hoạt động

- Nhiệm vụ của quàn café là bằng cách đáp ứng nhu cầu của khách hàng một cách tốt nhất với những đồ

ăn, đồ uống và thư dãn để đạt được thu nhâ[pj cao troing điều kiện có thể Rõ ràng là, để đáp ứng được nhu cầu của khách hàng một cách tốt nhất, cửa hàng cần phải có danh mục sản phẩm da dạng và chất lượng Bên cạnh đó là sự phục vụ nhanh chóng và niềm nởi của nhân viên Những yêu cầu đặt ra tuy đơn giản nhưng không dễ thực hiện vì mỗi cửa hàng luôn tồn tại những hạn chế về không gian, quy mô và nguồn lực

2 Mô hình tổ chức và cơ chế hoạt động

- Quản lý nhóm sản phẩm

Do quán kinh doanh nhiều loại sản phẩm nên nhóm sản phẩm được đưa ra để phân loại những sản phẩm cũng loại Mỗi một nhóm sẽ có một mã để định danh

và đi kèm theo là tên nhóm

- Quản lý danh mục sản phẩm

Mỗi một sản phẩm đều được chia vào 1 nhóm sản phẩm Những sản phẩm này cũng được đánh mã sản phẩm và được ghi tên cùng với giá cả để cho khách hàng dễ dàng chọn lựa

- Quản lý bàn:

Khi khách vào quán thì khách sẽ chọn chỗ ngồi phù hợp( một mình, nhóm từ 3 đến 5 người, nhóm 10 người) Mỗi bàn được đánh mã số(được ghi ở trên mặt bàn) để thuận tiện cho việc quản lý cũng như việc phục vụ khách hàng được nhanh chóng Khi bàn đang có khách thì trạng trái sẽ là bận còn khi khách rời đi thì sẽ trở lại trạng thái chờ

- Quản lý bán hàng

o Khi khách hàng đã ngồi vào bàn thò sẽ có nhân viên đến để phục vụ Nhân viên sẽ đưa menu để cho khách hàng lựa chọn sản phẩm Các sản phẩm khách yêu cầu sẽ được nhân viên ghi lại

và đưa về quầy

Trang 2

o Nhân viên thu ngân sẽ tiến hành lập hóa đơn cho khách và để hóa đươn đó ở trạng thái chờ thanh toán Khi khách hàng dùng xong sản phẩm và muốn thanh toán thì sẽ đi ra đi ra quầy thu ngân để thanh toán hóa đơn Sau khi nhân tiền từ khách thì nhân viên thu ngân sẽ xuất hóa đơn và đưa cho khách hàng

o Mỗi một hóa đơn sẽ bao gồm: Mã hóa đơn,Mã nhóm sản phẩm, Mã SP, Mã bàn, Số lượng,…

- Quản lý nhân viên

Mỗi một nhân viên sẽ có một nghiệp vụ riêng: thu ngân, phục vụ,pha chế,… Mỗi nhân viên sẽ được quản lý bởi mã nhân viên Thông tin về nhân viên bao gồm: Mã nhân viên, Tên nhân viên,…

- Báo cáo

Hàng tuần , tháng, nhân viên quản lý quản lý quầy phải làm báo cáo cho chủ cửa hàng thông tin về

doanh thu và các mặt hàng bán được Những thông tin này giúp chủ cửa hàng có thể lập kế hoạch mua các vật tư và thực phẩm phục vụ việc chế biến sản phẩm đáp ứng yêu cầu của khách hàng ngày

3 Hiện trạng của cửa hàng và những vấn đề đặt ra

- Do vị trí và danh tiếng nên cửa hàng thường rất đông khách Vào những lúc này khách thường phải chờ đợi lâu mới được phục vụ

- Sự biến động lớn của khách hàng: lúc thì rất đông, lúc lại bình thường do đó gây ra sự thiếu nhân sự gay gắt Việc tổng kết chậm( hàng tuần) và không phân tích kịp nhu cầu người dùng nên không thỏa mãn nhiều nhu cầu mà khách hàng mong muốn

4 Giải pháp nâng cao hiệu quả quản lý ở quán café

Những vấn đề đặt ra bên trên cho thấy, cần có một giải pháp để nâng cao hiệu quả hoạt động của quán

để tăng doanh thu và đáp ứng yêu cầu của khách hàng một cách tốt nhất

Một trong các phương pháp để nâng cao hiệu quả là tin học hóa các hoạt động quản lý và vận hành trong điều kiện trang thiết bị cho phép Từ nghững vấn đề

Trang 3

phát hiện ta có thể có những giải pháp tương ứng sau đây:

o Thanh toán dự vào phần mềm đẽ Chương II: Phân tích hệ thống quản lý

1 Xây dựng mô hình thực thể liên kết

Tên được chính

xác của các đặc

trưng

Viết gọn tên đặc trưng

Đánh dấu loại đi ở mỗi bước

A.Nhóm sản

phẩm

B.Danh mục sản

phẩm

C.Bàn

D.Hóa Đơn

Thành tiền Thành

E.Nhân viên

Trang 4

2 Xác định các thực thể, thuộc tính định danh

Thuộc tính tên gọi

tìm được

Thực thể tương ứng

Thuộc tính Định danh

Tên nhóm SP

Tên SP Giá

Mã NV

Mã bàn Ngày lập

Tên NV SDT Địa chỉ

Vị trí Trạng thái

3 Xác định mối quan hệ và thuộc tính giữa chúng

3.1 Các mối quan hệ tương tác

Động từ tìm được LẬP

Câu hỏi cho động từ LẬP

Thực thể Thuộc tính

Lập cái gì? HÓA ĐƠN

3.2 Các mối quan hệ phụ thuộc

Xét từng cặp thực thể Mối quan hệ Thuộc tính

4 Vẽ mô hình quan hệ thực thể liên kết

Trang 5

Chương III Thiết kế logic về hệ thống cơ sở dữ liệu

1 Chuyển ERD sang mô hình quan hệ

- NHÓM SP( Mã nhóm SP, Tên nhóm SP) <1>

- SP( Mã SP, Mã nhóm SP ,Tên SP, Giá) <2>

- HÓA ĐƠN(Mã HĐ , Mã SP,Ngày lập,Số lượng, ĐVT)

<3>

Chuẩn hóa <5>

- HÓA ĐƠN(MÃ HĐ, Mã NV, Mã Bàn, Ngày lập) <3>

- CHI TIẾT HÓA ĐƠN(Mã HĐ, Mã SP, Tên SP,ĐVT, SL,

Đơn giá) <4>

- NHÂN VIÊN( Mã NV,Tên NV, SDT, Địa chỉ) <5>

- BÀN (Mã bàn, Vị trí , Trạng thái) <6>

2 Lập bảng xác định liên kết

Thuộc tính

khóa <1> <2> <3> <4> <5> <6> Liên kết

Trang 6

Mã Bàn C K <6>-<3>

3 Vẽ biểu đồ

I Bảng cơ sở dữ liệu

Tên bảng: nhommon

Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú (ý nghĩa)

MaNhom INT khóa chính, unique,

not null, auto_increment

Mã nhóm

TenNhom VARCHAR 45 not null Tên nhóm

2 Bảng Thực đơn

Trang 7

Tên bảng: thucdon

Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú (ý nghĩa)

MaMon INT khoá chính, unique,

not null, auto_increment

Mã món

TenMon VARCHAR 45 not null Tên món

MaNhom INT khóa ngoại, not null Mã nhóm

DonGia FLOAT not null,check Đơn giá

DVTinh VARCHAR 20 not null Đơn vị tính

3 Bảng Hóa đơn

Tên bảng: hoadon

Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú (ý nghĩa)

MaHD VARCHAR 15 khóa chính, unique,

not null

Mã hóa đơn

MaBan INT khóa ngoại, not null Mã bàn

TenNV VARCHAR 45 not null Mã nhân viên GioDen DATETIME not null Giờ khách đến GioCapNhat DATETIME not null Giờ cập nhật lại hóa

đơn

TrangThai VARCHAR 45 not null Trạng thái thanh

toán hay chưa thanh toán

4 Bảng Chi tiết hóa đơn

Tên bảng: cthoadon

Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú (ý nghĩa)

MaHD VARCHAR 15 khóa chính,

khóa ngoại, not null

Mã hóa đơn

not null

Mã món

Trang 8

TenMon VARCHAR 45 not null Tên món

check

Số lượng

DVTinh VARCHAR 20 not null Đơn vị tính

check

Đơn giá

ThanhTien FLOAT not null Thành Tiền

5 Bảng Bàn

Tên bảng: ban

Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú (ý nghĩa)

MaBan INT khóa chính, not

null, unique, auto_increment

Mã bàn

TenBan VARCHAR 45 not null Tên bàn

TrangThai VARCHAR 45 not null Trạng thái

6 Bảng Nhân viên

Tên bảng: nhanvien

Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú (ý nghĩa)

MaNV VARCHAR 10 khóa chính,

not null, unique

Mã nhân viên

TenNV VARCHAR 45 not null Tên nhân viên Sdt VARCHAR 10 not null Số điện thoại DiaChi VARCHAR 150 not null Địa chỉ

TrangThai VARCHAR 45 not null Trạng thái

7 Bảng Tài khoản

Trang 9

Tên bảng: taikhoan

Tên trường Kiểu dữ liệu Kích thước Ràng buộc Ghi chú (ý nghĩa)

UserName VARCHAR 45 khóa chính,

khóa ngoại, not null, unique

Tên tài khoản

Password VARCHAR 45 not null Mật khẩu

Level INT not null Phân cấp tài khoản

III Những truy vấn dùng để giải quyết các vấn đề của bài toán

Tìm

kiếm

Tìm kiếm dữ

liệu có trong các

cột có của Table

Select Select * From thucdon where Trangthai='1'

Trạng thái là để bọn em phân biệt giữa sản phẩm xóa

và giữ nguyên, vì do khóa ngoại của cthd nên thucdon không xóa được

Thêm Thêm dữ liệu

vào Table

Insert INSERT INTO

thucdon(TenMon,MaNhom,DVTinh,DonGia,TrangThai ) VALUE(?,?,?,?)

Sửa Sửa dữ liệu đã

có trong Table

Update update thucdon set TenMon = ?, MaNhom = ?, DVTinh

= ? ,DonGia = ? WHERE MaMon = ? Xóa Xóa dữ liệu đã

có trong Table

Delete DELETE FROM ban WHERE MaBan = ?

Thanh

toán hóa

đơn

Để tránh việc

khi lưu trữ hóa

đơn không đồng

bộ, như tổng

tiền của hóa đơn

không bằng tổng

tiền của các món

ăn trong hóa

đơn

Transactio n

Giờ đến,

giờ cập

nhật của

hóa đơn,

trạng

Tự động cập

nhật thời gian

khi hóa đơn

được tạo(thời

gian sửa hóa

Trigger CREATE DEFINER=`root`@`localhost` TRIGGER

`autoAddData` BEFORE INSERT ON `hoadon` FOR EACH ROW BEGIN

set @mahd1 =

Trang 10

thái của

hóa đơn,

nhân

viên,

bàn

đơn sẽ tự động

cập nhật cùng

thời gian tạo hóa

đơn), khi ta sửa

hóa đơn vào 1

khoảng thời

gian sau khi

khách đã thanh

toán sẽ tự động

được cập nhật

lại giờ cập nhật

Khi thêm dữ

liệu vào 1 bảng

thì trạng thái có

thể tự động

thêm vào mà

không cần nhập

dữ liệu

CONCAT('HD',date_format(date(now()),'%Y%m%d')); SELECT Count(MaHD) into @countMaHD FROM hoadon WHERE MaHD Like concat(@mahd1, '%'); set @countMaHD = @countMaHD+1;

if @countMaHD > 999 then

set @mahd2 = @mahd1;

set @mahd = CONCAT(@mahd2 ,

@countMaHD);

elseif @countMaHD > 99 then

set @mahd2 = CONCAT(@mahd1, '0'); set @mahd = CONCAT(@mahd2,

@countMaHD);

elseif @countMaHD < 9 then

set @mahd2 = CONCAT(@mahd1, '000'); set @mahd = CONCAT(@mahd2,

@countMaHD);

else

set @mahd2 = CONCAT(@mahd1, '00'); set @mahd = CONCAT(@mahd2, @countMaHD);

end if;

SELECT count(MaHD) into @countMaHD1 FROM hoadon WHERE MaHD = @mahd;

if(@countMaHD1=1) then set @countMaHD = @countMaHD+1;

set @mahd = CONCAT(@mahd2,

@countMaHD);

end if;

set new.MaHD = @mahd;

set new.Gioden = now();

set new.GioCapNhat = now();

set new.TrangThai = 'Chưa thanh toán';

END

Mã hóa

đơn

Tự động cập

nhật mã hóa đơn

Trigger

Tính

tổng hóa

đơn hay

update

tổng hóa

đơn

Khi CTHD được

thêm vào thì

tổng của tất cả

món trong

CTHD đó sẽ đc

tính vào cột tổng

tiền của HD và

trạng thái hóa

đơn sẽ chuyển

Trigger CREATE DEFINER=`root`@`localhost` TRIGGER

`addTongTienHD` AFTER INSERT ON `cthoadon` FOR EACH ROW BEGIN

declare tong float;

select sum(ThanhTien) into tong from cthoadon where MaHD=new.MaHD;

UPDATE hoadon set TongTien = tong,

Trang 11

sang “Đã thanh

toán”

TrangThai='Đã thanh toán' where MaHD = new.MaHD;

END Xóa

CTHD

Khi ta xóa HD

sẽ tự dộng xóa

CTHD

Trigger CREATE DEFINER=`root`@`localhost` TRIGGER

`deleteCTHD` BEFORE DELETE ON `hoadon` FOR EACH ROW BEGIN

delete from cthoadon where MaHD = old.MaHD;

END Thống

Tạo 1 Table dựa

trên các Table

đã có sẵn, từ đó

có thể xem được

các thông tin mà

ta muốn mà

không cần phải

tìm từng Table

để xem các

thông tin cần

thiết

ALGORITHM = UNDEFINED DEFINER = `root`@`localhost`

SQL SECURITY DEFINER VIEW `quanlyquancaphe`.`view_tksoluong_all` AS SELECT

`quanlyquancaphe`.`cthoadon`.`MaMon` AS

`MaMon`, `quanlyquancaphe`.`cthoadon`.`TenMon` AS

`TenMon`, SUM(`quanlyquancaphe`.`cthoadon`.`SoLuong`)

AS `TongTieuThu`

FROM `quanlyquancaphe`.`cthoadon`

GROUP BY `quanlyquancaphe`.`cthoadon`.`MaMon` , `quanlyquancaphe`.`cthoadon`.`TenMon`

ORDER BY

`quanlyquancaphe`.`cthoadon`.`SoLuong` DESC Tổng

tiền từ

các hóa

đơn

được

thống kê

theo thời

gian

Tính tổng toàn

bộ tổng tiền có

trong cột

TongTien của

hóa đơn theo

khoảng thời

gian mà ta tìm

kiếm

Stored Procedures

CREATE DEFINER=`root`@`localhost` PROCEDURE

`sp_tongtienHD`(in day1 datetime, in day2 datetime) BEGIN

DROP TEMPORARY TABLE IF EXISTS sp_tongtienAllHD;

CREATE TEMPORARY TABLE IF NOT EXISTS sp_tongtienAllHD AS

SELECT sum(TongTien) FROM hoadon where GioDen BETWEEN day1 AND day2;

select * from sp_tongtienAllHD;

END

Ngày đăng: 13/10/2021, 10:46

TỪ KHÓA LIÊN QUAN

w