1. Trang chủ
  2. » Luận Văn - Báo Cáo

Xây dựng web bán hàng với công nghệ ASP NET MVC và web API

72 9 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 72
Dung lượng 2,95 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

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

Trang 1

ii

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

Trang 2

iii

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

Trang 3

iv

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

Trang 4

v

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

Trang 5

vi

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

Trang 6

vii

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

Trang 7

viii

DANH SÁCH CHỮ VIẾT TẮT STT Các từ viết tắt Từ viết đầy đủ

3 AJAX Asynchronous JavaScript and XML

4 API Application Programming Interface

11 JSON JavaScript Object Notation

13 OOP Object Oriented Programming

Trang 8

ix

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

Trang 9

x

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

Trang 10

xi

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

Trang 11

xii

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

Trang 12

13

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ý đặ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

Trang 13

14

 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

Trang 14

15

Chương 2: CƠ SỞ LÝ THUYẾT

2.1 Giới thiệu mô hình MVC

2.1.1 Xuất xứ

 Vào những năm 70 của thế kỷ 20, tại phòng thí nghiệm Xerox PARC ở Palo Alto, sự ra đời của giao diện đồ họa (GUI) và lập trình hướng đối tượng (Object Oriented Programming) cho phép lập trình viên làm việc với những thành phần

đồ họa như những đối tượng đồ họa có thuộc tính và phương thức riêng của nó Không dừng lại ở đó, những nhà nghiên cứu ở Xerox PARC còn đi xa hơn khi cho ra đời cái gọi là kiến trúc MVC (viết tắt của Model – View – Controller).[1]

 MVC được phát minh tại Xerox Parc vào những năm 70, bởi TrygveReenskaug MVC lần đầu tiên xuất hiện công khai là trong Smalltalk - 80 Sau đó trong một thời gian dài hầu như không có thông tin nào về MVC, ngay cả trong tài liệu

80 Smalltalk Các giấy tờ quan trọng đầu tiên được công bố trên MVC là “A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk – 80”, bởi Glenn Krasner và Stephen Pope, xuất bản trong tháng 8/ tháng 9 năm 1988

2.1.2 Kiến trúc của mô hình MVC

Trong kiến trúc MVC, một đối tượng đồ hoạ người dùng (GUI Component) bao gồm 3 thành phần cơ bản: Model, View và Controller Sự chia nhỏ này giúp lập trình viên dễ dàng kiểm soát các thành phần trong khi phát triển, cũng như lợi ích lâu dài trong việc kiểm tra, bảo trì và nâng cấp.

Trang 15

16

Hình 2.1: Sơ đồ cấu trúc MVC

 Model: đại diện cho dữ liệu Nó chính là những lớp (class) chứa thông tin

về các đối tượng mà ta cần phải thao tác, làm việc trên nó

 View: là thể hiện trực quan của Model, hay nói cách khác chính là giao diện của đối tượng đồ hoạ Nó làm nhiệm vụ thể hiện một Model hay nhiều Model một cách trực quan, nhận thông tin (từ một Model hoặc nhiều Model) sau đó biểu diễn lên trang website

 Controller: điều khiển việc tương tác giữa đối tượng đồ hoạ với người sử dụng cũng như những đối tượng khác Nó nằm giữa tầng View và Model, làm nhiệm vụ tìm kiếm, xử lý một hoặc nhiều Model, sau đó gửi Model tới View để View hiển thị

2.1.3 Đặc điểm của mô hình MVC

 Lợi ích quan trọng nhất của mô hình MVC là nó giúp cho ứng dụng dễ bảo trì, module hoá các chức năng và được xây dựng nhanh chóng

 MVC tách các tác vụ của ứng dụng thành các phần riêng lẽ: Model, View, Controller giúp cho việc xây dựng ứng dụng nhẹ nhàng hơn, dễ thêm các tính năng mới đồng thời dễ dàng thay đổi các tính năng cũ Nó cho phép thay đổi một phần của ứng dụng mà không ảnh hưởng đến các phần khác

 MVC đã tách biệt sự phụ thuộc giữa các thành phần trong một đối tượng đồ hoạ, làm tăng tính linh động (flexibility) và tính tái sử dụng (reusebility) của đối tượng đồ hoạ Một đối tượng đồ hoạ có thể dễ dàng thay đổi giao diện (View) hoặc cách thức lưu trữ (Model) hoặc cách xử lý (Controller) của đối tượng mà những thành phần còn lại vẫn giữ nguyên

