Tải bản đầy đủ (.pdf) (79 trang)

xây dựng website bán thực phẩm chức năng sử dụng nuxtjs laravel

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (5.09 MB, 79 trang )

<span class="text_page_counter">Trang 1</span><div class="page_container" data-page="1">

<b>BỘ GIÁO DỤC VÀ ĐÀO TẠO </b>

<b>TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á </b>

<b>ĐỒ ÁN TỐT NGHIỆP </b>

<b> TÊN ĐỀ TÀI: XÂY DỰNG WEBSITE BÁN THỰC PHẨM CHỨC NĂNG SỬ DỤNG NUXTJS + LARAVEL </b>

<b>Sinh viên thực hiên : Tạ Mạnh Quân </b>

</div><span class="text_page_counter">Trang 2</span><div class="page_container" data-page="2">

<b>BỘ GIÁO DỤC VÀ ĐÀO TẠO </b>

<b>TRƯỜNG ĐẠI HỌC CÔNG NGHỆ ĐÔNG Á </b>

<b>TẠ MẠNH QUÂN </b>

<b>TÊN ĐỀ TÀI: XÂY DỰNG WEBSITE BÁN THỰC PHẨM CHỨC NĂNG SỬ DỤNG NUXTJS + LARAVEL </b>

<b>Giáo viên hướng dẫn: ThS. Ngô Thị Hoa </b>

</div><span class="text_page_counter">Trang 3</span><div class="page_container" data-page="3">

<b>LỜI CẢM ƠN </b>

Trong suốt quá trình học tập ở trường Đại học cơng nghệ Đơng Á, em đã nhận được rất nhiều sự quan tâm và giúp đỡ từ các thầy cô giáo trong trường. Em xin cám ơn tất cả thầy cô trong trường đã tận tình giúp đỡ em trong lúc học tập. Em xin cám ơn ban lãnh đạo trường Đại học Công nghệ Đông Á đã giúp đỡ chúng em trong suốt 4 năm học qua.

Em xin gửi lời cám ơn đặc biệt đến các thầy cô thuộc khoa Công nghệ thông tin. Các thầy cô đã trực tiếp giúp đỡ chúng em tiếp thu được rất nhiều kiến thức bổ ích trong quá trình học tập tại trường. Các thầy cơ trong khoa chính là những người đã đặt nền móng cho những kiến thức hiện giờ của chúng em, giúp chúng em có thể đem những kiến thức này áp dụng ra ngoài cuộc sống. Đặc biệt, em xin bày tỏ lịng biết ơn sâu sắc đến cơ Ngơ Thị Hoa, cô đã giúp em rất nhiều trong học tập. Cô đã giúp em học được nhiều kiến thức mới, giúp em tìm được một hướng đi đúng đắn cho tương lai. Đối với đồ án tốt nghiệp, cơ đã tận tình hướng dẫn, giúp đỡ em rất nhiều để có thể hồn thiện được đề tài “Xây dựng website bán thực phẩm chức năng sử dụng NuxtJS + Laravel”. Do điều kiện thời gian có hạn và kinh nghiệm làm báo cáo chưa có nhiều nên em khơng thể tránh khỏi những thiếu sót trong lúc trình bày cũng như làm báo cáo, kính mong nhận được những ý kiến đóng góp từ q thầy cơ.

Em xin chân thành cảm ơn!

<i> Bắc Ninh, ngày tháng năm 2023 </i>

<b> SINH VIÊN </b>

<i> (Ký và ghi rõ họ tên) </i>

</div><span class="text_page_counter">Trang 4</span><div class="page_container" data-page="4">

<b>LỜI CAM ĐOAN </b>

Em xin cam đoan đề tài: “Xây dựng website bán thực phẩm chức năng sử dụng NuxtJS + Laravel” là kết quả nghiên cứu độc lập dưới sự hướng dẫn của giáo viên hướng dẫn ThS.Ngô Thị Hoa. Ngồi ra khơng có bất cứ sự sao chép của người khác. Đề tài, nội dung báo cáo là sản phẩm mà em đã nỗ lực nghiên cứu trong quá trình học tập tại trường. Các số liệu, kết quả trình bày trong báo cáo là hoàn toàn trung thực, em xin chịu hoàn toàn trách nhiệm, kỷ luật của bộ môn và nhà trường đề ra nếu như có vấn đề xảy ra.

<i> Bắc Ninh, ngày tháng năm 2023 </i>

<b> SINH VIÊN </b>

<i> (Ký và ghi rõ họ tên) </i>

</div><span class="text_page_counter">Trang 5</span><div class="page_container" data-page="5">

CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI ... 13

1.1. Tổng quan về thương mại điện tử ... 13

1.1.1. Khái niệm về thương mại điện tử ... 13

1.1.2. Lợi ích của thương mại điện tử ... 13

1.1.3. Yêu cầu trong thương mại điện tử ... 14

1.2. Phân tích yêu cầu đề tài ... 14

1.2.1. Lý do chọn đề tài ... 14

1.2.2. Mục tiêu của đề tài ... 15

1.2.3. Giới hạn và phạm vi của đề tài ... 15

1.2.4. Chức năng ... 15

1.2.5. Yêu cầu đặt ra ... 16

1.3. Khảo sát hiện trạng và xây dựng hệ thống ... 16

1.4. Công nghệ sử dụng ... 17

1.4.1. Giới thiệu về ngơn ngữ lập trình PHP ... 17

1.4.2. Giới thiệu về Laravel... 17

1.4.3. Giới thiệu về MySQL ... 18

1.4.4. Giới thiệu về VueJS ... 19

1.4.5. Giới thiệu về NuxtJS ... 19

CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG ... 21

2.1. Các Actor sử dụng phần mềm ... 21

2.2. Các chức năng của hệ thống ... 21

2.2.1. Các chức năng trên website ... 21

2.2.2. Các chức năng trong quản trị ... 22

2.3. Biểu đồ Usecase ... 23

2.3.1. Biểu đồ Usecase tổng quát ... 23

2.3.2. Usecase đăng nhập ... 23

</div><span class="text_page_counter">Trang 6</span><div class="page_container" data-page="6">

2.3.3. Usecase đăng ký ... 24

2.3.4. Usecase quản lý danh mục ... 25

2.3.5. Usecase quản lý bài viết ... 28

2.3.6. Usecase quản lý sản phẩm ... 30

2.3.7. Usecase quản lý đơn hàng ... 32

2.3.8. Usecase quản lý khách hàng ... 34

2.4. Biểu đồ tuần tự ... 35

2.4.1. Biểu đồ tuần tự chức năng đăng nhập ... 35

2.4.2. Biểu đồ tuần tự chức năng đăng ký ... 36

2.4.3. Biểu đồ tuần tự chức năng quản lý danh mục ... 37

2.4.4. Biểu đồ tuần tự chức năng quản lý bài viết ... 40

