Đồ án Hệ thống bán hàng trực tuyến phongvu.vn

Hiện trạng nghiệp vụ:

Khi k hách hàng đến cửa hàng mua sản phẩm, họ sẽ xem trong da nh 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, k há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.

pdf37 trang | Chia sẻ: netpro | Lượt xem: 1980 | Lượt tải: 4download
Bạn đang xem trước 20 trang tài liệu Đồ án Hệ thống bán hàng trực tuyến phongvu.vn, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ừng người dùng: mã người dùng, tên tài khoản, mật khẩu, lần kích hoạt cuối, email, câu hỏi & câu trả lời để phục hồi mật khẩu, ngày tạo tài khoản, lần đăng nhập cuối,… -Ngoài ra, còn các thông t in phụ khác. 5 qdLuuNSX Quy định 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. 6 qdLuuDDH Quy định 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. 7 qdLuuCTHD Quy định 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. 8 qdLuuTheLoaiBV Quy định 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ệ. 5 viết 9 qdLuuTTBV Quy định 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. 10 qdMatKhau Quy định 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. 11 qdHTLoaiSP Quy định 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ụ: 12 qdHienThiSP Quy định 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 để xem 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ụ: 6 14 qdHienThiSPMoi Quy định hiển thị những sản phẩm mới nhất Ở trang chủ, các sản phẩm mới nhất được hiển thị ra cho khách hàng chọn lựa với các thông tin sau: tên sản phẩm, giá bán, hình ảnh. 15 qdHienThiTLBV Quy định hiển thị loại bài viết Liệt kê tên các nhóm bài viết, khi người dùng nhấn vào tên này, hệ thống sẽ cho người dùng danh sách các bài viết thuộc nhóm đó. 16 qdHTCTNguoiDung 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. 17 qdHTHoaDon Quy định hiển thị thông t in các hóa đơn đặt hàng Hiển thị các thông t in 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á. 18 qdHTCTHD Quy định 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. 19 qdHTBangBG Quy định hiển thị bảng báo giá Có 1 trang web dành riêng để hiển thị bảng báo giá. Bảng báo giá ở dạng Flash, giúp website thêm sinh động, đẹp đẽ. 20 qdTimSP Quy định 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ụ: 7 21 qdLocDSNguoiDung Quy định lọc danh sách người dùng theo 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. 22 qdDSNgDung Quy định 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. 23 qdGioHang Quy định giỏ hàng -Giỏ hàng của khách hàng sẽ được lưu trữ dựa trên kỹ thuật lập trình web như: session, mảng dữ liệu,… -Khách hàng phải đăng nhập hệ thống mới có giỏ hàng. -Thông t in giỏ hàng: sản phẩm , g iá 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 g iá 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ệ thống. -Cho biết các sản phẩm đã chọn mua, số lượng, đơn giá, thành tiền. -Có dòng hiển thị tổng số tiền của giỏ hàng. -Có nút xóa sản phẩm đã chọn mua, và nút cập nhật lại số lượng đã chọn, nút tiếp tục mua hàng và nút tính tiền. Ví dụ: 8 25 qdTinhThanhTien Quy định tính thành tiền những sản phẩm khách hàng chọn mua Thành tiền = (Số lượng sản phẩm * Đơn giá từng sản phẩm ) 26 qdTKeDDH Quy định 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. 27 qdTKDTNgay Quy định thống kê doanh 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 doanh thu trong ngày đó. 9 2) Yêu cầu chức năng hệ thống: # Nội dung Mô tả chi tiết Ghi chú 1 Cấu hình hệ thống -Web Serve r: IIS. -Ngôn ngữ lập trình web: ASP.NET 3.5 C# -Hệ quản trị CSDL: SQL SERVER 2005 2 Phân quyền người 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 Customers: là nhóm khách 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. 10 3) 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 ĐT : (08) 39330762, (08) 39330763, (08) 39330766 E mail : quyentc@vitinhphongvu.com PHIẾU BẢO TRÌ & SỬA CHỮA MÁY VI TÍNH Họ tên khách hàng: Địa chỉ : Điện thoạ i : 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 MOUSE 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 11 • 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 ĐT : (08) 39330762, (08) 39330763, (08) 39330766 E mail : quyentc@vitinhphongvu.com PHIẾU XUẤT HÀNG Số CT : 280095 Ngày : 18/10/2007 Đơn vị : DANG XUAN HOANG 0913940055 MỸ DIỆP Địa chỉ : Cộng thêm VAT khi mua hàng Stt Tên hàng SL Đơn giá TTiền 1 CASE SKY2 1. 0. 0. 2 DDRAM 1G/667KM TCN 1. 0. 0. 3 DVD RWASUS 1814BL 1. 0. 0. 4 CPU CORE 2 DUOQ6600(2.4GHZ)/775TCN 1. 0. 0. 5 E VOI INTERNET (+THE UXVOI) 1. 0. 0. 6 FLAS DISK 512MB AH 123 2.0TCN 1. 0. 0. 7 HDD 80GB WESTERN SATA 1. 0. 0. 8 KEYBOARD GENIUS KB110 1. 0. 0. 9 MB GA 946 GMX-S2 1. 0. 0. 10 MONITOR 19” L192WS LG-LCD 1. 0. 0. 11 MOUSE GENIUS 120 OPTICAL 1. 0. 0. 12 MOUSE PAD QUANG 1. 0. 0. 13 MP3-256-SONY-S306 1. 0. 0. 14 POWER 24PIN 450W 1. 0. 0. 15 SOUND CARD 5.1 CREATIVE PCI 1. 0. 0. Viết bằng chữ : ( Tám trăm ba mươi tám USD ) 15. Tổng : 838. Tỷ giá : 16160 THÀNH TIỀN ( VND ) : 13,542,080. Phương thức thanh toán : Tiền mặt Khách hàng Người giao Thủ kho Người lập phiếu Người duyệt 12 CHƯƠNG III PHÂN TÍCH THIẾT KẾ HỆ THỐNG 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 MaLoaiBV Mã thể loại bài viết TenLoaiBV Tên thể loại bài viết MaBV Mã bài viết TieuDe Tiêu đề của bài viết NoiDung Nội dung của bài viết NgayDang Ngày đăng tải bài viết MaLoaiSP Mã loại sản phẩm TenLoaiSP Tên loại sản phẩm MaNSX Mã nhà sản xuất TenNSX Tên nhà sản xuất DiaChiNSX Địa chỉ để liên hệ với nhà sản xuất Emai lNSX Email của nhà sản xuất LogoNSX Chỉ đường dẫn trỏ đến tập tin ảnh của nhà sản xuất Website Trang chủ của nhà sản xuất MaSP Mã sản phẩm TenSP Tên sản phẩm GiaBan Giá của sản phẩm ThongSo Thông số kỹ thuật của sản phẩm HinhSP Chỉ đường dẫn trỏ đến tập tin ảnh của sản phẩm NgayDangSP Ngày sản phẩm được đưa lên website HienThiSP Cờ cho b iết có hiển thị sản phẩm ra trên webs ite hay không? MaHD Mã hóa đơn DonGiaHD Đơn giá của hóa đơn NgayLapHD Ngày lập hóa đơn DiaChiKH Địa chỉ để giao hàng SoLuong Số lượng sản phẩm trong chi tiết hóa đơn RoleID Mã nhóm ngư ời dùng RoleName Tên nhóm người dùng LoweredRoleName Tên nhóm người dùng ở dạng chữ in thường Description Mô tả về nhóm người dùng UserID Mã người dùng UserName Tên tài khoản người dù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 Password Mật khẩu đăng nhập hệ thống của người dùng 13 Emai 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 swordAnswer Câu trả lời để lấy lại mật khẩu người dùng CreateDate Ngày tài khoản người dùng được tạo ra 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 MaLoaiSP Integer 2 TenLoaiSP 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. HienThiSP: một cờ hiệu cho b iết có hiển thị sản phẩm trên webs ite hay không. STT Tên thuộc tính Kiểu dữ liệu Kích thước 1 MaSP VarChar 50 2 TenSP Var Char 50 3 GiaBan Integer 4 ThongSo Text 5 HinhSP VarChar 50 6 NgayDangSP Date/Time 7 HienThiSP Integer Thực thể 3: NhaSanXuat MaNSX: đây là thuộc tính khóa dùng để phân biệt các nhà sản xuất với nhau, nó sẽ tự động tăng khi thêm một nhà sản xuất mới. 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. 14 WebsiteNSX: 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 1 MaNSX Integer 2 TenNSX Var Char 50 3 DiaChiNSX Text 4 EmailNSX Var Char 30 5 LogoNSX Text 6 WebsiteNSX Var Char 30 Thực thể 4: aspnet_Roles (nhóm người dùng) RoleID: đây là thuộc tính khóa dùng để phân biệt các nhóm người dùng với nhau, nó sẽ tự động tăng khi thêm một nhóm người dùng mới. 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 1 RoleID VarChar 256 2 RoleName Var Char 256 3 LoweredRoleName VarChar 256 4 Description VarChar 256 Thực thể 5: aspnet_Users (người dùng) UserID: đây là thuộc tính khóa dùng để phân biệt các người dùng với nhau, nó sẽ tự động tăng khi thêm một người dùng mới. 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 1 UserID VarChar 256 2 UserName Var Char 256 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. PasswordQuestion: 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. 15 LastPasswordChangedDate: thời điểm thay đổi mật khẩu lần cuối cùng của người dùng. STT Tên thuộc tính Kiểu dữ liệu Kích thước 1 Password VarChar 128 2 Email Var Char 256 3 LoweredEmail Var Char 256 4 PasswordQuestion VarChar 256 5 PasswordAnswer VarChar 128 6 CreateDate DateTime 7 LastLoginDate DateTime 8 LastPasswordChangedDate DateTime Thực thể 7: HoaDon 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 1 MaHD VarChar 50 2 DiaChiKH Text 3 DonGia Integer 4 NgayLapHD DateTime Thực thể 8: LoaiBV MaLoaiBV: đây là thuộc tính khóa dùng để phân biệt các loại bài viết với nhau, nó sẽ tự động tăng khi thêm một loại bài viết mới. 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 MaLoaiBV Integer 2 TenLoaiBV 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 1 MaBV Integer 2 TieuDe Text 3 NoiDung Text 4 NgayDang Date/Time 16 c.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. 17 Mố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. 18 Mố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: 19 2.Thành phần xử lý ở mức quan niệm – Mô hình BFD: 20 II.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,NgayDang) RoleID aspnet_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,) Bước 2: Mối kết hợp Chứa: bổ sung khóa chính MaLoaiSP của thực thể LoaiSP vào thực thể SanPham làm khóa ngoại, ta được: Các mối kết hợp (1,n) sẽ chuyển thành một quan hệ tương ứng với thuộc tính. SanPham(MaSP Mối kết hợp Sản xuất: bổ sung khóa chính MaNSX của thực thể NhaSanXuat vào thực thể SanPham làm khóa ngoại, ta được: ,TenSP,GiaBan,ThongSo,HinhSP,NgayDangSP,HienThiSP,#MaLoaiSP) SanPham(MaSP ,TenSP,GiaBan,ThongSo,HinhSP,NgayDangSP,HienThiSP,#MaLoaiSP,#MaN SX) 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,NgayDang,#MaLoaiBV) BaiViet(MaBV ,TieuDe,NoiDung,NgayDang,#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 gayNhanHang,#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,PasswordQuestion, PasswordAnswer, CreateDate, LastLoginDate, LastPasswordChangedDate) 21 Bước 3: Mối kết hợp CTHD: sẽ được chuyển thành một quan hệ CTHD với các thuộc tính: Mã hóa đơn (MaHD), mã sản phẩm (MaSP) và số lượng sản phẩm (SoLuong) Các mối kết hợp (n,n) sẽ chuyển thành một quan hệ tương ứng với thuộc tính: CTHD(#MaHD,#MaSP Mối kết hợp Có: sẽ được chuyển thành một quan hệ aspnet_UsersInRoles với các thuộc tính: mã nhóm người dùng (RoleID), mã ngư ời dùng (UserID) ,SoLuong) aspnet_UsersInRoles(#RoleID,#UserID ) Cuối cùng ta có mô hình quan hệ sau: LoaiBV(MaLoaiBV BaiViet( ,TenLoaiBV) MaBV aspnet_Roles( ,TieuDe,NoiDung,NgayDang,#MaLoaiBV,#MaND) RoleID aspnet_Users( ,RoleName,LoweredRoleName,Description) UserID aspnet_Membership( ,UserName,LoweredUserName,LastActivityDate) ID,#UserID LoaiSP( ,Password,Email,LoweredEmail,PasswordQuestion, PasswordAnswer, CreateDate, LastLoginDate, LastPasswordChangedDate) MaLoaiSP NhaSanXuat( ,TenLoaiSP) MaNSX SanPham( ,TenNSX,DiaChiNSX,EmailNSX,LogoNSX,WebsiteNSX) MaSP HoaDon( ,TenSP,GiaBan,ThongSo,HinhSP,NgayDangSP,HienThiSP,#MaLoaiSP,#MaN SX) MaHD CTHD(# , #UserID, DonGia, NgayLapHD) MaHD,#MaSP LƯỢC ĐỒ QUAN HỆ ,GiaSP,SoLuong) 22 1.2.Các ràng buộc toàn vẹn: 1.2.1.Ràng buộc khóa chính: R1: MaLoa iBV trong quan hệ LoaiBV Biểu diễn: Bối cảnh: LoaiBV Tầm ảnh hưởng: R1 T S X LoaiBV + + - R2: MaBV trong quan hệ BaiViet Biểu diễn: Bối cảnh: BaiViet Tầm ảnh hưởng: R2 T S X BaiViet + + - R3: RoleID trong quan hệ aspnet_Roles Biểu diễn: Bối cảnh: aspnet_Roles Tầm ảnh hưởng: R3 T S X aspnet_Roles + + - R4: UserID trong quan hệ aspnet_Users Biểu diễn: Bối cảnh: aspnet_Users Tầm ảnh hưởng: R4 T S X aspnet_Users + + - R5: MaLoaiSP trong quan hệ LoaiSP Biểu diễn: Bối cảnh: LoaiSP Tầm ảnh hưởng: R5 T S X LoaiSP + + - R6: MaSP trong quan hệ SanPham Biểu diễn: Bối cảnh: SanPham Tầm ảnh hưởng: 23 R6 T S X SanPham + + - R7: MaNSX trong quan hệ NhaSanXuat Biểu diễn: Bối cảnh: NhaSanXuat Tầm ảnh hưởng: R7 T S X NhaSanXuat + + - R8: MaHD trong quan hệ HoaDon Biểu diễn: Bối cảnh: HoaDon Tầm ảnh hưởng: R8 T S X HoaDon + + - R9: {MaHD,MaSP} trong quan hệ CTHD Biểu diễn: Bối cảnh: CTHD Tầm ảnh hưởng: R9 T S X CTHD + + - R10: {RoleID,UserID} trong quan hệ aspnet_UserInRoles Biểu diễn: Bối cảnh: CTHD Tầm ảnh hưởng: R10 T S X aspnet_UserInRoles + + - 24 1.2.2.Ràng buộc tồn tại: R11: LoaiBV.MaLoaiBV tồn tại trong BaiViet.MaLoaiBV Biểu diễn: Bối cảnh: LoaiBV, BaiViet Tầm ảnh hưởng: R11 T S X BaiViet + + - LoaiBV - + + R12 : aspnet_Users.UserID tồn tại trong aspnet_UserInRoles Biểu diễn: Bối cảnh: NhomNguoiDung, NguoiDung Tầm ảnh hưởng: R12 T S X aspnet_UserInRoles + + - aspnet_Users - + + R13: aspnet_Roles.RoleID tồn tại trong aspnet_UserInRoles Biểu diễn: Bối cảnh: aspnet_UserInRoles, aspnet_Roles Tầm ảnh hưởng: R13 T S X aspnet_UserInRoles + + - aspnet_Roles - + + R14: LoaiSP.MaLoaiSP tồn tại trong SanPham.MaLoaiSP Biểu diễn: Bối cảnh: LoaiSP, SanPham Tầm ảnh hưởng: R14 T S X SanPham + + - LoaiSP - + + R15 : NhaSanXuat.MaNSX tồn tại trong SanPham.MaNSX Biểu diễn: Bối cảnh: NhaSanXuat, SanPham Tầm ảnh hưởng: R15 T S X SanPham + + - NhaSanXuat - + + 25 R16: aspnet_Users.UserID tồn tại trong HoaDon.UserID Biểu diễn: Bối cảnh: HoaDon, aspnet_Users Tầm ảnh hưởng: R16 T S X HoaDon + + - aspnet_Users - + + R17: HoaDon.MaHD tồn tại trong CTHD.MaHD Biểu diễn: Bối cảnh: CTHD, HoaDon Tầm ảnh hưởng: R17 T S X CTHD + + - HoaDon - + + R18: SanPham.MaSP tồn tại trong CTHD.MaSP Biểu diễn: Bối cảnh: CTHD, SanPham Tầm ảnh hưởng: R18 T S X CTHD + + - SanPham - + + 1.2.3.Ràng buộc miền giá trị: R19 : Biểu diễn: aspnet_Membership[Password] có chiều dà i tối thiểu 6 ký tự. Bối cảnh: aspnet_Membership Tầm ảnh hưởng: R19 T S X aspnet_Membership + + - R20: Biểu diễn: SanPham[GiaBan] 0 Bối cảnh: SanPham Tầm ảnh hưởng: R20 T S X SanPham[GiaBan] + + - 26 R21: Biểu diễn: SanPham[NgayDangSP] = {ngày giờ hiện tại} Bối cảnh: SanPham Tầm ảnh hưởng: R21 T S X SanPham[NgayDangSP] + + - R22: Biểu diễn:CTHD[SoLuong] > 0 Bối cảnh: CTHD Tầm ảnh hưởng: R22 T S X CTHD[SoLuong] + + - R23: Biểu diễn: HoaDon[NgayLapHD] = {ngày giờ hiện tại} Bối cảnh: HoaDon Tầm ảnh hưởng: R23 T S X HoaDon[NgayLapHD] + + - R24: Biểu diễn: BaiViet[NgayDang] = {ngày giờ hiện tại} Bối cảnh: BaiViet Tầm ảnh hưởng: R24 T S X BaiViet[NgayDang] + + - 27 III.Phân tích thiết kế hệ thống ở mức vật lý: 1.Thành phần dữ liệu ở mức vật lý: 1.1.CSDL sử dụng: BanHang.mdf 1.2.Mô tả các bảng: Bảng LoaiSP: Bảng NhaSanXuat: Bảng SanPham: Bảng HoaDon: 28 Bảng CTHD: Bảng LoaiBV: Bảng BaiViet: Bảng aspnet_Roles: Bảng aspnet_Users: 29 Bảng aspnet_UserInRoles: Bảng aspnet_Membership: 30 2. Thành phần xử lý ở mức vật lý: Ngôn ngữ lập trình sử dụng: Visual C# Hệ thống được làm trên môi trường phát triển tích hợp (IDE) Visual Studio 2008, với nền .N ET Framework v3.5 Các menu chức năng: Menu định hướng của website: Menu các loại sản phẩm của PhongVu.vn: Menu quản lý website của ban quản trị: 31 Các đoạn code chính: Class Product để lưu thông tin sản phẩm khách hàng chọn đưa vào giỏ hàng: public class Product { public int ProductID { get; set; } public string ProductName { get; set; } public int Price { get; set; } public int Quantity { get; set; } public int ThanhTien { get { return Price * Quantity; } } public Product() { } } Class ShoppingCart để lưu trữ nhiều sản phẩm trong giỏ hàng, thêm, xóa sản phẩm, cập nhật lại số lượng sản phẩm mà khách hàng đã ch ọn mua. Kết xuất ra tổng thành tiền của hóa đơn, và xóa sạch giỏ hàng: public class ShoppingCart { public List Products { get; set; } public static readonly ShoppingCart Instance; static ShoppingCart() {

Các file đính kèm theo tài liệu này:

  • pdfBao cao.pdf
  • rarPhongVuApp.rar