2.2 Công nghệ ASP.NET MVC5

2.2.1 Lịch sử phát triển của ASP.NET

Thời kỳ đầu Common Gateway Interface (CGI)

Thời kỳ tiếp theo Microsoft Internet Database Connector (IDC)

Trang 16

Bảng 2.1: Quá trình phát triển của ASP.NET

2.2.2 Khái quát các thành phần của ASP.NET MVC

Giống như mô hình MVC, ASP.NET MVC cũng chia nhỏ một ứng dụng thành

ba thành phần Models, Views, Controllers để cài đặt, mỗi thành phần đóng một vai trò khác nhau và ảnh hưởng lẫn nhau

Hình 2.2: Nền tảng ASP.NET MVC Framework

 Models: là thành phần có nhiệm vụ lưu trữ thông tin, trạng thái của các đối tượng, thông thường nó là một lớp được ánh xạ từ một bảng trong CSDL

Trang 17

18

 Views: là thành phần có nhiệm vụ hiển thị các thông tin lên cho người dùng thông qua giao diện, thông thường các thông tin cần hiển thị được lấy từ thành phần Models

 Controllers: là thành phần có trách nhiệm xử lý các tác động về mặt giao diện, các thao tác đối với Models, và chọn một Views thích hợp để hiển thị

ra màn hình Trong ASP.NET MVC, Views chỉ có tác dụng hiển thị giao diện mà thôi, còn điều khiển dòng nhập xuất và xử lý của người dùng vẫn

 Hỗ trợ kết hợp tốt giữa người lập trình và người thiết kế giao diện

 Sử dụng các tính năng tốt nhất đã có của ASP.NET

2.2.4 Đặc điểm ASP.NET MVC FRAMEWORK

 Tiếp tục hỗ trợ các tính năng trong ASP.NET

 Hỗ trợ sử dụng các các tập tin: ASPX, ASCX, Master như là thành phần View

 Hỗ trợ đầy đủ các tính năng bảo mật của ASP.NET: Form/ Windows authenticate, URL authorization, membership/roles, output và data caching, section/ profile state, configuration system, provider architecture

 Tách rõ ràng các mối liên quan, mở ra khả năng test TDD (Test Driven Developer) Có thể test unit trong ứng dụng mà không cần phải chạy Controllers cùng với tiến trình của ASP.NET và có thể dùng bất kỳ một unit testing framework nào như NUnit, MBUnit, MS Test,…

 Có khả năng mở rộng

 Mọi thứ trong MVC được thiết kế để dễ thay thế, dễ dàng tùy biến

 Ánh xạ URL mạnh mẽ, cho phép xây dựng ứng dụng với những URL sạch

Trang 18

19

 Không sử dụng mô hình post-back từ giao diện gửi đến server nữa Thay vào

đó, có thể chủ động đưa những post-back từ View đến thẳng lớp Controller Không còn viewstate hay là page lifecycle tồn trong mô hình MVC

 Hỗ trợ nhiều công cụ tạo View (Support for Multiple View Engines)

 Cho phép chọn công cụ tạo view Hộp thoại New Project cho phép xác định view engine mặc định cho một project

 Các loại view engine:

o Web Forms (ASPX)

o Razor

o View engine nguồn mở như Spark, NHaml, NDjango

 Hỗ trợ định tuyến

 ASP.NET MVC Framework có một bộ máy ánh xạ URL thật sự mạnh mẽ