2.4.5 .Biểu đồ tuần tự chức năng quản lý sản phẩm ... 43

2.4.6. Biểu đồ tuần tự chức năng quản lý khách hàng ... 46

2.5. Biểu đồ hoạt động ... 48

2.5.1. Biểu đồ hoạt động chức năng đăng nhập ... 48

2.5.2. Biểu đồ hoạt động chức năng đăng ký ... 48

2.5.3. Biểu đồ hoạt động chức năng quản lý danh mục ... 49

2.5.3. Biểu đồ hoạt động chức năng quản lý bài viết ... 51

2.5.3. Biểu đồ hoạt động chức năng quản lý sản phẩm ... 53

2.5.3. Biểu đồ hoạt động chức năng quản lý khách hàng ... 55

</div><span class="text_page_counter">Trang 7</span><div class="page_container" data-page="7">

3.1. Một số giao diện người dùng ... 65

</div><span class="text_page_counter">Trang 8</span><div class="page_container" data-page="8">

<b>DANH MỤC CÁC BẢNG </b>

Bảng 2. 1 Các Actor sử dụng phần mềm ... 21

Bảng 2. 2 Các chức năng trên Website ... 21

Bảng 2. 3. Các chức năng trong quản trị ... 22

Bảng 2. 4 Mô tả Usecase đăng nhập... 23

Bảng 2. 5 Mô tả Usecase đăng ký ... 24

Bảng 2. 6 Mô tả Usecase quản lý danh mục ... 25

Bảng 2. 7 Mô tả Usecase quản lý danh mục ... 26

Bảng 2. 8 Mô tả Usecase quản lý danh mục ... 27

Bảng 2. 9 Mô tả Usecase quản lý bài viết ... 28

Bảng 2. 10 Mô tả Usecase quản lý bài viết ... 29

Bảng 2. 11 Mô tả Usecase quản lý bài viết ... 29

Bảng 2. 12 Mô tả usecase quản lý sản phẩm ... 30

Bảng 2. 13 Mô tả usecase quản lý sản phẩm ... 31

Bảng 2. 14 Mô tả usecase quản lý sản phẩm ... 31

Bảng 2. 15 Mô tả Usecase quản lý đơn hàng ... 32

Bảng 2. 16 Mô tả Usecase quản lý đơn hàng ... 33

<i><b>Bảng 2. 17 Mô tả Usecase quản lý khách hàng ... 34</b></i>

Bảng 2. 18 Danh sách các bảng trong cơ sở dữ liệu... 58

Bảng 2. 19 Cơ sở dữ liệu bảng products ... 59

Bảng 2. 20 Cơ sở dữ liệu bảng order ... 59

Bảng 2. 21 Cơ sở dữ liệu bảng migrations ... 60

Bảng 2. 22 Cơ sở dữ liệu bảng personal_access_tokens ... 60

Bảng 2. 23 Cơ sở dữ liệu bảng users ... 61

Bảng 2. 24 Cơ sở dữ liệu bảng customer ... 61

Bảng 2. 25 Cơ sở dữ liệu bảng password_resets ... 62

Bảng 2. 26 Cơ sở dữ liệu bảng collections ... 62

Bảng 2. 27 Cơ sở dữ liệu bảng posts ... 62

Bảng 2. 28 Cơ sở dữ liệu bảng customers ... 63

</div><span class="text_page_counter">Trang 9</span><div class="page_container" data-page="9">

<b>DANH MỤC HÌNH ẢNH </b>

Hình 2. 1 Biểu đồ Usecase tổng quát ... 23

Hình 2. 2 Biểu đồ Usecase đăng nhập ... 23

Hình 2. 3 Usecase đăng ký ... 24

Hình 2. 4 Usecase quản lý danh mục ... 25

Hình 2. 5 Usecase quản lý bài viết ... 28

Hình 2. 6 Usecase quản lý sản phẩm ... 30

Hình 2. 7 Usecase quản lý đơn hàng ... 32

Hình 2. 8 Usecase quản lý khách hàng ... 34

Hình 2. 9 Biểu đồ tuần tự chức năng đăng nhập ... 35

Hình 2. 10 Biểu đồ tuần tự chức năng đăng ký ... 36

Hình 2. 11 Biểu đồ tuần tự thêm danh mục ... 37

Hình 2. 12 Biểu đồ tuần tự sửa danh mục ... 38

Hình 2. 13 Biểu đồ tuần tự xóa danh mục ... 39

Hình 2. 14 Biểu đồ tuần tự thêm bài viết ... 40

Hình 2. 15 Biểu đồ tuần tự sửa bài viết ... 41

Hình 2. 16 Biểu đồ tuần tự xóa bài viết ... 42

Hình 2. 17 Biểu đồ tuần tự thêm sản phẩm ... 43

Hình 2. 18 Biểu đồ tuần tự sửa sản phẩm ... 44

Hình 2. 19 Biểu đồ tuần tự xóa sản phẩm ... 45

Hình 2. 20 Biểu đồ tuần tự sửa khách hàng ... 46

Hình 2. 21 Biểu đồ tuần tự xóa khách hàng ... 47

Hình 2. 22 Biểu đồ hoạt động chức năng đăng nhập... 48

Hình 2. 23 Biểu đồ hoạt động chức năng đăng ký ... 48

Hình 2. 24 Biểu đồ hoạt động chức năng thêm danh mục ... 49

Hình 2. 25 Biểu đồ hoạt động chức năng sửa danh mục ... 50

Hình 2. 26 Biểu đồ hoạt động chức năng xóa danh mục ... 50

Hình 2. 27 Biểu đồ hoạt động chức năng thêm bài viết ... 51

Hình 2. 28 Biểu đồ hoạt động chức năng sửa bài viết ... 52

Hình 2. 29. Biểu đồ hoạt động chức năng xóa bài viết ... 52

Hình 2. 30 Biểu đồ hoạt động chức năng thêm sản phẩm ... 53

Hình 2. 31 Biểu đồ hoạt động chức năng sửa sản phẩm ... 54

Hình 2. 32 Biểu đồ hoạt động chức năng xóa sản phẩm ... 54

Hình 2. 33 Biểu đồ hoạt động chức năng thêm khách hàng ... 55

Hình 2. 34 Biểu đồ hoạt động chức năng sửa thành viên ... 56

Hình 2. 35 Danh sách các đối tượng trong biểu đồ lớp ... 57

Hình 2. 36 Sơ đồ quan hệ thực thể ERD ... 64

Hình 3. 1 Giao diện trang chủ ... 65

Hình 3. 2 Giao diện đặt hàng ... 66

Hình 3. 3 Giao diện thanh tốn ... 66

Hình 3. 4 Gmail khách hàng nhật được sau khi đặt hàng thành cơng ... 67

Hình 3. 5 Giao diện xem thơng tin sản phẩm ... 67

Hình 3. 6 Giao diện tìm kiếm sản phẩm ... 68

