CHƯƠNG II XÁC ĐỊNH YÊU CẦU1 Yê u c ầu chức năng nghiệp vụ: việc Qui định liên quan Ghi chú 10 Thay đổi, phục hồi mật khẩu 11 Hi ển thị menu loại sản phẩm K ết xuất qdHTLoaiSP 12 Hi ể
Trang 1Đ ồ án
GVHD: Th ạc sỹ Lâm Thành Hiển SVTH: Nguyễn Minh Danh
Ph ạm Ngọc Diệp Lớp: 05CT1
Hệ thống bán hàng trực tuyến
PhongVu.vn
Trang 2CHƯƠNG I
1) Gi ới thiệu đơn vị khảo sát:
• Tên công ty: Công ty cổ phần thương mại dịch vụ Phong Vũ
• Địa chỉ: 264C Nguyễn Thị Minh Khai, Quận 3, TP.HCM
Bộ phận kinh doanh: tiến hành định giá, tìm nguồn hàng, liên hệ với các nhà sản xuất,…
Bộ phận kho: nhập xuất hàng hóa cho bộ phận bán hàng
Bộ phận bán hàng: gồm những nhân viên đứng tại bàn tư vấn mua hàng, từng quầy trưng bày sản phẩm, và các nhâ n viên thu ngân và giao hàng cho khách
Bộ phận kỹ thuật: tìm hiểu thông số các sản phẩm, hỗ trợ kỹ thuật và bảo hành sản phẩm cho k hách hàng
Bộ phận kế toán: thu thập các hóa đơn bán, nhận hàng để tiến hành báo cáo tổng kết tình hình tài chính của công ty
Bộ phận bảo vệ: góp phần giữ gìn trật tự an ninh cho cửa hàng
3) Hi ện trạng nghiệp vụ:
Khi khách hàng đến cửa hàng mua sản phẩm, họ sẽ xem trong danh mục sản phẩm những hàng hóa mà họ ưa thích Lúc này sẽ có nhân viên ra tư vấn cho họ mua được những mặt hàng
hợp với ý muốn của họ
Sau khi khách hàng đã ưng ý m ột hay nhiều mặt hàng nào đó, nhân viên sẽ ghi từng món hàng vào giấy, và bảo khách hàng mang giấy này ra quầy thu ngân
Ở quầy thu ngân, khách hàng sẽ trả tiền cho từng mặt hàng mình mua, và nhận được phiếu xuất hàng từ quầy thu ngân
Sau đó, khách hàng mang phiếu xuất hàng đến quầy giao hàng Quầy giao hàng mới bắt đầu lấy hàng từ kho và dán tem bảo hành cho khách hàng
Cuối kỳ, bộ phận kế toán sẽ tiến hành tổng kết các hóa đơn thu chi để báo cáo định kỳ cho ban giám đốc biết tình hình tài chính
Trang 3CHƯƠNG II XÁC ĐỊNH YÊU CẦU1) Yê u c ầu chức năng nghiệp vụ:
việc Qui định liên quan Ghi chú
10 Thay đổi, phục hồi mật khẩu
11 Hi ển thị menu loại sản phẩm K ết xuất qdHTLoaiSP
12 Hi ển thị thông tin tổng quan
13 Hi ển thị thông tin chi tiết sản
14 Hi ển thị những s ản phẩm mới
Trang 415 Hi ển thị nhóm bài viết Kết xuất qdHienThiTLBV
16 Hi ển thị thông tin chi tiết của
17 Hi ển thị thông t in các hóa đơn đặt
hàng
K ết xuất qdHTHoaDon
18 Hi ển thị thông tin chi tiết từng
19 Hi ển thị bảng báo giá K ết xuất qdHTBangBG
20 Tìm ki ếm sản phẩm Tra c ứu qdTimSP
21 L ọc danh sách người dùng theo
nhóm
Tra c ứu qdLocDSNguoiDung
22 Hi ển thị danh sách người dùng K ết xuất qdDSNgDung
24 Hi ển thị thông tin giỏ hàng cho
khác h hàng
K ết xuất qdHienThiGioHang
25 Tính thành ti ền những sản phẩm
27 Thống kê doanh thu theo ngày Th ống kê qdTKDTNgay
Trang 5Quy định liên quan được thể hiện bằng bảng sau:
có được hiển thị ra trên website hay không
3 qdLuuNhomNguoiDung Quy định
l ưu danh
m ục nhóm người dùng tương tác
-Ngoài ra, còn các thông t in ph ụ khác
l ưu thông tin nhà s ản
xu ất
Thông tin c ần lưu trữ và quản lý của nhà sản xuất
s ản phẩm: mã, tên, địa chỉ, email, logo, website của nhà s ản xuất
l ưu thông tin đơn đặt hàng
M ỗi đơn đặt hàng cần lưu các thông tin sau: mã đơn, mã khách hàng đặt hàng, địa chỉ để chuyển hàng cho khách hàng, đơn giá của hóa đơn và ngày
l ập đơn đặt hàng
l ưu chi tiết đơn đặt hàng
Đơn đặt hàng cần cho biết những s ản phẩm do khách hàng đặt , giá bán và số lượng của từng sản
ph ẩm
l ưu danh
m ục thể loại bài
-Thông t in th ể loại bài viết gồm: mã thể loại, tên
th ể loại
-Các th ể loại bài viết mà website sẽ có: tin khuyến mãi, sản phẩm mới, tin công nghệ
Trang 6viết
l ưu thông tin bài vi ết
Thông tin chi ti ết cần lưu trữ đối với bài viết: mã bài vi ết, tiêu đề, nội dung, ngày đăng, do người dùng nào trong các nhóm qu ản trị
(Administrators, Editors) nào đăng t ải
thay đổi,
ph ục hồi
m ật khẩu
-Các tài kho ản người dùng có thể dễ dàng thay đổi
m ật khẩu đăng nhập của mình vì lý do bảo mật -Trong t rường hợp quên mật khẩu, người dùng có
th ể dễ dàng được hệ thống phục hồi mật khẩu dựa trên câu h ỏi & câu trả lời lúc tạo tài khoản
hi ển thị menu lo ại sản phẩm
Menu này s ẽ liệt kê danh sách tên các loại sản
ph ẩm, khi người dùng nhấn vào tên này, sẽ cho người dùng danh sách các sản phẩm trong nhóm sản phẩm này ở mức tổng quan
Ví d ụ:
hi ển thị thông t in
t ổng quan nhi ều sản
ph ẩm
Khi người dùng c họn nhóm sản phẩm, s ẽ hiển thị thông t in t ổng quan các sản phẩm: hình ảnh, tên
s ản phẩm, giá bán, nhà sản xuất và 1 button để
xe m thông tin chi ti ết sản phẩm đó
Ví d ụ:
13 qdHienThiCTSP Quy định
hi ển thị thông t in chi ti ết sản
ph ẩm
Khi người dùng đã nhấn vào button “Chi tiết”, hệ
th ống sẽ hiển thị thông tin của sản phẩm đó ở mức chi ti ết: hình ảnh, tên sản phẩm, giá bán, thông số
k ỹ thuật
Ví d ụ:
Trang 7Ở trang chủ, các sản phẩm mới nhất được hiển thị
ra c ho k hác h hàng c h ọn lựa với các thông tin sau: tên s ản phẩm, giá bán, hình ảnh
16 qdHTCTNguoiD ung Quy định
hi ển thị thông t in chi ti ết tài kho ản người dùng
Hi ển thị các thông tin sau: email, ngày tạo tài kho ản, lần đăng nhập cuối, lần thay đổi mật khẩu
cu ối
hi ển thị thông t in các hóa đơn đặt hàng
Hi ển thị các thông tin sau: mã hóa đơn, tài khoản khách hàng, ngày l ập hóa đơn, địa chỉ gửi hàng, đơn giá
hi ển thị chi
ti ết hóa đơn
Hi ển thị các thông tin sau:
-Các thông t in v ề hóa đơn: mã hóa đơn, tài khoản khách hàng, ngày l ập, địa chỉ gửi hàng, đơn giá -Thông t in chi ti ết: sản phẩm được mua đi kèm với giá sản phẩm và số lượng đã được đặt
hi ển thị bảng báo giá
Có 1 trang web dành riên g để hiển thị bảng báo giá
Bảng báo giá ở dạng Flash, giúp website thêm sinh động, đẹp đẽ
tìm ki ếm
s ản phẩm
Cho phép người dùng tìm kiếm sản phẩm theo: tất
c ả thông tin, tên sản phẩm, đặc tính kỹ thuật và tìm theo nhà s ản xuất sản phẩm
Ví d ụ:
Trang 821 qdLocDSNguoiDung Quy định
l ọc danh sách người dùng t heo nhóm
Ch ứa danh sách người dùng trong 1 combobox, khi ch ọn nhóm nào thì ở dưới sẽ lọc ra các tài kho ản người dùng tương ứ ng vớ i nhóm được chọn
hi ển thị danh sách người dùng
-Tính năng này c hỉ dành cho nhóm Administrators
-Li ệt kê bảng chứa thông tin chi tiết của người dùng bao g ồm các thông tin: mã tài khoản, tên tài kho ản, lần kích hoạt tài khoản cuối cùng, và 1 hyperlink “Chi ti ết” để xem chi tiết hơn về tài kho ản này
-Thông t in gi ỏ hàng: sản phẩm , giá bán của sản
ph ẩm, số lượng và thành tiền của từng sản phẩm,
t ổng thành tiền (đơn giá c ủa hóa đơn)
24 qdHienThiGioHang Quy định
hi ển thị giỏ hàng
-Ch ỉ hiện thị nếu khách hàng đã đăng nhập hệ
Trang 925 qdTinhThanhTien Quy định
tính thành
ti ền những
s ản phẩm khác h hàng c h ọn mua
Thành ti ền = (Số lượng sản phẩm * Đơn giá từng sản phẩm )
in hóa đơn bán hàng
In ra các thông tin cơ bản của hóa đơn, số lượng
s ản phẩm, giá từng sản phẩm, thành tiền của từng
s ản phẩm, đơn giá của hóa đơn và địa chỉ giao hàng
th ống kê doa nh thu theo ngày
Cho phép ban qu ản trị thống kê doanh thu theo
t ừng ngày, in ra: mã hóa đơn, đơn giá, và tổng doa nh thu trong ngày đó
Trang 102) Yê u c ầu chức năng hệ thống:
-Ngôn ng ữ lập trình web:
ASP.NET 3.5 C#
-H ệ quản trị CSDL: SQL SERVER 2005
dùng
-Chia thành 4 nhóm người dùng chính: Administrators, Editors, Sales và Customers
-Nhóm Administrators có toàn quy ền trên hệ thố ng:
qu ản lý tài khoản, hóa đơn
-Nhóm Editors: có quy ền đăng, xóa các thể loại bài
vi ết và bài viết trên website
-Nhóm Sales: có quy ền quản
lý đơn đặt hàng
-Nhóm Custome rs: là nhóm khác h hàng, có quy ền xem thông t in, t ìm ki ếm sản
ph ẩm, bài viết, đặt giỏ hàng,
và đặt hàng
Sử dụng Membership Framework của ASP.NET 3.5 để làm
cơ chế chứng thực và phân quyền cho hệ
thống
Trang 113) Các bi ểu mẫu liên quan:
• Bi ểu mẫu 1:
TRUNG TÂM TM & DV VI TÍNH PHONG V Ũ
Đia chỉ : 264C Nguyễn Thị Minh Khai, Quận 3, TP.HCM
Ngày mua máy :
Loại máy : Máy bộ Linh kiện lắp ráp Linh kiện rời
Chi Ti ết Về Phần Cứng & Phần Mềm Tình Tr ạng Trước Khi Bảo Trì Tình Tr ạng Sau Khi Bảo Trì
MAINBOARD CPU RAM HDD FDD CD-ROM VGA SOUND NET CARD KEYBOARD MOUS E FAN POWER SCANNER PRINTER MONITOR FAX / MODEM
PHẦN MỀM KHÁC
Th ời gian bắt đầu từ :…… đến :
Tổng chi phí :
Ý kiến khách hàng :
Ch ữ ký khách hàng Ngày ……tháng……năm 200…
Chữ ký NV kỹ thuật
Trang 12• Bi ểu mẫu 2:
TRUNG TÂM TM & DV VI TÍNH PHONG V Ũ
Đia chỉ : 264C Nguyễn Thị Minh Khai, Quận 3, TP.HCM
Phương thức thanh toán : Tiền mặt
Trang 13CHƯƠNG III
I.Phân tích thi ết kế hệ thống ở mức quan niệm:
1.Thành ph ần dữ liệu ở mức quan niệm:
a.T ừ điển dữ liệu:
Tên thu ộc tính Di ễn giải
HienThiSP Cờ cho biết có hiển thị sản phẩm ra trên website hay không?
LoweredRoleName Tên nhóm người dùng ở dạng chữ in thường
LoweredUserName Tên tài khoản người dùng ở dạng chữ in thường
LastActivityDate Thời điểm kích hoạt tài khoản người dùng lần cuối cùng
Trang 14Emai l Email của người dùng
LoweredEmail Email của người dùng ở dạng chữ in thường
PasswordQuestion Câu hỏi để lấy lại mật khẩu người dùng
Pas swordAns wer Câu trả lời để lấy lại mật khẩu người dùng
LastLoginDate Thời điểm đăng nhập hệ thống của người dùng
LastPasswordChangedDate Thời điểm thay đổi mật khẩu tài khoản lần cuối
b.Mô t ả thực thể:
Th ực thể 1: LoaiSP
MaLoaiSP: đây là thuộc tính khóa dùng để phân biệt các loại sản phẩm với nhau, nó sẽ tự động tăng khi thêm một loại sản phẩm mới
TenLoaiSP: mô tả tên của loại sản phẩm
STT Tên thu ộc tính Kiểu dữ liệu Kích thước
1 MaLoa iSP Integer
2 TenLoa iSP Var Char 50
Th ực thể 2: SanPham
MaSP: đây là thuộc tính khóa dùng để phân biệt các sản phẩm với nhau, nó sẽ tự động tăng khi
có sản phẩm mới được thêm vào
TenSP: mô tả tên của sản phẩm
GiaBan: mô tả giá thành của sản phẩm
ThongSo: mô tả thông số kỹ thuật chi tiết của sản phẩm
HinhSP: chứa thông tin là chuỗi đường dẫn trỏ đến tập tin ảnh của sản phẩm
NgayDangSP: mô tả ngày sản phẩm được đăng lên website
HienT hiSP: một cờ hiệu cho biết có hiển thị sản phẩm trên website hay không
STT Tên thu ộc tính Kiểu dữ liệu Kích thước
TenNSX: mô tả tên gọi của nhà sản xuất
DiaChiNSX: mô tả địa chỉ của nhà sản xuất
EmailNSX: mô tả email của nhà sản xuất
LogoNSX: chứa thông tin là chuỗi đường dẫn trỏ đến tập tin ảnh của nhà sản xuất
Trang 15WebsiteNSX: trang chủ của nhà sản xuất
STT Tên thu ộc tính Kiểu dữ liệu Kích thước
RoleName: tên nhóm người dùng
LoweredRoleName: tên nhón nhóm người dùng ở dạng chữ in thường
Description: mô tả về nhóm người dùng
STT Tên thuộc tính Ki ểu dữ liệu Kích thước
UserName: tên tài khoản đăng nhập hệ thống của người dùng
LoweredUserName: tên tài khoản đăng nhập hệ thống của người dùng ở dạng chữ in thường LastActivityDate: thời đ iểm kích hoạt tài khoản lần cuối cùng của tài khoản
STT Tên thu ộc tính Kiểu dữ liệu Kích thước
3 LoweredUserName Var Char 256
4 LastActivityDate DateTime
Th ực thể 6: aspnet_Membership (Thông tin chi tiết tài khoản người dùng)
Password: mật khẩu để đăng nhập hệ thống của người dùng
Email: email cá nhâ n của người dùng
LoweredEmail: email cá nhân của người dùng viết ở dạng chữ in thường
PasswordQ uestion: câu hỏi để lấy lại mật khẩu đã mất
PasswordAnswer: câu trả lời để lấy lại mật khẩu đã mất
CreateDate: ngà y tài khoản người dùng được tạo
LastLoginDate: thời điểm đăng nhập hệ thống lần cuối cùng của người dùng
Trang 16LastPasswordChangedDate: thời điểm thay đổi mật khẩu lần cuối cùng của người dùng
4 PasswordQ uestion VarChar 256
MaHD: đây là thuộc tính khóa dùng để phân biệt các hóa đơn với nhau
DiaChiKH: địa chỉ gửi sản phẩm cho khách hàng
DonGia: đơn giá của từng hóa đơn
NgayLapHD: mô tả ngày khách hàng đặt hóa đơn mua hàng
STT Tên thuộc tính Kiểu dữ liệu Kích thước
TenLoaiBV: mô tả tên của loại bài viết
STT Tên thu ộc tính Kiểu dữ liệu Kích thước
1 MaLoa iBV Integer
2 TenLoa iBV Var Char 50
Th ực thể 9: BaiViet
MaBV: đây là thuộc tính khóa dùng để phân biệt các bài viết với nhau, nó sẽ tự động tăng khi thê m một bài viết mới
TieuDe: mô tả tiêu đ ề của từng bài viết
NoiDung: mô tả nội dung của từng bài viết
NgayDang: ngày bài viết được đăng lên website
STT Tên thu ộc tính Kiểu dữ liệu Kích thước
4 NgayDang Date/Time
Trang 17c.Mô t ả mối kết hợp:
M ối kết hợp: Gồm
M ối kết hợp không thuộc tính:
Thực thể tham gia: LoaiBV và BaiViet
Diễn giải: Một thể loại bài viết có một hoặc nhiều bài viết trong đó Một bài viết thuộc về duy
nhất một loại bài viết
Mối kết hợp: Có
Thực thể tham gia: aspnet_Roles và aspnet_Users
Diễn giải: Một nhóm người dùng có một hoặc nhiều người dùng trong đó Một người dùng thuộc
về một hoặc nhiều nhóm
M ối kết hợp:Đăng tải
Thực thể tham gia: aspnet_Users và BaiViet
Diễn giải: Một người dùng không có hoặc đăng tải nhiều bài viết Một bài viết chỉ do một người dùng đưa lên
Trang 18M ối kết hợp: Đặt
Thực thể tham gia: NguoiDung và HoaDon
Diễn giải: Một người dùng không có hoặc đặt nhiều hóa đơn Một hóa đơn chỉ do một người dùng đặt
M ối kết hợp: Chứa
Thực thể tham gia: LoaiSP và SanPham
Diễn giải: Một loại sản phẩm có một hoặc nhiều sản phẩm trong đó Một sản phẩm chỉ thuộc về duy nhất một loại sản phẩm
M ối kết hợp: Sản xuất
Thực thể tham gia: NhaSanXuat và SanPham
Diễn giải: Một nhà sản xuất có một hoặc nhiều sản phẩm Một sản phẩm thuộc về duy nhất một nhà sản xuất
Trang 19Mối kết hợp: CTHD
M ối kết hợp có thuộc tính:
Thực thể tham gia: HoaDon và SanPham
Diễn giải: Một hóa đơn mua hàng có thể chứa một hoặc nhiều sản phẩm trong đó Một sản phẩm
cũng có thể nằm trong nhiều hóa đơ n mua hàng
d.M ô hình th ực thể kết hợp:
Trang 202.Thành ph ần xử lý ở mức quan niệm – Mô hình BFD:
Trang 21II.Phân tích thi ết kế hệ thống ở mức logic:
1.Thi ết kế dữ liệu ở mức logic:
1.1.Chuy ển đổi mô hình thực thể kết hợp sang mô hình quan hệ:
Từ mô hình khái niệm là mô hình biểu diễn tất cả các đối tượng, mỗi đối tượng là một thể hiện trong thế giới thực, ta tiến hành chuyển đổi nó sang mô hình quan hệ Trong mô hình quan hệ, chúng ta xét đến các mối quan hệ giữa các đối tượng đó Cụ thể thực hiện qua các bước sau:
Bước 1:
LoaiBV(
Một thực thể chuyển thành một quan hệ tương ứng, đồng thời tạo khóa chính cho quan
hệ Các quan hệ được tạo thành là:
MaLoaiBV
BaiViet(
,TenLoaiBV) MaBV
aspnet_Roles(
,TieuDe,NoiDung,N gayDang) RoleID
as pnet_Users(
,RoleName,LoweredRoleName,Description) UserID
aspnet_Membership(
,UserName,LoweredUserName,LastActivityDate) ID
LoaiSP(
,Password,Email,LoweredEmail,PasswordQuestion, PasswordAnswer, CreateDate, LastLoginDate, LastPasswordChangedDate)
MaLoaiSP
NhaSanXuat(
,TenLoaiSP) MaNSX
SanPham(
,TenNSX,DiaChiNSX,EmailNSX,LogoNSX,Website) MaSP
HoaDon(
,TenSP,GiaBan,ThongSo,HinhSP,NgayDangSP,HienThiSP) MaHD,DiaChiKH,)
Mối kết hợp Gồm: bổ sung khóa chính MaLoaiBV của thực thể LoaiBV vào thực thể BaiViet làm khóa ngoại, ta được:
BaiViet(MaBV
Mối kết hợp Đăng tải: bổ sung khóa chính MaND của thực thể NguoiDung vào thực thể BaiViet làm khóa ngoại, ta được:
,TieuDe,NoiDung,N gayDang,#MaLoaiBV)
BaiViet(MaBV,TieuDe,NoiDung,N gayDang,#MaLoaiBV,#MaND)
Mối kết hợp Đặt: bổ sung khóa chính UserID của thực thể NguoiDung vào thực thể HoaDon làm khóa ngoại, ta được:
HoaDon(MaHD,NgayLapHD,N gayN hanHang,# UserID)
Mối kết hợp ThongTin: bổ sung khóa chính UserID của thực thể aspnet_Users vào thực thể aspnet_Membership làm khóa ngoại, ta được:
aspnet_Membership(ID,#UserID,Password, Email,LoweredEmail,PasswordQ uestion,
PasswordAnswer, CreateDate, LastLoginDate, LastPasswordChangedDate)