Bộ máy này cung cấp phương pháp rất linh hoạt trong việc ánh xạ URLs sang các Controller Classes

 Có thể dễ dàng định ra các quy luật, cài đặt đường đi ASP.NET dựa vào các quy luật đường đi đó để xác định Controller và action cần phải thực thi

 ASP.NET còn có khả năng phân tích URL, chuyển các thông số trong URL thành các tham số trong lời gọi hàm của Controller

 Filters: là tính năng mạnh trong ASP.NET MVC Hỗ trợ cho việc kiểm tra tính hợp lệ trước khi một action method được gọi hoặc sau khi một action method thi hành

 Razor View: từ ASP.NET MVC3 đi kèm với một công cụ View mới có tên là Razor với những lợi ích sau:

 Cú pháp Razor là sạch sẽ và xúc tích, đòi hỏi một số lượng tối thiểu các tổ hợp phím

Trang 19

20

 Việc tìm hiểu Razor tương đối dễ dàng vì nó dựa trên ngôn ngữ C# và Visual Basic

 Visual Studio bao gồm IntelliSense và mã cú pháp Razor được màu hóa

 Với Razor views có thể kiểm tra từng đơn vị mà không đòi hỏi bạn phải chạy các ứng dụng hoặc phải chạy website

2.2.5 Các tính năng của mô hình MVC3 và MVC4

 Cách tiếp cận với JavaScript được hạn chế

 Hỗ trợ caching trong Partial page

Trang 20

21

 Hỗ trợ cho việc đăng nhập OAuth và OpenID bằng cách sử dụng thư viện DotNetOpenAuth Cho phép Logins từ Facebook và những tài khoản khác

 Phiên bản mới Windows Azure SDK 1.6 được phát hành

2.2.6 Cải tiến của mô hình MVC5

Với MVC5 thì cải tiến hơn so với ASP.NET MVC4:

 Bootstrap được thay thế mẫu MVC mặc định

 Chứng thực người dùng Authentication Filter được tuỳ chỉnh hoặc chứng thực từ hãng thứ 3 cung cấp

 Với Filter overrides, chúng ta có thể Filter override trên Method hoặc Controller

 Thuộc tính Routing được tích hợp vào MVC5

2.3 Bootstrap

 Bootstrap là một framework CSS được Twitter phát triển Nó là một tập hợp các bộ chọn, thuộc tính và giá trị có sẵn để giúp người lập trình web tránh việc lặp đi lặp lại trong quá trình tạo ra các class CSS và những đoạn mã HTML giống nhau trong dự án web của mình Ngoài CSS ra, thì bootstrap còn hỗ trợ các function tiện ích được viết dựa trên JQuery(Carousel, Tooltip, Popovers , )

 Những lí do để sử dụng Bootstrap:

 Được viết bởi những người có óc thẩm mỹ và tài năng trên khắp thế giới

Sự tương thích của trình duyệt với thiết bị đã được kiểm tra nhiều lần nên

có thể tin tưởng kết quả làm ra và nhiều khi không cần kiểm tra lại Vì vậy, giúp cho dự án tiết kiệm được thời gian và tiền bạc

 Chỉ cần biết căn bản HTML, CSS, Javascript, Jquery là bạn có thể sử dụng Bootstrap để tạo nên một trang web sang trọng và đầy đủ nhưng lại không cần code quá nhiều CSS

 Với giao diện mặc định là màu xám bạc sang trọng, hỗ trợ các component thông dụng mà các website hiện nay cần có Vì nó là opensource nên có thể thay đổi dễ dàng theo ý thích của bản thân

 Do có sử dụng Grid System nên Bootstrap mặc định hỗ trợ Responsive Bootstrap được viết theo xu hướng Mobile First nên việc sử dụng

Trang 21

2.4 Authentication Filter

 Một trong những vấn đề bảo mật cơ bản nhất là đảm bảo những người dùng hợp lệ truy cập vào hệ thống ASP.NET đưa ra 2 khái niệm: Authentication và Authorize

 Authentication là xác thực người dùng Trong MVC5, Authentication Filter được tuỳ chỉnh hoặc chứng thực từ hãng thứ 3 cung cấp

 Khi tạo 1 Project MVC5, người dùng được lựa chọn 4 loại security:

No Authentication Ứng dụng không hỗ trợ security

Individual User Accounts Ứng dụng sử dụng tài khoản được quản lý bởi SQL Server

hoặc từ gmail, facebook

