cần bạnlựa chọn và thanh toán bằng các phương thức như tiền mặt hoặc trực tuyến thông qua dịch vụ...Sau khi đặt hàng, bạn có thể kiểm tra và chỉnh sửa lại trong giỏ hàng của mình.. Chọ
Trang 1TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT
KHOA KỸ THUẬT – CÔNG NGHỆ
Huỳnh Minh HoàngNguyễn Minh Thuận
Trang 2TRƯỜNG ĐẠI HỌC THỦ DẦU MỘT
KHOA KỸ THUẬT – CÔNG NGHỆ
Huỳnh Minh HoàngNguyễn Minh ThuậnNguyễn Việt Trung
BINH DƯƠNG – 11/2023
Trang 3LỜI NÓI ĐẦUPhát triển website bán quần áo nam (HTshop)
Dự án này nhằm mục đích phát triển trang web Bán quần áo nam (HTshop) để bán hàng trựctuyến cho khách hàng như Áo sơ mi, Quần tây và túi xách Somi Đây là website giúp khách hàngtìm được nhiều sản phẩm yêu thích theo chủng loại, nhà sản xuất , xem thông tin chi tiết về sảnphẩm Nếu đăng ký tài khoản, bạn sẽ có thể đặt mua sản phẩm mà không cần thanh toán cần bạnlựa chọn và thanh toán bằng các phương thức như tiền mặt hoặc trực tuyến thông qua dịch vụ Sau khi đặt hàng, bạn có thể kiểm tra và chỉnh sửa lại trong giỏ hàng của mình Admin có quyềnquản lý các thông tin về khách hàng, sản phẩm, khuyến mãi, danh sách sản phẩm đã đặt mua, Các thành phần chức năng của dự án
Sau đây là danh sách các chức năng của Trang web Nhiều chức năng khác mà bạn thấy phù hợp
có thể thêm vào danh sách này Và khi phần mô tả chức năng chưa đầy đủ, bạn có thể đưa ra cácgiả định phù hợp và tiếp tục
Có những người đã đăng ký trên trang web (người dùng, khách hàng, quản trị viên) Mỗi ngườitrong số họ có thể có một số đặc quyền riêng (ví dụ: quản trị viên có thể quản lý sản phẩm củatrang web bằng cách thêm, chỉnh sửa hoặc xóa, trong khi khách hàng thì không thể)
Trang 4MỤC LỤC
LỜI NÓI ĐẦU i
MỤC LỤC ii
DANH MỤC HINH v
DANH MỤC BẢNG vii
CHƯƠNG 1 TỔNG QUAN ĐỀ TÀI 1
1.1 Phân tích yêu cầu đề tài 1
1.1.1 Tên đề tài 1
1.1.2 Chức năng 1
1.1.3 Yêu cầu bài toán 1
1.2 Phân tích và thiết kế hệ thống 2
1.2.1 Khảo sát hiện trạng và xây dựng hệ thống 2
1.2.2 Phân tích hệ thống 2
1.3 Công nghệ sử dụng 2
1.3.1 ASP.NET MVC 2
1.3.2 Microsoft SQL Server 3
CHƯƠNG 2 PHÂN TÍCH THIẾT KẾ HỆ THỐNG 5
2.1 Danh sách các Actor 5
2.2 Danh sách các chức năng 5
2.3 Biểu đồ use case 9
2.3.1 Biểu đồ use case tổng quát 9
2.3.2 Biểu đồ use case quản lý giỏ hàng 10
2.3.3 Biểu đồ use case quản lý đơn hàng 10
2.3.4 Biểu đồ quản lý thông tin khuyến mãi 11
2.4 Đặc tả Use case 11
2.4.1 Đặc tả use case đăng ký làm thành viên 11
2.4.2 Đặc tả use case Xem thông tin sản phẩm 12
Đặc tả use case Xem thông tin giỏ hàng 13
2.4.3 Đặt tả use case tìm kiếm 13
Trang 52.4.4 Đặc tả use case thêm , bớt sản phẩm trong giỏ hàng 14
2.4.5 Đặc tả use case thanh toán 15
2.5 Biểu đồ tuần tự 16
2.5.1 Biểu đồ tuần tự của use case đăng ký tài khoản 16
2.5.2 Biểu đồ tuần tự của use case đăng nhập 16
2.5.3 Biểu đồ của use case sửa thông tin cá nhân 17
2.5.4 Biểu đồ tuần tự của use case quản lý sản phẩm 17
2.5.5 Biểu đồ tuần tự của use case cập nhật thông tin khách hàng 18
2.6 Biểu đồ hoạt động 18
2.6.1 Biểu đồ hoạt động use case đăng ký tài khoản 18
2.6.2 Biểu đồ hoạt động use case đăng nhập 18
2.6.3 Biểu đồ hoạt động use case sửa thông tin cá nhân 19
2.6.4 Quản lý danh mục sản phẩm 19
2.6.5 Thêm sản phẩm vào giỏ hàng 20
2.6.6 Xóa sản phẩm ra giỏ hàng 20
2.7 Sơ đồ lớp(Class Diagram) 21
CHƯƠNG 3 THIẾT KẾ CƠ SỞ DỮ LIỆU 22
3.1 Lược đồ 22
3.2 Lược đồ chi tiết 22
3.2.1 Bảng ADMIN 22
3.2.2 Bảng SIZE 22
3.2.3 Bảng USERs 23
3.2.4 Bảng SANPHAM 23
3.2.5 Bảng RATING 24
3.2.6 Bảng KHUYENMAI 24
3.2.7 Bảng THELOAI 24
3.2.8 Bảng CTSize 25
Trang 63.3 Sơ đồ cơ sơ dữ liệu 27
CHƯƠNG 4 XÂY DỰNG WEBSITE BÁN QUẦN ÁO HTSHOP 28
4.1 Một số giao diện người dùng 28
4.1.1 Trang chủ 28
4.1.2 Trang sản phẩm 29
4.1.3 Trang đăng nhập 29
4.1.4 Trang đăng ký 30
4.1.5 Trang liên hệ 30
4.1.6 Trang thông tin chi tiết sản phẩm 31
4.1.7 Trang giới thiệu HTShop 31
4.1.8 Trang giỏ hàng 32
4.1.9 Trang đặt hàng 32
4.1.10 Trang thanh toán Vnpay 33
4.1.11 Trang thanh toán Paypal 34
4.2 Một số giao diện Admin 35
4.2.1 Trang quản lý sản phẩm 35
4.2.2 Trang quản lý tài khoản khách hàng 35
4.2.3 Trang quản lý đơn hàng 36
4.2.4 Trang xem chi tiết đơn hàng 36
4.2.5 Trang quản lý thông tin khuyến mãi 37
4.2.6 Trang quản lý bình luận 37
KẾT LUẬN 38
1 Kết quả đạt được 38
2 Hướng phát triển của đề tài 38
TÀI LIỆU THAM KHẢO 40
Trang 7DANH MỤC HINH
Hình 1 Các thành phần chính của mô hình MVC 3
Hình 2 Mô hình tuần tự của MVC 3
Hình 3 Biểu đồ use case tổng quát 9
Hình 4.Use case quản lý giỏ hàng 10
Hình 5.Use case quản lý đơn hàng 10
Hình 6.Use case quản lý thông tin khuyến mãi 11
Hình 7.Biểu đồ tuần tự use case đăng ký 16
Hình 8 Biểu đồ tuần tự của use case đăng nhập 16
Hình 9.Biểu đồ sửa thông tin cá nhân 17
Hình 10.Biểu đồ tuần tự use case quản lý sản phẩm 17
Hình 11.Biểu đồ tuần tự của use case cập nhật thông tin khách hàng 18
Hình 12.Sơ đồ hoạt động Use case đăng ký 18
Hình 13 Sơ đò hoạt động Use case Đăng nhập 18
Hình 14 Sơ đồ hoạt động Use case sửa thông tin cá nhân 19
Hình 15 Sơ đồ hoạt động Use case quản lý danh mục sản phẩm 19
Hình 16 Sơ đồ hoạt động Use case thêm sản phẩm vào giỏ hàng 20
Hình 17 Sơ đồ hoạt động Use case xóa sản phẩm ra giỏ hàng 20
Hình 18.Class Diagram 21
Hình 19 Bảng chứa thông tin ADMIN 22
Hình 20.Bảng chứa thông tin SIZE 22
Hình 21.Bảng chứa thông tin khách hàng 23
Hình 22.Bảng chứa thông tin sản phẩm 23
Hình 23.Bảng chứa thông tin bình luận 24
Trang 8Hình 28.Bảng chứa thông tin chi tiết đơn hàng 25
Hình 29.Bảng chứa thông tin phương thức thanh toán 26
Hình 30.Bảng chứa thông tin Thanh toán 26
Hình 31.Sơ đồ cơ sơ dữ liệu của HTShop 27
Hình 32.Giao diện trang chủ người dùng 28
Hình 33.Giao diện trang sản phẩm 29
Hình 34.Giao diện trang đăng nhập 29
Hình 35.Giao diện trang đăng ký 30
Hình 36.Giao diện trang liên hệ 30
Hình 37.Giao diện chi tiết sản phẩm 31
Hình 38.Giao diện giới thiệu shop quần so HTShop 31
Hình 39.Giao diện giỏ hàng 32
Hình 40.Giao diện đặt hàng (xác nhận sản phẩm) 32
Hình 41.Giao diện đặt hàng(thông tin người đặt và chọn phương thức thanh toán) 33
Hình 42.Giao diện thanh toán VnPay 33
Hình 43.Giao diện thanh toán Paypal 34
Hình 44.Giao diện quản lý sản phẩm 35
Hình 45.Giao diện quản lý tài khoản khách hàng 35
Hình 46.Giao diện quản lý đơn hàng 36
Hình 47.Giao diện chi tiết đơn hàng 36
Hình 48.Giao diện quản lý thông tin khuyến mãi 37
Hình 49Giao diện quản lý bình luận 37
Trang 9DANH MỤC BẢNGBảng 1.Danh sách các Actor 5Bảng 2.Danh sách các chức năng 8Bảng 3.Bảng lược đồ tổng quát 22
Trang 10CHƯƠNG 1 TỔNG QUAN ĐỀ TÀI1.1 Phân tích yêu cầu đề tài
+ Xem chi tiết sản phẩm
+ Cập nhật thông tin cá nhân
- Admin:
+ Quản lý sản phẩm
+ Quản lý đơn hàng
+ Thống kê doanh thu
1.1.3.Yêu cầu bài toán
- Responsive Design: Giao diện bắt mắt, thân thiện với người dùng Các thanh menucũng như hình ảnh, đường link được sắp xếp hợp lý, sáng tạo,có khả năng tươngthích với mọi thiết bị như PC, laptop, tablet, mobile
- Đăng ký: Website cho phép người dùng tạo tài khoản mới trơ thành thành viên củaHTShop, ghi nhận thông tin khách hàng
- Đăng nhập: Website cho phép khách hàng vào trang của cửa hàng, cập nhật tin tứckhuyến mãi ngay trong trang cá nhân của từng khách hàng
- Tìm kiếm: thanh tìm kiếm thông minh giúp khách hàng có thể tìm kiếm kiếm sảnphẩm trên từ khóa liên quan, hỗ trợ tìm kiếm với các bộ lọc
- Tùy chọn thuộc tính sản phẩm: Thêm các thuộc tính của sản phẩm( kích thước, giátiền,…) Danh mục sản phẩm có thể được phân theo nhiều cấp
- Cổng thanh toán: Hỗ trợ nhiều cổng thanh toán phổ biến để tạo điều kiện mua hàngtốt nhất cho khách hàng như VnPay, Paypal, thanh toán khi nhận hàng
Trang 111.2 Phân tích và thiết kế hệ thống
1.2.1 Khảo sát hiện trạng và xây dựng hệ thống
- Sau khi khảo sát nhóm đã nắm bắt được các thông tin :
+ Khách hàng có thể :
Đăng ký tài khoản
Đăng nhập vào Website
Xem chi tiết sản phẩm
Tìm kiếm sản phẩm, khuyến mãi,
Chọn sản phẩm cần mua
Đặt hàng
Quản lý sản phẩm trong giỏ hàng
Giải quyết bằng các phương thức như tiền mặt hoặc trực tuyến qua các dịch vụ ( vnpay,paypal,…)
+ Quản trị có thể
Quản lý thông tin khách hàng
Quản lý sản phẩm (chi tiết sản phẩm, thêm sản phẩm, chỉnh sửa sản phẩm, xóa sảnphẩm )
Quản lý thông tin khuyến mãi
Quản lý thông tin tuyển dụng
Quản lý thông tin liên lạc
Quản lý danh sách sản phẩm được đặt trong giỏ hàng của từng thành viên
Trang 12tượng đồ họa với người sử dụng cũng như những đối tượng khác.
Hình 1 Các thành phần chính của mô hình MVCKhi người sử dụng hoặc những đối tượng khác cần thay đổi trạng thái của đối tượng đồ họa, nó
sẽ tương tác thông qua Controller của đối tượng đồ họa Controller sẽ thực hiện việc thay đổitrên Model Khi có bất kỳ sự thay đổi nào xảy ra ơ Model, nó sẽ phát thông điệp ( broadcastmessage) thông báo cho View và Controller biết Nhận được thông điệp từ Model, View sẽ cậpnhật lại thể hiện của mình, đảm bảo rằng nó luôn là thể hiện trực quan chính xác của Model.Còn Controller, khi nhận được thông điệp từ Model, sẽ có những tương tác cần thiết phản hồi
lại người sử dụng hoặc các đối tượng khác
Hình 2 Mô hình tuần tự của MVC1.3.2 Microsoft SQL Server
Trang 13Mọi người nhận ra rằng SQL Server là DBMS do Microsoft thiết kế, giúp kiểm soát và tổchức số lượng thông tin rất lớn trong các vấn đề liên quan đến kinh tế Suốt từ khi xuất hiện vàonăm 1989, SQL Server liên tục được nâng cao chất lượng thông qua việc phát hành phiển
bảng mới và điều chỉnh thường xuyên Mục đích chính của gói sản phẩm là cải thiện hiệu suất
và thêm tính linh hoạt, từ đó hỗ trợ quá trình xử lý dữ liệu
Một trong những ưu điểm nổi bật của SQL Server chính là khả năng hỗ trợ cho công việc xử lý thông tin qua sự kết hợp linh hoạt với ngôn ngữtruy vấn cấu trúc-Structured Query Language (SQL), giải pháp này thuận tiện và hiệu suất khiếm di chiơ, giải thoát từ căng thẳng xoay quanh van de of vietnamese equator Chuẩn hoá của SQL Server bao gồm việc áp dụng các biện pháp an toàn hiệu quả và kiểu mã hóa đương đại vào cơ sơ
dữ liệu Trong việc đảm bảo tính riêng tư cho công ty, giải pháp này được xem là ý kiến hàng đầu.
SQL Server hỗ trợ nhiều tính năng quan trọng như xử lý giao dịch (transactionprocessing), sao lưu và phục hồi dữ liệu (backup and recovery), quản lý các đối tượng cơ sơ dữliệu như bảng, view, stored procedure, trigger, và các tính năng như dịch vụ tích hợp toàn diện(Integration Services), phân tích dữ liệu (Analysis Services), và báo cáo (Reporting Services).1.3.3 Triển khai theo cách tùy ý, SQL Server mang lại sự linh hoạt cho việc lựa chọn giữaon-premises, cloud hay mô hình hybrid trong việc đáp ứng mong muốn của các tổ chức và doanhnghiệp Nhờ vào sự tích hợp chặt chẽ với các sản phẩm khác của Microsoft, SQL Server đặc biệtphù hợp cho các môi trường sử dụng công nghệ Microsoft khác như NET Framework và Azure
Trang 14CHƯƠNG 2 PHÂN TÍCH THIẾT KẾ HỆ THỐNG2.1 Danh sách các Actor
1 Admin Người quản lý là người có toàn quyền tương tác với hệ thống,
quyền sửdụng tất cảcác chức năng mà website xây dựng, điềukhiển và kiểm soát mọi hoạt động của website
2 Người dùng Người dùng ơ đây là những người truy cập vào website, có thể
đăng ký Người dùng chỉ có một số quyền nhất định đối vớiwebsite
Bảng 1.Danh sách các Actor2.2 Danh sách các chức năng
Trang 15Thanh toán
Thanh toán bằng tiềnmặt khi nhận hànghoặc thông qua cácdịch vụ thanh toánonline
Khách hàng
Khách hàng quản lýgiỏ hàng của chính
họ ( có thể thêm,sửa, xoá đã chọn)
Khách hàng
Admin quản lý cácsản phẩm+ Thêm mới+ Chỉnh sửa+ Xem chi tiết (Hiểnthị)
Trang 16hàng+ Thêm mới+ Chỉnh sửa+ Xem chi tiết (Hiểnthị)
+ Xoá
Admin quản lý đơnđặt hàng của kháchhàng đặt+ Thêm mới+ Chỉnh sửa+ Xem chi tiết (Hiểnthị)
+ Xoá
Admin
11 Quản lý thông tin khuyến mãi
Admin quản lý thôngtin các chương trìnhkhuyến mãi+ Thêm mới+ Chỉnh sửa+ Xem chi tiết (Hiểnthị)
Admin
Trang 1712 Quản lý thông tin liên hệ
- Admin quản lý cácthông tin liên hệ giúpkhách hàng có thểliên hệ đến cửa hàng+ Thêm mới+ Chỉnh sửa+ Xem chi tiết (Hiểnthị)
+ Xoá
Admin
Bảng 2.Danh sách các chức năng
Trang 182.3 Biểu đồ use case
2.3.1 Biểu đồ use case tổng quát
Hình 3 Biểu đồ use case tổng quát
Trang 192.3.2 Biểu đồ use case quản lý giỏ hàng
Hình 4.Use case quản lý giỏ hàng2.3.3 Biểu đồ use case quản lý đơn hàng
Trang 202.3.4 Biểu đồ quản lý thông tin khuyến mãi
Hình 6.Use case quản lý thông tin khuyến mãi2.4 Đặc tả Use case
2.4.1 Đặc tả use case đăng ký làm thành viên
Tên UC: Đăng kí làm thành viên
Mô tả UC: Tác nhân "Khách hàng" đăng kí tài khoản để trơ thành thành viên của hệ thống.Tác nhân: Khách hàng
Trigger: Khách hàng muốn đăng ký thành viên
Điều kiện trước: Khách hàng chưa có tài khoản thành viên
Điều kiện sau: Khách hàng có tài khoản thành viên mới
Luồng sự kiện:
Luồng sự kiện chính:
1 Khách hàng bắt đầu quá trình đăng kí
2 Khách hàng điền thông tin cá nhân và ấn nút đăng kí
Trang 213 Hệ thống lưu thông tin và cung cấp tài khoản thành viên cho khách hàng.
Nếu có lỗi trong hệ thống, hệ thống sẽ thông báo cho người dùng và yêu cầu họ thử lại sau
2.4.2 Đặc tả use case Xem thông tin sản phẩm
Tên UC: Xem thông tin sản phẩm
Mô tả UC: Tác nhân "Khách hàng" xem thông tin chi tiết về một sản phẩm cụ thể.Tác nhân: Khách hàng
Trigger: Khách hàng muốn xem thông tin chi tiết của một sản phẩm
Điều kiện trước: Khách hàng đã truy cập vào hệ thống
Điều kiện sau: Khách hàng đã xem thông tin sản phẩm
Luồng sự kiện:
Luồng sự kiện chính:
1 Khách hàng tìm kiếm hoặc duyệt qua danh sách sản phẩm
Trang 22Đặc tả use case Xem thông tin giỏ hàng
Tên UC: Xem thông tin giỏ hàng
Mô tả UC: Tác nhân "Khách hàng" xem thông tin về các sản phẩm trong giỏ hàng củamình
Tác nhân: Khách hàng
Trigger: Khách hàng muốn xem giỏ hàng của mình
Điều kiện trước: Khách hàng đã đăng nhập và đã thêm sản phẩm vào giỏ hàng
Điều kiện sau: Khách hàng đã xem thông tin giỏ hàng
Luồng sự kiện:
Luồng sự kiện chính:
1 Khách hàng truy cập vào giỏ hàng
2 Hệ thống hiển thị danh sách các sản phẩm trong giỏ hàng và tổng số tiền
Luồng sự kiện thay thế:
Luồng ngoại lệ:
Ngoại lệ 1:
Giỏ hàng của khách hàng trống sẽ hiển thị thông báo giỏ hàng trống
Ngoại lệ 2:
Nếu có lỗi trong hệ thống, hệ thống sẽ thông báo cho người dùng và yêu cầu họ thử lại sau
2.4.3 Đặt tả use case tìm kiếm
Tên UC: Tìm kiếm sản phẩm
Mô tả UC: Tác nhân "Khách hàng" tìm kiếm sản phẩm theo từ khóa
Trang 23Tác nhân: Khách hàng
Trigger: Khách hàng muốn tìm sản phẩm
Điều kiện trước: Khách hàng đã truy cập vào hệ thống
Điều kiện sau: Khách hàng đã xem kết quả tìm kiếm sản phẩm
Luồng sự kiện:
Luồng sự kiện chính:
1 Khách hàng nhập từ khóa tìm kiếm
2 Hệ thống tìm kiếm và hiển thị kết quả phù hợp với từ khóa
Luồng sự kiện thay thế:
Luồng ngoại lệ:
Ngoại lệ 1:
Không tìm thấy sản phẩm nào phù hợp hệ thống sẽ hiển thị thông báo sản phẩm không tồn tạiNgoại lệ 2:
Nếu có lỗi trong hệ thống, hệ thống sẽ thông báo cho người dùng và yêu cầu họ thử lại sau
2.4.4 Đặc tả use case thêm , bớt sản phẩm trong giỏ hàng
Tên UC: Thêm, bớt sản phẩm trong giỏ hàng
Mô tả UC: Tác nhân "Khách hàng" thay đổi nội dung của giỏ hàng bằng cách thêm hoặc bớtsản phẩm
Tác nhân: Khách hàng
Trigger: Khách hàng muốn chỉnh sửa giỏ hàng của mình
Điều kiện trước: Khách hàng đã xem thông tin giỏ hàng
Điều kiện sau: Giỏ hàng của khách hàng đã được chỉnh sửa
Luồng sự kiện:
Trang 24Luồng sự kiện thay thế:
Luồng ngoại lệ:
Ngoại lệ 1:
Khách hàng không thực hiện thay đổi nào trong giỏ hàng
Ngoại lệ 2:
Nếu có lỗi trong hệ thống, hệ thống sẽ thông báo cho người dùng và yêu cầu họ thử lại sau
2.4.5 Đặc tả use case thanh toán
Tên UC: Thanh toán
Mô tả UC: Tác nhân "Khách hàng" thực hiện thanh toán cho đơn hàng đã đặt
Tác nhân: Khách hàng
Trigger: Khách hàng muốn thanh toán đơn hàng
Điều kiện trước: Khách hàng đã đặt hàng và có đơn hàng cần thanh toán
Điều kiện sau: Đơn hàng được thanh toán thành công
Luồng sự kiện:
Luồng sự kiện chính:
1 Khách hàng chọn phương thức thanh toán
2 Hệ thống xử lý thanh toán và cập nhật trạng thái đơn hàng thành "Đã thanh toán" - Kháchhàng nhận được xác nhận thanh toán
Luồng sự kiện thay thế: Khách hàng hủy thanh toán hoặc thanh toán không thành công.Luồng ngoại lệ: Khách hàng hủy thanh toán hoặc thanh toán không thành công
ngoại lệ 1 Nếu người dùng không nhập thông tin, hệ thống sẽ yêu cầu họ nhập lại thông tin.ngoại lệ 2: Nếu người dùng không xác nhận việc thanh toán, hệ thống sẽ không xử lý thanhtoán
Ngoại lệ 3: Nếu có lỗi trong hệ thống, hệ thống sẽ thông báo cho người dùng và yêu cầu họ thửlại sau