Hình 3. 7 Giao diện quản lý giỏ hàng ... 69

Hình 3. 8 Giao diện đăng nhập ... 70

Hình 3. 9 Giao diện đăng ký ... 70

Hình 3. 10 Giao diện quản lý khách hàng ... 71

</div><span class="text_page_counter">Trang 10</span><div class="page_container" data-page="10">

Hình 3. 11 Giao diện quản lý danh mục ... 71

Hình 3. 12 Giao diện quản lý bài viết ... 72

Hình 3. 13 Giao diện quản lý sản phẩm ... 72

Hình 3. 14 Giao diện quản lý đơn hàng ... 73

Hình 3. 15 Giao diện quản lý chung ... 73

</div><span class="text_page_counter">Trang 11</span><div class="page_container" data-page="11">

<b>4 </b> GUI Graphical User Interface

<b>5 </b> MySQL/ RDBMS Relational Database Management System

<b>6 </b> SQL Structured Query Language

<b>7 </b> UML Unified Modeling Language

<b>8 </b> SPA Single Page Application

<b>9 </b> SSR Server Side Rendering

<b>10 API </b> Application Programming Interface

</div><span class="text_page_counter">Trang 12</span><div class="page_container" data-page="12">

<b>MỞ ĐẦU </b>

Ngày nay, ứng dụng công nghệ thơng tin và việc tin học hóa được xem là một trong những yếu tố mang tính quyết định trong hoạt động của các chính phủ, tổ chức, cũng như của các cơng ty, nó đóng vai trị hết sức quan trọng, có thể tạo ra những bước đột phá mạnh mẽ. Cùng với sự phát triển khơng ngừng về kỹ thuật máy tính và mạng điện tử, thì mạng Internet cũng là một trong những sản phẩm có giá trị hết sức lớn lao và ngày càng trở nên một công cụ không thể thiếu, là nền tảng chính cho sự truyền tải, trao đổi thơng tin trên tồn cầu. Giờ đây, mọi việc liên quan đến thông tin trở nên thật dễ dàng cho người sử dụng: chỉ cần có một máy tính kết nối internet và một dịng dữ liệu truy tìm thì gần như lập tức… cả thế giới về vấn đề mà bạn đang quan tâm sẽ hiện ra, có đầy đủ thơng tin, hình ảnh và thậm chí đơi lúc có cả những âm thanh nếu bạn cần… Bằng Internet, chúng ta đã thực hiện được nhiều công việc với tốc độ nhanh hơn và chi phí thấp hơn nhiều so với cách thức truyền thống. Chính điều này, đã thúc đẩy sự khai sinh và phát triển của thương mại điện tử và chính phủ điện tử trên khắp thế giới, làm biến đổi đáng kể bộ mặt văn hóa, nâng cao chất lượng cuộc sống con người.

Trong hoạt động sản xuất kinh doanh, giờ đây, thương mại điện tử đã khẳng định được vai trò xúc tiến và thúc đẩy sự phát triển của doanh nghiệp. Đối với một cửa hàng hay doanh nghiệp, việc quảng bá và giới thiệu đến khách hàng các sản phẩm mới đáp ứng được nhu cầu của khách hàng sẽ là cần thiết. Vậy phải quảng bá thế nào đó là xây dựng được một Website cho cửa hàng của mình quảng bá tất cả các sản phẩm của mình bán. Vì vậy, em đã thực hiện đồ án “Xây dựng website bán thực phẩm chức năng sử dụng NuxtJS + Laravel”. Người chủ cửa hàng đưa các sản phẩm đó lên website của mình và quản lý bằng website đó. Khách hàng có thể đặt mua hàng trên website mà không cần đến cửa hàng. Chủ cửa hàng sẽ gửi sản phẩm cho khách hàng khi nhận được tiền.

<b>Với sự hướng dẫn tận tình của thầy cơ, em đã hồn thành bài báo cáo đồ án này. </b>

Tuy đã cố gắng hết sức tìm hiểu, phân tích thiết kế và cài đặt hệ thống nhưng chắc rằng không tránh khỏi những thiếu sót. Em rất mong nhận được sự thơng cảm và góp ý của q Thầy cơ.

Em xin chân thành cảm ơn.

</div><span class="text_page_counter">Trang 13</span><div class="page_container" data-page="13">

<b>CHƯƠNG 1: TỔNG QUAN ĐỀ TÀI </b>

<b>1.1. Tổng quan về thương mại điện tử 1.1.1. Khái niệm về thương mại điện tử </b>

Thương mại điện tử hay E-Commerce là quá trình tiến hành một phần hay tất cả các hoạt động kinh doanh thông qua các phương tiện điện tử. Nói một cách đơn giản, thương mại điện tử chính là hoạt động mua bán sản phẩm hoặc dịch vụ thông qua Internet và các phương tiện điện tử khác. Các giao dịch này bao gồm tất cả các hoạt động như: giao dịch, mua bán, thanh toán, đặt hàng, quảng cáo và giao hàng, …

Thương mại điện tử ngày nay càng được biết tới như một phương thức kinh doanh hiệu quả từ khi Internet hình thành và phát triển. Chính vì vậy, nhiều người hiểu thương mại điện tử theo nghĩa cụ thể hơn là giao dịch thương mại, mua sắm qua Internet và mạng xã hội.

<b>1.1.2. Lợi ích của thương mại điện tử </b>

- Lợi ích của thương mại điện tử với các doanh nghiệp

Đối với các doanh nghiệp, thương mại điện tử tạo điều kiện thuận lợi để doanh nghiệp có thể quảng bá hình ảnh về thương hiệu, sản phẩm, dịch vụ của mình tới khách hàng, đối tác.

Lợi ích tiếp theo của thương mại điện tử dành cho doanh nghiệp chính là tiết kiệm chi phí, tạo thuận lợi cho việc giao dịch giữa các bên. Các doanh nghiệp sẽ chẳng cần phải tốn kém chi phí để thuê 1 cửa hàng hay chi phí để thuê nhân viên phục vụ hay phải thuê kho bãi. Chỉ cần đầu chi phí cho website và bán hàng qua mạng, bạn sẽ chỉ cần khoảng 10% số vốn so với việc thuê cửa hàng, nhân công, kho bãi để vận hành website mỗi tháng.

Có website thương mại điện tử, bạn sẽ mở rộng được phạm vi kinh doanh của mình đơn giản hơn rất nhiều. Khơng phải là ở tỉnh thành, quốc gia mà thậm chí có thể ra tồn cầu nếu bạn làm tốt công tác marketing. Với việc kinh doanh truyền thống mở cửa hàng thì đó là điều cực khó, chỉ có thương mại điện tử mới làm được. Chi phí cũng khơng q cao để có thể giới thiệu doanh nghiệp của bạn đến thị trường khác.

- Lợi ích của thương mại điện tử với người tiêu dùng:

