- Xây dựng thiết kế CSDL Mysql - Xây dựng chương trình giao diện trên web III,Mô tả dự án: Mô tả nghiệp vụ: -Cửa hàng bán laptop sẽ gồm nhiều nhân viên, mỗi nhân viên ở các vị trí khác n
Trang 1Báo cáo đồ án cơ sở dữ liệu
Nhóm 12
Đề tài Quản lý cửa hàng laptop
Thành viên: Trần Việt Hoàng – 84563
Lê Minh Hiếu - 1516953
Trang 2Nội dung
I,Lý do chọn đề tài:
Do nhu cầu internet rất phát triển hiện nay cũng như nhu cầu sử mua hàng trực tuyến rất lớn Nên nhóm quyết định chọn đề tài Quản lý cửa hàng laptop để làm đồ án này trên nền tảng web
Bài toán: Một cửa hàng laptop cần xây dựng một hệ quản trị
CSDL và cần chương trình cho tất cả nhân viên để có thể mua sản phẩm thông qua trang web
II,Ý tưởng
- Xây dựng trang web quản lý nhân viên,thông tin hóa đơn, khách hàng, sản phẩm, của cửa hàng bán laptop( tập trung vào việc quản lý)
- Xây dựng thiết kế CSDL Mysql
- Xây dựng chương trình giao diện trên web
III,Mô tả dự án:
Mô tả nghiệp vụ:
-Cửa hàng bán laptop sẽ gồm nhiều nhân viên, mỗi nhân viên ở các vị trí khác nhau (bán hàng, nhập hàng, hỗ trợ khách hàng, ), thông tin của nhân viên sẽ được lưu lại để tiện cho việc quản lý, đánh giá, lương,
-Cửa hàng sẽ quản lý thông tin các sản phẩm, bao gồm :loại sản
Trang 3phẩm, tên sản phẩm, mã sản phẩm, số lượng, giá,
-Khách hàng sẽ được lưu thông tin để thực hiện cho việc hỗ trợ bảo hành và tư vấn trợ giúp, gồm: tên khách hàng, mã khách hàng, sđt, email, số cmnd, danh sách các sản phẩm khách đã mua, ngày mua,
-Quy trình mua bán hàng:Khi khách hàng mua hàng, nhân viên sẽ cho khách giấy để điền thông tin cơ bản của khách để hưởng các dịch vụ như bảo hành Nhân viên nhập thông tin đó vào chương trình để đẩy lên cơ sở dữ liệu Nhân viên nhập thông tin sản phẩm khách hàng mua gồm mã sản phẩm, tên sản phẩm và số lượng sản phẩm để tạo hóa đơn bán hàng gửi cho khách hàng, mỗi hóa đơn
sẽ có thông tin khách hàng, thông tin sản phẩm mua bán và thông tin nhân viên lập hóa đơn
-Doanh thu của cửa hàng, các sản phẩm lỗi, hỏng, các sản phẩm nhập về sẽ được định kỳ tổng hợp và báo cáo
-Khách hàng mua phải sản phẩm bị lỗi hoặc hỏng hóc do nhân viên hoặc nhà sản xuất sẽ được tiến hành đổi sản phẩm tương ứng hoặc hoàn trả hàng và nhận lại tiền
Các chức năng:
- Quản lý nhân viên:
Thông tin nhân viên, thông tin nhân viên bao gồm các thông tin như mã nhân viên, họ tên, ngày sinh, địa chỉ, số điện thoại, email
- Quản lý thông tin khách hàng:
Thông tin khách hàng bao gồm các thông tin cơ bản như họ tên, địa chỉ, số điện thoại, mã khách hàng
- Quản lý xuất nhập hàng:
Bao gồm mã hàng hóa, tên hàng hóa, số lượng trong cửa hàng
Trang 4- Quản lý mua bán: gồm thông tin của quá trình mua bán như mã mua bán, mã hàng, tên hàng, số lượng, tổng tiền
- Quản lý doanh thu: Hiển thị thông tin về tổng tiền của từng sản phẩm theo tháng, tổng tiền trong tháng
-Quản lý phân quyền truy cập: Quản lý phân quyền truy cập cho admin, nhân viên,
Chức năng hệ thống:
- Lưu trữ dữ liệu theo nghiệp vụ
- Nhân viên có thể thực hiện các chức năng như đăng nhập, đăng xuất, đổi mật khẩu, thêm sản phẩm, sửa xóa sản phẩm, giải quyết đơn hàng
- Admin là người quản trị web ngoài chức năng như của nhân viên còn có chức năng thêm sửa xóa thông tin nhân viên
- Khi đăng nhập thì mỗi user sẽ có các quyền mà hệ thông cấp, từ
đó mỗi user sẽ thực hiện công việc của mình
- Thêm dữ liệu:
Nhập thông tin nhân viên
Nhập thông tin khách hàng
Nhập thông tin sản phẩm
Nhập thông tin mua bán
- Chỉnh sửa, xóa dữ liệu:
Xóa, đổi thông tin nhân viên
Xóa, đổi thông tin khách hàng
Xóa, đổi thông tin sản phẩm
Xóa, đổi thông tin mua bán
- Chức năng báo cáo:
Trang 5 Báo cáo tổng tiền bán trong 1 tháng
Báo cáo sản phẩm bán chạy nhất trong tháng
Thống kê doanh của cửa hàng thu theo tháng, năm
Thống kê doanh thu từng sản phẩm bán trong tháng, năm
Cơ sở dữ liệu:
- Xây dựng cơ sở dữ liệu phù hợp với yêu cầu nghiệp vụ của đề tài quản lý cửa hàng bán laptop
- Xây dựng các hàm, thủ tục, trigger, các check, default,… phù hợp với nghiệp vụ
IV, Mô hình thực thể LK:
V, Mô hình quan hệ:
Gạch chân+ in đậm: khóa chính
Trang 6Gạch chân: khóa ngoại
Tài khoản (Tên đăng nhập, Mật khẩu, Loại TK, Mã NV ,Ngày
lập)
Nhân viên (Mã NV, Họ tên, Ngày sinh, Email, SĐT, Địa chỉ, Quê
quán, Mã vị trí)
Vị trí(Mã vị trí , Tên vị trí , Mức lương)
Khách hàng (Mã KH, Họ tên, SĐT, Email, Địa chỉ)
Sản Phẩm (Mã SP, Tên SP, Loại SP, Bảo hành, Giá, Số lượng) Đơn hàng (Mã ĐH, Mã KH, Ngày mua, MãNV)
Chi tiết đơn hàng (Mã CTDH ,Mã ĐH ,Mã SP ,Số lượng)
Bảo hành (MaBH, Mã CTDH, Ngày BH, Lý do BH, Hình thức
BH, Mã NV)
-Chi tiết về việc chuẩn hóa mô hình thực thể LK và mô hình quan
hệ (chuẩn 3):
● Một đơn hàng có thể mua nhiều sản phẩm cùng lúc nên sẽ tách ra thành 2 bảng là đơn hàng và chi tiết đơn hàng
● Thay vì ghi vị trí làm việc và lương vào bảng Nhân viên, lập thêm một bảng là Vị trí (làm việc) và liên kết bằng Mã vị trí
● Thêm các trường vào các bảng phù hợp hoặc để tạo liên kết
VI, Ràng buộc của các bảng:
ViTri(
Trang 7MaVT varchar(10) not null primary key,
TenVT varchar(50) not null,
Luong BIGINT not null
)
NhanVien(
MaNV varchar(50) NOT NULL primary key,
TenNV varchar(255) NOT NULL,
NgaySinh date not null,
EmailNV varchar(50) not null,
SDT varchar(15) not null,
Que varchar(50) not null,
MaVT varchar(10) not null,
foreign key (MaVT) references ViTri(MaVT)
)
TaiKhoan(
TenTK varchar(50) NOT NULL primary key,
MatKhau varchar(50) NOT NULL,
LoaiTK varchar(50) NOT NULL,
MaNV varchar(50) NOT NULL,
foreign key (MaNV) references NhanVien(MaNV) )
KhachHang(
MaKH varchar(50) not null primary key,
TenKH varchar(100) not null,
SDT varchar(15) not null,
EmailKH varchar(50),
DiaChi varchar(255) not null
)
SanPham(
MaSP varchar(50) not null primary key,
TenSP varchar(100) not null,
Trang 8LoaiSP varchar(50) not null,
SoNgayBH varchar(30) not null,
Gia bigint not null,
SoLuong int not null
)
DonHang(
MaDH varchar(200) not null primary key,
MaKH varchar(50) not null,
MaNV varchar(50) NOT NULL,
NgayMua date not null,
foreign key (MaNV) references NhanVien(MaNV),
foreign key (MaKH) references KhachHang(MaKH)
)
ChiTietDH(
MaCTDH int primary key auto_increment,
MaDH varchar(200) not null,
MaSP varchar(50) not null,
SoLuongMua int not null,
foreign key (MaDH) references DonHang(MaDH),
foreign key (MaSP) references SanPham(MaSP)
)
BaoHanh(
MaBH varchar(50) not null primary key,
MaCTDH int not null,
NgayBH date not null,
LyDoBH text not null,
HinhThucBH text not null,
MaNV varchar(50) not null,
foreign key (MaCTDH) references ChiTietDH(MaCTDH), foreign key (MaNV) references NhanVien(MaNV)
)
Trang 9VII, Biểu đồ EER
VIII, Cài đặt cơ sở dữ liệu và các bảng
1 Cài đặt cơ sở dữ liệu:
CREATE DATABASE IF NOT EXISTS LAPTOP; USE LAPTOP;
2 Cài đặt các bảng
2.1 Bảng ViTRI
create table IF NOT EXISTS ViTri(
MaVT varchar(10) not null primary key,
TenVT varchar(50) not null,
Luong BIGINT not null
)ENGINE = InnoDB;
2.2 Bảng NhanVien
create table IF NOT EXISTS NhanVien(
MaNV varchar(50) NOT NULL primary key,
TenNV varchar(255) NOT NULL,
NgaySinh date not null,
EmailNV varchar(50) not null,
SDT varchar(15) not null,
Que varchar(50) not null,
MaVT varchar(10) not null,
foreign key (MaVT) references ViTri(MaVT)
) ENGINE = InnoDB;
Trang 102.3 Bảng TaiKhoan
create table IF NOT EXISTS TaiKhoan(
TenTK varchar(50) NOT NULL primary key,
MatKhau varchar(50) NOT NULL,
LoaiTK varchar(50) NOT NULL,
MaNV varchar(50) NOT NULL,
foreign key (MaNV) references NhanVien(MaNV) ) ENGINE = InnoDB;
2.4 Bảng KhachHang
create table IF NOT EXISTS KhachHang(
MaKH varchar(50) not null primary key,
TenKH varchar(100) not null,
SDT varchar(15) not null,
EmailKH varchar(50),
DiaChi varchar(255) not null
)ENGINE = InnoDB;
2.5 Bảng SanPham
create table IF NOT EXISTS SanPham(
MaSP varchar(50) not null primary key,
TenSP varchar(100) not null,
LoaiSP varchar(50) not null,
SoNgayBH varchar(30) not null,
Gia bigint not null,
SoLuong int not null
)ENGINE = InnoDB;
2.6 Bảng DonHang
create table IF NOT EXISTS DonHang(
MaDH varchar(200) not null primary key,
MaKH varchar(50) not null,
MaNV varchar(50) NOT NULL,
NgayMua date not null,
foreign key (MaNV) references NhanVien(MaNV), foreign key (MaKH) references KhachHang(MaKH) )ENGINE = InnoDB;
2.7 Bảng ChiTietDH
create table IF NOT EXISTS ChiTietDH(
MaCTDH int primary key auto_increment,
MaDH varchar(200) not null,
MaSP varchar(50) not null,
Trang 11SoLuongMua int not null,
foreign key (MaDH) references DonHang(MaDH),
foreign key (MaSP) references SanPham(MaSP)
)ENGINE = InnoDB;
2.8 Bảng BaoHanh
create table IF NOT EXISTS BaoHanh(
MaBH varchar(50) not null primary key,
MaCTDH int not null,
NgayBH date not null,
LyDoBH text not null,
HinhThucBH text not null,
MaNV varchar(50) not null,
foreign key (MaCTDH) references ChiTietDH(MaCTDH), foreign key (MaNV) references NhanVien(MaNV)
)ENGINE = InnoDB;