Khóa luận Xây dựng website bán hàng sử dụng ASP.NET MVC và WEB API (Phần 1)

pdf 22 trang phuongnguyen 2600
Bạn đang xem 20 trang mẫu của tài liệu "Khóa luận Xây dựng website bán hàng sử dụng ASP.NET MVC và WEB API (Phần 1)", để tải tài liệu gốc về máy bạn click vào nút DOWNLOAD ở trên

Tài liệu đính kèm:

  • pdfkhoa_luan_xay_dung_website_ban_hang_su_dung_asp_net_mvc_va_w.pdf

Nội dung text: Khóa luận Xây dựng website bán hàng sử dụng ASP.NET MVC và WEB API (Phần 1)

  1. BỘ GIÁO DỤC VÀ ĐÀO TẠO TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT TP.HCM KHOA ĐÀO TẠO CHẤT LƯỢNG CAO ĐỒ ÁN TỐT NGHIỆP NGÀNH CÔNG NGHỆ THÔNG TIN XÂY DỰNG WEB BÁN HÀNG VỚI CÔNG NGHỆ ASP.NET MVC VÀ WEB API GVHD: ThS. NGUYỄN MINH ĐẠO SVTH: NGUYỄN HỒNG MAI THẢO MSSV: 11110261 S K L 0 0 4 2 1 2 Tp. Hồ Chí Minh, tháng 1/2016
  2. TRƯỜNG ĐẠI HỌC SƯ PHẠM KỸ THUẬT THÀNH PHỐ HỒ CHÍ MINH KHOA ĐÀO TẠO CHẤT LƯỢNG CAO ĐỒ ÁN TỐT NGHIỆP XÂY DỰNG WEB BÁN HÀNG VỚI CÔNG NGHỆ ASP.NET MVC VÀ WEB API SVTH : NGUYỄN HỒNG MAI THẢO MSSV : 11110261 Khoá : 2011-2015 Ngành : Công nghệ thông tin GVHD : ThS. NGUYỄN MINH ĐẠO Tp.Hồ Chí Minh, tháng 01 năm 2016
  3. CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh Phúc NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP Họ và tên Sinh viên: NGUYỄN HỒNG MAI THẢO MSSV: 11110261 Ngành: Công nghệ thông tin Lớp: 11110CLC Giảng viên hướng dẫn: NGUYỄN MINH ĐẠO ĐT: 0903982082 Ngày nhận đề tài: Ngày nộp đề tài: 1. Tên đề tài: XÂY DỰNG WEBSITE BÁN HÀNG SỬ DỤNG ASP.NET MVC VÀ WEB API. 2. Các số liệu, tài liệu ban đầu: - Cần hiểu rõ về việc bán hàng trên mạng: đối tượng, cách thức hoạt động, yêu cầu. - Nắm cơ bản thiết kế web. - Biết cách sử dụng phần mềm Microsoft SQL Server 2012 và Visual Studio 2013. - Các tài liệu ban đầu: Tài liệu môn Lập trình web – thầy Nguyễn Minh Đạo Tài liệu môn Lập trình windown – thầy Nguyễn Minh Đạo Tài liệu môn Bảo mật thông tin – thầy Đặng Trường Sơn Tài liệu môn Thiết kế phần mềm hướng đối tượng – thầy Đặng Thanh Dũng Tài liệu môn Thiết kế web 3. Nội dung đề tài thực hiện: - Xây dựng cơ sở dữ liệu trên Microsoft SQL Server 2012 - Xây dựng một trang web sử dụng công nghệ ASP.NET MVC5 và WEB API. 4. Sản phẩm: Website bán văn phòng phẩm. TRƯỞNG NGÀNH GIẢNG VIÊN HƯỚNG DẪN
  4. CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh Phúc PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN Họ và tên sinh viên: Nguyễn Hồng Mai Thảo MSSV: 11110261 Ngành: Công nghệ thông tin Đề tài: XÂY DỰNG WEBSITE BÁN HÀNG SỬ DỤNG ASP.NET MVC VÀ WEB API Họ và tên giáo viên hướng dẫn: NGUYỄN MINH ĐẠO NHẬN XÉT 1. Về nội dung đề tài & khối lượng thực hiện: 2. Ưu điểm: 3. Khuyết điểm: 4. Đề nghị cho bảo vệ hay không? 5. Đánh giá loại:
  5. 6. Điểm: .(Bằng chữ: ) Tp. Hồ Chí Minh, ngày tháng năm 2015 Giáo viên hướng dẫn (Ký & ghi rõ họ tên)
  6. CỘNG HOÀ XÃ HỘI CHỦ NGHĨA VIỆT NAM Độc lập – Tự do – Hạnh Phúc PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN Họ và tên sinh viên: Nguyễn Hồng Mai Thảo MSSV: 11110261 Ngành: Công nghệ thông tin Đề tài: XÂY DỰNG WEBSITE BÁN HÀNG SỬ DỤNG ASP.NET MVC VÀ WEB API Họ và tên giáo viên phản biện: LÊ VĂN VINH NHẬN XÉT 1. Về nội dung đề tài & khối lượng thực hiện: 2. Ưu điểm: 3. Khuyết điểm: 4. Đề nghị cho bảo vệ hay không? 5. Đánh giá loại:
  7. 6. Điểm: .(Bằng chữ: ) Tp. Hồ Chí Minh, ngày tháng năm 2015 Giáo viên phản biện (Ký & ghi rõ họ tên)
  8. LỜI CÁM ƠN Em xin chân thành cảm ơn Khoa đào tạo Chất lượng cao, trường Đại Học Sư Phạm Kỹ Thuật TP.HCM đã tạo điều kiện tốt cho em thực hiện đề tài này. Em xin chân thành cảm ơn Thầy Nguyễn Minh Đạo là những người đã tận tình hướng dẫn, chỉ bảo em trong suốt thời gian thực hiện đề tài. Em xin chân thành cảm ơn quý Thầy Cô Khoa đào tạo Chất lượng cao, trường Đại Học Sư Phạm Kỹ thuật TP Hồ Chí Minh, về những bài giảng trong suốt khóa học, về những kiến thức nền tảng cũng như những kiến thức về chuyên ngành đã giúp cho em hoàn thành đề tài. Em xin chân thành cảm ơn gia đình và bạn bè đã ủng hộ, giúp đỡ, động viên em trong những lúc khó khăn cũng như trong suốt thời gian học tập và nghiên cứu. Trong phạm vi khả năng cho phép, em đã rất cố gắng để hoàn thành đề tài một cách tốt nhất. Song, chắc chắn sẽ không tránh khỏi những thiếu sót. Em kính mong nhận được sự cảm thông và những ý kiến đóng góp của quý Thầy Cô và các bạn. Người thực hiện Nguyễn Hồng Mai Thảo i
  9. TÓM TẮT Ngày nay, công nghệ ngày càng phát triển, và cùng với sự phát triển đó thì Intenet là một lĩnh vực phát triển mạnh mẽ hàng đầu. Từ đó, việc giao dịch, mua bán trên mạng hiện nay không còn là một lĩnh vực xa lạ mà nó đã được phổ biến rộng rãi. Đồng hành với điều đó thì công nghệ web trên nền .NET Framework của Microsoft ngày càng phát triển mạnh mẽ hơn, cùng với rất nhiều các công nghệ khác như: PHP, JSP, . Trong đó, ASP.NET MVC là một công nghệ đang phát triển mạnh mẽ cùng với nhiều tính năng ưu việt đáp ứng nhu cầu của người thiết kế và người lập trình. Vì vậy em đã chọn xây dựng website dựa trên ASP.NET MVC framework và một số tính năng khác để hỗ trợ khách hàng trong việc mua hàng trên mạng Internet. ii
  10. ABSTRACT Today, the technology is growing, and with that development, the Intenet is a strong growth sector leading. From there, the transaction and online shopping are no longer a strange field. It was widespread everywhere. Together with that, the web-based technologies of Microsoft .NET Framework is growing stronger as many other technologies such as PHP, JSP, In technology ASP.NET MVC which meets for designers and developers is flourished with many premium features. So, I decided to build a website base on ASP.NET MVC5 Framework and some other features to support customer buy product via internet. iii
  11. MỤC LỤC NHIỆM VỤ ĐỒ ÁN TỐT NGHIỆP 3 PHIẾU NHẬN XÉT CỦA GIÁO VIÊN HƯỚNG DẪN 4 PHIẾU NHẬN XÉT CỦA GIÁO VIÊN PHẢN BIỆN 6 LỜI CÁM ƠN i TÓM TẮT ii ABSTRACT iii MỤC LỤC iv DANH SÁCH CHỮ VIẾT TẮT viii DANH SÁCH BẢNG BIỂU ix DANH SÁCH HÌNH ẢNH, BIỂU ĐỒ xi CHƯƠNG 1: TỔNG QUAN 13 1.1. Giới thiệu tổng quát 13 1.2. Mục đích của đồ án 13 1.3. Kết quả của phần mềm 13 Chương 2: CƠ SỞ LÝ THUYẾT 15 2.1. Giới thiệu mô hình MVC 15 2.1.1. Xuất xứ 15 2.1.2. Kiến trúc của mô hình MVC 15 2.1.3. Đặc điểm của mô hình MVC 16 2.2. Công nghệ ASP.NET MVC5 16 2.2.1. Lịch sử phát triển của ASP.NET 16 2.2.2. Khái quát các thành phần của ASP.NET MVC 17 2.2.3. Lợi ích của mô hình ASP.NET MVC 18 2.2.4. Đặc điểm ASP.NET MVC FRAMEWORK 18 2.2.5. Các tính năng của mô hình MVC3 và MVC4 20 2.2.6. Cải tiến của mô hình MVC5 21 iv
  12. 2.3. Bootstrap 21 2.4. Authentication Filter 22 2.5. Giới thiệu mô hình B2C 23 2.5.1. Khái niệm 23 2.5.2. Phân loại 23 2.5.3. Cách thức hoạt động 23 CHƯƠNG 3: WEBSITE BÁN HÀNG ONLINE 24 3.1. Khảo sát thực trạng và phân tích đặc tả yêu cầu 24 3.1.1. Khảo sát thực trạng 24 3.1.2. Phân tích thực trạng 24 3.1.2.1. Một số website bán hàng online phổ biến hiện nay 24 3.1.2.2. Các chức năng chính của website bán hàng online 26 3.1.3. Mục tiêu đề tài 26 3.1.4. Phân tích yêu cầu 27 3.1.4.1. Sơ đồ use case 27 3.1.4.2. Mô tả use case 28 3.1.4.2.1. Use case Đăng ký: 28 3.1.4.2.2. Use case Đăng nhập: 28 3.1.4.2.3. Use case Đăng xuất: 28 3.1.4.2.4. Use case Quản lý mặt hàng: 29 3.1.4.2.5. Use case Quản lý loại mặt hàng: 29 3.1.4.2.6. Use case Quản lý nhà sản xuất 30 3.1.4.2.7. Use case Quản lý nhà cung cấp: 31 3.1.4.2.8. Use case Quản lý loại nhà cung cấp: 32 3.1.4.2.9. Use case Quản lý hợp đồng cung cấp: 33 3.1.4.2.10. Use case Quản lý chi tiết hợp đồng cung cấp: 34 3.1.4.2.11. Use case Quản lý khả năng cung cấp: 35 v
  13. 3.1.4.2.12. Use case Quản lý chi tiết khả năng cung cấp: 36 3.1.4.2.13. Use case Quản lý đặt hàng: 37 3.1.4.2.14. Use case Quản lý chi tiết đặt hàng: 37 3.1.4.2.15. Use case Quản lý giao hàng: 38 3.1.4.2.16. Use case Quản lý chi tiết giao hàng: 39 3.1.4.2.17. Use case Quản lý hình thức vận chuyển: 40 3.1.4.2.18. Use case Quản lý khách hàng: 41 3.1.4.2.19. Use case Quản lý loại khách hàng: 42 3.1.4.2.20. Use case Quản lý user: 43 3.1.4.2.21. Use case Quản lý quyền user: 44 3.1.4.2.22. Use case Quản lý giỏ hàng: 45 3.1.4.2.23. Use case Tìm kiếm theo tên mặt hàng: 45 3.1.4.2.24. Use case Xem chi tiết mặt hàng: 46 3.1.4.2.25. Use case Đặt hàng: 46 3.2. Thiết kế 46 3.2.1. Thiết kế giao diện 46 3.2.1.1. Giao diện người dùng 46 3.2.1.2. Giao diện quản trị 49 3.2.2. Thiết kế cơ sở dữ liệu 52 3.2.2.1. Sơ đồ lớp 52 3.2.2.2. Sơ đồ logic 53 3.2.2.3. Cấu trúc bảng CSDL 54 3.2.2.3.1. Bảng User 54 3.2.2.3.2. Bảng Roles 55 3.2.2.3.3. Bảng Mặt hàng (MatHang) 56 3.2.2.3.4. Bảng Loại mặt hàng (LoaiMatHang) 57 3.2.2.3.5. Bảng Nhà sản xuất (NhaSanXuat) 57 vi
  14. 3.2.2.3.6. Bảng Khách hàng (KhachHang) 58 3.2.2.3.7. Bảng LoaiKhachHang 59 3.2.2.3.8. Bảng Wishlist (WISTLIST) 59 3.2.2.3.9. Bảng Đặt hàng (DatHang) 60 3.2.2.3.10. Bảng Chi tiết đặt hàng (CTDH) 61 3.2.2.3.11. Bảng Hình thức vận chuyển (VanChuyen) 62 3.2.2.3.12. Bảng Nhà cung cấp (NhaCungCap) 62 3.2.2.3.13. Bảng Loại nhà cung cấp (LoaiNCC) 63 3.2.2.3.14. Bảng Hợp đồng cung cấp (HDCC) 63 3.2.2.3.15. Bảng Khả năng cung cấp (KNCC) 64 3.2.2.3.16. Bảng Chi tiết khả năng cung cấp (CTKhaNangCC) 64 3.2.2.3.17. Bảng Giao hàng (GiaoHang) 65 3.2.2.3.18. Bảng Chi tiết giao hàng (ChiTietGH) 65 3.2.3. Thiết kế xử lý 66 3.2.3.1. Login 66 3.2.3.2. Đăng ký 67 3.2.3.3. Đặt hàng 68 3.2.3.4. Tìm kiếm mặt hàng 68 3.2.3.5. Quản lý mặt hàng 69 CHƯƠNG 4: KẾT LUẬN VÀ HƯỚNG PHÁT TRIỂN 71 4.1. Kết quả đạt được 71 4.2. Ưu điểm 71 4.3. Khuyết điểm 71 4.4. Hướng phát triển 71 TÀI LIỆU THAM KHẢO 73 PHỤ LỤC 74 vii
  15. DANH SÁCH CHỮ VIẾT TẮT STT Các từ viết tắt Từ viết đầy đủ 1. app Application 2. ASP Active Server Page 3. AJAX Asynchronous JavaScript and XML 4. API Application Programming Interface 5. BN BrandName 6. CSDL Cơ sở dữ liệu 7. GUI Graphical User Interface 8. ID Indentification number 9. IOS Intelligent Opperating System 10. JS Javascript 11. JSON JavaScript Object Notation 12. MVC Model View Controller 13. OOP Object Oriented Programming 14. SMS Sort Message Service 15. SQL Structured Query Language 16. UI User Interface 17. URL Uniform Resource Locator 18. VS Visual viii
  16. DANH SÁCH BẢNG BIỂU Bảng 2.1: Quá trình phát triển của ASP.NET 17 Bảng 2.2: Các loại security trong MVC5 22 Bảng 3.1: Mô tả use case Đăng ký 28 Bảng 3.2: Mô tả use case Đăng nhập 28 Bảng 3.3: Mô tả use case Đăng xuất 28 Bảng 3.4: Mô tả use case Quản lý mặt hàng 29 Bảng 3.5: Mô tả use case Quản lý loại mặt hàng 30 Bảng 3.6: Mô tả use case Quản lý nhà sản xuất. 31 Bảng 3.7: Mô tả use case Quản lý nhà cung cấp 32 Bảng 3.8: Mô tả use case Quản lý loại nhà cung cấp 33 Bảng 3.9: Mô tả use case Quản lý hợp đồng cung cấp 34 Bảng 3.10: Mô tả use case Quản lý chi tiết hợp đồng cung cấp 35 Bảng 3.11: Mô tả use case Quản lý khả năng cung cấp 36 Bảng 3.12: Mô tả use case Quản lý chi tiết khả năng cung cấp 37 Bảng 3.13: Mô tả use case Quản lý đặt hàng 37 Bảng 3.14: Mô tả use case Quản lý chi tiết đặt hàng 38 Bảng 3.15: Mô tả use case Quản lý giao hàng 39 Bảng 3.16: Mô tả use case Quản lý chi tiết giao hàng 40 Bảng 3.17: Mô tả use case Quản lý hình thức vận chuyển 41 Bảng 3.18: Mô tả use case Quản lý khách hàng 42 Bảng 3.19: Mô tả use case Quản lý loại khách hàng 43 Bảng 3.20: Mô tả use case Quản lý user 44 Bảng 3.21: Mô tả use case Quản lý quyền user 45 Bảng 3.22: Mô tả use case Quản lý giỏ hàng 45 Bảng 3.23: Mô tả use case Tìm kiếm theo tên mặt hàng 45 Bảng 3.24: Mô tả use case Xem chi tiết mặt hàng 46 Bảng 3.25: Mô tả use case Đặt hàng 46 Bảng 3.26: Mô tả bảng User 55 Bảng 3.27: Mô tả bảng Roles 55 Bảng 3.28: Mô tả bảng MatHang 57 Bảng 3.29: Mô tả bảng LoaiMatHang 57 Bảng 3.30: Mô tả bảng NhaSanXuat 57 Bảng 3.31: Mô tả bảng KhachHang 59 ix
  17. Bảng 3.32: Mô tả bảng LoaiKhachHang 59 Bảng 3.33: Mô tả bảng WISHLIST 60 Bảng 3.34: Mô tả bảng DatHang 61 Bảng 3.35: Mô tả bảng CTDH 61 Bảng 3.36: Mô tả bảng VanChuyen 62 Bảng 3.37: Mô tả bảng NhaCungCap 63 Bảng 3.38: Mô tả bảng LoaiNCC 63 Bảng 3.39: Mô tả bảng HDCC 64 Bảng 3.40: Mô tả bảng KNCC 64 Bảng 3.41: Mô tả bảng CTKhaNangCC 65 Bảng 3.42: Mô tả bảng GiaoHang 65 Bảng 3.43: Mô tả bảng ChiTietGH 66 x
  18. DANH SÁCH HÌNH ẢNH, BIỂU ĐỒ Hình 2.1: Sơ đồ cấu trúc MVC 16 Hình 2.2: Nền tảng ASP.NET MVC Framework 17 Hình 3.1 : Wesite amazon.com 24 Hình 3.2: Website lazada.vn 25 Hình 3.3: Website vatgia.com 25 Hình 3.4: Website pro-office.vn 26 Hình 3.5: Sơ đồ use case cho Khách hàng 27 Hình 3.6: Sơ đồ use case cho admin 27 Hình 3.7: Trang chủ người dùng (nửa trên) 46 Hình 3.8: Trang chủ người dùng (nửa dưới) 47 Hình 3.9: Giao diện đặt hàng 47 Hình 3.10: Giao diện giỏ hàng 48 Hình 3.11: Giao diện xem chi tiết mặt hàng 48 Hình 3.12: Trang chủ quản trị 49 Hình 3.13: Giao diện Quản lý mặt hàng (nửa trên) 49 Hình 3.14: Giao diện Quản lý mặt hàng (nửa dưới) 50 Hình 3.15: Giao diện quản lý_Xem thông tin chi tiết 50 Hình 3.16: Giao diện quản lý_Sửa thông tin 51 Hình 3.17: Giao diện quản lý_Xoá 51 Hình 3.18: Giao diện quản lý_Thêm mới 52 Hình 3.19: Sơ đồ lớp 52 Hình 3.20: Sơ đồ logic 53 Hình 3.21: Bảng User 54 Hình 3.22: Bảng Roles 55 Hình 3.23: Bảng MatHang 56 Hình 3.24: Bảng LoaiMatHang 57 Hình 3.25: Bảng NhaSanXuat 57 Hình 3.26: Bảng KhachHang 58 Hình 3.27: Bảng LoaiKhachHang 59 Hình 3.28: Bảng WISHLIST 59 Hình 3.29: Bảng DatHang 60 Hình 3.30: Bảng CTDH 61 xi
  19. Hình 3.31: Bảng VanChuyen 62 Hình 3.32: Bảng NhaCungCap 62 Hình 3.33: Bảng LoaiNCC 63 Hình 3.34: Bảng HDCC 63 Hình 3.35: Bảng KNCC 64 Hình 3.36: Bảng CTKhaNangCC 64 Hình 3.37: Bảng GiaoHang 65 Hình 3.38: Bảng ChiTietGH 65 Hình 3.39: Sơ đồ tuần tự của quá trình login 66 Hình 3.40: Sơ đồ tuần tự của quá trình đăng ký 67 Hình 3.41: Sơ đồ tuần tự của quá trình đặt hàng 68 Hình 3.42: Sơ đồ tuần tự của quá trình tìm kiếm mặt hàng 68 Hình 3.43: Sơ đồ tuần tự của quá trình quản lý mặt hàng_Xem chi tiết mặt hàng 69 Hình 3.44:Sơ đồ tuần tự của quá trình quản lý mặt hàng_Sửa thông tin mặt hàng 69 Hình 3.45: Sơ đồ tuần tự của quá trình quản lý mặt hàng_Xoá mặt hàng 70 Hình 3.46:Sơ đồ tuần tự của quá trình quản lý mặt hàng_Thêm mặt hàng 70 xii
  20. CHƯƠNG 1: TỔNG QUAN 1.1. Giới thiệu tổng quát Ngày nay, công nghệ ngày càng phát triển, và cùng với sự phát triển đó thì Intenet là một lĩnh vực phát triển mạnh mẽ hàng đầu. Từ đó, việc giao dịch, mua bán trên mạng hiện nay không còn là một lĩnh vực xa lạ mà nó đã được phổ biến rộng rãi. Đồng hành với điều đó thì công nghệ web trên nền .NET Framework của Microsoft ngày càng phát triển mạnh mẽ hơn, cùng với rất nhiều các công nghệ khác như: JSP, PHP, . Trong đó, công nghệ ASP.NET MVC là một công nghệ đang phát triển mạnh mẽ cùng với nhiều tính năng ưu việt đáp ứng nhu cầu của người lập trình và người thiết kế. 1.2. Mục đích của đồ án Tìm hiểu, nghiên cứu ASP.NET MVC5, WEB API và Bootstrap để xây dựng một website bán hàng. Xây dựng website bán văn phòng phẩm online đáp ứng được một số quy trình cơ bản của một website bán hàng. 1.3. Kết quả của phần mềm Xây dựng được một số các chức năng của một website bán hàng: Đối với người dùng:  Đăng nhập  Đăng kí  Tìm kiếm theo tên mặt hàng  Xem chi tiết mặt hàng  Quản lí giỏ hàng  Quản lý đặt hàng Đối với quản trị viên thì có thêm các chức năng sau:  Quản lý khách hàng, loại khách hàng  Quản lý mặt hàng, loại mặt hàng  Quản lý nhà sản xuất  Quản lý đặt hàng, chi tiết đặt hàng  Quản lý giao hàng, chi tiết giao hàng  Quản lý nhà cung cấp, loại nhà cung cấp 13
  21.  Quản lý khả năng cung cấp, chi tiết khả năng cung cấp  Quản lý hợp đồng cung cấp, chi tiết hợp đồng cung cấp  Quản lý user, quyền user  Quản lý các hình thức vận chuyển 14