Tiết kiệm thời gian để đi mua sắm, chỉ cần ngồi nhà, lướt web với điện thoại hay máy tính là có thể giúp bạn chọn được món đồ ưng ý.

</div><span class="text_page_counter">Trang 14</span><div class="page_container" data-page="14">

Có thể thoải mái check sản phẩm, lựa chọn các mặt hàng, so sánh giá, chất lượng giữa các nơi.

Có người vận chuyển hàng hóa tới tận nhà mà khơng mất sức để khuân vác từ cửa hàng về tới nhà.

- Lợi ích đối với xã hội của thương mại điện tử:

Đối với xã hội thì thương mại điện tử sẽ tạo ra được một phương thức kinh doanh và làm việc mới hiện đại, phù hợp hơn với xu thế thị trường đang phát triển mạnh trong thời đại công nghệ 4.0.

Thương mại điện tử cũng sẽ tạo ra được 1 sân chơi mới cho các doanh nghiệp và yêu cầu họ phải nắm bắt, đổi mới phương thức kinh doanh, tạo cơ hội để cạnh tranh cao hơn. Từ đó thúc đẩy sự phát triển của doanh nghiệp nói riêng và của nền kinh tế nói chung.

<b>1.1.3. Yêu cầu trong thương mại điện tử </b>

- Cơ sở hạ tầng bảo mật thông tin. - Nhân lực chất lượng cao.

- Tạo mối quan hệ bằng sự tin cậy - Bảo mật và an toàn

- Bảo vệ quyền lợi khách hàng và bản quyền kinh doanh.

<b>1.2. Phân tích yêu cầu đề tài </b>

<b>1.2.1. </b>

<b>Lý do chọn đề tài</b>

Trong thực tế ngày nay, công việc quản lý ở các cửa hàng nói chung và việc quản lý các cửa hàng thời trang nói riêng đã và đang được áp dụng trên máy vi tính vì số lượng rất lớn. Nếu chúng ta sử dụng biện pháp lưu trữ trên giấy tờ, văn bản thì sẽ rất khó khăn trong việc quản lý như khi muốn tìm kiếm thông tin về một mặt hàng hay muốn thay đổi thơng tin của một mặt hàng thì sẽ cực kỳ khó khăn với lượng mặt hàng cực lớn của các cửa hàng. Từ những khó khăn đó mà các phần mềm quản lý đã và đang được nghiên cứu và phát triển để hỗ trợ cho công tác quản lý. Việc áp dụng công nghệ thông tin vào công tác quản lý không chỉ làm giảm các bất cập trong công tác quản lý mà còn giúp cho người quản lý cảm thấy thoải mái trong công tác, năng suất làm việc

</div><span class="text_page_counter">Trang 15</span><div class="page_container" data-page="15">

Xuất phát từ những lý do đó em đã quyết định chọn đề tài: “Xây dựng website bán thực phẩm chức năng sử dụng NuxtJS + Laravel” nhằm góp phần giải quyết cho người quản lý cập nhật thơng tin nhanh chóng, tra cứu những dữ liệu được xử lý chính xác về các mặt hàng, giá cả, doanh thu nhằm phục vụ cho các thao tác hoặc chức năng sau đó, dễ sử dụng cho những giao diện đồ họa thân thiện đối với người dùng.

<b>1.2.2. Mục tiêu của đề tài </b>

<b>1.2.2.1. Mục tiêu tổng quát </b>

- Giúp cá nhân, tổ chức, doanh nghiệp phát triển nhiều mô hình trên sàn thương mại điện tử, tăng doanh thu và dễ dàng quản lí hàng hóa.

<b>1.2.2.2. Mục tiêu cụ thể </b>

- Người bán thì dễ dàng kiểm tra hàng và giới thiệu tới nhiều người hơn.

- Người mua thì dễ dàng tìm kiếm, đặt mua trên mạng mà không cần tới tận nơi. - Giúp hàng hóa lưu thơng dễ dàng.

<b>1.2.3. Giới hạn và phạm vi của đề tài </b>

<b>1.2.3.1. Đối tượng nghiên cứu </b>

- Đối tượng nghiên cứu: thực phẩm chức năng

<b>1.2.3.2. Phạm vi nghiên cứu </b>

- Phạm vi không gian: trên không gian mạng

- Ý nghĩa khoa học và thực tiễn của đề tài: giúp cho cá nhân, tổ chức, doanh nghiệp phát triển kinh doanh các loại thực phẩm chức năng trên sàn điện tử.

<b>1.2.4. Chức năng </b>

Đây là một website bán hàng, giới thiệu và quản lý sản phẩm của cửa hàng đến người tiêu dùng với các chi tiết mặt hàng với giá cả chính xác. Có các chứa năng sau:

- Cho phép quản lý đơn hàng

- Cho phép quản lý danh mục sản phẩm - Cho phép quản lý bài viết

- Cho phép quản lý sản phẩm - Cho phép quản lý khách hàng

</div><span class="text_page_counter">Trang 16</span><div class="page_container" data-page="16">

<b>1.2.5. Yêu cầu đặt ra </b>

Xây dựng hệ thống gồm 2 phần:

<i>Thứ nhất - Phần người dùng: Người dùng là những người có nhu cầu mua sắm </i>

hàng hóa, họ sẽ tìm kiếm các mặt hàng cần thiết từ hệ thống và đặt mua các mặt hàng

<i>này. Vì thế phần mềm địi hỏi phải có các chức năng sau: </i>

- Hiển thị danh sách các sản phẩm của cửa hàng để khách hàng xem, lựa chọn và mua.

- Người dùng xem các bài viết của cửa hàng.

<i>Thứ hai: Phần quản trị viên: Quản trị viên là người có quyền kiểm soát mọi hoạt </i>

động của hệ thống. Người này được cấp username và password để đăng nhập hệ thống thực hiện chức năng của mình:

- Chức năng cập nhật, sửa, xóa các danh mục, bài viết, sản phẩm, đơn hàng, khách hàng.

- Tiếp nhận kiểm tra đơn đặt hàng của khách hàng. Hiển thị đơn đặt hàng.

Ngồi các chức năng trên thì trang website phải được thiết kế sao cho dễ hiểu, giao diện mang tính dễ dùng đẹp mắt và làm sao cho khách hàng thấy được thông tin cần tìm, cung cấp các thơng tin quảng cáo hấp dẫn. Điều quan trọng là phải đảm bảo an tồn tuyệt đối thơng tin khách hàng trong q trình đặt mua qua mạng. Đồng thời trang

<i>web phải luôn đổi mới, hấp dẫn. </i>

<b>1.3. Khảo sát hiện trạng và xây dựng hệ thống </b>

Sau khi khảo sát em đã nắm bắt được các thông tin :

- Quản lý tài khoản: Mỗi khách hàng được quản lý các thông tin sau: họ tên, email,

</div><span class="text_page_counter">Trang 17</span><div class="page_container" data-page="17">

