Mục đích và ý nghĩa của đề tài
Tạo ra môi trường tiếp cận sản phẩm cho người dùng nhanh hơn, tiết kiệm thời gian.
Giúp nhà bán hàng có thể quản lý dễ dàng và đưa thông tin đến người có nhu cầu nhằm nâng cao doanh thu.
Phương pháp nghiên cứu
Tìm hiểu các tài liệu liên quan
Phân tích và lựa chọn giải pháp
Tổng hợp các tài liệu liên quan đến xây dựng và phát triển phần mềm
Chương 1 CƠ SỞ LÝ THUYẾT
1 Giới thiệu về kỹ thuật và công nghệ
UML (Unified Modeling Language) là ngôn ngữ dùng để:
- Sinh mã ở dạng nguyên mẫu
- Lập và cung cấp tài liệu
UML là một ngôn ngữ bao gồm một bảng từ vựng và các quy tắc để kết hợp các từ vựng đó phục vụ cho mục đích giao tiếp Một ngôn ngữ dùng cho việc lập mô hình là ngôn ngữ mà bảng từ vựng (các ký hiệu) và các quy tắc của nó tập trung vào việc thể hiện về mặt khái niệm cũng như vật lý của một hệ thống
UML sử dụng một hệ thống ký hiệu thống nhất biểu diễn các Phần tử mô hình (model elements) Tập hợp các phần tử mô hình tạo thành các Sơ đồ UML (UML diagrams) Có các loại sơ đồ UML chủ yếu sau: Sơ đồ lớp, sơ đồ Use case, sơ đồ tuần tự, sơ đồ trạng thái, sơ đồ hoạt động, sơ đồ triển khai…
1.1.2 Các dạng biểu đồ UML
Biểu đồ Use case (Use Case Diagram)
Khái niệm actor: là những người dùng (tác nhân) hay hệ thống khác ở bên ngoài phạm vi của hệ thống mà có tương tác với hệ thống, có thể là một người hay một nhóm người, một thiết bị hay một hệ thống khác, có thể tra đổi thông tin với hệ thống với vai trò của người cung cấp lẫn người nhận thông tin
Biểu đồ Use case bao gồm một tập hợp các Use case, các actor và thể hiện mối quan hệ tương tác giữa actor và Use case Nó rất quan trọng trong việc tổ chức và mô hình hóa hành vi của hệ thống.
Biểu đồ hoạt động (Activity Diagram)
Là biểu đồ mô tả các bước thực hiện, các hành động, các nút quyết định và điều kiện rẽ nhánh để điều khiển luồng thực hiện của hệ thống Đối với những luồng thực thi có nhiều tiến trình chạy song song thì biểu đồ hoạt động là sự lựa chọn tối ưu cho việc thể hiện tượng đồng thời cũng chú trọng đến việc trình tự về mặt thời gian gửi và nhận các thông điệp đó.
Biều đồ lớp (Class Diagram)
Là một trong những bản vẽ quan trọng nhất của thiết kế phần mềm, nó cho thấy cấu trúc và quan hệ giữa các thành phần tạo nên phần mềm Trong quá trình xây dựng Class Diagram chúng ta sẽ phải quyết định rất nhiều yếu tố về thiết kế nên nó là bản vẽ khó xây dựng nhất Bản vẽ này sẽ cho thấy cấu trúc tĩnh của phần mềm, tương tự như bản vẽ mặt bằng trong thiết kế của ngành xây dựng.
Biểu đồ đối tượng (Object Diagram)
Chỉ chứa các đối tượng và giá trị dữ liệu Đối tượng là một thể hiện cụ thể của thành phần hoặc toàn bộ sơ đồ lớp, thường được dùng khi muốn xem xét chi tiết của một lớp Thông qua đó có thể phát hiện sai lầm khi thiết kế sơ đồ lớp.
Biểu đồ hợp tác (Collaboration)
Gần giống như biều đồ tuần tự, biều đồ cộng tác là một cách khác để thể hiện một tình huống có thể xảy ra trong hệ thống Nhưng nó chỉ mô tả sự tương tác giữa các đối tượng mà không quan tâm đến trình tự thời gian xảy ra tương tác.
Biểu đồ trạng thái (Statechart)
Là dạng biểu đồ mô tả các trạng thái có thể có và sự chuyển đổi giữa các trạng thái đó khi có các sự kiện tác động của một đối tượng. Đối với các đối tượng có nhiều trạng thái thì biểu đồ trạng thái là sự lựa chọn tốt nhất giúp chúng ta có thể hiểu rõ hơn về hệ thống.
Biểu đồ thành phần (Component)
Chỉ ra cấu trúc vật lý của các thành phần trong hệ thống, bao gồm: các thành phần mã nguồn, mã nhị phân, thư viện và các thành phần thực thi.
1.2 Ngôn ngữ lập trình PHP
Ngôn ngữ PHP là từ viết tắt của Personal Home Page nay đã chuyển thành Hypertext Preprocessor Thuật ngữ này là một dạng mã lệnh hoặc một chuỗi ngôn ngữ kịch bản được dùng để phát triển các ứng dụng web chạy trên máy chủ Ki các lập trình viên PHP viết chương trình, chuỗi lệnh sẽ được xử lý trên server sau đó sinh ra mã HTML trên client Dựa vào đó, các ứng dụng trên website sẽ hoạt động cũng là ngôn ngữ lập trình có mã nguồn mở, tương thích với nhiều nền tảng khác nhau như MacOS, Linux, Windows,…
1.2.2 Ưu điểm của ngôn ngữ lập trình PHP
PHP được sử dụng phổ biến bởi nhiều lợi ích mà nó mang lại Dưới đây là một số ưu điểm cơ bản của ngôn ngữ PHP:
Mã nguồn mở và miễn phí: PHP sử dụng miễn phí nên giúp tiết kiệm đáng kể ngân sách dự án Việc cài đặt và sử dụng ngôn ngữ này cũng rất dễ dàng, bạn chỉ cần học chăm chỉ trong 3 – 6 tháng là đã có thể sử dụng thuần thục.
Tính linh hoạt: PHP là một ngôn ngữ đa nền tảng, có thể hoạt động trên bất kỳ hệ điều hành nào (Windows, Linux, macOS,…) Hơn nữa, PHP còn có thể kết hợp với nhiều ngôn ngữ lập trình khác để xây dựng các tính năng công nghệ một cách hiệu quả nhất.
Hệ thống thư viện phong phú, tính cộng đồng cao: Do sự phổ biến của ngôn ngữ PHP nên việc tìm các thư viện code hay hàm liên quan đến PHP sẽ cực kỳ đơn giản Chưa kể, bạn sẽ nhận được sự trợ giúp từ các diễn đàn, đội nhóm chuyên sâu của PHP giúp việc học tập hay làm việc trở nên dễ dàng.
Cơ sở dữ liệu đa dạng: PHP cho phép kết nối với hầu hết các cơ sở dữ liệu khác như mySQL, SQLite, PostgreSQL, MS-SQL,…
MySQL là hệ quản trị cơ sở dữ liệu mã nguồn mở miễn phí nằm trong nhóm LAMP (Linux – Apache -MySQL – PHP) vì MySQL được tích hợp sử dụng chung với apache, PHP nên nó phổ biến nhất thế giới Vì MySQL ổn định và dễ sử dụng, có tính khả chuyển, 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 và 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 chính vì thế nên MySQL được sử dụng và hỗ trợ của những lập trình viên yêu thích mã nguồn mở.
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
Đặc tả yêu cầu chức năng
Ngày nay với sự phát triển mạnh mẽ của khoa học công nghệ, công nghệ thông tin là một trong những ngành có vị thế dẫn đầu và có vai trò rất lớn trong sự phát triển chung đó Các ứng dụng công nghệ thông tin được áp dụng trong mọi lĩnh vực nghiên cứu khoa học cũng như trong mọi lĩnh vực của đời sống Là một phần của công nghệ thông tin, công nghệ web đang có được sự phát triển và phổ biến rất nhanh bởi những lợi ích mà nó mang lại cho cộng đồng là rất lớn.
Bằng việc lựa chọn và thực hiện để tài "Xây dựng website bán giày thể thao", em muốn tìm hiểu và đưa ra một giải pháp tốt nhằm giúp cho các doanh nghiệp bán hàng trực tuyến Website mang lại cho các doanh nghiệp khả năng mở rộng tị trường, tối ưu hóa nguồn doanh thu; việc kinh doanh sẽ mở của 24/7; giảm thiểu chi phí nhân viên, chi phí cho tiếp thị, quảng cáo,
Website bán hàng trực tuyến giúp doanh nghiệp cung cấp cho khách hàng những lựa chọn linh hoạt và tiện lợi trong việc tìm mua sản phẩm thông qua chức năng giỏ hàng Các thông tin mặt hàng của doanh nghiệp được hiển thị chi tiết và rõ ràng với giá niêm yết trên từng sản phẩm, từ đó khách hàng dễ dàng nhận biết và lựa chọn được sản phẩm mình mong muốn.
Về phía doanh nghiệp, hệ thống cũng mang lại sự tiện dụng trong việc cập nhật và quản lý các thông tin chi tiết cho danh mục sản phẩm Tạo khả năng liên hệ nhanh và tư vấn dễ dàng với khách hàng.
Website có các chức năng cho khách hàng như:
Xem thông tin sản phẩm trên website, xem theo danh mục hoặc xem tất cả. Xem chi tiết sản phẩm,
Tìm kiếm sản phẩm theo loại.
Quản lý lịch sử đặt hàng
Quản lý tài tài khoản
Công cụ phân tích thiết kế UML
Công nghệ sử dụng: HTML, CSS, Javascript, PHP.
1.3 Các yêu cầu bổ trợ khác (nếu có)
Truy cập nhanh, hỗ trợ nhiều khách hàng đồng thời.
Giao diện đơn giản, tối ưu hóa, dễ sử dụng.
Phân tích và thiết kế hệ thống
Bảng 2 1 Bảng mô tả các tác nhân
STT Tên tác nhân Mô tả
1 Khách vãng lai Người dùng chưa đăng ký có thể xem sản phẩm, tìm kiếm thông tin sản phẩm, đăng ký thành viên.
2 Khách đã có tài khoản Là thành viên đã có tài khoản của hệ thống, có quyền xem, tìm kiếm thông tin, quản lý giỏ hàng đặt hàng,
3 Quản trị viên Có quyền thêm, xóa tài khoản người dùng, quản lý sản phẩm, quản lý đơn đặt hàng, quản lý danh mục, thống kê báo cáo sản phẩm, …
Hình 2.2 Biểu đồ usecase tổng quát
Bảng 2.2 Bảng đặc tả usecase tổng quát
Tác nhân Quản trị viên, khách vãng lai, khách hàng
Mô tả toàn bộ chức năng của từng đối tượng người dùng trong hệ thống website bán hàng
2.3 Mô tả chi tiết usecase sử dụng
Usecase đăng ký: Đặc tả luồng dữ liệu:
1 Người dùng chọn chức năng đăng ký.
2 Hệ thống yêu cầu người dùng nhập các thông tin tài khoản.
4 Hệ thống kiểm tra xem tài khoản đã tồn tại hay chưa Nếu chưa có hệ thống lưu lại tài khoản và thông báo đăng ký thành công.
5 Hệ thống tự động đăng nhập và chuyển tới trang cửa hàng.
2.3.2.1 Đặc tả luồng dữ liệu
Hành động của tác nhân Hành động của hệ thống
Usecase tìm kiếm: Đặc tả luồng dữ liệu:
Mô tả Tìm kiếm các sản phẩm Điều kiện trước
1 Người dùng nhập từ khóa vào ô tìm kiếm sau đó click vào nút tìm kiếm.
2 Hệ thống hiển thị các sản phẩm tìm kiếm được.
Hình 2.3.3 - 1: Biểu đồ hoạt động “tìm kiếm bằng từ khóa”
Hình 2.3.3 - 2: Biểu đồ hoạt động “tìm kiếm bằng mã sản phẩm”
Hình 2.3.3-3: Biểu đồ hoạt động “tìm kiếm theo loại sản phẩm”
Hình 2.3.3-4: Biểu đồ tuần tự “ tìm kiếm theo từ khóa”
Hình 2.3.3-5: Biểu đồ tuần tự “tìm kiếm theo loại sản phẩm”
Usecase xem sản phầm: Đặc tả luồng dữ liệu:
Use case Xem chi tiết sản phẩm
Mô tả Xem sản phẩm Điều kiện trước
1.1 Người dùng chọn sản phẩm 1.2 Hiển thị ra danh sách sản phẩm
2.2 Người dùng chọn chi tiết sảnphẩm 2.2 Hiển thị thông tin chi tiết của sản phẩm
Hình 2.3.4 - 1: Biểu đồ hoạt động "Xem chi tiết sản phẩm"
Hình 2.3.4 -2: Biểu đồ tuần tự "Xem sản phẩm”
Hình 2.3.4-2: Biểu đồ tuần tự "Xem chi tiết sản phẩm”
Usercase đặt hàng: Đặc tả luồng dữ liệu:
Mô tả Mô tả các bước gửi đặt hàng Điều kiện trước Đăng nhập vào hệ thống
1 Nhấn nút đặt hàng 2 Hệ thống hiển thị ra đơn hàng có trong giỏ
3 Nhập lại địa chỉ giao hàng, sdt, chọn phương thức thanh toán Nhấn nút xác nhận đặt hàng.
4.Hệ thống lưu thông tin và chuyển đơn hàng đến admin Hệ thống thông báo đặt hàng thành công
Usecase đánh giá: Đặc tả luồng dữ liệu:
Mô tả Xem đánh giá, đăng đánh giá, chỉnh sửa đánh giá và xóa đánh giá. Điều kiện trước Đăng nhập vào hệ thống
1.1 Đánh giá 1.2 Hệ thống hiển thị danh sách các bài đánh giá và các chức năng đánh giá.
2.1 Thêm đánh giá mới 2.2 Hệ thống hiển thị lên bảng thông tin yêu cầu nhập vào nội dung bài viết.
2.3 Nhập đầy đủ nội dung tin Nhấn “Thêm” 2.4 Hệ thống kiểm tra và lưu vào cơ sở dữ liệu Thông báo thêm thành công. 3.1 Nhấn vào đánh giá cần sửa Nhấn chỉnh sửa
3.2 Hệ thống hiển thị thông tin đánh giá.
3.3 Nhập đánh giá cần chỉnh sửa.
3.4 Hệ thống kiểm tra và lưu vào cơ sở dữ liệu.
4.1 Nhấn vào đánh giá cần xóa Nhấn xóa 4.2 Hệ thống yêu cầu xác nhận.
4.3 Nhấn xác nhận 4.4 Hệ thống xóa đánh giá trong cơ sở dữ liệu Xuất thông báo xóa thành công.
Hình 2.3.6 – 1 Biểu đồ hoạt động”đăng đánh giá”
2.3.6-2.Biểu đồ hoạt động”chỉnh sửa đánh giá”
2.3.6-3 Biểu đồ hoạt động”Xóa đánh giá”
Usecase quản lý giỏ hàng: Đặc tả luồng dữ liệu:
Use case Quản lý giỏ hàng
Mô tả Mô tả các bước thêm giỏ hàng, cập nhập giỏ hàng, xóa sản phẩm trong giỏ hàng Điều kiện trước
1.1 Người dùng chọn chức năng xem giỏ hàng.
1.2 Hệ thống hiển thị ra trang giỏ hàng.
2.1 Người dùng chọn chức năng thêm giỏ hàng ở mỗi sản phẩm muốn thêm
2.2 Hệ thống kiểm tra và lưu sản phẩm đó vào giỏ hàng kèm số lượng.
3.1 Người dùng chọn vào từng sản phẩm trong giỏ hàng và chọn nút xóa ở sản phẩm muốn xóa
3.2 Hệ thống kiểm tra và xóa sản phẩm đó trong giỏ hàng.
4.1 Người dùng chọn vào chức năng xóa giỏ4.2 Hệ thống yêu cầu xác nhận xóa giỏ hàng
4.3 Người dùng chọn “OK” để xóa Ngược lại chọn “Hủy” để kết thúc.
4.4 Hệ thống xóa tất cả sản phẩm trong giỏ hàng Đồng thời thông báo xóa tất cả sản phẩm trong giỏ hàng thành công.
5.1 Người dùng chọn vào sản phẩm trong giỏ hàng muốn cập nhập
5.2 Hệ thống cập nhật lại giỏ hàng.
Hình 2.3.7-1: Biểu đồ hoạt động “Thêm giỏ hàng”
Hình 2.3.7-2: Biểu đồ hoạt động “Xem giỏ hàng”
Hình 2.3.7-3: Biểu đồ hoạt động "Sửa giỏ hàng"
Hình 2.3.7-5: Biểu đồ tuần tự "Xem lại giỏ hàng"
Hình 2.3.7-6: Biểu đồ tuần tự " Thêm vào giỏ hàng"
Hình 2.3.7-7: Biểu đồ tuần tự " Sửa giỏ hàng"
Hình 2.3.7-8: Biểu đồ tuần tự " Xóa giỏ hàng"
2.3.8 Quản lý tài khoản cá nhân
Usecase quản lý tài khoản cá nhân: Đặc tả luồng dữ liệu:
Use case Quản lý tài khoản cá nhân
Tác nhân Khách hàng đã có tài khoản
Mô tả Quản lý tài khoản Điều kiện trước Đăng nhập vào hệ thống
1.1 User chọn quản lý tài khoản 1.2 Hệ thống hiển thị thông tin chi tiết của tài khoản.
2.1 User chọn chỉnh sửa thông tin cá nhân
2.2 Hệ thống hiển trị bảng chỉnh sửa thông tin cá nhân.
2.3 User điền thông tin cần chỉnh sửa sau đó nhấn click vào xác nhận đổi thông tin
2.4 Hệ thống kiểm tra thông tin người dùng nhập vào nếu thông tin hợp lệ thì
3.3 Người dùng nhập mật khẩu hiện tại, mật khẩu mới, sau đó nhấn click vào xác nhận đổi mật khẩu
3.4 Hệ thống kiểm tra tính hợp lệ và lưu vào cơ sở dữ liệu Thông báo thành công. Ngược lại thoát khỏi quá trình.
Biểu đồ hoạt động chỉnh sửa thông tin cá nhân
2.3.9.1 Usecase quản lý người dùng
2.3.9.2 Đặc tả luồng dữ liệu
Use case Quản lý Người dùng
Tác nhân Người quản trị
Mô tả Thêm, khóa người dùng. Điều kiện trước Đăng nhập vào hệ thống
1.1 Quản trị viên chọn chức năng quản lý
1.2 Hệ thống hiển thị ra danh sách người dùng Cùng các chức năng thêm, xem chi tiết người dùng, chỉnh sửa và khóa người dùng.
2.1 Quản trị viên chọn chức năng thêm người dùng.
2.2 Hệ thống hiển thị bảng nhập thông tin người dùng.
2.3 Quản trị viên nhập đầy đủ thông tin nhà cung cấp Sau đó chọn “Lưu” Nếu muốn hủy thì chọn “Hủy”.
2.4 Hệ thống kiểm tra thông tin vừa nhập Nếu thông tin hợp lệ, Hệ thống lưu thông tin vào cơ sở dữ liệu Đồng thời thông báo thành công Ngược lại thông báo thông tin không hợp lê. 3.1 Quản trị viên chọn vào người dùng muốn xem thông tin Nhấn xem thông tin.
3.2 Hệ thống hiển thị bảng thông tin chi tiết của người dùng.
4.1 Quản trị viên chọn vào người dùng muốn xóa Nhấn xóa.
4.2 Hệ thống yêu cầu xác nhận xóa
4.3 Quản trị viên nhấn “Khóa” để khóa người dùng Ngược lại chọn “hủy” để hủy xóa người dùng
4.4 Hệ thống khóa tài khoản người dùng trong cơ sở dữ liệu và làm mới lại danh sách nếu người dùng xác nhận khóa Ngược lại hệ thống cập nhật lại danh sách người dùng.
Hình 1.3.1: Biểu đồ hoạt động Khóa người dùng
Hình 1.3.2: Biểu đồ hoạt động Thêm người dùng
Hình 1.3.3: Biểu đồ hoạt động Chỉnh sửa thông tin người dùng
Hình 1.4.2: Biểu đồ tuần tự Xóa thông tin người dùng
2.3.10 Quản lý đơn đặt hàng
2.3.10.1 Usecase quản lý đơn đặt hàng
2.3.10.2 Đặc tả luồng dữ liệu
Use case Quản lý đơn đặt hàng
Mô tả Đơn hàng bị hủy, Đơn hàng xác nhận, đơn hàng đang giao Điều kiện trước Đăng nhập vào hệ thống
1 Admin chọn chức năng quản lý đơn đặt hàng.
1.1 Hệ thống hiển thị danh sách các đơn đặt hàng, thống kê đơn hàng theo từng tiêu chí
2.1 Admin chọn vào đơn hàng chờ xác nhận.
2.2 Hệ thống hiển thị các đơn hàng chờ xác nhận.
2.3 Admin cập nhật trạng thái đơn hàng.
2.4 Hệ thống cập nhật trạng thái mới của đơn hàng vào cơ sở dữ liệu và
3.1 Admin chọn vào đơn hàng đã xác nhận.
3.2 Hệ thống hiển thị danh sách các đơn hàng đã xác nhận.
3.3 Admin cập nhật trạng thái đơn hàng.
3.4 Hệ thống cập nhật trạng thái mới của đơn hàng vào cơ sở dữ liệu và thông báo cập nhật thành công ramàn hình.
4.1 Admin chọn vào đơn hàng đang giao
4.2 Hệ thống hiển thị danh sách các đơn hàng đang giao.
4.3 Admin cập nhật trạng thái đơn hàng.
4.4 Hệ thống cập nhật trạng thái mới của đơn hàng vào cơ sở dữ liệu và thông báo cập nhật thành công ra màn hình.
5.1 Quản trị click vào đơn hàng đã giao
5.2 Hệ thống hiển thị danh sách các đơn hàng đã giao.
5.3 Admin cập nhật trạng thái đơn hàng.
5.4 Hệ thống cập nhật trạng thái mới của đơn hàng vào cơ sở dữ liệu và thông báo cập nhật thành công ra màn hình.
6.1 Admin vào đơn hàng đã bị hủy 6.2 Hệ thống hiển thị danh sách các đơn hàng đã bị hủy 6.3 Admin cập nhật trạng thái đơn hàng.
6.4 Hệ thống cập nhật trạng thái mới của đơn hàng vào cơ sở dữ liệu và thông báo cập nhật thành công ra màn hình.
Biểu đồ hoạt động”Quản lý đơn hàng chờ xác nhận”
Biểu đồ hoạt động”Quản lý đơn hàng xác nhận”
Biểu đồ hoạt động “Quản lý các đơn hàng đang giao”
Biểu đồ hoạt động các đơn hàng đã hủy
Biểu đồ tuần tự “Quản lý đơn hàng đã xác nhận”
Biểu đồ tuần tự”Quản lý đơn hàng đã giao”
2.3.11.2 Đặc tả luồng dữ liệu
Use case Quản lý lịch sử mua hàng
Mô tả Xem lại các đơn hàng đã mua thành công Điều kiện trước Đăng nhập vào hệ thống
1.1 Khách hàng chọn chức năng quản lý lịch sử mua hàng
1.2 Hệ thống hiển thị danh sách đơn hàng 2.1 Khách hàng chọn chức năng xem chi tiết 2.2 Hệ thống kiểm tra nếu khách hàng đã mua hàng thì hệ thống sẽ hiển thị chi tiết sản phẩm Ngược lại thông báo chưa mua mặt hàng nào.
2.3.12.1 Usecase quản lý sản phẩm
2.3.12.2 Đặc tả luồng dữ liệu
Use case Quản lý sản phảm
Tác nhân Người quản trị
Mô tả Xem, Thêm, sửa, xóa sản phẩm Điều kiện trước Đăng nhập vào hệ thống
1.1 Quản trị viên chọn chức năng quản lý sản phẩm.
1.2 hệ thống hiển thị danh sách các sản phẩm và các chức năng quản lý sản phẩm.
2.1 Quản trị viên chọn chức năng thêm sản phẩm
2.2 Hệ thống hiển thị bảng nhập thông tin sản phẩm.
2.3 Quản trị viên nhập đầy đủ thông tin sản phẩm Sau đó chọn “Xác nhận” Nếu muốn hủy thêm sản phẩm thì chọn “cancel”.
2.4 Hệ thống kiểm tra mã sản phẩm vừa nhập Nếu sản phẩm hợp lệ, Hệ thống lưu thông tin vào cơ sở dữ liệu. Đồng thời thông báo thành công Ngược lại thông báo “sản phẩm không hợp lệ”.
3.1 Quản trị viên click vào sản phẩm muốn thay đổi thông tin Nhấn chỉnh sửa.
3.2 Hệ thống hiển thị bảng thông tin của sản phẩm.
3.3 Quản trị viên thay đổi thông tin muốn chỉnh sửa Sau đó nhấn xác nhận hoặc hủy chỉnh sửa.
3.4 Hệ thống lưu thông tin vào cơ sử dữ liệu, đồng thời thông báo chỉnh sửa thành công.
4.1 Quản trị viên click vào sản phẩm muốn xóa Nhấn xóa.
4.2 Hệ thống yêu cầu xác nhận xóa.
4.3 Quản trị viên nhấn xác nhận 4.4 Hệ thống xóa sản phẩm trong Cơ sở dữ liệu đồng thông thông báo lên màn hình xóa thành công Ngược lại hủy quá trình xóa và cập nhật lại các sản phẩm
Biểu đồ hoạt động thêm sản phẩm
Biểu đồ hoạt động chỉnh sửa sản phẩm
Biểu đồ hoạt động xóa sản phẩm
Biểu đồ tuần tự chỉnh sửa sản phẩm
2.3.13.1.Usecase quản lý danh mục
2.3.13.2.Đặc tả luồng dữ liệu
Use case Quản lý danh mục sản phẩm
Mô tả Thêm, chỉnh sửa và xem danh mục sản phẩm Điều kiện trước Đăng nhập vào hệ thống
1.1 Admin chọn chức năng quản lý danh mục sản phẩm
1.2 Hệ thống hiển thị ra danh mục sản phẩm Cùng các chức năng thêm, chỉnh sửa,xóa và xem danh mục sản phẩm.
2.1 Admin chọn chức năng thêm danh mục 2.2 Hệ thống hiển thị bảng nhập danh
2.3 Admin nhập đầy đủ thông tin danh mục sản phẩm Sau đó chọn “Lưu” Nếu muốn hủy thì chọn “Hủy”.
2.4 Hệ thống kiểm tra thông tin vừa nhập Nếu thông tin hợp lệ, Hệ thống lưu thông tin vào cơ sở dữ liệu Đồng thời thông báo thành công Ngược lại thông báo thông tin không hợp lê. 3.1 Admin chọn vào danh mục muốn chỉnh sửa thông tin Nhấn chỉnh sửa.
3.2 Hệ thống hiển thị bảng thông tin của danh mục.
3.3 Admin thay đổi thông tin muốn chỉnh sửa Sau đó nhấn “Lưu” hoặc “Hủy” chỉnh sửa.
3.4 Hệ thống kiểm tra thông tin vừa nhập Nếu thông tin hợp lệ, Hệ thống lưu thông tin vào cơ sở dữ liệu Đồng thời thông báo thành công Ngược lại thông báo thông tin không hợp lệ. 4.1 Admin chọn vào danh mục muốn xem 4.2 Hệ thống hiển thị ra thông tin danh mục.
5.1 Admin chọn chức năng xóa danh mục sản phẩm
5.2 Hệ thống hiển thị danh mục cần xóa
5.3 Admin chọn “Xóa” nếu muốn xóa hoặc chọn “Hủy”
5.4 Hệ thống lưu thông tin vào cơ sở dữ liệu.Đồng thời thông báo xóa thành công.Ngược lại thông báo chưa xóa.
Biểu đồ hoạt động“xem danh mục sản phẩm”
Biểu đồ hoạt động ” chỉnh sửa danh mục”
Biểu đồ hoạt động “Xóa danh mục”
Biểu đồ tuần tự “ thêm danh mục”
Biểu đồ tuần tự ” Xóa danh mục
2.3.14.1 Usecase quản lý khuyến mãi
2.3.14.2.Đặc tả luồng dữ liệu
Use case Quản lý khuyến mãi
Tác nhân Quản trị viên
Mô tả Xem khuyến mãi, đăng khuyến mãi, chỉnh sửa khuyến mãi và xóa khuyến mãi. Điều kiện trước Đăng nhập vào hệ thống
1.1 Quản lý khuyến mãi 1.2 Hệ thống hiển thị danh sách các bài viết và các chức năng quản lý.
2.1 Thêm khuyến mãi mới 2.2 Hệ thống hiển thị lên bảng thông tin yêu cầu nhập vào nội dung bài viết. 2.3 Nhập đầy đủ nội dung tin Nhấn
2.4 Hệ thống kiểm tra và lưu vào cơ sở dữ liệu Thông báo thêm thành công. 3.1 Nhấn vào khuyến mãi cần sửa.
3.2 Hệ thống hiển thị thông tin khuyến mãi.
3.3 Nhập khuyến mãi cần chỉnh sửa.
3.4 Hệ thống kiểm tra và lưu vào cơ sở dữ liệu.
4.1 Nhấn vào khuyến mãi cần xóa.
4.2 Hệ thống yêu cầu xác nhận.
4.3 Nhấn xác nhận 4.4 Hệ thống xóa tin trong cơ sở dữ liệu Xuất thông báo xóa thành công.
Biểu đồ hoạt động đăng khuyến mãi
Biểu đồ hoạt động chỉnh sửa khuyến mãi
Biểu đồ hoạt động xóa khuyến mãi
2.3.15.2.Đặc tả luồng dữ liệu
Use case Quản lý báo cáo thống kê
Tác nhân Người quản trị
Mô tả Xem các sản phẩm bán chạy, số lượng người truy cập và doanh thu. Điều kiện trước Đăng nhập vào hệ thống
1.1 Quản trị viên chọn chức năng xem các sản phẩm bán chạy
1.2 Hệ thống hiển thị các sản phẩm bán chạy có sắp xếp ra màn hình
2.1 Quản trị viên chọn chức năng xem số lượng người dùng truy cập vào trang web
2.2 Hệ thống hiển thị tổng số lượng người dùng truy cập vào hệ thống ra màn hình.
3.1 Quản trị viên chọn chức năng xem doanh thu
3.2 Hệ thống hiển thị tổng số doanh thu ra màn hình.
Biểu đồ hoạt động "Sản phẩm bán chạy"
Biểu đồ hoạt động “Doanh thu”
Hình 2.3.15.4-2:Biểu đồ tuần tự " Số lượng người truy cập"
Hình 2.3.15.4-3:Biểu đồ tuần tự "Doanh thu"
2.4 Thiết kế cơ sở dữ liệu
Tên trường Kiểu dữ liệu Ràng buộc Mô tả id Int Primary key Mã sản phẩm title varchar(200) Not null Tên sản phẩm description longtext Not null Mô tả sản phẩm price Decimal(18,0) Not null Giá sản phẩm category_id Int Not null Mã danh mục date_create timestamp Not null Thời gian tạo rating_count Bigint(20) Not null Đánh giá feadtured_img_id Int Not null Mã hình ảnh gallery_img json Not null Mã hình ảnh trưng bày
Tên trường Kiểu dữ liệu Ràng buộc Mô tả id Int Primary key Mã danh mục parent_id Int Not null Mã danh mục cha category_name varchar(50) Not null Tên danh mục category_slug varchar(50) Not null Đường dẫn danh mục category_count Int Not null Số sản phẩm của danh mục description varchar(200) null Mô tả featured_img_id int Not null Mã hình ảnh
Tên trường Kiểu dữ liệu Ràng buộc Mô tả id int Not null Mã người dùng user_name Int Primary key Tên đăng nhập first_name Nvarchar(100) Not null Tên người dùng last_name Nvarchar(255) Not null Họ người dùng email Bit Not null Email password Nvarchar(255) Not null Mật khẩu role_id Nvarchar(MAX) Not null Mã vai trò date_create Nvarchar(12) Not null Thời gian tạo
Tên trường Kiểu dữ liệu Ràng buộc Mô tả id Int Primary key Mã vai trò role_name varchar(50) Not null Tên vai trò role_excerpt varchar(200) Not null Mô tả
Tên trường Kiểu dữ liệu Ràng buộc Mô tả id Int Primary key Mã đơn hàng product_id json Not null Mã sản phẩm num_items_sold int Not null Số lượng sản phẩm total_sales double Not null Tổng giá tiền date_created timestamp Not null Thời gian khởi tạo customer_id Int Not null Mã khách hàng
Tên trường Kiểu dữ liệu Ràng buộc Mô tả id Int Primary key Mã chi tiết đơn hàng order_id Int Not null Mã đơn hàng product_id Int Not null Mã sản phẩm num_items_sold int Not null Số lượng sản phẩm total_sales double Not null Tổng giá trị
DEMO CHƯƠNG TRÌNH
Giao diện đăng nhập
Hình.1 : Giao diện đăng nhập Đăng nhập
STT Tên trường Kiểu Mục đích
1 Đăng nhập Button Người dùng bấm chọn nút đăng nhập sẽ đưa đến trang phù hợp nếu đúng tên đăng nhập và mật khẩu
Giao diện đăng ký tài khoản
Hình 2 : Giao diện đăng ký tài khoản Đăng ký tài khoản
STT Tên trường Kiểu Mục đích
1 Đăng ký Button Người dùng bấm chọn nút đăng ký sẽ hiển thị ra thông báo đăng ký thành công nếu thông tin nhập vào là hợp lệ Ngược lại sẽ thông báo đăng ký không thành công.
Giao diện xem chi tiết sản phẩm
Hình.3 : Giao diện xem chi tiết sản phẩm
Xem chi tiết sản phẩm
STT Tên trường Kiểu Mục đích
Button Sau khi người dùng nhập số lượng hàng. Ấn “Thêm vào giỏ hàng” hệ thống sẽ tự động thêm sản phẩm đó kèm vào số lượng vào trong giỏ hàng
Giao diện giỏ hàng
Hình 4 : Giao diện giỏ hàng
STT Tên trường Kiểu Mục đích
1 Đặt hàng Button Chuyển đến trang xem lại giỏ hàng và hoàn tất đặt hàng.
2 Sửa sản phẩm trong giỏ hàng
Button Sửa số lượng sản phẩm có trong giỏ hàng.
3 Xóa sản phẩm trong giỏ
Button Xóa sản phẩm trong giỏ hàng.
4 Mua tiếp Button Mua lại sản phẩm đó 1 lần nữa mà k cần tìm kiếm.
Giao diện đặt hàng
Hình 5: Giao diện đặt hàng
STT Tên trường Kiểu Mục đích
Giao diện người dùng
Hình 6: Giao diện người dùng
STT Tên trường Kiểu Mục đích
1 Danh mục Link Người dùng bấm vào từ lựa chọn sẽ đưa tới tranh danh sách các sản phẩm thuộc loại hàng tương ứng
2 Đăng xuất Link Người dùng bấm chọn chức năng này hệ thống sẽ thoát khỏi tài khoản đang đăng nhập.
4 Giỏ hàng Link Người dùng bấm chọn chức năng ngày hệ thống sẽ đưa đến trang giỏ hàng
Giao diện admin
STT Tên trường Kiểu Mục đích
1 Danh mục Link Người dùng bấm vào từng lựa chọn sẽ đưa tới trang chức năng đã lựa chọn.
Giao diện quản lý sản phẩm
Hình 8: Giao diện quản lý sản phẩm
Giao diện quản lý sản phẩm
STT Tên trường Kiểu Mục đích
Link Người dùng bấm vào lựa chọn này Hệ thống sẽ đưa tới trang chỉnh sửa sản phẩm đang chọn.
2 Xóa sản phẩm Link Người dùng bấm vào lựa chọn này Hệ thống sẽ hỏi người dùng có muốn xóa hay không? Nếu người dùng chọn OK hệ thống sẽ xóa sản phẩm đó và thông báo xóa thành công lên màn hình. Ngược lại người dùng chọn nút hủy.
Giao diện thêm sản phẩm
Hình 9: Giao diện thêm sản phẩm
Giao diện thêm sản phẩm
STT Tên trường Kiểu Mục đích
1 Hủy Link Người dùng khi ấn sẽ quay lại trang quản lý sản phẩm
2 Thêm sản phẩm Button Người dùng khi ấn vào nút “Thêm sản phẩm” Hệ thống sẽ lưu thông tin sản phẩm vào cơ sở dữ liệu.
Giao diện chỉnh sửa sản phẩm
Giao diện chỉnh sửa sản phẩm
STT Tên trường Kiểu Mục đích
1 Hủy Link Người dùng khi ấn sẽ quay lại trang quản lý sản phẩm
2 Cập nhật Button Người dùng khi ấn vào nút “Cập nhập”
Hệ thống sẽ cập nhật và lưu thông tin sản phẩm vào cơ sở dữ liệu.
Hình 10: Giao diện chỉnh sửa sản
Giao diện quản lý danh mục
Hình 11: Giao diện quản lý danh mục
Giao diện quản lý danh mục
STT Tên trường Kiểu Mục đích
Link Người dùng bấm vào lựa chọn này Hệ thống sẽ đưa tới trang chỉnh sửa danh mục đang chọn.
2 Xoá danh mục Link Người dùng bấm vào lựa chọn này Hệ thống sẽ hỏi người dùng có muốn xóa hay không? Nếu người dùng chọn OK hệ thống sẽ xóa danh mục đó và thông báo xóa thành công lên màn hình Ngược lại người dùng chọn nút hủy Hệ thống sẽ hủy quá trình xóa danh mục
Giao diện chỉnh sửa danh mục
Hình 12: Giao diện chỉnh sửa danh mục
Giao diện chỉnh sửa danh mục
STT Tên trường Kiểu Mục đích
1 Hủy Link Người dùng khi ấn sẽ quay lại trang quản lý danh mục
2 Cập nhật Button Người dùng khi ấn vào nút “Cập nhật”
Hệ thống sẽ cập nhật và lưu thông tin danh mục vào cơ sở dữ liệu.
Giao diện quản lý đơn đặt hàng
Hình 13: Giao diện quản lý đơn đặt hàng
Giao diện quản lý đơn đặt hàng
STT Tên trường Kiểu Mục đích
1 Xem Button Người dùng khi bấm vào nút này, hệ thống sẽ chuyển đang trang đơn hàng.
2 Duyệt đơn hàng Button Người dùng khí bấm vào nút này, hệ thống sẽ chuyển đến trang duyệt đơn hàng
Button Người dùng khí bấm vào nút này, hệ thống sẽ chuyển đến trang duyệt đơn hàng
14 Giao diện quản lý người dùng
Hình 14: Giao diện quản lý người dùng
Giao diện quản lí người dùng
STT Tên trường Kiểu Mục đích
1 Kích hoạt Button Tài khoản sau khi kích hoạt có thể sử dụng.
2 Vô hiệu hoá Button Tài khoản bị vô hiệu hoá sẽ không được sử dụng nữa
Giao diện thêm tài khoản admin
Hình 15: Giao diện thêm tài khoản admin
Giao diện tài khoản admin
STT Tên trường Kiểu Mục đích
1 Xác nhận Button Hệ thống sẽ kiểm tra thông tin và lưu vào cơ sở dữ liệu.
16 Giao diện xem thông tin cá nhân
Hình 16: Giao diện xem thông tin cá nhân
Giao diện xem thông tin cá nhân
STT Tên trường Kiểu Mục đích
Link Hệ thống sẽ chuyển hướng đến trang chỉnh sửa thônng tin cá nhân
2 Đổi mật khẩu Link Hệ thống sẽ chuyển hướng đến trang thay đổi mật khẩu cá nhân.
Giao diện quản lý đánh giá
Hình 17: Giao diện quản lý đánh giá
Giao diện xem thông tin cá nhân
STT Tên trường Kiểu Mục đích
1 Xem sản phẩm Link Hệ thống sẽ chuyển hướng đến trang xem sản phẩm có đánh giá này.
Giao diện xem thông tin khách hàng
Hình 18: Giao diện quản lý đánh giá
Giao diện xem thông tin khách hàng
STT Tên trường Kiểu Mục đích
1 Xem sản phẩm Link Hệ thống sẽ chuyển hướng đến trang xem hồ sơ khách hàng có trong list này.