5 Xem sách theo tác giả Cho phép khách hàng chọn sách theo tác giả 6 Tìm kiếm sách trong chủ đề Cho phép khách hàng chọn sách theo tác giả yêu thích 7 Thêm sách mới Cho phép Admin thêm s
Trang 1TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT VIỆN KỸ THUẬT – CÔNG
Trang 2TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT VIỆN KỸ THUẬT – CÔNG
Trang 3MỤC LỤC
LỜI CẢM ƠN 3
CHƯƠNG 1 TỔNG QUAN 4
1.1 Giới thiệu 4
1.1.1 Tên đề tài 4
1.1.2 Giới thiệu NET MVC 4
1.1.3 Giới thiệu ứng dụng 4
1.1.4 Lý do chọn đề tài 5
CHƯƠNG 2 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 6
2.1 Phân tích 6
2.2 Sơ đồ Use Case 7
2.3 Danh sách mô tả User Case 7
2.3.1 Danh sách các Use Case 7
2.4 Đặc tả Use Case 8
2.4.1 Use case Đăng nhập 8
2.4.2 Use case Đăng ký 8
2.4.3 Use case Mua sách 9
2.4.4 Use case xem sách theo chủ đề 9
2.4.5 Use case xem sách theo tác giả 10
2.4.6 Use Case Tìm kiếm sách trong chủ đề 10
2.4.7 Use Case thêm sách mới 11
2.4.8 Use Case thêm tác giả mới 11
2.4.9 Use Case xem quản lý đơn hàng 12
Trang 42.4.10 Use Case Xem chi tiết sách 12
2.5 Cơ sở dữ liệu 13
2.6 Sơ đồ tuần tự (Sequence diagram) 13
2.6.1 Sơ đồ tuần tự cho chức năng đăng nhập 13
2.6.2 Sơ đồ tuần tự cho chức năng đăng ký 14
2.6.3 Sơ đồ tuần tự cho chức năng xem sách , chi tiểt sách theo chủ đề hoặc tác giả 14
2.6.4 Sơ đồ tuần tự cho chức năng quản lý đơn hàng 15
2.6.5 Sơ đồ tuần tự cho chức năng thêm vào giỏ hàng 15
2.7 Sơ đồ hoạt động cho chức năng đăng nhập (Activity chart) 16
2.7.1 Sơ đồ hoạt động cho chức năng đăng nhập 16
2.7.2 Sơ đồ hoạt động cho chức năng đăng ký 17
2.7.3 Sơ đồ hoạt động cho chức năng quản lý giỏ hàng 18
2.7.4 Sơ đồ hoạt động cho chức năng xem trang chủ 19
2.7.5 Sơ đồ hoạt động cho chức năng xem sách , chi tiểt sách theo chủ đề hoặc tác giả 20
2.7.6 Sơ đồ hoạt động cho chức năng thêm vào giỏ hàng 21
2.8 Biểu đồ lớp (Class diagram) 22
2.9 Các bảng chỉnh trong cơ sở dữ liệu 23
2.9.1 Bảng “NHAXUATBAN” 23
2.9.2 Bảng “TACGIA” 23
2.9.3 Bảng “KHACHHANG” 24
2.9.4 Bảng “CHUDE” 24
2.9.5 Bảng “SACH” 25
2.9.6 Bảng “DONDATHANG” 25
Trang 52.9.7 Bảng “CHITIETDONTHANG” 26
2.9.8 Bảng “NHAXUATBAN” 26
CHƯƠNG 3 XÂY DỰNG WEBSITE BÁN SÁCH CHO CÔNG TY TNHH ABC 27
3.1 Giao diện trang chủ 27
3.2 Giao diện trang giỏ hàng 28
3.3 Giao diện trang chi tiết sách 28
3.4 Giao diện trang xem sách theo chủ đề, tác giả 29
3.5 Giao diện trang dăng nhập 30
3.6 Giao diện trang đăng ký 30
3.7 Giao diện trang Admin 31
3.8 Giao diện trang quản lý sách 31
3.9 Giao diện trang quản lý tác giả 32
3.10 Giao diện trang quản lý Nhà xuất bản 32
3.11 Giao diện trang quản lý đơn hàng 33
CHƯƠNG 4 ĐÁNH GIÁ KẾT QUẢ 34
4.1 Hướng phát triển đề tài 34
4.2 Ưu và nhược điểm của đề tài 34
4.3 Kết luận 35
Trang 6DANH MỤC BẢNG
Hình 1 Những chức năng cơ bản 6
Hình 2 Sơ đồ Use Case 7
Hình 3 Lược đồ diagram 13
Hình 4 Sơ đồ tuẩn tự cho chức năng đăng nhập 13
Hình 5 Sơ đồ tuẩn tự cho chức năng đăng ký 14
Hình 6 Sơ đồ tuẩn tự cho chức năng xem sách , chi tiểt sách theo chủ đề hoặc tác giả 14
Hình 7 Sơ đồ tuẩn tự cho chức năng quản lý đơn hàng 15
Hình 8 Sơ đồ tuẩn tự cho chức năng thêm vào giỏ hàng 15
Hình 9 Sơ đồ hoạt động cho chức năng đăng nhập 16
Hình 10 Sơ đồ hoạt động cho chức năng đăng ký 17
Hình 11 Sơ đồ hoạt động cho chức năng quản lý giỏ hàng 18
Hình 12 Sơ đồ hoạt động cho chức năng xem trang chủ 19
Hình 13 Sơ đồ hoạt động cho chức năng xem sách , chi tiểt sách theo chủ đề hoặc tác giả 20
Hình 14 Sơ đồ hoạt động cho chức năng thêm vào giỏ hàng 21
Hình 15 Sơ đồ lớp (Class diagram) 22
Trang 7DANH MỤC BẢNG
Bảng 1 Bảng NHAXUATBAN 23
Bảng 2 Bảng TACGIA 23
Bảng 3 Bảng KHACHHANG 24
Bảng 4 Bảng CHUDE 24
Bảng 5 Bảng SACH 25
Bảng 6 Bảng DONDATHANG 25
Bảng 7 Bảng CHITIETDONTHANG 26
Bảng 8 Bảng NHAXUATBAN 26
Trang 8LỜI CẢM ƠN
Em xin gửi lời cảm ơn chân thành nhất đến tất cả những người đã hỗ trợ, tạo điềukiện cho em trong quá trình học tập và thực hiện đề tài này Em rất biết ơn quý Thầy Cô
và bạn bè đã luôn quan tâm, giúp đỡ em trong suốt thời gian học tại trường
Em cũng xin cảm ơn quý Thầy Cô ở Viện Kỹ Thuật – Công Nghệ Trường Đại HọcThủ Dầu Một đã dạy cho em những kiến thức bổ ích và quý giá Nhờ có sự hướng dẫn,chỉ bảo của các thầy cô nên em mới có thể hoàn thành đề tài nghiên cứu một cách tốtnhất
Do mới bước vào thực tế nên em còn nhiều thiếu xót và khó khăn, em mong nhậnđược những góp ý quý báu của quý Thầy Cô để em có thể cải thiện kiến thức và ý thứccủa mình trong lĩnh vực này
Em xin chân thành cảm ơn!
Trang 9CHƯƠNG 1 TỔNG QUAN 1.1 Giới thiệu
1.1.1 Tên đề tài
Đề tài “Xây Dựng Website bán sách cho công ty TNHH ABC” trên một nền tảng
hỗ trợ lập trình C# và SQL
1.1.2 Giới thiệu NET MVC
ASP.NET MVC là một khung làm việc giúp tạo ra các ứng dụng web theo mô hìnhMVC (Model-View-Controller) Trong mô hình này, “Model” đại diện cho dữ liệu vàquy tắc kinh doanh, “View” là giao diện người dùng và “Controller” xử lý các yêu cầungười dùng
Khi một yêu cầu được gửi đến ứng dụng, nó sẽ được định tuyến đến mộtController Controller này sau đó tương tác với Model để thực hiện các hành động hoặclấy dữ liệu Controller sau đó chọn một View và cung cấp cho nó một Model View sau
đó sẽ render trang cuối cùng dựa trên dữ liệu từ Model
ASP.NET MVC hỗ trợ nhiều loại cơ sở dữ liệu khác nhau, bao gồm SQLite, SQLServer, MySQL, PostgreSQL, DB2 và nhiều hơn nữa, cũng như các cửa hàng dữ liệukhông SQL như MongoDB, Redis và Azure Cosmos DB
Đối với phần quản lý, admin có thể quản lý các thông tin sách, nhà xuất bản và tácgiả một cách dễ dàng Ngoài ra, admin cũng có thể quản lý các đơn hàng của khách hàng
và cập nhật trạng thái đơn hàng
Với những tính năng trên, trang web bán sách cho công ty TNHH ABC sẽ giúp chocông ty tiết kiệm thời gian và chi phí trong việc quản lý và bán hàng Đồng thời, trangweb cũng mang lại trải nghiệm mua sắm thuận tiện và nhanh chóng cho khách hàng
Trang 101.1.4 Lý do chọn đề tài
Trong thời đại công nghệ phát triển như hiện nay, internet đang dần trở thành mộtphần không thể thiếu trong cuộc sống của con người Nhu cầu mua sắm trực tuyến cũngngày càng tăng cao, đặc biệt là đối với lĩnh vực sách Xuất phát từ thực tế đó, công tyTNHH ABC đã quyết định xây dựng website bán sách trực tuyến
Website bán sách trực tuyến của công ty TNHH ABC có nhiều ưu điểm vượt trội sovới hình thức bán sách truyền thống Cụ thể, website mang đến cho khách hàng nhữngtrải nghiệm mua sắm tiện lợi, nhanh chóng và tiết kiệm Khách hàng có thể dễ dàng tìmkiếm và lựa chọn sản phẩm theo nhu cầu của mình
Bài tiểu luận này sẽ trình bày chi tiết các bước xây dựng website bán sách trựctuyến cho công ty TNHH ABC Mục tiêu của bài tiểu luận là cung cấp cho công ty nhữngkiến thức và hướng dẫn cần thiết để xây dựng website hiệu quả, góp phần nâng caodoanh số bán hàng
Bên cạnh đó, việc thực hiện đề tài này cũng giúp em nâng cao khả năng lập trình vàrút ra được nhiều kinh nghiệm cho các trang web sau Tuy nhiên, do kiến thức và kinhnghiệm lập trình, thiết kế còn hạn chế nên phần mềm của em còn có nhiều thiếu xót Rấtmong được sự đóng góp của thầy cô và các bạn để phần mềm của em được hoàn thiệnhơn nữa
Trang 11CHƯƠNG 2 PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG 1.1 Phân tích
Website quản lý bán sách cung cấp cho người dùng và người quản lý bao gồmnhững tính năng được thể hiện ở hình bên dưới
Hình 1 Những chức năng cơ bản
Trang 121.2 Sơ đồ Use Case
Hình 2 Sơ đồ Use Case
1.3 Danh sách mô tả User Case
1.1.5 Danh sách các Use Case
1 Đăng nhập Cho phép người quản trị và khách hàng đăng
nhập vào hệ thống
2 Đăng ký Cho phép người dùng tạo tài khoản mới trong
hệ thống
3 Mua sách Cho phép khách hàng mua sách từ hệ thống
4 Xem sách theo chủ đề Cho phép khách hàng xem sách theo chủ đề
5 Xem sách theo tác giả Cho phép khách hàng chọn sách theo tác giả
6 Tìm kiếm sách trong chủ đề Cho phép khách hàng chọn sách theo tác giả
yêu thích
7 Thêm sách mới Cho phép Admin thêm sách mới vào hệ thống
8 Thêm tác giả mới Cho phép Admin thêm tác giả mới vào hệ
Trang 13một cuốn sách cụ thể.
1.4 Đặc tả Use Case
1.1.1 Use case Đăng nhập
Tên Use Case Đăng nhập
Ator chính Admin, khách hàng
Tiền điều kiện Phải có tài khoàn khoản và mật khẩu trước
Hậu điều kiện Admin, khách hàng phải đăng nhập vào hệ thống
Mô tả Cho phép Admin , khách hàng đăng nhập vào Website hệ
thốngDòng sự kiện
chính
Các bước
Hoạt động
1 Admin, khách hàng truy cập website hệ thống
2 Admin, khách hàng chọn đăng nhập vào hệ thống
3 Admin, khách hàng chọn đăng nhập với tài khoản
và mật khẩu đã được cung cấp hoặc đăng ký trước
4 Hệ thống kiểm tra tài khoản, mật khẩu trong
Database và được đăng nhập vào hệ thống theo quyền hạn
Dòng sự kiện phụ Hệ thống kiểm tra tài khoản, mật khẩu có đúng với trong
CSDL hệ thống hiển thị thông báo lỗi quay lại bước 3
1.1.2 Use case Đăng ký
Tên Use Case Đăng ký
Ator chính Khách hàng
Tiền điều kiện Không có
Hậu điều kiện Khách hàng chưa có tài khoản
Mô tả Cho phép người dùng tạo tài khoản mới trong hệ thống.Dòng sự kiện
chính
Cácbước
Hoạt động
1 Khách hàng truy cập website hệ thống
2 Khách hàng chọn đăng ký
3 Khách hàng nhập thông tin yêu cầu
4 Hệ thống kiểm tra tính hợp lệ của các thông tin
đã nhập
5 Nếu các thông tin hợp lệ, hệ thống sẽ tạo tài
khoản mới cho người dùng
Trang 146 Hệ thống chuyển hướng khách hàng đến trang
chủ của hệ thống
Dòng sự kiện phụ Hệ thống sẽ báo lỗi nếu nhập sai định dạng
1.1.3 Use case Mua sách
Tên Use Case Mua sách
Ator chính Khách hàng
Tiền điều kiện Khách hàng phải đăng nhập
Hậu điều kiện Khách hàng Phải đăng nhập vào hệ thống
Mô tả Cho phép khách hàng mua sách từ hệ thống
Dòng sự kiện
1 Khách hàng truy cập website hệ thống
2 Khách hàng chọn Sách mà mình muốn mua
3 Khách hàng nhấn nút "Thêm vào giỏ hàng"
4 Hệ thống hiển thị trang giỏ hàng cho khách hàng
5 Khách hàng nhấn nút "Thanh toán"
6 Hệ thống chuyển hướng khách hàng đến trang
thanh toán thành côngDòng sự kiện phụ Mua thất bại: Hệ thống hiển thị thông báo lỗi
1.1.4 Use case xem sách theo chủ đề
Tên Use Case Xem sách theo chủ đề
Ator chính Khách hàng
Tiền điều kiện Khách hàng phải đăng nhập
Hậu điều kiện Khách hàng Phải đăng nhập vào hệ thống
Mô tả Cho phép khách hàng xem sách theo chủ đề
Dòng sự kiện
chính
Cácbước
Hoạt động
1 Khách hàng truy cập website hệ thống
2 Khách hàng chọn chủ đề mà mình yêu thích
3 Hệ thống sẽ hiển thị danh sách Sách theo chủ đề
4 Khách hàng có thể thêm sách vào giỏ hàng hoặc
thêm vào danh sách yêu thích của họ
Dòng sự kiện phụ Nếu không có sách nào được tìm thấy theo chủ đề đã chọn
hệ thống hiển thị thông báo , quay lại bước 2
Trang 151.1.5 Use case xem sách theo tác giả
Tên Use Case Xem sách theo tác giả
Ator chính Khách hàng
Tiền điều kiện Khách hàng phải đăng nhập
Hậu điều kiện Khách hàng Phải đăng nhập vào hệ thống
Mô tả Cho phép khách hàng chọn sách theo tác giả
Dòng sự kiện
1 Khách hàng truy cập website hệ thống
2 Khách hàng chọn tác giả mà mình yêu thích
3 Hệ thống sẽ hiển thị danh sách Sách theo tác giả
4 Khách hàng có thể thêm sách vào giỏ hàng hoặc
thêm vào danh sách yêu thích của họ
Dòng sự kiện phụ Nếu không có sách nào được tìm thấy theo tác giả đã chọn
hệ thống hiển thị thông báo , quay lại bước 2
1.1.6 Use Case Tìm kiếm sách trong chủ đề
Tên Use Case Tìm kiếm sách trong chủ đề
Ator chính Khách hàng
Tiền điều kiện Khách hàng phải đăng nhập
Hậu điều kiện Khách hàng Phải đăng nhập vào hệ thống
Mô tả Cho phép khách hàng chọn sách theo tác giả yêu thíchDòng sự kiện
hệ thống hiển thị thông báo , quay lại bước 4
Trang 161.1.7 Use Case thêm sách mới
Tên Use Case Thêm sách mới
Tiền điều kiện Admin phải có quyền quản trị hệ thống
Hậu điều kiện Admin Phải đăng nhập vào hệ thống
Mô tả Cho phép Admin thêm sách mới vào hệ thống
4 Admin nhấn nút "Thêm mới"
5 Admin nhập các thông tin cần thiết về sách
6 Admin nhấn nút "Thêm"
Dòng sự kiện phụ Thông tin sách không hợp lệ hệ thống hiển thị thông báo lỗi
1.1.8 Use Case thêm tác giả mới
Tên Use Case Thêm tác giả mới
Tiền điều kiện Admin phải có quyền quản trị hệ thống
Hậu điều kiện Admin Phải đăng nhập vào hệ thống
Mô tả Cho phép Admin thêm tác giả mới vào hệ thống
Dòng sự kiện
1 Admin truy cập website hệ thống
2 Admin chọn quản tác giả
3 Hệ thống sẽ hiển thị danh sách tác giả
4 Admin nhấn nút "Thêm mới"
5 Admin nhập các thông tin cần thiết về tác giả
6 Admin nhấn nút "Thêm"
Dòng sự kiện phụ Thông tin không hợp lệ hệ thống hiển thị thông báo lỗi
Trang 171.1.9 Use Case xem quản lý đơn hàng
Tên Use Case Xem quản lý đơn hàng
Tiền điều kiện Admin phải có quyền quản trị hệ thống
Hậu điều kiện Admin Phải đăng nhập vào hệ thống
Mô tả Cho phép Admin xem đơn hàng mà khách hàng đã thanh
toán
Dòng sự kiện
1 Admin truy cập website hệ thống
2 Admin chọn quản lý đơn hàng
3 Hệ thống sẽ hiển thị danh sách đơn hàngDòng sự kiện phụ Không có
1.1.10.Use Case Xem chi tiết sách
Tên Use Case Xem chi tiết sách
Ator chính Khách hàng
Tiền điều kiện Không có
Hậu điều kiện Không có
Mô tả Cho phép khách hàng xem thông tin chi tiết về một cuốn
3 Hệ thống sẽ hiển thị chi tiết sách
4 Khách hàng có thể xem chi tiết sách nếu đuowjc
thì có thể thêm vào giỏ hàngDòng sự kiện phụ Không có
Trang 181.5 Cơ sở dữ liệu
Hình 3 Lược đồ diagram
1.6 Sơ đồ tuần tự (Sequence diagram)
1.1.11.Sơ đồ tuần tự cho chức năng đăng nhập
Hình 4 Sơ đồ tuẩn tự cho chức năng đăng nhập
Trang 191.1.12 Sơ đồ tuần tự cho chức năng đăng ký
1.1.13.Sơ đồ tuần tự cho chức năng xem sách , chi tiểt sách theo chủ đề hoặc tác giả
Hình 5 Sơ đồ tuẩn tự cho chức năng đăng ký
Hình 6 Sơ đồ tuẩn tự cho chức năng xem sách , chi tiểt sách theo chủ đề hoặc tác giả
Trang 201.1.14.Sơ đồ tuần tự cho chức năng quản lý đơn hàng
1.1.15.Sơ đồ tuần tự cho chức năng thêm vào giỏ hàng
Hình 8 Sơ đồ tuẩn tự cho chức năng thêm vào giỏ hàng Hình 7 Sơ đồ tuẩn tự cho chức năng quản lý đơn hàng
Trang 211.7 Sơ đồ hoạt động cho chức năng đăng nhập (Activity chart) 1.1.1 Sơ đồ hoạt động cho chức năng đăng nhập
Hình 9 Sơ đồ hoạt động cho chức năng đăng nhập
Trang 221.1.2 Sơ đồ hoạt động cho chức năng đăng ký
Hình 10 Sơ đồ hoạt động cho chức năng đăng ký
Trang 231.1.3 Sơ đồ hoạt động cho chức năng quản lý giỏ hàng
Hình 11 Sơ đồ hoạt động cho chức năng quản lý giỏ hàng
Trang 241.1.4 Sơ đồ hoạt động cho chức năng xem trang chủ
Hình 12 Sơ đồ hoạt động cho chức năng xem trang chủ
Trang 251.1.5 Sơ đồ hoạt động cho chức năng xem sách , chi tiểt sách theo chủ đề hoặc tác giả
Hình 13 Sơ đồ hoạt động cho chức năng xem sách , chi tiểt sách theo chủ đề
hoặc tác giả
Trang 261.1.6 Sơ đồ hoạt động cho chức năng thêm vào giỏ hàng
Hình 14 Sơ đồ hoạt động cho chức năng thêm vào giỏ hàng
Trang 271.8 Biểu đồ lớp (Class diagram)
Hình 15 Sơ đồ lớp (Class diagram)
Trang 281.9 Các bảng chỉnh trong cơ sở dữ liệu
1.1.7 Bảng “NHAXUATBAN”
Tên thuộc
Diachi Nvarchar(200) Not null Địa chỉ nhà xuất bản
DienThoai Varchar(50) Not null Số điện thoại nhà xuất bản
Bảng 1 Bảng NHAXUATBAN
1.1.8 Bảng “TACGIA”
Diachi Nvarchar(100) Not null Địa chỉ khách hàng
Dienthoai Varchar(50) Not null Số điện thoại khách hàng
Bảng 2 Bảng TACGIA
Trang 291.1.9 Bảng “KHACHHANG”
DiachiKH Nvarchar(200) Not null Địa chỉ khách hàngDienthoaiKH Varchar(50) Not null Số điện thoại khách hàng
Trang 301.1.11.Bảng “SACH”
Bảng 5 Bảng SACH
1.1.12.Bảng “DONDATHANG”
Tinhtranggiaohang Bit Not null Tình trạng giao hàng
Bảng 6 Bảng DONDATHANG
Trang 311.1.13.Bảng “CHITIETDONTHANG”
Bảng 7 Bảng CHITIETDONTHANG
1.1.14.Bảng “NHAXUATBAN”
TenNXB Nvarchar(50) Not null Tên nhà xuất bản
Diachi Nvarchar(200) Not null Địa chỉ nhà xuất bảnDienThoai Varchar(50) Not null Số điện thoại nhà xuất bản
Bảng 8 Bảng NHAXUATBAN