- Quản lý đơn hàng: mã hóa đơn, khách hàng, sản phẩm, số lượng, giá trị, trạng thái, thanh toán.

- Quản lý khách hàng: mã khách hàng, họ tên, số điện thoại, email, thành phố

<b>1.4. Công nghệ sử dụng </b>

<b>1.4.1. Giới thiệu về ngơn ngữ lập trình PHP </b>

PHP là ngơn ngữ lập trình đa mục đích, cụ thể hơn PHP là ngơn ngữ kịch bản mã nguồn mở, chạy ở phía server và được dùng để tạo ra các ứng dụng web. PHP là ngơn ngữ lập trình phổ biến được rất nhiều Developer theo đuổi. Cơ hội việc làm dành cho những ai biết ngôn ngữ PHP vô cùng rộng mở. Bạn có thể trở thành một Web Developer hoặc Full-Stack Developer nếu làm chủ ngôn ngữ này.

<b>1.4.2. Giới thiệu về Laravel </b>

Laravel là một PHP framework, có mã nguồn mở và miễn phí, được xây dựng nhằm hỗ trợ phát triển các phần mềm, ứng dụng, theo kiến trúc MVC.

PHP framework là thư viện làm cho sự phát triển của những ứng dụng web viết bằng ngôn ngữ PHP trở nên trôi chảy hơn bằng cách cung cấp một cấu trúc cơ bản để xây dựng những ứng dụng đó. Hay nói cách khác, PHP framework giúp thúc đẩy nhanh chóng q trình phát triển ứng dụng, tiết kiệm thời gian, tăng sự ổn định cho ứng dụng, giảm thiểu số lần phải viết lại code cho lập trình viên.

MVC là mẫu kiến trúc phần mềm trên máy tính nhằm mục đích tạo lập giao diện cho người dùng. Theo đó, hệ thống MVC được chia thành ba phần có khả năng tương tác với nhau và tách biệt các nguyên tắc nghiệp vụ với giao diện người dùng.

Ba thành phần ấy bao gồm:

- Controller: Giữ nhiệm vụ nhận điều hướng các yêu cầu từ người dùng và gọi đúng những phương thức xử lý chúng.

- Model: Là thành phần chứa tất cả các nghiệp vụ logic, phương thức xử lý, truy xuất database, đối tượng mô tả dữ liệu như các Class, hàm xử lý…

- View: Đảm nhận việc hiển thị thông tin, tương tác với người dùng, nơi chứa tất cả các đối tượng GUI như textbox, images…

Bằng cách này, thông tin nội hàm được xử lý tách biệt với phần thông tin xuất hiện trong giao diện người dùng, bảo đảm các nguyên tắc nghề nghiệp của lập trình viên.

</div><span class="text_page_counter">Trang 18</span><div class="page_container" data-page="18">

Hiện nay, Laravel đang là PHP framework phổ biến nhất và tốt nhất. Những lý do khiến Laravel trở nên rộng rãi:

- Cú pháp dễ hiểu – rõ ràng

- Hệ thống đóng gói modular và quản lý gói phụ thuộc

- Nhiều cách khác nhau để truy cập vào các cơ sở dữ liệu quan hệ - Nhiều tiện ích khác nhau hỗ trợ việc triển khai vào bảo trì ứng dụng

Một số ưu điểm và nhược điểm của framework Laravel:

+ Thường không cung cấp sự phong phú cho ứng dụng di động

<b>1.4.3. Giới thiệu về MySQL </b>

MySQL là một hệ thống quản trị cơ sở dữ liệu mã nguồn mở (gọi tắt là RDBMS) hoạt động theo mơ hình client-server. Với RDBMS là viết tắt của Relational Database Management System. MySQL được tích hợp apache, PHP. MySQL quản lý dữ liệu thông qua các cơ sở dữ liệu. Mỗi cơ sở dữ liệu có thể có nhiều bảng quan hệ chứa dữ liệu. MySQL cũng có cùng một cách truy xuất và mã lệnh tương tự với ngôn ngữ SQL. MySQL được phát hành từ thập niên 90s.

 Ưu điểm của MySQL

- Dễ sử dụng: MySQL là cơ sở dữ liệu tốc độ cao, ổn định, dễ sử dụng và hoạt động trên nhiều hệ điều hành cung cấp một hệ thống lớn các hàm tiện ích rất mạnh.

</div><span class="text_page_counter">Trang 19</span><div class="page_container" data-page="19">

- Đa tính năng: MySQL hỗ trợ rất nhiều chức năng SQL được mong chờ từ một hệ quản trị cơ sở dữ liệu quan hệ cả trực tiếp lẫn gián tiếp.

- Khả năng mở rộng và mạnh mẽ: MySQL có thể xử lý rất nhiều dữ liệu và hơn thế nữa nó có thể được mở rộng nếu cần thiết.

- Nhanh chóng: Việc đưa ra một số tiêu chuẩn cho phép MySQL để làm việc rất hiệu quả và tiết kiệm chi phí, do đó nó làm tăng tốc độ thực thi.

 Nhược điểm của MySQL:

- Giới hạn: Theo thiết kế, MySQL không có ý định làm tất cả và nó đi kèm với các hạn chế về chức năng mà một vào ứng dụng có thể cần.

- Độ tin cậy: Cách các chức năng cụ thể được xử lý với MySQL (ví dụ tài liệu tham khảo, các giao dịch, kiểm tốn…) làm cho nó kém tin cậy hơn so với một số hệ quản trị cơ sở dữ liệu quan hệ khác.

- Dung lượng hạn chế: Nếu số bản ghi của bạn lớn dần lên thì việc truy xuất dữ liệu của bạn là khá khó khăn, khi đó chúng ta sẽ phải áp dụng nhiều biện pháp để tăng tốc độ truy xuất dữ liệu như là chia tải database này ra nhiều server, hoặc tạo cache MySQL.

<b>1.4.4. Giới thiệu về VueJS </b>

VueJS là một framework mã nguồn mở của JavaScript được sử dụng để phát triển các giao diện web tương tác, là một trong những framework nổi tiếng được sử dụng để đơn giản hóa việc phát triển web. VueJS tập trung vào view layer. Nó có thể dễ dàng tích hợp vào các dự án lớn để phát triển front-end mà không gặp bất kỳ sự cố nào. Việc cài đặt VueJS rất dễ dàng. Bất kỳ nhà phát triển nào cũng có thể hiểu và xây dựng giao diện web tương tác trong thời gian ngắn. VueJS được tạo ra bởi Evan You, một cựu nhân viên và lập trình viên của Google. Phiên bản đầu tiên của VueJS được phát hành vào tháng 2 năm 2014. Gần đây, nó đã đạt 64.828 sao trên GitHub, khiến nó trở nên rất phổ biến.

<b>1.4.5. Giới thiệu về NuxtJS </b>