Organizational Accounts Ứng dụng sử dụng tài khoản được quản lý bởi Active

Directory hoặc Windows Azure Directory

Windown Authentication Ứng dụng chạy trên intranet, tức là sử dụng tài khoản

windows để đăng nhập

Bảng 2.2: Các loại security trong MVC5

 Mỗi loại security khác nhau sẽ phù hợp với các ứng dụng khác nhau Khi chọn Individual User Accounts thì ứng dụng chạy trên Internet và sử dụng SQL Server để lưu trữ thành viên hoặc đăng nhập từ các hệ thông khác như Gmail, facebook Khi đó người dùng có thể đăng ký, đăng nhập, đổi mật khẩu, đăng xuất với tài khoản cục bộ hoặc từ bên ngoài (gmail, facebook, …)

 Code của AccountController có 2 sự khác biệt:

 Annotation [Authorize] được sử dụng để làm cho mọi action trong controller không thẻ truy xuất khi chưa đăng nhập ngoại trừ action đó được đánh dâu với annotion [AllowAnonymous]

Trang 22

23

 Thuộc tính UserManager được tạo ra trong constructor để quản lý các thành viên Các trang chức năng security đăng ký, đăng nhập và đổi mật khẩu được thực hiện nhờ thuộc tính này

2.5 Giới thiệu mô hình B2C

2.5.1 Khái niệm

 Mô hình B2C (Business to Consumer) - còn gọi là mô hình bán lẻ trực tuyến là

mô hình thương mại điện tử diễn ra giữa doanh nghiệp và người tiêu dùng

 Các công ty, doanh nghiệp sẽ buôn bán, trao đổi hàng hóa và dịch vụ cho người tiêu dùng Doanh nghiệp ở đây có thể là nhà sản xuất, nhà phân phối hoặc đại

 Đây là loại giao dịch quen thuộc và phổ biến nhất trong thương mại điện tử xuất phát từ những nhu cầu mua bán hàng hóa qua mạng

2.5.2 Phân loại

Mô hình B2C được chia thành 2 loại là cửa hàng điện tử và siêu thị điện tử

 Cửa hàng điện tử (e-store) là một trang web bán hàng hóa, dịch vụ thường được sở hữu bởi các cá nhân, nhà sản xuất, nhà bán lẻ Một website cửa hàng điện tử thường chứa danh mục hàng hóa, dịch vụ; công cụ tìm kiếm; giỏ hàng; cổng thanh toán; dịch vụ khách hàng

 Siêu thị điện tử (e-mall) là một trang web chứa nhiều cửa hàng điện tử Đặc trưng của siêu thị điện tử là thường chứa danh bạ hàng hóa và danh mục các cửa hàng điện tử

2.5.3 Cách thức hoạt động

Mô hình B2C được áp dụng trong các mô hình siêu thị điện tử và các website bán lẻ Khách hàng truy cập vào website, chọn những món hàng cho mình và cung cấp thông tin cần thiết cho việc mua hàng, chọn hình thức thanh toán và hoàn thành thao tác đặt hàng

Trang 23

24

CHƯƠNG 3: WEBSITE BÁN HÀNG ONLINE

3.1 Khảo sát thực trạng và phân tích đặc tả yêu cầu

3.1.1 Khảo sát thực trạng

Tìm hiểu các website bán hàng online hiện nay, xác định các chức năng của website bán hàng Sau đó, dựa trên việc khảo sát để tìm ra cách tổ chức, đối tượng khách hàng và các chức năng cơ bản của website bán hàng

3.1.2 Phân tích thực trạng

3.1.2.1 Một số website bán hàng online phổ biến hiện nay

Hình 3.1 : Wesite amazon.com

Trang 24

25

Hình 3.2: Website lazada.vn

Hình 3.3: Website vatgia.com

Trang 25

26

Hình 3.4: Website pro-office.vn

3.1.2.2 Các chức năng chính của website bán hàng online

Mỗi website bán hàng có những chức năng đặc trưng tuỳ theo loại mặt hàng được bán trên website đó Tuy nhiên, tất cả những website bán hàng online đều có những chức năng cơ bản sau:

 Thông tin liên hệ

 Đối với quản trị viên:

