Mục Lục
Phần I: Giới thiệu và Đặt Vấn Đề
I.1 Đặt vấn đề
Ngày nay thương mại điện tử đã dần trở lên quen thuộc với người sử dụng bởi nó đã xoá dần mọi khoảng cách giữa người bán và người mua. Thương mại điện tử đã khiến cho việc mua bán giao dịch giữa người với người trở lên đơn giản hơn bao giờ hết. Thay vì phải gặp trực tiếp, mọi hoạt động sẽ diễn ra thông qua Internet.
Các hình thức biết nhiều đến của thương mại điện tử là mua bán sách và nhạc cũng như mua bán đấu giá trong Internet. Th
81 trang |
Chia sẻ: huyen82 | Lượt xem: 3902 | Lượt tải: 3
Tóm tắt tài liệu Hệ thống bán sách trực tuyến, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
ông qua việc Internet bùng nổ vào cuối thập niên 90, cửa hàng trực tuyến ngày càng có tầm quan trọng nhiều hơn. Những người bán hàng trong Internet có lợi thế là họ không cần đến một diện tích bán hàng thật sự mà thông qua các trang Web sử dụng một không gian bán hàng ảo. Các cửa hàng trực tuyến thường không cần đến nhà kho hay chỉ cần đến rất ít, vì thường có thể cung cấp cho khách hàng trực tiếp từ người sản xuất hay có thể đặt hàng theo nhu cầu. Lợi thế do tiết kiệm được các phí tổn cố định này có thể được chuyển tiếp cho khách hàng, đó là việc khách hàng sẽ được giảm chi phi vận chuyển so với cửa hàng sách cố định.
Trong những năm gần đây, Đảng và Nhà Nước ta đánh giá cao tiềm năng phát triển của thương mại điện tử và đang đầu tư rất lớn cho thương mại điện tử. Đầu năm 2007, chính phủ Việt Nam đă ban hành Nghị định số 27/2007/NĐ-CP ngày 23/02/2007 “Quy định chi tiết thi hành Luật giao dịch điện tử về chữ ký số và dịch vụ chứng thực chữ ký số”, số 35/2007/NĐ-CP ngày 08/03/2007 “ Về giao dịch điện tử trong hoạt động ngân hàng” (theo ).
Cùng với sự phát triển mạnh mẽ của Internet thì mọi giao dịch, hoạt động buôn bán trên thực tế đều có thể được mô tả bằng các chương trình. Một cửa hàng bàn sách sẽ hoàn toàn có thể được thay thế bằng một Website mà ở đó mọi người có thể mua bất cứ quyển sách yêu thích ngay cả khi ngồi ở nhà hay ở nơi làm việc. Xuất phát từ nhu cầu đó tôi đã tìm hiểu và thiết kế Website bán sách trực tuyến BookStore.
I.2 Giới thiệu tổng quan về BookStore
BookStore trưng bày và giới thiệu rất nhiều các loại sách khác nhau. Với Website khách hàng có thể tìm kiếm và mua sách một cách dễ dàng thông qua mạng Internet. Đồng thời nó giúp cho người bán hàng có thể quản lý sách một cách hiệu quả.
Có rất nhiều loại sách được bán như: khoa học -công nghệ, sức khoẻ và giới tính, thương nhân-kinh tế, máy tính, nấu ăn, sách văn học và sách giành cho thiếu nhi… Tất cả các sách đều được mô tả rõ với các thông tin về nhà xuất bản, tác giả, tóm tắt nội dung… Và khách hàng có thể tìm kiếm sách theo từng mục.
Để mua sách, khách hàng phải đăng nhập vào Website và gửi đơn đặt hàng, sau đó điền các thông tin và sách sẽ được chuyển về đến tận nhà. Website cũng cho phép khách hàng thay đổi hay xoá bỏ đơn đặt hàng nếu muốn.
Sẽ có các nhóm quản lý trong cửa hàng như: bán hàng(sellers), kho hàng( stockers), quản trị (administrators). Mỗi nhóm đảm nhận những nhiệm vụ và phạm vi hoạt động riêng.
Seller có nhiệm vụ kiểm tra, in ấn, theo dõi và cập nhật các trạng thái của đơn đặt hàng. Nhóm này sẽ phân phối sách và quản lý các thông tin về khách hàng như tên, địa chỉ, số điện thoại và thẻ thanh toán.
Stocker có nhiệm vụ là kiểm tra, cập nhật thông tin về sách và số lượng sách.
Admistrator quản lý users và database.Trong đó mỗi user phải có một username và password trong mỗi phạm vi truy nhập của mình.
I.3 Các nội dung kiến thức cần nghiên cứu
I.3.1- Java
I.3.2- Servlet, JSP và MVC
I.3.3- Kiến thức về XML và XSL
I.3.4- Kiến thức vể phân tích thiết kế hướng đối tượng UML
I.3.5- Tìm hiểu về thương mại điện tử
Nội dung kiến thức cần nghiên cứu xem thêm trong phần phụ lục và tài liệu tham khảo
I.4 Bố cục của bản báo cáo
Để tiện theo dõi, nội dung chính của bản báo cáo này sẽ được trình bày trong phần II với trình tự như sau :
Chương I: Khảo sát bài toán
Chương II: Phân tích-Thiết Kế
Chương III: Xây dựng chương trình
Chương IV: Phụ lục và tài liệu tham khảo
I.5 Lời Cảm Ơn
Mặc dù còn những hạn chế nhất định, nhưng đề tài này thật sự đã cuốn hút em và em cũng đã thực sự làm việc vì sự yêu thích nó. Một lần nữa em xin chân thành cảm ơn thầy giáo Lê Hải Hà đã tận tình hướng dẫn em trong quá trình làm đồ án tốt nghiệp. Em cũng rất mong sự giúp đỡ, đóng góp ý kiến của các thầy cô cùng tất cả bạn bè bởi chắc chắn sau khi tốt nghiệp, em sẽ còn tìm hiểu nghiên cứu thêm về đề tài này!
Phần II: Nội Dung Bản Báo Cáo
Chương I: Khảo sát bài toán
I.1 Các công đoạn của một giao dịch buôn bán trên mạng
Gồm có 6 công đoạn sau:
Khách hàng, từ một máy tính tại một nơi nào đó, điền những thông tin thanh toán và điạ chỉ liên hệ vào đơn đặt hàng (Order Form) của Website bán hàng (còn gọi là Website thương mại điện tử). Doanh nghiệp nhận được yêu cầu mua hàng hoá hay dịch vụ của khách hàng và phản hồi xác nhận tóm tắt lại những thông tin cần thiết như mặt hàng đã chọn, địa chỉ giao nhận và số phiếu đặt hàng...
Khách hàng kiểm tra lại các thông tin và kích (click) vào nút (button) "đặt hàng", từ bàn phím hay chuột (mouse) của máy tính, để gửi thông tin trả về cho doanh nghiệp.
Doanh nghiệp nhận và lưu trữ thông tin đặt hàng đồng thời chuyển tiếp thông tin thanh toán (số thẻ tín dụng, ngày đáo hạn, chủ thẻ ...) đã được mã hoá đến máy chủ (Server, thiết bị xử lý dữ liệu) của Trung tâm cung cấp dịch vụ xử lý thẻ trên mạng Internet. Với quá trình mã hóa các thông tin thanh toán của khách hàng được bảo mật an toàn nhằm chống gian lận trong các giao dịch (chẳng hạn doanh nghiệp sẽ không biết được thông tin về thẻ tín dụng của khách hàng).
Khi Trung tâm Xử lý thẻ tín dụng nhận được thông tin thanh toán, sẽ giải mã thông tin và xử lý giao dịch đằng sau bức tường lửa (FireWall) và tách rời mạng Internet (off the Internet), nhằm mục đích bảo mật tuyệt đối cho các giao dịch thương mại, định dạng lại giao dịch và chuyển tiếp thông tin thanh toán đến ngân hàng của doanh nghiệp (Acquirer) theo một đường dây thuê bao riêng (một đường truyền số liệu riêng biệt).
Ngân hàng của doanh nghiệp gởi thông điệp điện tử yêu cầu thanh toán (authorization request) đến ngân hàng hoặc công ty cung cấp thẻ tín dụng của khách hàng (Issuer). Và tổ chức tài chính này sẽ phản hồi là đồng ý hoặc từ chối thanh toán đến trung tâm xử lý thẻ tín dụng trên mạng Internet.
Trung tâm xử lý thẻ tín dụng trên Internet sẽ tiếp tục chuyển tiếp những thông tin phản hồi trên đến doanh nghiệp, và tùy theo đó doanh nghiệp thông báo cho khách hàng được rõ là đơn đặt hàng sẽ được thực hiện hay không.
Toàn bộ thời gian thực hiện một giao dịch qua mạng từ bước 1 -> bước 6 được xử lý trong khoảng 15 - 20 giây.
I.2 Quy trình thanh toán trực tuyến bằng thẻ tín dụng
Theo nguồn:
Nói chung khi bạn bán sản phẩm hoặc dịch vụ trên mạng internet, bạn cần cung cấp cho người mua một phương án thanh toán trực tuyến trên mạng bên cạnh các phương án thanh toán khác.
Cách phổ biến nhất trong thanh toán trực tuyến hiện nay là sử dụng thẻ tín dụng Credit Cart của các hãng Visa, Master, American Express, JBC…được các ngân hàng phát hành.
Trước hết nếu bạn là người bán, bạn phải tạo lập một tài khoản bán hàng trên mạng. Tài khoản này phải được đăng ký với ngân hàng của bạn nếu ngân hàng cung cấp dịch vụ này hoặc với các dịch vụ cung cấp phần mềm xử lý quỏ trình thanh toán trực tuyến như Cybercash, Paymentnet, …
Các ngân hàng hoặc nhà cung cấp dịch vụ sẽ chịu trách nhiệm xử lý thông tin thẻ trong quá trình thanh toán.
Trên website bán hàng người bán hàng phải trang bị các tính năng sau:
Shopping cart: Thiết kế giỏ hàng để khách hàng có thể thoải mái lựa chọn loại hàng cũng như số lượng,…
Payment gateway: là một phần mềm dùng để xử lý việc thanh toán của thẻ tín dụng bao gồm việc xác nhận thông tin của thẻ tín dụng có đúng là hợp lệ hay không, thực hiện các lệnh chuyển tiền.
Quy trình thanh toán được thực hiện như sau:
Người mua có thẻ tín dụng khi quyết định mua hàng sẽ nhập các thông tin về thẻ của mình như : số thẻ, mã số thẻ, thời hạn của thẻ, tên chủ sở hữu của thẻ. Những thông tin này sẽ được chuyển tới ngân hàng hoặc nhà cung cấp dịch vụ (còn gọi là các Acquirer). Acquirer sẽ gửi thông tin về thẻ tới dịch vụ cung cấp thẻ và ngân hàng phát hành thẻ để kiểm tra tính hợp lệ của thẻ và kiểm tra khả năng thanh toán của thẻ. Nếu mọi điều kiện đều phù hợp, ngân hàng phát hành sẽ gửi thông tin ngược trở lại Acquirer, thông tin được giải mã gửi về cho người bán và việc thanh toán được thực hiện. Tiền sẽ được chuyển từ thẻ tín dụng của người mua đến tài khoản bán hàng trên Acquirer , sau đó sẽ được chuyển vào tài khoản ngân hàng của người bán.
Phí cho việc thanh toán trực tuyến :
Thông thường việc mở tài khoản bán hàng không mất phí
Việc sử dụng phần mềm ứng dụng payment gateway thường có phí cài đặt ban đầu và phí duy trì hàng tháng
Trong mỗi giao dịch thanh toán qua mạng, các Acquirer sẽ thu phí khoảng tử 1,5% đến 4% giá trị giao dịch và khoảng 0.3$ đến 0.5$ phí xác nhận thông tin thẻ/lần giao dịch.
Việc tiến hành thanh toán qua mạng có thể đơn giản hơn bằng cách sử dụng dịch vụ của bên thứ 3, chịu trách nhiệm toàn bộ khâu thanh toán, người bán chỉ cần liên kết phần shopping cart của mình vào website của nhà cung cấp dịch vụ, mọi khâu từ việc nhập thông số thẻ, xử lý thanh toán đều được thực hiện tại website của nhà cung cấp dịch vụ, người bán hàng không cần mở tài khoản bán hàng, không cần sử dụng payment gateway, giảm được chi phí này nhưng các chi phí trên mỗi giao dịch sẽ cao hơn.
I.3 Các nghiệp vụ của BookStore
. Khách hàng có thể tìm kiếm , hiển thị và lựa chọn sách mà mình muốn mua. Khách hàng sẽ gửi đơn đặt hàng và cung cấp các thông tin cho server.
. Seller sẽ kiểm tra và thực hiện đơn hàng
. Seller sẽ thực hiện chuyển sách
. Khách hàng tìm kiếm sách trên Website
. Khách hàng lựa chọn sách và đưa vào giỏ hàng
. Khách hàng có thể hiển thị giỏ hàng đã được chọn bất cứ khi nào họ muốn
. Sau đó gửi đơn hàng đến Server
. Nếu khách hàng muốn xem lại hay thay đổi trạng thái của đơn hàng thì họ đăng nhập và duyệt lại đơn hàng. Trạng thái của đơn hàng có thể là đang chờ, đang chuyển, đã chuyển rồi, bỏ qua hay không.
Select, Add selected
books to shopping cart
View shopping
cart
HaveChange
Update
ShoppingCart
Yes
ContinueShoppi
ng
No
Choose typeofcard, Enter
CardNo, Send order to server
Asking to Abort
Order
Login web/ Choose
order want to abort
Yes
receice books
and Invoice
No
Order aborted
Seller accept
No
Yes
Yes
No
Các trạng thái của Đơn hàng(Order):
-Trạng thái của các đơn hàng trong hệ thống bao gồm:
+ Waiting
+ Delivering
+ Delivered
+ Asking for Abort
+ Aborted
Chương II: Phân tích thiết kế
II.1 Biểu Đồ Use Case
II.1.1 Customer
User case - BookList
Mô tả
Use case này cho phép Customer duyệt tất cả các sách trong hệ thống BookStore
Tác Nhân
Customer, Stocker
Tiền Điều Kiện
Trang booklist sẽ hiển thị thông tin chi tiết về sách và giá của sách
Luồng sự kiện chính
Duyệt danh mục tất cả các sách trong hệ thống
Ứng với mỗi quyển sách Customer click vào tiêu đề của sách để xem chi tiết quyển sách: tác giả, isbn, giá sách…
Hậu Điều Kiện
Sau khi Use Case này được thực hiện thì customer hay stocker xem được danh mục sách và chi tiết sách
User case - BookSearch
Mô tả
Use case này cho phép customer tìm kiếm tất cả các sách mà họ muốn. Hỗ trợ tìm kiếm theo tiêu đề, ISBN, tác giả, mô tả sách.
Tác Nhân
Customer
Tiền Điều Kiện
Trang use case này sẽ:
Hiển thị một checkbox để customer chọn cách tìm kiếm theo tiêu đề, tác giả, ISBN hay mô tả.
Hiển thị một textbox để đưa vào từ khóa tìm kiếm và một Button “Search”
Luồng sự kiện chính
Chọsn cách tìm kiếm theo tiêu đề, tác giả, ISBN, mô tả trong checkbox
Đưa từ khoá tìm kiếm vào textbox
Click vào button Search
Hậu Điều Kiện
User case - AddBooktoCard
Mô tả
Cho phép customer chọn sách và số lượng sách. Customer có thể duyệt tất cả các sách cùng thể loại hay cùng tác giả với quyển sách đang xem. Sau khi chọn sách, customer có thể xem giỏ hàng của mình
Tác Nhân
Customer
Tiền Điều Kiện
Customer phải chọn những quyển sách mà họ muốn mua
Luồng sự kiện chính
Customer sẽ thực hiện các thao tác sau:
Chọn sách họ muốn mua
Chọn số lượng sách trong cột checkbox quantity
Click vào button để đưa sách vào giỏ hàng
Xem lại giỏ hàng
Quay trở lại để tiếp tục chọn sách
Cập nhật lại giỏ hàng
Hậu Điều Kiện
Sau khi đă có giỏ hàng như mong muốn, customer sẽ gửi đơn đặt hàng tới Seller
User case - RemoveBookFromCart
Mô tả
Sau khi chọn sách và đưa sách vào giỏ hàng, nếu muốn thì customer có thể đưa sách ra khỏi giỏ hàng đã chọn
Tác Nhân
Customer
Tiền Điều Kiện
Trong giỏ hàng của customer đã có sách
Luồng sự kiện chính
Chọn những quyển sách mà customer muốn loại bỏ khỏi giỏ hàng
Cập nhật lại giỏ hàng
Hậu Điều Kiện
Sau khi cập nhật lại giỏ hàng , những quyển sách đó được chọn để loại ra sẽ không còn trong giỏ hàng
User case - SendOrder
Mô tả
Gửi đơn đặt hàng của customer với các thông tin về giỏ hàng tương ứng
Tác Nhân
Customer
Tiền Điều Kiện
Customer cần có thẻ thanh toán và mã số thẻ thanh toán
Luồng sự kiện chính
Chọn loại thẻ thanh toán
Đưa mã số thẻ thanh toán vào
Click vào một button để gửi đơn đặt hàng
Hậu Điều Kiện
Đơn đặt hàng sẽ được gửi đến server
User case - ViewOrderStatus
Mô tả
Use case này cho phép customer xem trạng thái đơn hàng của họ đã đặt trước đó
Tác Nhân
Customer
Tiền Điều Kiện
Customer đã gửi thành công đơn đặt hàng tới server
Luồng sự kiện chính
Click vào đường link để hiển thị danh sách các đơn đặt hàng của customer
Click vào link “View order detail” để hiển thị chi tiết đơn đặt hàng tương ứng
Hậu Điều Kiện
Trạng thái của đơn đặt hàng được hiển thị
User case - ChangeOrderStatus
Mô tả
Use case này cho phép customer thay đổi trạng thái đơn đặt hàng trước đó
Tác Nhân
Customer
Tiền Điều Kiện
Use case “ViewOrderStatus” đã được thực hiện, tức là customer đã xem được trạng thái đơn đặt hàng
Luồng sự kiện chính
Tuỳ vào trạng thái của đơn đặt hàng mà customer có thể hay không thể thay đổi đơn đặt hàng sang trạng thái khác.
Hậu Điều Kiện
Trạng thái của đơn đặt hàng thay đổi tương ứng với quyền thay đổi đơn đặt hàng của customer
II.1.2 Sellers
User case - Orderlist
Mô tả
Use case này cho phép customer liệt kê danh sách tất cả các đơn đặt hàng của tất cả các customer
Tác Nhân
Seller
Tiền Điều Kiện
Seller đăng nhập vào hệ thống đúng với account của mình
Luồng sự kiện chính
Seller click vào link “Order List” trong menu của chương trình
Hậu Điều Kiện
Nếu use case thực hiện thành công thì Seller sẽ xem được danh mục tất cả các đơn đặt hàng
User case - UpdateStatus
Mô tả
Use case này cho phép Seller cập nhật trạng thái của các đơn đặt hàng
Tác Nhân
Seller
Tiền Điều Kiện
Khi có đơn đặt hàng cần cập nhật trạng thái
Use case OrderList đó được thực hiện
Luồng sự kiện chính
Seller đăng nhập vào hệ thống với tài khoản là seller
Duyệt danh sách đơn đặt hàng
Chọn đơn đặt hàng để cập nhật trạng thái
Hậu Điều Kiện
Đơn đặt hàng được cập nhật lại trạng thái
User case –PrintInvoice
Mô tả
Cho phép seller in hoá đơn cho customer
Tác Nhân
Seller
Tiền Điều Kiện
Customer đã thanh toán
Luồng sự kiện chính
Seller click vào nút “To print”
Hậu Điều Kiện
Hoá đơn được in ra
User case - CustomerList
Mô tả
Cho phép Seller liệt kê danh sách tất cả các khách hàng
Tác Nhân
Seller
Tiền Điều Kiện
Customer đặt hàng và sách đã được gửi đến customer
Luồng sự kiện chính
Click vào link “Customer List”
Click vào mỗi customer để xem danh mục các hoá đơn của khách hàng đó
Hậu Điều Kiện
Danh sách khách hàng được hiển thị
II.1.3 Stocker
User case - BookList
Mô tả
Use case này cho phép stocker liệt kê danh mục tất cả các sách trong BookStore
Tác Nhân
Stocker
Tiền Điều Kiện
Trang booklist sẽ hiển thị thong tin chi tiết về sách và giá của sách
Luồng sự kiện chính
Stocker click vào “Browse by category” để hiển thị toàn bộ số sách có trong hệ thống
Hậu Điều Kiện
Nếu use case thực hiện thành công thì Stocker sẽ xem được danh mục tất cả các sách trong hệ thống
User case - InsertBook
Mô tả
Use case này cho phép stocker đưa thêm sách mới vào danh mục sách
Tác Nhân
Stocker
Tiền Điều Kiện
Đăng nhập vào hệ thống với quyền stocker
Luồng sự kiện chính
Vào danh mục sách
click vào button “Add”
Điền thông tin của sách mới vào các textbox tương ứng và nhấn “Add” để đưa sách vào hệ thống
Hậu Điều Kiện
Sách mới được hiển thị trong danh mục sách
User case – UpdateBook
Mô tả
Cho phép stocker sửa đổi thông tin về sách
Tác Nhân
Stocker
Tiền Điều Kiện
Đăng nhập vào hệ thống với quyền stocker
Luồng sự kiện chính
Vào danh mục sách
Click vào link “Edit” tương ứng với quyển sách cần cập nhật lại
Thay đổi thông tin trong các textbox
Nhẫn nút update để lưu sự thay đổi
Hậu Điều Kiện
Thông tin sách được thay đổi
User case - DeleteBook
Mô tả
Cho phép xóa sách trong hệ thống
Tác Nhân
Stocker
Tiền Điều Kiện
Đăng nhập vào hệ thống với quyền stocker
Luồng sự kiện chính
Vào danh mục sách
Click vào link “delete” tương ứng với quyển sách cần xoá
Nhẫn nút delete để xoá sách
Hậu Điều Kiện
Sách bị xoá khỏi hệ thống
II.1.4 Administrator
User case - Insert/Update/Delete/List User
Mô tả
Cho phép admin thêm mới, cập nhật, xoá , duyệt danh sách tất cả người sử dụng hệ thống
Tác Nhân
Administrator
Tiền Điều Kiện
Đăng nhập với quyền Administrator
Luồng sự kiện chính
Click vào link “User List” trên menu chương trình
Click vào các link “Edit”, “delete” tương ứng để cập nhật hoặc là xoá user khỏi hệ thống
Click vào “Add” để tạo mới user
Hậu Điều Kiện
Các sửa đổi đối với các user được chính xác
User case - CustomerList
Mô tả
Cho phép Admin liệt kê danh sách tất cả các khách hàng
Tác Nhân
Aministrator
Tiền Điều Kiện
Customer đặt hàng và sách đó được gửi đến customer
Luồng sự kiện chính
Click vào link “Customer List”
Click vào mỗi customer để xem danh mục các hoá đơn của khách hàng đó
User case - Orderlist
Mô tả
Use case này cho phép admin liệt kê danh sách tất cả các đơn đặt hàng của tất cả các customer
Tác Nhân
Administrator
Tiền Điều Kiện
Admin đăng nhập vào hệ thống đúng với account của mình
Luồng sự kiện chính
Admin click vào link “Order List” trong menu của chương trình
Hậu Điều Kiện
Nếu use case thực hiện thành công thì admin sẽ xem được danh mục tất cả các đơn đặt hàng
II.2 Mô Hình Thực Thể Liên Kết
Books
Categories
OrderDetails
Orders
Groups
Users
II.3 Thiết kế cơ sở dữ liệu
II.3.1 Khối quản lý sách và thể loại sách
Books
BookID
Title
ISBN
Author
Description
CategoryID
UnitPrice
UnitInStock
Categories
CategoryID
CategoryName
Description
II.3.1.1 bảng Categories
Bảng này chứa thông tin về các loại sách trong hệ thống ví dụ như : sách về thương nhân và kinh doanh, sách về máy tính, sách khoa học, tiểu thuyết, sách thiếu nhi.
TT
Tên trường
Kiểu DL
Chiều dài
Nulls
Diễn giải
Ghi chú
1
CategoryID
int
4
Mã thể loại sách
2
CategoryName
nvarchar
50
Thể loại sách
3
Description
ntext
16
X
Miêu tả sách
II.3.1.2 Bảng Books
Bảng này chứa thông tin về tất cả sách có trong hệ thống
TT
Tên trường
Kiểu DL
Chiều dài
Nulls
Diễn giải
Ghi chú
1
BookID
int
4
Mã sách
2
Title
nvarchar
40
Tiêu đề sách
3
ISBN
nvarchar
20
X
Mã số sách tiêu chuẩn quốc tế
4
Author
nvarchar
50
X
Tác giả
5
Description
nvarchar
255
X
Miêu tả sách
6
CategoryID
int
4
Mã thể loại sách
7
UnitPrice
float
8
X
8
UnitInStock
smallint
2
X
II.3.2 Khối quản lý người sử dụng hệ thống
Users
UserID
CompanyName
ContactName
Address
PostalCode
Phone
Fax
Email
Password
Status
groupID
Groups
GroupID
Name
Description
II.3.2.1 Bảng Groups
Bảng này chứa thông tin vể các nhóm người sử dụng hệ thống như: khách hàng, người bán hàng, quản lý kho hàng, quản trị.
TT
Tên trường
Kiểu DL
Chiều dài
Nulls
Diễn giải
Ghi chú
1
GroupId
int
4
Mã nhóm người sử dụng hệ thống.Gồm 4 loại là:khách hàng, người bán, quản lý kho, quản trị hệ thống
2
Name
nvarchar
50
Tên nhóm người sử dụng
3
Decription
nvarchar
255
X
Miêu tả cho từng nhóm người sử dụng
II.3.2.1 Bảng Users
Bảng này chứa thông tin về tất cả người dùng trong hệ thống
TT
Tên trường
Kiểu DL
Chiều dài
Nulls
Diễn giải
Ghi chú
1
UserID
Int
4
Mã người sử dụng hệ thống
2
CompanyName
nvarchar
40
Tên công ty
3
ContactName
nvarchar
30
X
Tên liên lạc
4
Address
nvarchar
60
X
Địa chỉ
5
PostalCode
nvarchar
10
X
Mã bưu điện
6
Phone
nvarchar
24
X
Số điện thoại
7
Fax
nvarchar
24
X
Fax
8
EMail
nvarchar
50
X
Địa chỉ hòm thư
9
Password
nvarchar
50
X
Mật khẩu
10
status
bit
1
X
Trạng thái
11
groupID
int
4
Mã nhóm người sử dụng hệ thống.Mỗi người sử dụng hệ thống thuộc một trong các nhóm:khách hàng, người bán, quản lý kho, quản trị.
II.3.3 Khối quản lý đơn đặt hàng
OrderDetails
OrderDetailID
OrderID
ProductID
Quantity
Discount
Orders
OrderID
UserID
approverID
OrderDate
Status
TotalAmount
CardType
CardID
II.3.3.1 Bảng Orders
Bảng này chứa thông tin về các đơn đặt hàng
TT
Tên trường
Kiểu DL
Chiều dài
Nulls
Diễn giải
Ghi chú
1
OrderID
int
4
Mã đơn đặt hàng
2
UserID
int
4
X
Mã khách hàng
3
approverID
int
4
X
Người chấp nhận
4
OrderDate
datetime
8
Ngày đặt hàng
5
Status
int
4
X
Trạng thái đơn đặt hàng
6
TotalAmount
float
8
X
Số lượng
7
CardType
nvarchar
50
X
Loại thẻ tín dụng
8
CardID
nvarchar
50
X
Mã thẻ tín dụng
II.3.3.1 Bảng OrderDetails
Bảng này chứa thông tin chi tiết của từng đơn đặt hàng
TT
Tên trường
Kiểu DL
Chiều dài
Nulls
Diễn giải
Ghi chú
1
OrderDetailID
int
4
Vì trong đơn đặt hàng có thể có nhiều mặt hàng,ứng với mỗi mặt hàng thì có một mã hóa đơn chi tiết
2
OrderID
int
4
Mã đơn đặt hàng
3
ProductID
int
4
Mã sách
4
Quantity
smallint
2
Số lượng
5
Discount
float
8
X
Hạ giá
II.4 Cấu trúc của Website
Website được thiết kế dựa trên kiến trúc 3 tầng MVC
Tầng Presentation sẽ là giao diên tương tác với người sử dụng hệ thống. Tầng này sẽ gồm các module thực hiện việc hiển thị menu của website, hiển thị tiêu đề cũng như các thông tin về sách, hiển thị và cập nhật thông tin trong giỏ hàng, hiển thị danh sách khách hàng, thông tin đơn đặt hàng, cho phép khách hàng xác nhận(submit) đơn đặt hàng, cho phép đăng nhập, cập nhật và tạo mới user.
Tầng thứ 2 sẽ được chia thành 4 bộ phận : controller-servlet, service-Action Object , Database Access và Model.
controller-servlet :
Nhận tất cả các yêu cầu từ phía người sử dụng và gửi chúng tới các đối tượng dịch vụ tương ứng ở bộ phận service-Action Object để xử lý tiếp
Service-Action Object :
Bộ phận này sẽ xử lý những yêu cầu của người sử dụng như: lấy ra toàn bộ các thông tin sách và trả về tầng presentation, tìm kiếm và trả lại kết quả tìm kiếm, đưa sách vào giỏ hàng, cập nhật giỏ hàng, xác nhận thông tin đơn đặt hàng để update cơ sở dữ liệu, nhận thông tin, cập nhật, xoá hay tạo mới người sử dụng vào cơ sở dữ liệu.
Database Access : Thực hiện truy xuất cơ sở dữ liệu
Model : là các đối tượng dùng để định nghĩa và chứa các phương thức thực thi đối với người sử dụng, đơn đặt hàng , giỏ hàng và sách.
II.5 Các thành phần chính trong kiến trúc
Presentation
1
Menu.Xml,Menu.xsl
Hiển thị menu bên trái màn hình của website
2
BookList.jsp
Hiển thị tiêu để và các thông tin khác của sách
3
BookDetail.jsp
Hiển thị thông tin chi tiết về sách
4
Cart.jsp
Hiển thị và cập nhật thông tin về giỏ hàng
5
OrderList.jsp
Hiển thị danh sách các đơn đặt hàng của khách hàng
6
OrderDetail.jsp
Hiển thị thông tin chi tiết của từng đơn đặt hàng
7
Checkout.jsp
Cho phép khách hàng nhập thông tin về thẻ thanh toán và xác nhận gửi đơn đặt hàng đến server
8
SignIn.html
Cho phép các user truy nhập vào hệ thống
9
SignUp.jsp
Cho phép đăng ký thành viên đối mới user chưa có tài khoản của hệ thống
10
Addbook.jsp
Cho phép tạo mới và cập nhật thông tin sách
11
AddUser.jsp
Cho phép tạo mới và cập nhật thông tin của các user
Controller Servlet
1
FrontController.class
Nhận tất cả các yêu cầu từ phía user và gửi yêu cầu đến các đối tượng dích vụ tương ứng để xử lý yêu cầu đó
Service Action Objects
1
ShowhomeAO.class
Lấy về thông tin của toàn bộ sách trong hệ thống và gửi đến titles.jsp
2
BookSearchAO.class
Tìm kiếm sách và gửi kết quả tới title.jsp
3
BookDetailAO.class
Lấy ra thông tin chi tiết của sách và gửi kết quả đến BookDetail.jsp
4
ViewCartAO.class
Tạo đối tượng giỏ hàng và gửi kết quả tới cart.jsp
5
AddToCartAO.class
Đưa sách vào giỏ hàng
6
UpdateCartAO.class
Cập nhật lại giỏ hàng
7
SendOrderAO.class
Xác nhận thông tin của đơn đặt hàng để cập nhật cơ sở dữ liệu
8
ViewOrderStatusAO.class
Send order information to OrderDetail.jsp
9
OrderListAO.class
Lấy ra danh mục tất cả các đơn đặt hàng và gửi tới OrderList.jsp
10
PrintInvoiceAO.class
Cập nhật trạng thái đơn đặt hàng sang trạng thái “delivering” và in hóa đơn cho khách hàng
11
UpdateBookAO.class
Thêm mới hoặc cập nhật thông tin sách vào cơ sở dữ liệu
12
DeleteBookAO.class
Xoá sách từ cơ sở dữ liệu
12
UpdateUserAO.class
Thêm mới hoặc cập nhật thông tin user vào cơ sở dữ liệu
13
DeleteUserAO.class
Xoá user từ cơ sở dữ liệu
Database Access
1
BookStoreDAO.class
Phụ trách giao tiếp với cơ sở dữ liệu
Model
1
Book.class
Là lớp của các đối tượng sách
2
CartItem.class
Là lớp của các đối tượng giỏ hàng
3
Order.class
Là lớp các đối tượng đơn đặt hàng
4
User.class
Là lớp các đối tượng người sử dụng hệ thống
5
Group.class
Là lớp tương ứng với bảng Groups trong database
II.6 Các biểu đồ tương tác(Sequence diagram và Collaboration diagram)
II.6.1 Biểu đồ tương tác của use case AddBookToCart
II.6.1.1 Biểu đồ trình tự
II.6.1.2 Biểu đồ cộng tác
II.6.2 Biểu đồ tương tác của use case insertBook
II.6.2.1 Biểu đồ trình tự
II.6.2.2 Biểu đồ cộng tác
II.6.3 Biểu đồ tương tác của use case BookList
II.6.3.1 Biểu đồ trình tự
II.6.3.2 Biểu đồ cộng tác
II.6.4 Biểu đồ tương tác của use case BookSearch
II.6.4.1 Biểu đồ trình tự
II.6.4.2 Biểu đồ cộng tác
II.6.5 Biểu đồ tương tác của use case CustomerList
II.6.5.1 Biểu đồ trình tự
II.6.5.2 Biểu đồ cộng tác
II.6.6 Biểu đồ tương tác của use case deleteBook
II.6.6.1 Biểu đồ trình tự
II.6.6.2 Biểu đồ cộng tác
Chương III Xây dựng chương trình
III.1 Các Modul chính của chương trình
III.1.1 Làm thế nào sử dụng hệ thống để đặt hàng?
- Việc đặt hàng (order) trong hệ thống rất dế dàng, người sử dụng không cần phải tạo acount trước khi đặt đơn hàng đầu tiên. Sau khi chọn sách vào giỏ hàng, chức năng sendorder sẽ tự động yêu cầu người sử dụng truy nhập hay tạo account mới .
- Sau đây là các bước để đặt một đơn đặt hàng :
1. Tìm sách
2. Đưa sách vào giỏ hàng
3. Truy nhập / Đăng nhập
4. Gửi đơn đặt hàng cho server
5. Cung cấp mã số thẻ tín dụng
6. Kiểm tra trạng thái của đơn đặt hàng
1. Tìm sách
Để tìm được quyển sách đúng như mong muốn, người dùng có thể duyệt trong danh sách của toàn bộ sách trong cửa hàng, tìm kiếm theo các thể loại sách, hay tìm kiếm sách theo từ khoá như tiêu đề, tác giả, isbn, hay tìm kiếm theo miêu tả được hệ thống hỗ trợ nằm ở menu bên trái màn hình. Sau khi duyệt sách hay sử dụng chức năng tìm kiếm, bên phải màn hình sẽ xuất hiện một list các sách liên quan đến những quyển sách người sử dụng cần tìm, đánh dấu vào mục cột choosed tương ứng rồi nhấn nút Add selected books to shopping cart ở phía dưới màn hình, để đưa sách vào giỏ hàng.
Nếu muốn xem thông tin chi tiết của sách, người dùng có thể nhấn vào tiêu đề sách ứng với cột title. Khi đó các thông tin chi tiết về quyển sách sẽ được hiển thị. Người dùng có thể tuỳ chọn số lượng sách cần mua trong textbox Quantity và đưa vào giỏ hàng. Người dùng cũng có thể xem tất cả các quyển sách có cùng tác giả hay những quyển sách cùng thể loại với quyển sách đang xem chi tiết bằng cách nhấn vào hai đường link bên dưới dong chữ “ What you like to search? ”
2. Đưa sách vào giỏ hàng
Để đưa sách vào giỏ hàng, người mua sau khi chọn sách cần nhấn vào nút “Add to Shopping cart” trong list book hoặc trong trang bookdetail. Người dùng có thể xem giỏ hàng của họ bất cứ lúc nào bằng cách nhấn vào menu “Shopping cart” bên trái màn hình hoặc nhấn vào nút “View your shopping cart” ở bên dưới màn hình. Trong mỗi giỏ hàng đã chọn, khách hàng có thể tuỳ chọn theo ý mình ví dụ như: loại bỏ sách ra khỏi giỏ hàng bằng cách chọn vào checkbox “Remove” tương ứng, thay đổi lại số lượng sách muốn mua trong textbox “Quantity” sau đó nhấn chuột vào nút “Update shopping cart”.
Nếu muốn mua thêm sách, khách hàng có thể quay trở lại booklist bằng cách click vào “Continue shopping”
3. Truy nhập/ đăng nhập
Trước khi đặt hàng, khách hàng phải truy nhập vào hệ thống với tài khoản đã được đăng ký bằng cách click vào link “My account” ở Menu bên trái màn hình.
Nếu chưa có tài khoản, khách hàng phải đăng nhập bằng cách nhấn vào link “if you are not a member, sign up now”, sau đó điền thông tin cá nhân vào trang đăng ký
4. Gửi đơn đặt hàng cho server
Sau khi đã kiểm tra giỏ hàng chứa sách cũng như số lượng theo yêu cầu, khách hàng chuyển đơn đặt hàng đến seller bằng cách click vào nút “order “ ở bên dưới màn hình của trang hiển thị giỏ hàng
5. Cung cấp mã số thẻ tín dụng
Trước tiên, khách hàng phải chọn loại thẻ thanh toán cho hoá đơn, ví dụ như : Visa card, Master card và điền thông tin vể mã của thẻ thanh toán
6. Kiểm tra trạng thái của đơn đặt hàng
Khi khách hàng muốn xem lại hay thay đổi thông tin trong đơn đặt hàng trước đó, họ cần truy nhập hệ thống và click vào link “Admin feature” ở menu bên trái màn hình, sau đó click vào link “Order list” cũng nằn ở menu bên trái màn hình mới. Khi đó, khách hàng có thể duyệt các hoá đơn đã đặt theo các trạng thái : Waiting, delivering, delivered, ask for Aborting, Aborted tương ứng với các link ở trên menu bên trái màn hìn
Khi đó, khách hàng sẽ xem lại được tất cả các hoá đơn và trạng thái tương ứng với các hoá đơn đã đặt trước đó.
III.1.2 Quản lý bán hàng(dùng cho Seller)
Nếu là một user có quyền seller trong hệ thống thì user đó sẽ được thực hiện các tác vụ sau:
Truy nhập
Duyệt danh sách người mua
Duyệt danh sách đơn đặt hàng
Xem chi tiết đơn đặt hàng
Xác nhận trước khi phân phát sách
Lập hoá đơn
Loại bỏ hoá đơn
1. Truy nhập
User muốn truy nhập vào hệ thống thì click vào link “My account” bên trái màn hình, và điền thông tin ứng với Seller :
2. Duyệt danh sách người mua
Để duyệt danh sách khách hàng, click vào link “Customer list” bên trái màn hình. Trong bả._.
Các file đính kèm theo tài liệu này:
- DA0609.DOC