Nuxt.JS là một Javascript framework để tạo các ứng dụng VueJS. Mục tiêu là để chúng ta có thể tạo một ứng dụng linh hoạt nhưng được render phía máy chủ, tương tự một trang web tĩnh giống như các website thông thường (điều mà có lợi cho SEO).

</div><span class="text_page_counter">Trang 20</span><div class="page_container" data-page="20">

NuxtJS tập trung vào khía cạnh render giao diện người dùng. Ngồi ra, Nuxt.js có rất nhiều tính năng giúp bạn phát triển giữa phía client và server như Dữ liệu bất đồng bộ (Asynchronous Data), Middleware, Layouts, v.v.

</div><span class="text_page_counter">Trang 21</span><div class="page_container" data-page="21">

<b>CHƯƠNG 2: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG </b>

<b>2.1. Các Actor sử dụng phần mềm </b>

<i><b>Bảng 2. 1 Các Actor sử dụng phần mềm </b></i>

<b>STT Tên Actor Ý nghĩa </b>

1 Admin

Người quản lý là người có tồ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ều khiển và kiểm soát mọi hoạt động của website.

2 <sup>Người </sup><sub>dùng </sub>

Người dùng ở đây là những người truy cập vào website. Người dùng chỉ có một số quyền nhất định đối với website.

<b>2.2. Các chức năng của hệ thống 2.2.1. Các chức năng trên website </b>

<i><b>Bảng 2. 2 Các chức năng trên Website </b></i>

1 Đặt hàng <sup>Người dùng có thể đặt mua sản phẩm sau </sup> khi trên website.

Người dùng nhập đầy đủ thông tin. Hệ thống đưa ra thông báo.

</div><span class="text_page_counter">Trang 22</span><div class="page_container" data-page="22">

5 Quản lý Giỏ hàng Cho phép người dùng có thể: xóa sản phẩm. <sup>Người </sup> dùng

<b>2.2.2. Các chức năng trong quản trị </b>

<i><b>Bảng 2. 3. Các chức năng trong quản trị </b></i>

1 Đăng nhập <sup>Người quản trị sau khi đăng ký trở thành thành </sup>viên đăng nhập tiếp tục sử dụng các chức năng trong phần quản trị website.

Admin

2 Đăng ký <sup>Người quản trị tạo tài khoản để sử dụng các chức </sup><sub>năng trong phần quản trị. </sub> Admin 3 Đăng xuất <sup>Người quản trị có thể đăng xuất khi khơng sử </sup><sub>dụng các chức năng trong phần quản trị nữa. </sub> Admin

10 <sup>Quản lý khách </sup><sub>hàng </sub> <sup>Cho phép admin có thể: </sup>

</div><span class="text_page_counter">Trang 23</span><div class="page_container" data-page="23">

<b>2.3. Biểu đồ Usecase </b>

<b>2.3.1. Biểu đồ Usecase tổng quát </b>

<i><b>Hình 2. 1 Biểu đồ Usecase tổng quát </b></i>

<b>2.3.2. Usecase đăng nhập </b>

<i><b>Hình 2. 2 Biểu đồ Usecase đăng nhập </b></i>

<i><b>Bảng 2. 4 Mô tả Usecase đăng nhập </b></i>

<b>Use Case – Đăng nhập </b>

</div><span class="text_page_counter">Trang 24</span><div class="page_container" data-page="24">

<b>Định nghĩa </b> Người quản trị muốn vào hệ thống

<b>Điều kiện tiên quyết </b> Không

<b>Dịng sự kiện </b>

<b>Dịng sự kiện chính </b> 1. Hệ thống hiển thị giao diện đăng nhập, yêu cầu người quản trị nhập tên tài khoản và mật khẩu

3. Người quản trị nhập tên tài khoản và mật khẩu, chọn đăng nhập

4 Hệ thống kiểm tra thông tin tài khoản và mật khẩu, nếu nhập sai tên tài khoản và mật khẩu thì hiện thơng báo lỗi và quay lại màn hình đăng nhập

<b>Điều kiện sau </b> Người quản trị đăng nhập thành cơng và có thể sử dụng các chức năng mà hệ thống cung cấp.

<b>2.3.3. Usecase đăng ký </b>

<i><b>Hình 2. 3 Usecase đăng ký Bảng 2. 5 Mô tả Usecase đăng ký </b></i>

<b>Use Case – Đăng ký </b>

<b>Định nghĩa </b> Người quản trị muốn đăng ký làm quản trị của hệ thống

<b>Điều kiện tiên quyết </b> Khơng

<b>Dịng sự kiện </b>

<b>Dịng sự kiện chính </b> 1. Từ giao diện chính khách hàng chọn đăng ký.

</div><span class="text_page_counter">Trang 25</span><div class="page_container" data-page="25">

2. Hệ thống hiển thị giao diện đăng ký, yêu cầu khách hàng nhập thông tin cá nhân vào form đăng ký

3. Khách hàng nhập thông tin cá nhân sau đó nhấn nút đăng ký

4. Hệ thống kiểm tra thông tin đăng ký đã hợp lệ chưa, nếu chưa A1

5. Hệ thống cập nhật thông tin của người quản trị vào danh sách tài khoản nếu sai thì hiển thị thơng báo thơng tin khơng hợp lệ

<b>Điều kiện sau </b> Người quản trị đăng nhập thành cơng và có thể sử dụng các chức năng mà hệ thống cung cấp.

<b>2.3.4. Usecase quản lý danh mục </b>

<i><b>Hình 2. 4 Usecase quản lý danh mục </b></i>

<b> Use Case quản lý danh mục sản phẩm sản phẩm </b>

+ Use case thêm danh mục sản phẩm

<i><b>Bảng 2. 6 Mô tả Usecase quản lý danh mục sản phẩm </b></i>

<b>Use Case – Thêm danh mục sản phẩm </b>

<b>Định nghĩa </b> Khi người quản trị hệ thống muốn thêm danh mục sản phẩm mới vào website

</div><span class="text_page_counter">Trang 26</span><div class="page_container" data-page="26">

<b>Actors </b> Quản trị

<b>Điều kiện tiên quyết </b> Người quản trị cần phải đăng nhập vào hệ thống

<b>Dòng sự kiện </b>

<b>Dòng sự kiện chính </b> 1. Người quản trị chọn giao diện quản lý danh mục sản phẩm 2. Người quản trị chọn một nút thêm danh mục sản phẩm 3. Hiển thị Form nhập thông tin danh mục sản phẩm

4. Nhập thông tin sản phẩm chọn nút Thêm danh mục sản phẩm

5. Nếu thêm danh mục sản phẩm khơng thành cơng thì hiển thị thông báo thêm thông tin danh mục sản phẩm không thành công

6. Hệ thống sẽ thêm danh mục sản phẩm vào cơ sở dữ liệu

<b>Điều kiện sau </b> Hệ thống hiển thị giao diện danh sách danh mục sản phẩm