Trang 26

27

dàng xem và đặt hàng , đồng thời giúp quản trị viên dễ dàng quản lý thông tin của website

3.1.4 Phân tích yêu cầu

3.1.4.1 Sơ đồ use case

Hình 3.5: Sơ đồ use case cho Khách hàng

Hình 3.6: Sơ đồ use case cho admin

Trang 27

28

3.1.4.2 Mô tả use case

3.1.4.2.1 Use case Đăng ký:

Tên use case Đăng ký

Mô tả Cho phép khách hàng đăng ký tài khoản

Các bước thực hiện Khách hàng chọn đăng ký

Khách hàng điền đầy đủ thông tin đăng ký Nhấn nút đăng ký

Không thành công Khách hàng chưa điền những thông tin cần thiết đầy đủ

Khách hàng điền những thông tin không hợp lệ

Thành công Một tài khoản mới được tạo

Bảng 3.1: Mô tả use case Đăng ký 3.1.4.2.2 Use case Đăng nhập:

Tên use case Đăng nhập

Mô tả Cho phép đăng nhập tài khoản

Các bước thực hiện Actor chọn Đăng nhập

Actor điền username và password vào form đăng nhập

Nhấn nút đăng nhập

Điều kiện Đã có tài khoản

Không thành công Thông tin không hợp lệ

Tài khoản không tồn tại

Thành công Đăng nhập thành công

Bảng 3.2: Mô tả use case Đăng nhập 3.1.4.2.3 Use case Đăng xuất:

Tên use case Đăng xuất

Mô tả Cho phép đăng xuất tài khoản

Các bước thực hiện Actor chọn Đăng xuất

Thành công Đăng xuất thành công

Bảng 3.3: Mô tả use case Đăng xuất

Trang 28

29

3.1.4.2.4 Use case Quản lý mặt hàng:

Tên use case Quản lý mặt hàng

Các bước thực hiện Chọn QL mặt hàng

Chọn Mặt hàng Chọn chức năng:

 Màn hình hiển thị chi tiết Mặt hàng

Điều kiện Đã đăng nhập admin

Không thành công Thêm hoặc sửa thông tin không hợp lệ

Thành công Mặt hàng mới được tạo hoặc mặt hàng được xem, sửa, xoá

thành công

Bảng 3.4: Mô tả use case Quản lý mặt hàng 3.1.4.2.5 Use case Quản lý loại mặt hàng:

Tên use case Quản lý loại mặt hàng

Mô tả Cho phép quản lý Loại mặt hàng

Trang 29

 Màn hình hiển thị chi tiết Loại mặt hàng

Điều kiện Đã đăng nhập admin

Không thành công Thêm hoặc sửa thông tin không hợp lệ

Thành công Loại mặt hàng mới được tạo hoặc loại mặt hàng được xem,

sửa, xoá thành công

Bảng 3.5: Mô tả use case Quản lý loại mặt hàng 3.1.4.2.6 Use case Quản lý nhà sản xuất

Tên use case Quản lý nhà sản xuất

Mô tả Cho phép quản lý Nhà sản xuất

Các bước thực hiện Chọn QL mặt hàng

Chọn Nhà sản xuất

Trang 30

 Màn hình hiển thị chi tiết Nhà sản xuất

Điều kiện Đã đăng nhập admin

Không thành công Thêm hoặc sửa thông tin không hợp lệ

Thành công Nhà sản xuất mới được tạo hoặc nhà sản xuất được xem, sửa,

xoá thành công

Bảng 3.6: Mô tả use case Quản lý nhà sản xuất

3.1.4.2.7 Use case Quản lý nhà cung cấp:

Tên use case Quản lý nhà cung cấp

Mô tả Cho phép quản lý Nhà cung cấp

Trang 31

 Màn hình hiển thị chi tiết Nhà cung cấp

Điều kiện Đã đăng nhập admin

Không thành công Thêm hoặc sửa thông tin không hợp lệ

Thành công Nhà cung cấp mới được tạo hoặc nhà cung cấp được xem, sửa,

xoá thành công