+ Use case sửa danh mục sản phẩm

<i><b>Bảng 2. 7 Mô tả Usecase quản lý danh mục sản phẩm </b></i>

<b>Use Case – Sửa danh mục sản phẩm </b>

<b>Định nghĩa </b> Khi người quản trị hệ thống muốn sửa lại thông tin danh mục sản phẩm

<b>Điều kiện tiên quyết </b> Người quản trị cần phải đăng nhập vào hệ thống

<b>Dịng sự kiện </b>

<b>Dịng sự kiện chính </b> 1. Người quản trị chọn giao diện quản lý danh mục sản phẩm và nhấn vào liệt kê sản phẩm

2. Người quản trị chọn một nút sửa danh mục sản phẩm 3. Form hiển thị thông tin danh mục sản phẩm cần sửa 4. Nhập thông tin danh mục sản phẩm muốn sửa chọn nút cập nhật danh mục sản phẩm

</div><span class="text_page_counter">Trang 27</span><div class="page_container" data-page="27">

6. Hệ thống sẽ cập nhật danh mục sản phẩm và trả về giao diện liệt kê danh mục sản phẩm nếu không hiển thị thông báo sửa danh mục sản phẩm không thành công

<b>Điều kiện sau </b> Hệ thống hiển thị thông tin danh mục sản phẩm đã được sửa

+ Use case xóa danh mục sản phẩm

<i><b>Bảng 2. 8 Mô tả Usecase quản lý danh mục sản phẩm </b></i>

<b>Use Case – Xóa danh mục sản phẩm </b>

<b>Định nghĩa </b> Khi người quản trị muốn xóa danh mục sản phẩm

<b>Điều kiện tiên quyết </b> Người quản trị cần phải đăng nhập vào hệ thống

<b>Dịng sự kiện </b>

<b>Dịng sự kiện chính </b> 1. Người quản trị chọn giao diện quản lý danh mục sản phẩm và nhấn vào liệt kê danh mục sản phẩm

2. Người quản trị chọn một nút xóa tương ứng với mỗi danh mục sản phẩm.

3. Hệ thống sẽ hiển thị thơng báo bạn có thật sự muốn xóa 4. Nhấn ok để xóa. Nếu lỗi hiển thị thơng báo trả về màn hình danh sách danh mục sản phẩm và danh mục sản phẩm không

</div><span class="text_page_counter">Trang 28</span><div class="page_container" data-page="28">

<b>2.3.5. Usecase quản lý bài viết </b>

<i><b>Hình 2. 5 Usecase quản lý bài viết </b></i>

<b> Use Case quản lý bài viết </b>

+ Use case thêm bài viết

<i><b>Bảng 2. 9 Mô tả Usecase quản lý bài viết </b></i>

<b>Use Case – Thêm bài viết </b>

<b>Định nghĩa </b> Khi người quản trị hệ thống muốn thêm bài viết mới vào website

<b>Điều kiện tiên quyết </b> Người quản trị cần phải đăng nhập vào hệ thống

<b>Dòng sự kiện </b>

<b>Dòng sự kiện chính </b> 1. Người quản trị chọn giao diện quản lý danh sách bài viết 2. Người quản trị chọn một nút thêm bài viết

3. Hiển thị Form nhập thông tin bài viết

4. Nhập thông tin bài viết chọn nút Thêm bài viết

5. Nếu thêm bài viết không thành công hiển thị thông báo lỗi thêm thông tin bài viết không thành công

6. Hệ thống sẽ thêm bài viết vào cơ sở dữ liệu

</div><span class="text_page_counter">Trang 29</span><div class="page_container" data-page="29">

<i><b>Bảng 2. 10 Mô tả Usecase quản lý bài viết </b></i>

<b>Use Case – Sửa bài viết </b>

<b>Định nghĩa </b> Khi người quản trị hệ thống muốn sửa lại thông tin bài viết

<b>Điều kiện tiên quyết </b> Người quản trị cần phải đăng nhập vào hệ thống

<b>Dịng sự kiện </b>

<b>Dịng sự kiện chính </b> 1. Người quản trị chọn giao diện quản lý danh sách bài viết 2. Người quản trị chọn một nút sửa bài viết

3. Form hiển thị thông tin bài viết cần sửa

4. Nhập thông tin bài viết muốn sửa chọn nút cập nhật bài viết

5. Nếu sửa bài viết không thành công hiện thị thông báo sửa bài viết không thành công

6. Hệ thống sẽ cập nhật bài viết và trả về giao diện danh sách bài viết

<b>Điều kiện sau </b> Hệ thống hiển thị thông tin bài viết đã được sửa

<i><b>Bảng 2. 11 Mô tả Usecase quản lý bài viết </b></i>

<b>Use Case – Xóa bài viết </b>

<b>Định nghĩa </b> Khi người quản trị muốn xóa bài viết

<b>Điều kiện tiên quyết </b> Người quản trị cần phải đăng nhập vào hệ thống

<b>Dòng sự kiện </b>

<b>Dòng sự kiện chính </b> 1. Người quản trị chọn giao diện quản lý danh sách bài viết 2. Người quản trị chọn một nút xóa tương ứng với mỗi bài viết.

3. Hệ thống sẽ hiển thị thông báo bạn có thật sự muốn xóa

</div><span class="text_page_counter">Trang 30</span><div class="page_container" data-page="30">

4. Nhấn ok để xóa. Nhấn cancel và trả về màn hình danh sách bài viết và danh sách bài viết khơng thay đổi

5. Xóa bài viết thành công và trả về giao diện danh sách bài viết

<b>Điều kiện sau </b> Thông tin sẽ được thay đổi

<b>2.3.6. Usecase quản lý sản phẩm </b>

<i><b>Hình 2. 6 Usecase quản lý sản phẩm </b></i>

<b> Use Case quản lý sản phẩm </b>

<i><b>Bảng 2. 12 Mô tả usecase quản lý sản phẩm </b></i>

<b>Use Case – Thêm sản phẩm </b>

<b>Dịng sự kiện chính </b> 1. Người quản trị chọn giao diện quản lý danh sách sản phẩm 2. Người quản trị chọn một nút thêm sản phẩm

</div><span class="text_page_counter">Trang 31</span><div class="page_container" data-page="31">

5. Nếu thêm sản phẩm không thành công thông báo thêm thông tin sản phẩm không thành công

6. Hệ thống sẽ thêm sản phẩm vào cơ sở dữ liệu

<b>Điều kiện sau </b> Hệ thống hiển thị giao diện danh sách sản phẩm

<i><b>Bảng 2. 13 Mô tả usecase quản lý sản phẩm </b></i>

<b>Use Case – Sửa sản phẩm </b>

<b>Dòng sự kiện chính </b> 1. Người quản trị chọn giao diện quản lý sản phẩm và nhấn vào liệt kê sản phẩm

2. Người quản trị chọn một nút sửa sản phẩm 3. Form hiển thị thông tin sản phẩm cần sửa

4. Nhập thông tin sản phẩm muốn sửa chọn nút cập nhật sản

<b>Điều kiện sau </b> Hệ thống hiển thị thông tin sản phẩm đã được sửa

<i><b>Bảng 2. 14 Mô tả usecase quản lý sản phẩm </b></i>

<b>Use Case – Xóa sản phẩm </b>

</div><span class="text_page_counter">Trang 32</span><div class="page_container" data-page="32">

<b>Dịng sự kiện chính </b> 1. Người quản trị chọn giao diện quản lý sản phẩm và nhấn vào liệt kê sản phẩm

2. Người quản trị chọn một nút xóa tương ứng với mỗi sản phẩm.

3. Hệ thống sẽ hiển thị thơng báo bạn có thật sự muốn xóa 4. Nhấn ok để xóa. Nhấn cancel và trả về màn hình danh sách sản phẩm và sản phẩm vẫn bình thường

5. Xóa danh mục sản phẩm thành công và trả về giao diện liệt kê danh mục sản phẩm

<b>Điều kiện sau </b> Thông tin sẽ được thay đổi

<b>2.3.7. Usecase quản lý đơn hàng </b>

<i><b>Hình 2. 7 Usecase quản lý đơn hàng Bảng 2. 15 Mô tả Usecase quản lý đơn hàng </b></i>

<b>Use Case – Chuyển trạng thái đơn hàng </b>

</div><span class="text_page_counter">Trang 33</span><div class="page_container" data-page="33">

2. Người quản trị chọn một loại trạng thái 3. Chọn nút cập nhật đơn hàng

4. Nếu thêm thành viên không thành công thông báo cập nhật đơn hàng không thành công

5. Hệ thống sẽ thêm thành viên vào cơ sở dữ liệu

<b>Điều kiện sau </b> Hệ thống hiển thị giao diện danh sách đơn hàng và thông báo trạng thái cập nhật

<i><b>Bảng 2. 16 Mô tả Usecase quản lý đơn hàng </b></i>

<b>Use Case – Xóa đơn hàng </b>

<b>Định nghĩa </b> Khi người quản trị muốn xóa đơn hàng

<b>Điều kiện tiên quyết </b> Người quản trị cần phải đăng nhập vào hệ thống

<b>Dòng sự kiện </b>

<b>Dịng sự kiện chính </b> 1. Người quản trị chọn giao diện quản lý danh sách đơn hàng 2. Người quản trị chọn một nút xóa tương ứng với đơn hàng 3. Hệ thống sẽ hiển thị thông báo bạn có thật sự muốn xóa 4. Nhấn ok để xóa. Nhấn cancel và trả về màn hình danh sách đơn hàng và đơn hàng vẫn bình thường

5. Xóa danh mục thành viên thành cơng và trả về giao diện danh sách đơn hàng

<b>Điều kiện sau </b> Đơn hàng biến mất

</div><span class="text_page_counter">Trang 34</span><div class="page_container" data-page="34">

<b>2.3.8. Usecase quản lý khách hàng </b>

<i><b>Hình 2. 8 Usecase quản lý khách hàng Bảng 2. 17 Mô tả Usecase quản lý khách hàng </b></i>

<b>Use Case – Cập nhật thông tin khách hàng </b>

<b>Định nghĩa </b> Khi người quản trị muốn cập nhật thông tin khách hàng

</div><span class="text_page_counter">Trang 35</span><div class="page_container" data-page="35">

5. Cập nhật thành công trả về màn hình khách hàng với dữ liệu mới

<b>Điều kiện sau </b> Khách hàng cập nhật thông tin thành công

<b>2.4. Biểu đồ tuần tự </b>

<b>2.4.1. Biểu đồ tuần tự chức năng đăng nhập </b>

<i><b>Hình 2. 9 Biểu đồ tuần tự chức năng đăng nhập </b></i>

 Mô tả biểu đồ:

 Admin chọn chức năng đăng nhập.

 Giao diện đăng nhập yêu cầu nhập email và password.  Admin nhập email và password.

 Hệ thống kiểm tra tính hợp lệ của thơng tin.  Nếu đúng thì đăng nhập thành cơng.

 Nếu sai thì báo lỗi.

</div><span class="text_page_counter">Trang 36</span><div class="page_container" data-page="36">

<b>2.4.2. Biểu đồ tuần tự chức năng đăng ký </b>

<i><b>Hình 2. 10 Biểu đồ tuần tự chức năng đăng ký </b></i>

 Mô tả biểu đồ:

 Admin chọn chức năng đăng ký.

 Giao diện hiển thị form đăng ký và yêu cầu nhập đầy đủ thông tin.  Admin nhập thông tin và ấn nút đăng ký.

 Hệ thống kiểm tra tính hợp lệ của thơng tin.

 Nếu đúng thì tài khoản được tạo và thêm vào cơ sở dữ liệu và thông báo thành cơng.

 Nếu sai thì báo lỗi.

</div><span class="text_page_counter">Trang 37</span><div class="page_container" data-page="37">

<b>2.4.3. Biểu đồ tuần tự chức năng quản lý danh mục </b>

<b>2.4.3.1. Biểu đồ tuần tự Thêm danh mục </b>

<i><b>Hình 2. 11 Biểu đồ tuần tự thêm danh mục </b></i>

 Mô tả biểu đồ

 Admin yêu cầu thêm danh mục.

 Hệ thống hiển thị form thêm danh mục.

 Admin nhập đầy đủ thông tin của danh mục và ấn nút thêm mới.  Sản phẩm trước khi thêm vào cơ sở dữ liệu sẽ được kiểm tra.

 Nếu hợp lệ sẽ được thêm vào cơ sở dữ liệu và thông báo thêm thành  công.

</div><span class="text_page_counter">Trang 38</span><div class="page_container" data-page="38">

<b>2.4.3.2. Biểu đồ tuần tự Sửa danh mục </b>

<i><b>Hình 2. 12 Biểu đồ tuần tự sửa danh mục </b></i>

 Mô tả biểu đồ

 Admin yêu cầu sửa danh mục.

 Hệ thống hiển thị form sửa danh mục.

 Admin nhập thông tin cần sửa và ấn nút chỉnh sửa.  Hệ thống kiểm tra thông tin.

 Nếu hợp lệ thông tin sẽ được cập nhật vào cơ sở dữ liệu và thông báo thành công.

</div><span class="text_page_counter">Trang 39</span><div class="page_container" data-page="39">

<b>2.4.3.3. Biểu đồ tuần tự Xóa danh mục </b>

<i><b>Hình 2. 13 Biểu đồ tuần tự xóa danh mục </b></i>

 Mơ tả biểu đồ:

 Admin ấn xóa danh mục.

 Danh mục được xóa trong cơ sở dữ liệu.  Danh mục được xóa thành cơng.

</div>

×