Bảng 3.7: Mô tả use case Quản lý nhà cung cấp 3.1.4.2.8 Use case Quản lý loại nhà cung cấp:

Tên use case Quản lý loại nhà cung cấp

Mô tả Cho phép quản lý Loại nhà cung cấp

Trang 32

 Màn hình hiển thị chi tiết Loại nhà cung cấp

Điều kiện Đã đăng nhập admin

Không thành công Thêm hoặc sửa thông tin không hợp lệ

Thành công Loại nhà cung cấp mới được tạo hoặc loại nhà cung cấp được

xem, sửa, xoá thành công

Bảng 3.8: Mô tả use case Quản lý loại nhà cung cấp 3.1.4.2.9 Use case Quản lý hợp đồng cung cấp:

Tên use case Quản lý hợp đồng cung cấp

Mô tả Cho phép quản lý Hợp đồng cung cấp

Trang 33

 Màn hình hiển thị chi tiết Hợp đồng cung cấp

Điều kiện Đã đăng nhập admin

Không thành công Thêm hoặc sửa thông tin không hợp lệ

Thành công Hợp đồng cung cấp mới được tạo hoặc hợp đồng cung cấp

được xem, sửa, xoá thành công

Bảng 3.9: Mô tả use case Quản lý hợp đồng cung cấp 3.1.4.2.10 Use case Quản lý chi tiết hợp đồng cung cấp:

Tên use case Quản lý chi tiết hợp đồng cung cấp

Mô tả Cho phép quản lý Chi tiết hợp đồng cung cấp

Các bước thực hiện Chọn QL nhà cung cấp

Chọn Chi tiết hợp đồng cung cấp

Trang 34

Không thành công Thêm hoặc sửa thông tin không hợp lệ

Thành công Chi tiết hợp đồng cung cấp mới được tạo hoặc chi tiết hợp

đồng cung cấp được xem, sửa, xoá thành công

Bảng 3.10: Mô tả use case Quản lý chi tiết hợp đồng cung cấp

3.1.4.2.11 Use case Quản lý khả năng cung cấp:

Tên use case Quản lý khả năng cung cấp

Mô tả Cho phép quản lý Khả năng cung cấp

Trang 35

36

 Nhấp “Xem”

 Màn hình hiển thị chi tiết Khả năng cung cấp

Điều kiện Đã đăng nhập admin

Không thành công Thêm hoặc sửa thông tin không hợp lệ

Thành công Khả năng cung cấp mới được tạo hoặc khả năng cung cấp được

xem, sửa, xoá thành công

Bảng 3.11: Mô tả use case Quản lý khả năng cung cấp 3.1.4.2.12 Use case Quản lý chi tiết khả năng cung cấp:

Tên use case Quản lý chi tiết khả năng cung cấp

Mô tả Cho phép quản lý Chi tiết khả năng cung cấp

Các bước thực hiện Chọn QL nhà cung cấp

Chọn Chi tiết khả năng cung cấp

Trang 36

37

Không thành công Thêm hoặc sửa thông tin không hợp lệ

Thành công Chi tiết khả năng cung cấp mới được tạo hoặc chi tiết khả năng

cung cấp được xem, sửa, xoá thành công

Bảng 3.12: Mô tả use case Quản lý chi tiết khả năng cung cấp

3.1.4.2.13 Use case Quản lý đặt hàng:

Tên use case Quản lý đặt hàng

Mô tả Cho phép quản lý đặt hàng

Các bước thực hiện Chọn QL đặt hàng

Chọn Đơn đặt hàng Chọn chức năng:

 Màn hình hiển thị chi tiết Đặt hàng

Điều kiện Đã đăng nhập admin

Không thành công Thêm hoặc sửa thông tin không hợp lệ

Thành công Đơn đặt hàng được xem, sửa thành công

Bảng 3.13: Mô tả use case Quản lý đặt hàng 3.1.4.2.14 Use case Quản lý chi tiết đặt hàng:

Tên use case Quản lý chi tiết đặt hàng

Mô tả Cho phép quản lý Chi tiết đặt hàng

Ngày đăng: 30/10/2022, 23:24

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w