TÍNH CẤP THIẾT CỦA ĐỀ TÀI
Ngành công nghệ thông tin đang phát triển mạnh mẽ và trở thành yếu tố không thể thiếu trong mọi lĩnh vực của đời sống, góp phần thúc đẩy công nghiệp hóa, hiện đại hóa đất nước Nhu cầu mua sắm trực tuyến ngày càng gia tăng, với sự nổi bật của các trang thương mại điện tử như Alibaba, Shopee và Tiki.
Nhận thấy tiềm năng của kinh doanh online, nhiều doanh nghiệp và cửa hàng đang tìm cách nâng cao sự hiện diện của sản phẩm trên mạng Họ mong muốn người tiêu dùng có thể dễ dàng truy cập, xem và đặt hàng thông qua các thiết bị kết nối internet Việc này không chỉ giúp khách hàng dễ dàng tham khảo sản phẩm mà còn hỗ trợ họ trong việc đưa ra quyết định mua sắm khi đến cửa hàng Ngoài ra, việc áp dụng công nghệ thông tin trong bán hàng giúp các chủ cửa hàng quản lý thông tin giao dịch, nhân viên, đơn vị giao hàng và thống kê doanh thu một cách hiệu quả từ bất kỳ đâu.
Với sự gia tăng nhu cầu mua sắm online, nhóm em đã chọn xây dựng một website thời trang cho cửa hàng của mình Mục tiêu là tìm hiểu và phát triển một nền tảng bán hàng đầu tiên, phục vụ cho việc khảo sát nhu cầu của khách hàng trong lĩnh vực mua sắm trực tuyến Qua đó, nhóm cũng muốn làm quen với các nghiệp vụ cơ bản của thương mại điện tử, giúp dễ dàng tham gia vào các dự án xây dựng và bảo trì website trong tương lai Đề tài này không chỉ nâng cao kỹ năng lập trình mà còn tạo cơ hội tiếp thu kiến thức thực tiễn trong ngành.
Trong bối cảnh thương mại điện tử đang phát triển mạnh mẽ, việc nghiên cứu các trình phát triển ứng dụng web và công nghệ mới là rất cần thiết Mục tiêu là xây dựng một trang web bán hàng không chỉ đáp ứng các chức năng cơ bản mà còn có khả năng mở rộng trong tương lai để phục vụ nhu cầu mua sắm online của thị trường.
PHÂN TÍCH CÁC ỨNG DỤNG CÓ LIÊN QUAN
Hầu hết các trang web bán hàng trực tuyến hiện nay đều tích hợp nhiều tính năng, từ cơ bản đến phức tạp Tuy nhiên, vẫn tồn tại một số ứng dụng web bán hàng trên thị trường có những nhược điểm nhất định.
- Chưa tích hợp chức năng thanh toán online hoặc còn ít lựa chọn thanh toán online qua các cổng thanh toán
- Chi phí giao hàng quá cao, chưa có hỗ trợ viên hỗ trợ khi khách hàng gặp khó khăn cần giải đáp
- Chưa có nhiều lựa chọn xác thực người dùng như đăng nhập qua Google, Gmail,…
- Tính năng một số ứng dụng vẫn còn hạn chế.
KẾT QUẢ DỰ KIẾN ĐẠT ĐƯỢC
Xây dựng một website bán hàng online cần đáp ứng các tính năng cơ bản như quản lý nhân viên, thông tin khách hàng, đơn mua, và sản phẩm Ngoài ra, cần có thống kê doanh thu và sản phẩm bán chạy Khách hàng có thể xem thông tin sản phẩm, tìm kiếm, đặt hàng, và xem lịch sử giao dịch Họ cũng có thể thay đổi thông tin cá nhân, mật khẩu, và khôi phục mật khẩu qua email.
Ý NGHĨA KHOA HỌC VÀ THỰC TIỄN
Đề tài tập trung vào việc nâng cao kỹ năng lập trình thông qua phát triển ứng dụng web, nghiên cứu thương mại điện tử và công nghệ mới, nhằm đáp ứng nhu cầu mua sắm online đang phát triển mạnh mẽ Mục tiêu là xây dựng một website bán hàng với các chức năng cơ bản cần thiết và khả năng mở rộng trong tương lai.
CƠ SỞ LÍ THUYẾT
ANGULAR
Angular là một framework JavaScript mạnh mẽ, phổ biến cho việc xây dựng các ứng dụng một trang (SPA) Nó sử dụng các thuộc tính mở rộng HTML theo quy tắc của Angular, giúp lập trình viên dễ dàng phát triển ứng dụng Là một framework mã nguồn mở hoàn toàn miễn phí, Angular được hàng ngàn lập trình viên trên toàn thế giới ưa chuộng Mặc dù framework này đã phát triển mạnh mẽ ở nước ngoài trong thời kỳ Web 2.0, nhưng tại Việt Nam, nó vẫn chưa được sử dụng rộng rãi.
1.1.2 Các đặc tính của Angular
Angular là một framework phát triển ứng dụng web phong phú dựa trên JavaScript, chủ yếu được sử dụng để xây dựng giao diện người dùng (frontend) Framework này sử dụng mô hình MVC mạnh mẽ và kết nối với các API để gọi dữ liệu hiệu quả.
AngularJS tự động điều chỉnh mã nguồn để tương thích với nhiều trình duyệt khác nhau, giúp bạn yên tâm về vấn đề này Là một mã nguồn mở và miễn phí, Angular được phát triển bởi hàng ngàn lập trình viên trên toàn cầu.
Khi làm việc với AngularJS, bạn thực chất đang sử dụng Ajax với cơ chế bind dữ liệu, hoạt động theo mô hình MVC và tận dụng dịch vụ để tương tác với dữ liệu từ server.
1.1.3 Các tính năng cốt lõi của Angular
- Data-binding: (liên kết dữ liệu) tự động đồng bộ dữ liệu giữa model và view
- Scope: (Phạm vi) Đây là những đối tượng kết nối giữa Controller và View
- Controller: Đây là những hàm javascript xử lý kết hợp với bộ điều khiển
- Service: Như tôi đề cập ở trên, AngularJS sử dụng các API được xây dựng từ các web service (PHP, ASP) để thao tác với DB
- Filters: Bộ lọc lọc ra các thành phẩn của một mảng và trả về mảng mới
- Directives: đánh dấu vào các yếu tố của DOM, nghĩa là sẽ tạo ra các thẻ HTML tùy chỉnh
- Templates: hiển thị thông tin từ controller, đây là một thành phần của views
- Routing: chuyển đổi giữa các action trong controller
MVC là mô hình phân chia ứng dụng thành ba thành phần riêng biệt: Model, View và Controller Trong Angular, mô hình này được điều chỉnh để tương tự như MVVM (Model View View Model), mang lại sự linh hoạt và hiệu quả trong việc phát triển ứng dụng.
Liên kết sâu cho phép mã hóa trạng thái của ứng dụng trong các URL, giúp công cụ tìm kiếm dễ dàng nhận diện và đánh dấu nội dung.
- Dependency Injection: Angular giúp các nhà phát triển tạo ứng dụng dễ dàng hơn để phát triển, hiểu và thử nghiệm dễ dàng
Hình 1.1.3.1 Các tính năng cốt lõi của Angular ( Trích: https://viblo.asia/p/tim-hieu-
20 va-huong-dan-lam-angularjs-Q7eEREb9MgNj)
1.1.4 Các thành phần trong Angular
Components trong Angular là khối mã kết hợp giữa template HTML và code TypeScript (hoặc JavaScript), hoạt động độc lập với nhau và hệ thống Chúng có thể dễ dàng cài đặt hoặc gỡ bỏ, và được coi như các điều khiển trên giao diện người dùng, bao gồm cả giao diện HTML và logic xử lý sự kiện Một component có thể lớn như một màn hình với nhiều điều khiển hoặc một nhóm màn hình, cho phép chứa và gọi nhiều component khác trong cấu trúc của nó.
Từ khóa @Component định nghĩa bộ khung HTML cho class CategoryListComponent, nơi chứa logic mã Trong định nghĩa bộ khung HTML, có một số thuộc tính quan trọng cần lưu ý.
A selector is a name assigned to reference a component in HTML code In the previous example, the keyword "hello-ng-world" was designated for this component To invoke this component in the parent HTML screen, it can be called using the HTML tag `` This method ensures that the child component is rendered within the parent component.
- Template : Là tự định nghĩa khung html cho component
- TemplateUrl : Là đường dẫn url tới file html bên ngoài để load file đó vào làm khung html cho component này
- Styles : Là viết style css luôn vào file component này Cách này chỉ dùng cho component đơn giản
- StyleUrls : Là đường dẫn url đến file style css độc lập cho component này
Angular hỗ trợ phương pháp Binding dữ liệu hai chiều, cho phép sự thay đổi trong input HTML ngay lập tức cập nhật giá trị trong biến JavaScript và ngược lại Để hiển thị một chuỗi trên màn hình HTML, bạn chỉ cần sử dụng hai dấu ngoặc nhọn.
Module là một khái niệm rộng nhất của Angular Một module có thể bao gồm chứa các components, directives, pipes, v.v
Module có thể được biên dịch dưới dạng ahead-of-time (AoT), cho phép mã thực thi được biên dịch sẵn và hiển thị trực tiếp trên trình duyệt mà không cần phải xử lý thêm Điều này có nghĩa là khi tải trang, các thành phần HTML và JavaScript sẽ được kết hợp ngay lập tức để hiển thị dữ liệu lên màn hình.
Module cũng có thể gọi module con và bắt tay được với các module khác Các thuộc tính của module được định nghĩa như sau:
- Imports: Định nghĩa sự phụ thuộc (Dependency) của module này, module phụ thuộc sẽ được load trước rồi module này mới load
Trong phần khai báo, chúng ta cần định nghĩa tất cả các thành phần sẽ được sử dụng trong module này Nếu chưa được định nghĩa, các thành phần trong module sẽ không thể tương tác với nhau do không tìm thấy nhau.
- Bootstrap: Mỗi ứng dụng Angular đều cần một module gốc, module này sẽ có một component gốc chứa layout gốc sẽ được render ra ở file index.html
1.1.4.4 Service Để tạo ra một service thì chúng ta cần import và mô tả một class với từ khóa
@injectable lấy từ @angular/core module
Để sử dụng chung một dịch vụ mà không cần phải khai báo nhiều lần, bạn có thể tiêm dịch vụ vào từng component Trong trường hợp này, hãy khai báo dịch vụ trong phần providers của component hoặc module.
1.1.5 Ưu điểm và nhược điểm của Angular
- Angular cho phép tạo ra các ứng dụng một cách đơn giản, code sạch
- Angular sử dụng data bind giống NET với tính năng liên kết với HTML nên giúp người dùng cảm thấy dễ chịu
- Angular có thể chạy trên hầu hết các trình duyệt điện thoại thông minh
Mặc dù angular có nhiều lợi thế ưu điểm nhưng nó cũng có mặt trái ngược lại:
- Không an toàn: Được phát triển từ javascript nên nó không an toàn, phía máy chủ phải thường xuyên xác nhận quyền để hệ thống chạy trơn tru
- Phụ thuộc: Nếu người dùng vô hiệu hóa javascript thì hệ thống sẽ không hoạt động được theo mong đợi.
SQL SERVER
SQL Server is a relational database management system that utilizes SQL commands to facilitate data exchange between the SQL Server installation and client machines.
Management System – RDBMS gồm có: databases, datase engine và các chương trình ứng dụng dùng để quản lý các bộ phận trong RDBMS và những dữ liệu khác
1.2.2 Các thành phần cơ bản
The fundamental components of SQL Server include Reporting Services, Database Engine, Integration Services, Notification Services, and Full Text Search Service Together, these elements create a comprehensive solution that simplifies data analysis and storage Here are the essential components of SQL Server:
Database Engine là một hệ thống có khả năng lưu trữ dữ liệu ở nhiều quy mô dưới dạng hỗ trợ và bảng Nó có tính năng tự điều chỉnh, chẳng hạn như trả lại tài nguyên cho hệ điều hành khi người dùng đăng xuất và sử dụng thêm tài nguyên của máy khi cần thiết.
Dịch vụ tích hợp là tập hợp các công cụ lập trình và đồ họa hỗ trợ sao chép, di chuyển và chuyển đổi dữ liệu Trong các công ty lớn, dữ liệu thường được lưu trữ tại nhiều vị trí khác nhau.
When working with databases like Oracle, SQL Server, DB2, and Microsoft Access, the need to transfer data between these servers often arises Additionally, formatting data before storing it in a database is essential Integration Services can effectively simplify these tasks, making data migration and formatting seamless.
- Analysis Services: Đây là một dịch vụ phân tích dữ liệu rất hay của Microsoft
Dữ liệu lưu trữ trong cơ sở dữ liệu sẽ vô nghĩa nếu không thể khai thác thông tin hữu ích từ đó Do đó, công cụ phân tích dữ liệu ra đời nhằm giúp bạn dễ dàng và hiệu quả hơn trong việc áp dụng kỹ thuật khai thác dữ liệu (data mining) và khái niệm hình khối nhiều chiều (multi-dimensional cubes).
Dịch vụ thông báo là nền tảng quan trọng cho việc phát triển và triển khai các ứng dụng gửi thông báo Nó cho phép gửi thông báo theo thời gian thực đến hàng ngàn người dùng đăng ký trên nhiều loại thiết bị khác nhau.
Dịch vụ Báo cáo là một công cụ mạnh mẽ cho việc tạo, quản lý và triển khai báo cáo, bao gồm cả máy chủ và máy khách Nó cũng đóng vai trò là nền tảng quan trọng cho việc phát triển và xây dựng các ứng dụng báo cáo.
Dịch vụ Tìm kiếm Toàn văn là một thành phần quan trọng trong việc truy vấn và lập chỉ mục dữ liệu văn bản không cấu trúc được lưu trữ trong các cơ sở dữ liệu SQL Server.
- Service Broker: là một môi trường lập trình cho việc tạo ra các ứng dụng trong việc nhảy qua các Instance.
ASP NET CORE
ASP.NET là nền tảng phát triển web cho phép tạo ra các trang web, ứng dụng và dịch vụ web, kết hợp các ngôn ngữ HTML, CSS và JavaScript Ra mắt lần đầu vào năm 2002, ASP.NET đã trải qua nhiều phiên bản nâng cấp để cải thiện hiệu suất và tính năng.
ASP.NET Core là một phiên bản mới của ASP.NET, được phát hành bởi
Microsoft phát triển ASP.NET Core, một framework mã nguồn mở trên GitHub, cho phép xây dựng các website linh hoạt và tương thích với nhiều trình duyệt khác nhau.
ASP.NET Core là phiên bản mới của ASP.NET 5, hỗ trợ chạy trên các hệ điều hành như Windows, Mac và Linux, bao gồm cả nền tảng MVC.
ASP.NET Core is designed to optimize the development framework for applications that run on-premises or are deployed in the cloud.
ASP.NET Core là một framework mã nguồn mở với cấu trúc theo hướng module, giúp tối ưu hóa tài nguyên và tiết kiệm chi phí trong quá trình phát triển Xu hướng này phản ánh sự chuyển mình của các ngôn ngữ lập trình hiện đại.
1.3.2 Các thành phần cơ bản
Các thành phần chính của nền tảng ASP.NET cơ bản gồm:
- Ngôn ngữ: ASP.NET sử dụng nhiều ngôn ngữ lập trình khác nhau như VB.NET và C#.
ASP.NET cung cấp một bộ thư viện chuẩn bao gồm các giao diện, lớp và kiểu giá trị, cho phép tái sử dụng trong quá trình phát triển và xây dựng các chức năng của hệ thống.
- Thời gian chạy ngôn ngữ chung (CLR): CLR - Common Language
Runtime được sử dụng để thực hiện các hoạt động mã Các hoạt động này sẽ thực hiện xử lý các ngoại lệ và thu gom rác.
DELOY
Netlify không chỉ hỗ trợ triển khai website tĩnh mà còn cả ứng dụng một trang (single-page application) và các website thương mại điện tử phức tạp Nền tảng này cho phép kết nối với các kho mã nguồn riêng tư trên Github, kết hợp với hệ thống CI, giúp quá trình triển khai mã trở nên dễ dàng hơn.
- Giới hạn: kích thước 100GB, băng thông 100GB/tháng, thời gian build code
- Thay đổi tên miền: có
- Nâng cấp: có, sau khi nâng cấp bạn có thể sử dụng khá nhiều tính năng nâng
25 cao, plugin hỗ trợ như quản lý form, bảo vệ mật khẩu,
Khi phát triển ứng dụng trong Visual Studio, bạn thường sử dụng IIS Express làm máy chủ web phát triển, thay vì Visual Studio Development Server (Cassini) Mặc dù IIS Express tương tự như IIS đầy đủ, nhưng cả hai đều không hoạt động hoàn toàn giống nhau Điều này có thể dẫn đến việc ứng dụng chạy tốt trong Visual Studio nhưng không hoạt động khi triển khai trên IIS Để đảm bảo ứng dụng của bạn hoạt động đáng tin cậy, bạn nên kiểm tra nó theo hai cách khác nhau.
Triển khai ứng dụng của bạn vào IIS trên máy tính phát triển bằng quy trình giống như khi triển khai vào môi trường sản xuất Mặc dù bạn có thể cấu hình Visual Studio để sử dụng IIS cho dự án web, nhưng điều này không kiểm tra được quá trình triển khai Phương pháp này giúp xác thực quy trình triển khai và đảm bảo ứng dụng hoạt động chính xác trong IIS.
Triển khai ứng dụng của bạn vào môi trường thử nghiệm tương tự như môi trường sản xuất là rất quan trọng Môi trường sản xuất được đề cập trong hướng dẫn này là Ứng dụng web trong Dịch vụ ứng dụng Azure Để có một môi trường thử nghiệm lý tưởng, bạn nên tạo một ứng dụng web bổ sung trong Dịch vụ Azure Mặc dù ứng dụng này sẽ được thiết lập giống như một ứng dụng web sản xuất, nhưng mục đích chính của nó chỉ là để thử nghiệm.
Cách 2 là phương pháp đáng tin cậy nhất để kiểm tra, và bạn không cần phải sử dụng cách 1 nếu áp dụng cách 2 Tuy nhiên, nếu bạn triển khai cho nhà cung cấp dịch vụ lưu trữ bên thứ ba, cách 2 có thể không khả thi hoặc tốn kém Do đó, loạt bài hướng dẫn này sẽ trình bày cả hai phương pháp để bạn có sự lựa chọn phù hợp.
KHẢO SÁT HIỆN TRẠNG VÀ XÁC ĐỊNH YÊU CẦU
KHẢO SÁT HIỆN TRẠNG
Hình 2.1.1.1 Hình ảnh trang shopee.vn Ưu điểm:
- Phân loại sản phẩm rõ ràng
- Giao diện tương thích với các thiết bị điện thoại
- Kết hợp nhiều hình thức thanh toán, đơn vị vận chuyển
- Hỗ trợ đa ngôn ngữ
- Có nhiều thông tin trên web
- Màu sắc dễ gây chói mắt nếu mở vào ban đêm
- Trang web hay bị lag và lỗi không hiển thị hình ảnh mẫu
2.1.2 The Cosmo Việt Nam : https://thecosmo.vn/
Hình 2.1.2.1 Hình ảnh trang https://thecosmo.vn/ Ưu điểm:
- Sản phẩm được phân chia theo danh mục
- Hỗ trợ nhiều hình thức thanh toán
- Giao diện gọn gang Nhược điểm:
- Box chat hiện lên quá nhiều khi vào trang chủ2.1.3 Yuno : https://juno.vn/
2.1.3 The Juno :https://juno.vn/
Hình 2.1.3.1 Hình ảnh trang https://juno.vn/
- Sản phẩm được phân chia theo danh mục – kết hợp theo mức tiền dễ chọn lọc
- Giao diện dễ nhìn, gọn gàng
- Nhiều hình thức thanh toán khác nhau
- Chưa hỗ trợ xác thực đăng nhập qua bên thứ ba
2.1.4 Marc Fashion : https://marc.com.vn/
Hình 2.1.4.1 Hình ảnh trang https://marc.com.vn/ Ưu điểm:
- Sản phẩm được phân chia theo danh mục - danh mục con giúp dễ lọc sản phẩm như ý muốn, có hỗ trợ tích vào các thuộc tính để chọn lọc
- Nhiều hình thức thanh toán khác nhau
- Giao diện gọn gang dễ nhìn
- Có thông báo nhưng món đồ hot và đang giảm giá
- Có xác thực đăng nhập qua bên thứ ba Nhược điểm:
XÁC ĐỊNH YÊU CẦU
Yêu cầu chức năng người mua:
- Xem, tìm kiếm sản phẩm
- Quản lí giỏ hàng ( Xem , thêm sản phẩm vào giỏ hàng, thay đổi số lượng, xóa sản phẩm trong giỏ hàng, Đặt mua sản phẩm)
- Quản lí đơn hàng (xem , hủy đơn hàng )
- Cập nhật thông tin cá nhân, mật khẩu
- Yêu cầu chức năng nhân viên
- Thay đổi thông tin cá nhân , mật khẩu
- Quản lí đơn hàng ( xem , xác nhận , hủy đơn hàng)
- Xác thực người dùng ( đăng nhập , quên mật khẩu)
- Yêu cầu chức năng quản trị
- Quản lí vai trò ( xem , sửa , xóa , thêm, tìm kiếm vai trò)
- Quản lí nhân viên ( xem , sửa , xóa , thêm, tìm kiếm, quản lí lương nhân viên) Quản lí khách hàng ( xem , xóa , tìm kiếm khách hàng)
- Quản lí loại sản phẩm ( xem , sửa , xóa , thêm, tìm kiếm loại sản phẩm)
- Quản lí sản phẩm ( xem , sửa , xóa , thêm, tìm kiếm sản phẩm)
- Quản lí đơn đặt (( xem , xác nhận, hủy , tìm kiếm đơn hàng)
- Quản lí voucher ( xem , sửa , xóa , thêm, tìm kiếm voucher)
- Thống kê chi phí , doanh thu , đơn hàng, khách hàng mới, sản phẩm
- Xác thực người dùng ( đăng nhập , quên mật khẩu)
- Cập nhật thông tin cá nhân , mật khẩu
- Chức năng quản lý giỏ hàng
2.2.1.1 Chức năng xem và tìm kiếm sản phẩm
Người dùng có thể xem thông tin sản phẩm ( tên , số lượng giá , ) có thể thêm sản phẩm vào giỏ hàng và có thể tìm sản phẩm theo ý muốn
2.2.1.1.2 Yêu cầu chức năng xem tìm kiếm sản phẩm
Bảng 2.2.1.1 Yêu cầu chức năng xem tìm kiếm sản phẩm
Xem thông tin của sản phẩm như giá , số lượng đang bán , hình ảnh sản phẩm , có thể thêm sản phẩm vào giỏ hàng của mình
Người dùng tìm kiếm chính xác sản phẩm phù hợp với nhu cầu từ tên sản phẩm theo loại sản phẩm
2.2.1.2 Chức năng xác thực người dùng
Để xác minh người dùng, bạn có thể sử dụng tên đăng nhập hoặc email cùng với mật khẩu Ngoài ra, hệ thống cũng hỗ trợ đăng ký tài khoản và khôi phục mật khẩu qua email khi bạn quên mật khẩu.
Bảng 2.2.1.2 Yêu cầu chức năng xác thực người dùng
Để đăng nhập, người dùng cần sử dụng tên tài khoản hoặc email cùng với mật khẩu Để tạo tài khoản mới, người dùng phải cung cấp đầy đủ thông tin như email, tên đăng nhập, tên đầy đủ và mật khẩu, trong đó tên đăng nhập và email phải là duy nhất Sau khi đăng ký thành công, người dùng cần xác thực email để hoàn tất quá trình.
Quên mật khẩu Người dùng cần cung cấp email , mật khẩu mới sẽ gởi về mail
2.2.1.3 Chức năng quản lý giỏ hàng
Người dùng có thể xem sản phẩm trong giỏ hàng , tăng giảm số lượng sản phẩm , thêm hoặc xóa sản phẩm và đặt mua sản phẩm
Bảng 2.2.1.3 Yêu cầu chức năng quản lý giỏ hàng
Xem giỏ hàng Người dùng có thể xem các sản phẩm đã thêm vào giỏ hàng
Tăng giảm số lượng sản phẩm
Người dùng có thể tăng giảm số lượng sản phẩm đã thêm vào giỏ hàng
Thêm sản phẩm vào giỏ hàng
Người dùng có thể thêm một sản mới vào giỏ hàng , nếu sản phẩm đã có trong giỏ hàng thì số lượng sản phẩm tăng lên 1
Thay đổi size sản phẩm
Người dùng có thể thay đổi size sản phẩm có trong giỏ hàng Xem giỏ hàng Người dùng có thể xem các sản phẩm đã thêm vào giỏ hàng
Khi người dùng đặt hàng, họ có thể xem thông tin đơn hàng, thay đổi hoặc thêm địa chỉ giao hàng, chọn phương thức thanh toán, và nhập mã voucher để được giảm giá nếu có, trước khi tiến hành thanh toán đơn hàng.
Bảng 2.2.1.4 Yêu cầu chức năng thanh toán
Xem thông tin đơn hàng Xem các thông tin của đơn hàng như địa chỉ giao , phí vận chuyển , phương thức thanh toán , tổng tiền đơn hàng
Người dùng có thể thay đổi địa chỉ giao hàng bằng cách thêm địa chỉ mới nếu danh sách hiện tại trống Họ cũng có khả năng chỉnh sửa hoặc xóa địa chỉ đã lưu và thay đổi địa chỉ mặc định khi giao hàng Ngoài ra, người dùng cần chọn phương thức thanh toán phù hợp cho đơn hàng của mình.
Có thể chọn một phương thức thanh toán khác như vnpay , paypal, momo , mặc định là “thanh toán khi nhận hàng”
Thêm voucher Người dùng có thể nhập mã voucher để được giảm giá phí tiền hàng hay phí ship
Khi người dùng thanh toán đơn hàng, nếu chọn phương thức "thanh toán khi nhận hàng", đơn hàng sẽ được tạo ngay lập tức Đối với các phương thức thanh toán khác, người dùng cần cung cấp thông tin cần thiết, chẳng hạn như nhập email và mật khẩu khi sử dụng PayPal.
2.2.1.5 Chức năng quản lí vai trò của người quản trị
Người quản trị thêm ,xem , xóa , sửa, tìm kiếm thông tin vai trò của cửa hàng
Bảng 2.2.1.5 Yêu cầu chức năng quản lí vai trò
Xem vai trò Người quản trị xem thông tin vai trò ( tên , ngày tạo )
Thêm vai trò Người quản trị thêm một vai trò mới , người dùng cần cung cấp tên vai trò để tạo
Xóa vai trò Người quản trị xóa vai trò nào đó , vai trò chỉ ẩn đi , không xóa hoàn toàn ( xóa mềm) Sửa thông tin vai trò
Người quản trị chỉnh sửa tên vai trò
2.2.1.6 Chức năng quản lí nhân viên của người quản trị
Người quản trị thêm ,xem , xóa , sửa thông tin, quản lí lương , tìm kiếm nhân viên của cửa hàng
Bảng 2.2.1.6 Yêu cầu chức năng quản lí nhân viên của người quản trị
Xem thông tin nhân viên
Người quản trị xem thông tin nhân viên ( ảnh đại diện , tên , email )
Khi thêm một nhân viên mới, người quản trị cần cung cấp các thông tin quan trọng như email đã được xác thực, tên nhân viên, tên đăng nhập (ít nhất 8 ký tự), giới tính, mức lương (phải lớn hơn 0), số điện thoại đã được xác thực, mật khẩu (ít nhất 8 ký tự, bao gồm chữ hoa, chữ thường và số) và xác thực mật khẩu.
Xóa nhân viên Người quản trị xóa nhân viên nào đó , nhân viên chỉ ẩn đi , không xóa hoàn toàn ( xóa mềm)
Sửa thông tin nhân viên
Người quản trị có quyền chỉnh sửa tên nhân viên và cập nhật các thông tin như email, tên đăng nhập, giới tính, lương và số điện thoại Tất cả thông tin chỉnh sửa cần được xác thực giống như khi nhân viên đăng ký ban đầu.
Quản lý lương bao gồm việc theo dõi số ngày làm việc trong tháng, xác định lương hiện tại phải trả cho tháng này, và tính toán lương cho ngày hôm nay cũng như tổng lương của tháng.
Người dùng cung cấp tên hoặc email nhân viên cần tìm
2.2.1.7 Chức năng quản lí khách hàng
Người quản trị xem , xóa , sửa thông tin, tìm kiếm khách hàng của cửa hàng
Bảng 2.2.1.7 Yêu cầu chức năng quản lí khách hàng
Xem thông tin khách hàng
Người quản trị xem thông tin khách hàng ( ảnh đại diện , tên ,tên đăng nhập , email, số điện thoại, ngày đăng kí tài khoản, giới tính )
Người quản trị xóa khách hàng nào đó , khách hàng chỉ ẩn đi , không xóa hoàn toàn ( xóa mềm)
Sửa thông tin khách hàng
Người quản trị có trách nhiệm chỉnh sửa thông tin khách hàng, bao gồm email, tên đăng nhập, giới tính và số điện thoại Tất cả thông tin chỉnh sửa cần phải được xác thực giống như khi khách hàng đăng ký tài khoản.
Người quản trị cung cấp tên hoặc email khách hàng cần tìm
2.2.1.8 Chức năng quản lí đơn hàng
Người dùng có thể xem thông tin đơn hàng , hủy đơn hàng đang chờ xác nhận
Bảng 2.2.1.8 Yêu cầu chức năng quản lí đơn hàng
Xem thông tin đơn hàng
Sau khi hoàn tất thanh toán, đơn hàng sẽ được tạo và người dùng có thể theo dõi trạng thái của đơn hàng, bao gồm các thông tin như sản phẩm trong đơn hàng, phí giao hàng, phương thức thanh toán và tổng số tiền hóa đơn Trạng thái đơn hàng có thể là chờ xác nhận, đang giao, đã giao hoặc đã hủy.
Hủy đơn hàng Người dùng có thể hủy các đơn hàng đang chờ xác nhận
2.2.1.9 Chức năng quản lí loại sản phẩm
Người quản trị xem , thêm , xóa , sửa , tìm kiếm loại sản phẩm
Bảng 2.2.1.9 Yêu cầu chức năng quản lí loại sản phẩm
Xem thông tin loại sản phẩm Người quản trị xem thông tin loại sản phẩm ( ảnh , tên , mô tả , ngày tạo )
Người quản trị có thể thêm một loại sản phẩm mới bằng cách cung cấp thông tin cần thiết, bao gồm tên loại sản phẩm, mô tả chi tiết và hình ảnh minh họa cho loại sản phẩm đó.
Xóa loại sản phẩm Người quản trị xóa loại sản phẩm nào đó , loại sản phẩm chỉ ẩn đi , không xóa hoàn toàn ( xóa mềm)
Sửa thông tin loai sản phẩm người quản trị chỉnh sửa thông tin như tên nhân viên , mô tả và ảnh loại sản phẩm
Tìm kiếm loại sản phẩm
Người quản trị cung cấp tên loại sản phẩm cần tìm
2.2.1.10 Chức năng quản lí sản phẩm
Người quản trị xem , thêm , xóa , sửa , tìm kiếm sản phẩm
2.2.1.10.2 Yêu cầu chức năng quản lí sản phẩm
Bảng 2.2.1.10 Yêu cầu chức năng quản lí sản phẩm
Xem thông tin sản phẩm
Người quản trị xem thông tin sản phẩm ( ảnh mặc định , tên , mô tả , ngày tạo , giá nhập , giá bán , số lượng còn lại , phần trăm giảm giá )
Người quản trị cần thêm một sản phẩm mới bằng cách cung cấp các thông tin cần thiết như tên sản phẩm, loại sản phẩm, số lượng nhập (phải lớn hơn 0), giá nhập, và giá bán (giá bán phải lớn hơn giá nhập).
0), phần trăm giảm giá ( lơn hơn 0 và nhỏ hơn 100), mô tả và ảnh sản phẩm
Xóa sản phẩm Người quản trị xóa sản phẩm nào đó , sản phẩm chỉ ẩn đi , không xóa hoàn toàn ( xóa mềm)
Người quản trị có thể sửa đổi thông tin sản phẩm bao gồm tên sản phẩm, loại sản phẩm, số lượng nhập (phải lớn hơn 0), giá bán (giá bán phải lớn hơn giá nhập và lớn hơn 0), phần trăm giảm giá (phải lớn hơn 0 và nhỏ hơn 100), mô tả và ảnh sản phẩm Ngoài ra, hệ thống cũng hỗ trợ chức năng tìm kiếm sản phẩm để dễ dàng quản lý và truy cập thông tin.
Người quản trị cung cấp tên sản phẩm cần tìm
Thêm hình ảnh sản phẩm
Thêm nhiều ảnh cho sản phẩm
2.2.1.11 Chức năng quản lí đơn đặt
Người quản trị xem , xác nhận đơn hàng , xác nhận đã giao , hủy đơn hàng
2.2.1.11.2 Yêu cầu chức năng quản lí đơn đặt
Bảng 2.2.1.11 Yêu cầu chức năng quản lí đơn đặt
Xem thông tin đơn hàng
Người quản trị có thể theo dõi trạng thái đơn hàng bao gồm các thông tin như mã đơn hàng, ngày đặt hàng, dự kiến giao hàng, địa chỉ giao nhận, thông tin người nhận, phương thức thanh toán, danh sách sản phẩm, phí vận chuyển, voucher áp dụng và tổng giá trị đơn hàng.
Người quản trị xác nhận đơn hàng , nếu đơn hàng ở trạng thái chờ xác nhận thì sang đã giao , đã giao sang đã nhận
Hủy đơn hàng Người quản trị hủy đơn hàng nào đó , đơn hàng chuyển sang trạng thái đã hủy
2.2.1.12 Chức năng quản lí voucher
Người quản trị xem , thêm , xóa , sửa , tìm kiếm voucher
2.2.1.12.2 Yêu cầu chức năng quản lí voucher
Bảng 2.2.1.12 Yêu cầu chức năng quản lí voucher
Người quản trị có thể xem thông tin chi tiết về voucher, bao gồm mã voucher, hình ảnh, tên voucher, phần trăm giảm giá trên đơn hàng hoặc phí vận chuyển, số lượng đã nhập, số lượng còn lại, ngày tạo và ngày hết hạn của voucher.
MÔ HÌNH HÓA YÊU CẦU
Hình 2.3.1.1 Usecase cho khách hàng
Hình 2.3.1.2 Usecase cho quản lý 2.3.2 Đặc tả usecase
2.3.2.1 Mô hình hóa yêu cầu cho website người dùng
Bảng 2.3.2.1 Usecase đăng ký tài khoản người dùng
- Mô tả Đăng ký tài khoản mới để có thể sử dụng được các chức năng của khách hàng
Tác nhân kích hoạt Khách vãng lai
Các bước thực hiện 1 Chọn chức năng đăng ký từ trang chủ
2 Nhập email (đúng định dạng, không được trùng trong hệ
3 Nhập tên tài khoản (không được trùng trong hệ thống)
7 Nhập mật khẩu (tối thiểu 8 ký tự , bao gồm chữ hoa chữ thường và số)
8 Nhập xác nhận mật khẩu
9 Nhấn đăng ký tài khoản
Bảng 2.3.2.2 Usecase đăng nhập tài khoản người dùng
Mô tả Đăng nhập để xác thực người dùng và có thể sử dụng được các chức năng của khách hàng
Tác nhân kích hoạt Khách hàng
Tiền điều kiện Đã có tài khoản khách hàng trên hệ thống và email tài khoản đã được xác thực
Các bước thực hiện 1 Chọn chức năng đăng nhập từ trang chủ
2 Nhập tên tài khoản hoặc email
Bảng 2.3.2.3 Usecase đăng xuất tài khoản
Usecase “Cập nhật thông tin ”
Mô tả - Cho phép người dùng đăng xuất tài khoản
Tác nhân kích hoạt Khách hàng
Tiền điều kiện Đã có tài khoản người quản trị hoặc nhân viên trên hệ thống Các bước thực hiện 1 Chọn vào tên tài khoản
Bảng 2.3.2.4 Usecase quên mật khẩu người dùng
Mô tả Khôi phục mật khẩu cho người dùng trong trường hợp quên mật khẩu, gửi mật khẩu qua email
Tác nhân kích hoạt Khách hàng
Tiền điều kiện Đã có tài khoản khách hàng trên hệ thống
Các bước thực hiện 1 Chọn chức năng quên mật khẩu ở trang đăng nhập
3 Nhấn xác nhận ( mật khẩu sẽ được gửi đến email đã đăng ký)
4 Vào email mật khẩu mới sẽ được gởi đến
5 Chuyển đến trang đăng nhập
Bảng 2.3.2.5 Usecase cập nhật thông tin
Usecase “Cập nhật thông tin ”
Mô tả Cho phép người dùng thay đổi thông tin cá nhân của mình
Tác nhân kích hoạt Khách hàng
Tiền điều kiện Đã có tài khoản khách hàng trên hệ thống
Các bước thực hiện 1 Click vào tên đăng nhập , chọn quản lí tài khoản
2 Nhập họ tên cần đổi
3 Nhập số điện thoại cần đổi
4.Chọn giới tính cần đổi
5.Chọn thay đổi ảnh đại diện nếu cần , chọn ảnh và nhấn thay đôỉ
Bảng 2.3.2.6 Usecase đổi mật khẩu người dùng
Mô tả Cho phép người dùng thay đổi mật khẩu tài khoản đăng nhập
Tác nhân kích hoạt Khách hàng
Tiền điều kiện Đã có tài khoản khách hàng trên hệ thống
Các bước thực hiện 1.Click vào quản lí tài khoản , chọn thay đổi mật khẩu
4 Nhập mật khẩu mới (tối thiểu 8 ký tự, bao gồm chữ thường chữ hoa và số)
5 Nhập xác nhận mật khẩu
Mô tả Tiến hành đặt mua sản phẩm
- Sản phẩm được thêm vào giỏ hàng trước khi mua
- Có thể thanh toán paypal, vnpay, môm hoặc thanh toán khi nhận hàng
Tác nhân kích hoạt Khách hàng
Tiền điều kiện Đã có tài khoản khách hàng trên hệ thống
Các bước thực hiện 1 Chọn thêm vào giỏ hàng ở trang sản phẩm hoặc vào chi tiết sản phẩm để thêm
3 Nhấn mua (có thể mua 1 hoặc nhiều sản phẩm trong giỏ hàng)
4 Quản lí địa chỉ ( có thể thêm , xóa, chỉnh sửa , chọn địa chỉ giao hàng
4.1 Chọn địa chỉ : chọn thay đổi , chọn một địa chỉ trong danh sách địa chỉ , chọn thay đổi địa chỉ
4.2 Thêm địa chỉ 4.2.1 nếu danh sách địa chỉ trống chọn thêm địa chỉ, chọn tỉnh(thành phố) , quận (huyện ), phường (xã), nhập số nhà tên đường
4.2.2 Ngược lại, chọn thay đổi địa chỉ ,chọn thêm địa chỉ , chọn tỉnh(thành phố) , quận (huyện ), phường (xã), nhập số nhà tên đường
4.3 Chỉnh sửa địa chỉ : chọn tỉnh(thành phố) , quận (huyện ), phường (xã), nhập số nhà tên đường muốn thay đổi
4.4 Xóa địa chỉ : chọn thay đổi , chọn một địa chỉ trong danh sách địa chỉ , chọn xóa địa chỉ
5 Nhập lời nhắn cho shop
6 Thay đổi phương thức thanh toán : chọn thay đổi , chọn một phương thức thanh toán (vnpay , paypal, momo) chọn thay đổi phương thức thanh toán
7 Nhập voucher (nếu có ) nhấn áp dụng
8 Nhấn thanh toán, dialog hiện lên và nhấn mua
Bảng 2.3.2.8 Usecase quản lí giỏ hàng
Usecase “Quản lí giỏ hàng”
Mô tả Cho phép người dùng quản lí các đơn hàng đã đặt hàng
Tác nhân kích hoạt Khách hàng
Tiền điều kiện Đã có tài khoản khách hàng trên hệ thống
Các bước thực hiện 1.Click vào icon giỏ hàng
2 Chỉnh sửa số lượng sản phẩm, click “+” nếu muốn tăng số lượng sản phẩm , click “-“ nếu muốn giảm số lượng sản phẩm
3 Xóa một hoặc nhiều sản phẩm trong giỏ hàng : chọn xóa để xóa một sản phẩm , chọn xóa tất cả để xóa toàn bộ sản phẩm trong giỏ hàng
Bảng 2.3.2.9 Usecase quản lí đơn hàng người dùng
Usecase “Quản lí đơn hàng”
Mô tả Cho phép người dùng quản lí đơn hàng: xem đơn hàng và hủy đơn hàng
Tác nhân kích hoạt Khách hàng
Tiền điều kiện Đã có tài khoản khách hàng trên hệ thống
Các bước thực hiện 1.Click vào quản lí tài khoản , chọn đơn mua
2 Chọn trang thái đơn hàng để xem đơn hàng (có 4 trạng thái : chờ xác nhận , đang giao , đã giao , đã hủy)
4 Hủy đơn hàng , chọn trạng thái chờ xác nhận , nhấn hủy đơn hàng để hủy đơn hàng
Bảng 2.3.2.10 Usecase quản lí thông báo người dùng
Mô tả Cho phép người dùng xem thông báo đơn hàng
Tác nhân kích hoạt Khách hàng
Tiền điều kiện Đã có tài khoản khách hàng trên hệ thống
Các bước thực hiện 1.Click vào quản lí tài khoản , chọn thông báo
2.3.2.2 Mô hình hóa yêu cầu cho website quản trị
Bảng 2.3.2.11 Usecase quản lý sản phẩm
Usecase “Quản lý sản phẩm”
Mô tả - Xem sản phẩm
- Sửa thông tin sản phẩm
- Tìm kiếm sản phẩm Tác nhân kích hoạt Người quản lý
Tiền điều kiện Đăng nhập với tài khoản người quản lý
Để thêm sản phẩm, trước tiên chọn chức năng "thêm sản phẩm" Sau đó, nhập tên sản phẩm, loại sản phẩm, số lượng nhập (phải lớn hơn 0), giá nhập và giá bán (giá bán phải lớn hơn giá nhập và lớn hơn 0) Tiếp theo, nhập phần trăm giảm giá (phải lớn hơn 0 và nhỏ hơn 100), cùng với mô tả và ảnh sản phẩm Cuối cùng, nhấn để hoàn tất quá trình.
“Thêm” để tiến hành thêm vào CSDL
2 Sửa thông tin sản phẩm: Chọn icon chỉnh sửa, thay đổi thông tin sản phẩm theo mong muốn như: tên sản phẩm, tên loại sản phẩm, số lượng nhập (lơn hơn 0) , giá bán ( giá bán > giá nhập , và giá lơn hơn 0), phần trăm giảm giá ( lơn hơn 0 và nhỏ hơn
100), mô tả và ảnh sản phẩm
3 Xóa sản phẩm: Chọn icon xóa ở sản phẩm muốn xóa trong danh sách, dialog hiện lên để hỏi có chắc muốn xóa, chọn xóa sản phẩm để tiến hành xóa
4 Tìm kiếm sản phẩm: Nhập vào ô tìm kiếm tên sản phẩm, nhấn tìm để tiến hành tìm
5.Xem thông tin sản phẩm : chọn icon xem thông tin để xem thông tin sản phẩm
Bảng 2.3.2.12 Usecase quản lý nhân viên
Usecase “Quản lý nhân viên”
Mô tả - Thêm nhân viên
- Sửa thông tin nhân viên
-Quản lí lương nhân viên
Tác nhân kích hoạt Người quản lý
Tiền điều kiện Đăng nhập với tài khoản người quản lý
Các bước thực hiện 1 Thêm nhân viên: Chọn chức năng thêm nhân viên nhập email
Để đăng ký tài khoản, người dùng cần xác thực email và cung cấp thông tin như tên nhân viên, tên đăng nhập (tối thiểu 8 ký tự), giới tính, lương nhân viên (phải lớn hơn 0), số điện thoại (cũng cần được xác thực), mật khẩu và xác thực mật khẩu (mật khẩu yêu cầu tối thiểu 8 ký tự và bao gồm cả chữ hoa và chữ thường).
2 Sửa thông tin nhân viên: Chọn chức năng icon chỉnh sửa ở nhân viên cần chỉnh thông tin trong danh sách, thay đổi thông tin nhân viên theo mong muốn như: email , tên đăng nhập , giới tính , lương và số điện thoại Thông tin chỉnh sửa phải được xác thực giống khi thêm nhân viên Nhấn chỉnh sửa
3 Xóa nhân viên: Chọn icon xóa ở nhân viên muốn xóa trong danh sách, dialog hiện lên để hỏi có chắc muốn xóa, chọn xóa để tiến hành xóa
4 Tìm kiếm nhân viên: Nhập vào ô tìm kiếm tên nhân viên/ email, nhấn tìm để tiến hành tìm
5.Quản lí lương : chọn icon quản lí lương , chọn tính lương cho ngày hôm nay hoặc tháng này để tính lương nhân viên
Bảng 2.3.2.13 Usecase quản lý khách hàng
Usecase “Quản lý khách hàng”
Mô tả - Tìm kiếm khách hàng
-Chỉnh sửa thông tin khách hàng
-Xem thông tin khách hàng Tác nhân kích hoạt Người quản lý
Tiền điều kiện Đăng nhập với tài khoản người quản lý
Các bước thực hiện 1 Tìm kiếm khách hàng:Nhập vào ô tìm kiếm tên hoặc email khách hàng, nhấn tìm để tiến hành tìm
2 Chỉnh sửa thông tin khách hàng: Chọn icon chỉnh sửa ở khách hàng cần chỉnh thông tin trong danh sách, thay đổi thông tin khách hàng theo mong muốn như: email , tên đăng nhập , giới tính và số điện thoại Nhấn chỉnh sửa
3 Xóa khách hàng: Chọn icon xóa ở nhân viên muốn xóa trong danh sách, dialog hiện lên để hỏi có chắc muốn xóa, chọn xóa khách hàng để tiến hành khóa
4 Xem thông tin khách hàng: Chọn icon xem thông tin để xem thông tin khách hàng
Bảng 2.3.2.14 Usecase thống kê báo cáo
Usecase “Thống kê doanh thu”
Mô tả - Thống kê doanh thu
- Thống kê top sản phẩm
- Thống kê khách hàng mới
Tác nhân kích hoạt Người quản lý
Tiền điều kiện Đăng nhập với tài khoản người quản lý
Để theo dõi hiệu quả kinh doanh, bạn cần thực hiện các bước sau: chọn thống kê doanh thu và chi phí đơn hàng để xem thông tin chi tiết về doanh thu, chi phí, số lượng đơn hàng đã giao và đã hủy Thống kê này sẽ hiển thị số đơn hàng theo từng trạng thái (chờ xác nhận, đang giao, đã giao, đã hủy) theo tháng trong 12 tháng gần nhất dưới dạng biểu đồ.
Chọn thống kê chung để theo dõi số lượng khách hàng mới từng tháng trong 12 tháng gần nhất qua biểu đồ cột, đồng thời phân tích số sản phẩm theo loại và số sản phẩm đã mua theo loại thông qua biểu đồ tròn.
Bảng 2.3.2.15 Usecase quản lý đơn hàng
Usecase “Quản lý đơn hàng”
- Mô tả: - Xác nhận đơn hàng
-Xem thông tin đơn hàng
Tác nhân kích hoạt Người quản lý và nhân viên
Tiền điều kiện Đăng nhập với tài khoản người quản lý
Để xác nhận đơn hàng, truy cập vào chức năng quản lý đơn hàng và chọn mục chờ xác nhận hoặc đang giao Tại đây, danh sách các đơn hàng sẽ được hiển thị Nhấn vào biểu tượng xác nhận bên cạnh đơn hàng mà bạn muốn xác nhận Sau khi xác nhận, trạng thái của đơn hàng sẽ chuyển từ chờ xác nhận sang đang giao, hoặc nếu đơn hàng đã đang giao thì sẽ chuyển sang đã giao.
2 Hủy đơn hàng Chọn chức năng quản lý đơn hàng, chọn chờ xác nhận hoặc đang giao, danh sách các đơn hàng được hiển thị Chọn icon hủy ở đơn hàng muốn hủy Dialog hiện lên chọn xác nhận , đơn hàng chuyển sang trang thái đã hủy
3.Xem thông tin đơn hàng , chọn icon xem thông tin ở đơn hàng muốn xem để xem thông tin đơn hàng
Bảng 2.3.2.16 Usecase quản lý loại sản phẩm
Usecase “Quản lý loại sản phẩm”
Mô tả - Xem loại sản phẩm
- Sửa thông tin loại sản phẩm
Tác nhân kích hoạt Người quản lý
Tiền điều kiện Đăng nhập với tài khoản người quản lý
Các bước thực hiện 1 Thêm loại sản phẩm: Chọn chức năng thêm loại sản phẩm, nhập tên loại sản phẩm , mô tả và ảnh loại sản phẩm Nhấn
“Thêm” để tiến hành thêm
2 Sửa thông tin loại sản phẩm: Chọn icon chỉnh sửa, thay đổi thông tin loại sản phẩm theo mong muốn như: tên loại sản phẩm , mô tả và ảnh loại sản phẩm Nhấn “Chỉnh sửa”
3 Xóa loại sản phẩm: Chọn icon xóa ở loại sản phẩm muốn xóa trong danh sách, dialog hiện lên để hỏi có chắc muốn xóa, chọn xóa loại sản phẩm để tiến hành xóa
4 Tìm kiếm sản phẩm: Nhập vào ô tìm kiếm tên loại sản phẩm, nhấn tìm để tiến hành tìm
5.Xem thông tin loại sản phẩm : chọn icon xem thông tin để xem thông tin loại sản phẩm
Bảng 2.3.2.17 Usecase quản lý voucher
Tác nhân kích hoạt Người quản lý
Tiền điều kiện Đăng nhập với tài khoản người quản lý
Để thêm voucher, đầu tiên bạn cần chọn chức năng "Thêm voucher" Sau đó, nhập tên loại voucher, số lượng sản phẩm áp dụng, phần trăm giảm giá theo đơn giá hoặc phí vận chuyển, và ngày hết hạn Cuối cùng, nhấn “Thêm” để hoàn tất quá trình.
2 Sửa voucher: Chọn icon chỉnh sửa, thay đổi thông tin voucher theo mong muốn như phần trăm giảm giá theo đơn hàng hoặc phí vận chuyển và ngày hết hạn Nhấn “Chỉnh sửa”
3 Xóa voucher: Chọn icon xóa ở voucher muốn xóa trong danh sách, dialog hiện lên để hỏi có chắc muốn xóa, chọn voucher để tiến hành xóa
4 Tìm kiếm voucher: Nhập vào ô tìm kiếm mã voucher, nhấn tìm để tiến hành tìm
5.Xem thông tin voucher : chọn icon xem thông tin để xem thông tin voucher
Bảng 2.3.2.18 Usecase quản lý vai trò
Usecase “Quản lý vai trò”
Mô tả - Thêm vai trò
Tác nhân kích hoạt Người quản lý
Tiền điều kiện Đăng nhập với tài khoản người quản lý
Các bước thực hiện 1 Thêm vai trò: Chọn chức năng thêm vai trò,nhập tên vai trò
Nhấn “Thêm” để tiến hành thêm
2 Sửa vai trò: Chọn icon chỉnh sửa , thay đổi tên vai trò mà bạn muốn chỉnh sửa Nhấn “Chỉnh sửa”
3 Xóa vai trò: Chọn icon xóa ở vai trò muốn xóa trong danh sách, dialog hiện lên để hỏi có chắc muốn xóa, chọn vai trò để tiến hành xóa
4 Tìm kiếm vai trò: Nhập vào ô tìm kiếm tên vai trò, nhấn tìm để tiến hành tìm
Bảng 2.3.2.19 Usecase quản lý vai trò
Usecase “Quản lý vai trò”
Mô tả - Thêm vai trò
Tác nhân kích hoạt Người quản lý
Tiền điều kiện Đăng nhập với tài khoản người quản lý
Các bước thực hiện 1 Thêm vai trò: Chọn chức năng thêm vai trò,nhập tên vai trò
Nhấn “Thêm” để tiến hành thêm
2 Sửa vai trò: Chọn icon chỉnh sửa , thay đổi tên vai trò mà bạn muốn chỉnh sửa Nhấn “Chỉnh sửa”
3 Xóa vai trò: Chọn icon xóa ở vai trò muốn xóa trong danh sách, dialog hiện lên để hỏi có chắc muốn xóa, chọn vai trò để tiến hành xóa
4 Tìm kiếm vai trò: Nhập vào ô tìm kiếm tên vai trò, nhấn tìm để tiến hành tìm
Bảng 2.3.2.20 Usecase đăng nhập tài khoản người quản trị
Mô tả - Đăng nhập để xác thực người dùng và có thể sử dụng được các chức năng của người quản trị hoặc nhân viên
Tác nhân kích hoạt Người quản trị hoặc nhân viên
Tiền điều kiện Đã có tài khoản người quản trị hoặc nhân viên trên hệ thống và
53 email tài khoản đã được xác thực
Các bước thực hiện 1 Click checkbox để chọn loại tài khoản (người quản trị, nhân viên)
2 Nhập tên tài khoản hoặc email
Bảng 2.3.2.21 Usecase quên mật khẩu người quản trị hoặc nhân viên
Mô tả - Khôi phục mật khẩu cho người dùng trong trường hợp quên mật khẩu, gửi mật khẩu qua email
Tác nhân kích hoạt Người quản trị hoặc nhân viên
Tiền điều kiện Đã có tài khoản khách hàng trên hệ thống
Các bước thực hiện 1 Chọn chức năng quên mật khẩu ở trang đăng nhập
3 Nhấn xác nhận ( mật khẩu sẽ được gửi đến email đã đăng ký)
4 Vào email mật khẩu mới sẽ được gởi đến
5 Chuyển đến trang đăng nhập
Bảng 2.3.2.22 Usecase cập nhật thông tin
Usecase “Cập nhật thông tin ”
Mô tả - Cho phép người quản trị thay đổi thông tin cá nhân của mình
Tác nhân kích hoạt Người quản trị
Tiền điều kiện Đã có tài khoản người quản trị trên hệ thống
Các bước thực hiện 1 Chọn quản lí tài khoản
2 Nhập họ tên cần đổi
3 Nhập số điện thoại cần đổi
4.Chọn giới tính cần đổi
5.Chọn thay đổi ảnh đại diện nếu cần , chọn ảnh và nhấn thay đôỉ
Bảng 2.3.2.23 Usecase đăng xuất tài khoản
Usecase “Cập nhật thông tin ”
Mô tả - Cho phép người quản trị hoặc nhân viên đăng xuất tài khoản
Tác nhân kích hoạt Người quản trị, nhân viên
Tiền điều kiện Đã có tài khoản người quản trị hoặc nhân viên trên hệ thống Các bước thực hiện 1 Chọn quản lí tài khoản
THIẾT KẾ PHẦN MỀM
TỔNG QUAN HỆ THỐNG
Hình 3.1.1.1 Thiết kế tổng quan hệ thống
LƯỢC ĐỒ LỚP
Hình 3.2.1.1 Hình ảnh lược đồ lớp
LƯỢC ĐỒ TUẦN TỰ
3.3.1 Lược đồ tuần tự chức năng đăng kí
Hình 3.3.1.1 Lược đồ tuần tự chức năng đăng kí
3.3.2 Lược đồ tuần tự chức năng đăng nhập
Hình 3.3.2.1 Lược đồ tuần tự chức năng đăng nhập 3.3.3 Lược đồ tuần tự chức năng quên mật khẩu
Hình 3.3.3.1 Lược đồ tuần tự chức năng quên mật khẩu 3.3.4 Lược đồ tuần tự chức năng thêm sản phẩm vào giỏ hàng
Hình 3.3.4.1 Lược đồ tuần tự chức năng thêm sản phẩm vào giỏ hàng
3.3.5 Lược đồ tuần tự chức năng thanh toán
Hình 3.3.5.1 Lược đồ tuần tự chức năng thanh toán
3.3.6 Lược đồ tuần tự chức năng chỉnh sửa số lượng, size sản phẩm trong giỏ hàng
Hình 3.3.6.1 Lược đồ tuần tự chức năng chỉnh sửa số lượng sản phẩm trong giỏ hàng 3.3.7 Lược đồ tuần tự chức năng xóa sản phẩm trong giỏ hàng
Hình 3.3.7.1 Lược đồ tuần tự chức năng xóa sản phẩm trong giỏ hàng
3.3.8 Lược đồ tuần tự chức năng cập nhật thông tin
Hình 3.3.8.1 Lược đồ tuần tự chức năng cập nhật thông tin 3.3.9 Lược đồ tuần tự chức năng xem sản phẩm
Hình 3.3.9.1 Lược đồ tuần tự chức năng xem sản phẩm
3.3.10 Lược đồ tuần tự chức năng xem đơn hàng
Hình 3.3.10.1 Lược đồ tuần tự chức năng xem đơn hàng 3.3.11 Lược đồ tuần tự chức năng hủy đơn hàng
Hình 3.3.11.1 Lược đồ tuần tự chức năng hủy đơn hàng
3.3.12 Lược đồ tuần tự chức năng xem thông báo
Hình 3.3.12.1 Lược đồ tuần tự chức năng xem thông báo 3.3.13 Lược đồ tuần tự chức năng đổi mật khẩu
Hình 3.3.13.1 Lược đồ tuần tự chức năng đổi mật khẩu
3.3.14 Lược đồ chức năng thêm địa chỉ khách hàng
Hình 3.3.14.1 Lược đồ chức năng thêm địa chỉ khách hàng 3.3.15 Lược đồ tuần tự chỉnh sửa địa chỉ khách hàng
Hình 3.3.15.1 Lược đồ tuần tự chỉnh sửa địa chỉ khách hàng
3.3.16 Lược đồ tuần tự xóa địa chỉ khách hàng
Hình 3.3.16.1 Lược đồ tuần tự xóa địa chỉ khách hàng 3.3.17 Lược đồ tuần tự thêm vai trò
Hình 3.3.17.1 Lược đồ tuần tự thêm vai trò
3.3.18 Lược đồ tuần tự xóa vai trò
Hình 3.3.18.1 Lược đồ tuần tự xóa vai trò 3.3.19 Lược đồ tuần tự chức năng chỉnh sửa vai trò
Hình 3.3.19.1 Lược đồ tuần tự chức năng chỉnh sửa vai trò
3.3.20 Lược đồ tuần tuần tự chức năng tìm kiếm vai trò
Hình 3.3.20.1 Lược đồ tuần tự chức năng tìm kiếm vai trò 3.3.21 Lược đồ tuần tự chức năng thêm nhân viên
Hình 3.3.21.1 Lược đồ tuần tự chức năng thêm nhân viên
3.3.22 Lược đồ tuần tự chức năng chỉnh sửa thông tin nhân viên
Hình 3.3.22.1 Lược đồ tuần tự chức năng chỉnh sửa thông tin nhân viên
3.3.23 Lược đồ tuần tự chức năng xóa nhân viên
Hình 3.3.23.1 Lược đồ tuần tự chức năng xóa nhân viên
3.3.24 Lược đồ tuần tự chức năng tìm kiếm nhân viên
Hình 3.3.24.1 Lược đồ tuần tự chức năng tìm kiếm nhân viên
3.3.25 Lược đồ tuần tự chức năng quản lí lương
Hình 3.3.25.1 Lược đồ tuần tự chức năng quản lí lương
3.3.26 Lược đồ tuần tự chức năng tìm kiếm khách hàng
Hình 3.3.26.1 Lược đồ tuần tự chức năng tìm kiếm khách hàng
3.3.27 Lược đồ tuần tự chức năng xem thông tin khách hàng
Hình 3.3.27.1 Lược đồ tuần tự chức năng xem thông tin khách hàng
3.3.28 Lược đồ tuần tự chức năng xóa khách hàng
Hình 3.3.28.1 Lược đồ tuần tự chức năng xóa khách hàng 3.3.29 Lược đồ tuần tự chức năng thêm sản phẩm
Hình 3.3.29.1 Lược đồ tuần tự chức năng thêm sản phẩm
3.3.30 Lược đồ tuần tự chức năng tìm kiếm sản phẩm
Hình 3.3.30.1 Lược đồ tuần tự chức năng tìm kiếm sản phẩm
3.3.31 Lược đồ tuần tự chức năng xem thông tin sản phẩm
Hình 3.3.31.1 Lược đồ tuần tự chức năng xem thông tin sản phẩm
3.3.32 Lược đồ tuần tự chức năng chỉnh sửa thông tin sản phẩm
Hình 3.3.32.1 Lược đồ tuần tự chức năng chỉnh sửa thông tin sản phẩm
3.3.33 Lược đồ tuần tự chức năng thêm ảnh sản phẩm
Hình 3.3.33.1 Lược đồ tuần tự chức năng thêm ảnh sản phẩm
3.3.34 Lược đồ tuần tự chức năng xóa sản phẩm
Hình 3.3.34.1 Lược đồ tuần tự chức năng xóa sản phẩm 3.3.35 Lược đồ tuần tự chức năng tìm kiếm loại sản phẩm
Hình 3.3.35.1 Lược đồ tuần tự chức năng tìm kiếm loại sản phẩm
3.3.36 Lược đồ tuần tự chức năng thêm loại sản phẩm
Hình 3.3.36.1 Lược đồ tuần tự chức năng thêm loại sản phẩm
3.3.37 Lược đồ tuần tự chức năng xem loại sản phẩm
Hình 3.3.37.1 Lược đồ tuần tự chức năng xem loại sản phẩm
3.3.38 Lược đồ tuần tự chức năng chỉnh sửa loại sản phẩm
Hình 3.3.38.1 Lược đồ tuần tự chức năng chỉnh sửa loại sản phẩm
3.3.39 Lược đồ tuần tự chức năng xóa loại sản phẩm
Hình 3.3.39.1 Lược đồ tuần tự chức năng xóa loại sản phẩm
3.3.40 Lược đồ tuần tự chức năng tìm kiếm voucher
Hình 3.3.40.1 Lược đồ tuần tự chức năng tìm kiếm voucher 3.3.41 Lược đồ tuần tự chức năng thêm voucher
Hình 3.3.41.1 Lược đồ tuần tự chức năng thêm voucher
3.3.42 Lược đồ tuần tự chức năng chỉnh sửa voucher
Hình 3.3.42.1 Lược đồ tuần tự chức năng chỉnh voucher 3.3.43 Lược đồ tuần tự chức năng xóa voucher
Hình 3.3.43.1 Lược đồ tuần tự chức năng xóa voucher
3.3.44 Lược đồ tuần tự chức năng xem thông tin voucher
Hình 3.3.44.1 Lược đồ tuần tự chức năng xem thông tin voucher
3.3.45 Lược đồ tuần tự chức năng xác nhận đơn hàng
Hình 3.3.45.1 Lược đồ tuần tự chức năng xác nhận đơn hàng
THIẾT KẾ CƠ SỞ DỮ LIỆU
3.4.1 Lược đồ thực thể (ERD)
Hình 3.4.1.2 Lược đồ diagram cơ sơ dữ liệu
3.4.2 Chi tiết bảng dữ liệu
3.4.2.1 Bảng địa chỉ người dùng
AddressUsers(Id , UserId, Address, isDeleted, isAddressDefault, DistrictID, ProvinceID, WardCode)
Bảng 3.4.2.1 Chi tiết dữ liệu bảng địa chỉ người dùng
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã địa chỉ Khóa
2 UserId Nvarchar(450) Mã người dùng Khóa ngoại
3 Address Nvarchar(450) Địa chỉ người dùng người dùng
4 isDeleted bit Đánh dấu dữ liệu bị xóa
5 isAddressD efault bit Đánh dấu địa chỉ mặc định
6 DistrictID int Mã quận huyện
7 ProvinceID Int Mã tỉnh, thành phố
8 WardCode Nvarchar(MAX) Mã vai trò phường xã
Admins(Id , RoleId, Fullname, Username, Password, Email, Phonenumber, DateCreated,Avatar, Gender isDeleted)
Bảng 3.4.2.2 Chi tiết dữ liệu bảng người quản trị
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã người quản trị Khóa
2 RoleId Nvarchar(450) Mã vai trò Khóa ngoại
3 Fullname Nvarchar(MAX) Tên người quản trị
4 Username Nvarchar(MAX) Tên đăng nhập
5 Password Nvarchar(MAX) Mật khẩu người quản trị
6 Email Nvarchar(MAX) Email người quản trị
Nvarchar(MAX) Số điện thoại người quản trị
8 DateCreated datetime2(7) Thời gian tạo tài khoản
9 Avatar Nvarchar(MAX) Ảnh đại diện người quản trị
10 Gender Nvarchar(MAX) Giới tính
11 isDeleted Bit Đánh dấu dữ liệu đã bị xóa
- Carts(Id , ProductId, Quantity, UserId, DateCreated)
Bảng 3.4.2.3 Chi tiết dữ liệu bảng giỏ hàng
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã giỏ hàng Khóa
2 ProductId Nvarchar(450) Mã sản phẩm trong giỏ hàng Khóa ngoại
3 Quantity int Số lượng của từng sản phẩm trong giỏ hàng
4 UserId Nvarchar(450) Mã người dùng Khóa ngoại
5 DateCreated datetime2(7) Thời gian tạo tài khoản
6 SizeProduct Nvarchar(450) Size sản phẩm
Categories(Id , Name, Image, Description,isDeleted, DateCreated)
Bảng 3.4.2.4 Chi tiết dữ liệu bảng loại sản phẩm
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã loại sản phẩm Khóa
2 Name Nvarchar(450) Tên loại sản phẩm
3 Image Nvarchar(MAX) Hình ảnh loại sản phẩm
4 Description Nvarchar(MAX) Mô tả loại sản phẩm
5 DateCreated datetime2(7) Thời gian tạo loại sản phẩm
6 isDeleted Bit Đánh dấu dữ liệu đã bị xóa
3.4.2.5 Bảng chi phí nhập sản phẩm
CostProduct(Id , Count, Price, TotalCost,Month, ProductId)
Bảng 3.4.2.5 Chi tiết dữ liệu bảng chi phí nhập sản phẩm
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã chi phí nhập sản phẩm Khóa
2 Count int Số lượng nhập
3 Price Float Giá nhập mỗi sản phẩm
4 TotalCost Float Tổng chi phí
5 Month Nvarchar(MAX) Tháng, năm , nhập sản phẩm
6 ProductId Nvarchar(450) Mã sản phẩm nhập Khóa ngoại
3.4.2.6 Bảng chi phí nhập voucher
CostVoucher(Id , Cost,DateCreated, VoucherId)
Bảng 3.4.2.6 Chi tiết dữ liệu bảng chi phí voucher
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã chi phí voucher Khóa
3 VoucherId Float Mã voucher Khóa ngoại
3.4.2.7 Bảng hình ảnh sản phẩm
ImageProduct(Id , Url,ProductId, isDefault)
Bảng 3.4.2.7 Chi tiết dữ liệu bảng hình ảnh sản phẩm
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã hình ảnh Khóa
2 Url Nvarchar(MAX) Đường dẫn hình ảnh
3 ProductId Nvarchar(450) Mã sản phẩm Khóa ngoại
4 isDefaut Bit Đánh dấu đây là hình ảnh mặc định
3.4.2.8 Bảng thông tin cửa hàng
InfoShop(Id , Address,Email, Phonenumber, DistrictID, ProvinceID, WardCode)
Bảng 3.4.2.8 Chi tiết dữ liệu bảng chi tiết đơn hàng
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã thông tin cửa hàng Khóa
2 Address Nvarchar(MAX) Địa chỉ cửa hàng
3 Email Nvarchar(MAX) Email cửa hàng
Nvarchar(MAX) Số điện thoại cửa hàng
5 DistrictID Int Mã quận huyện
6 ProvinceID Int Mã tỉnh , thành phố
7 WardCode Nvarchar(MAX) Mã phường xã
Notifi(Id , UserId,Message, DateCreated)
Bảng 3.4.2.9 Chi tiết dữ liệu bảng thông báo
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã thông báo Khóa
2 UserId Nvarchar(450) Mã người dùng Khóa ngoại
3 Message Nvarchar(MAX) Nội dung thông báo
4 DateCreated Datetime2(7) Ngày tạo thông báo
3.4.2.10 Bảng chi tiết đơn hàng
OrderDetails(Id , OrderId,ProductId, ProductCount, DiscountProduct,
Bảng 3.4.2.10 Chi tiết dữ liệu bảng chi tiết đơn hàng
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã chi tiết đơn hàng Khóa
2 OrderId Nvarchar(450) Mã đơn hàng Khóa ngoại
3 ProductId Nvarchar(450) Mã sản phẩm Khóa ngoại
Int Số lượng sản phẩm
Int Giảm giá sản phẩm
7 SizeProduct Int Size sản phẩm
Orders(Id ,UserId, OrderDate, AddressShip, UnitPrice, PhoneNumber,
TransactionId,StatusOrderId, VoucherId, Quantity, Message ShippingFee, isPaid, isPaymentOnline)
Bảng 3.4.2.11 Chi tiết dữ liệu bảng đơn hàng
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã đơn hàng Khóa
2 UserId Nvarchar(450) Mã khách hàng Khóa
3 OrderDate Datetime2(7) Ngày đặt hàng
Nvarchar(450) Địa chỉ giao hàng
5 UnitPrice Float Tổng tiền đơn hàng
Nvarchar(MAX) Số điện thoại người nhận
Nvarchar(450) Mã phương thức giao dịch Khóa ngoại
Nvarchar(450) Trạng thái đơn hàng Khóa ngoại
9 VoucherId Nvarchar(450) Mã voucher áp dụng cho đơn hàng
10 Quantity Int Số lượng sản phẩm trong đơn hàng
11 Message Nvarchar(MAX) Lời nhắn cho shop
12 ShippingFee Int Phí vận chuyển
13 isPaid Bit Đã thanh toán
Products(Id , CategoryId, Name, Description, Price, OriginalPrice, Stock, Discount, Image, DateCreated, isDeleted, Count, isSize)
Bảng 3.4.2.12 Chi tiết dữ liệu bảng sản phẩm
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã sản phẩm Khóa
2 CategoryId Nvarchar(450) Mã loại sản phẩm Khóa ngoại
3 Name Nvarchar(450) Tên sản phẩm
4 Description Nvarchar(450) Mô tả sản phẩm
5 Price Float Giá nhập sản phẩm
Float Giá bán sản phẩm
7 Stock Int Số lượng sản phẩm còn lại
8 Discount Int Phần trăm giảm giá
9 Image Nvarchar(MAX) Hình ảnh sản phẩm
10 DateCreated Datetime2(7) Ngày tạo sản phẩm
11 IsDeleted Bit Đánh dấu đã xóa sản phẩm
12 Count Int Số lượng nhập sản phẩm
13 isSize Int Đánh dấu sản phẩm có size
Roles(Id , Name,DateCreated, isDeleted)
Bảng 3.4.2.13 Chi tiết dữ liệu bảng vai trò
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã vai trò Khóa
2 Name Nvarchar(450) Tên vai trò
3 DateCreated Datetime2(7) Ngày tạo vai trò
4 isDeleted Bit Đánh dấu vai trò đã xóa
SalaryStaff(Id ,NumberOfWorking, ListDayWorking, Month,
Bảng 3.4.2.14 Chi tiết dữ liệu bảng lương nhân viên
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã bảng lương Khóa
Int Số ngày làm trong tháng
Nvarchar(MAX) Danh sách các ngày làm trong tháng
4 Month Nvarchar(MAX) Tháng lương
Nvarchar(MAX) Lương phải trả cho tháng này
6 Salary Nvarchar(MAX) Lương nhân viên
7 isWorking Bit Đánh dấu đã trả lương
8 StaffId Nvarchar(450) Mã nhân viên Khóa ngoại
Staffs(Id ,RoleId, Fullname, Username, Password, Email, Phonenumber,
DateCreated, Salary, Avatar, Gender, isDeleted)
Bảng 3.4.2.15 Chi tiết dữ liệu bảng nhân viên
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã nhân viên Khóa
2 RoleId Nvarchar(450) Mã vai trò Khóa ngoại
3 Fullname Nvarchar(450) Tên nhân viên
4 Usernamr Nvarchar(450) Tên đăng nhập của nhân viên
5 Password Nvarchar(450) Mật khẩu tài khoản nhân viên
6 Email Nvarchar(450) Email nhân viên
Nvarchar(450) Số điện thoại nhân viên
8 DateCreated Datetime2(7) Ngày tạo nhân viên
9 Salary Nvarchar(450) Lương nhân viên
10 Avatar Nvarchar(MAX) Ảnh đại diện
12 isDeleted Bit Đánh dấu đã xóa nhân viên
3.4.2.16 Bảng trạng thái đơn hàng
Bảng 3.4.2.16 Chi tiết dữ liệu bảng trạng thái đơn hàng
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã trạng thái Khóa
2 Name Nvarchar(450) Tên trạng thái
3 isDeleted Bit Đánh dấu trạng thía đã xóa
3.4.2.17 Bảng phương thức giao dịch
Transactions(Id , Name,Image, isDeleted)
Bảng 3.4.2.17 Chi tiết dữ liệu bảng phương thức giao dịch
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã phương thức giao dịch Khóa
2 Name Nvarchar(450) Tên phương thức giao dịch
4 isDeleted Bit Đánh dấu phương thức giao dịch đã xóa
Users(Id ,RoleId, Fullname, Username, Password, Email, Phonenumber,
DateCreated, isVerify, Avatar, Gender, isDeleted)
Bảng 3.4.2.18 Chi tiết dữ liệu bảng khách hàng
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã khách hàng Khóa
2 RoleId Nvarchar(450) Mã vai trò Khóa ngoại
3 Fullname Nvarchar(450) Tên khách hàng
4 Username Nvarchar(450) Tên đăng nhập của khách hàng
5 Password Nvarchar(450) Mật khẩu tài khoản khách hàng
6 Email Nvarchar(450) Email khách hàng
Nvarchar(450) Số điện thoại khách hàng
8 DateCreated Datetime2(7) Ngày tạo khách hàng
9 isVerify bit(450) Đánh dấu email đã đc xác thực hay chưa
10 Avatar Nvarchar(MAX) Ảnh đại diện
12 isDeleted Bit Đánh dấu đã xóa khách hàng
Vouchers(Id ,Code, Discountprice, Discountfreeship, DateCreated,
Bảng 3.4.2.19 Chi tiết dữ liệu bảng voucher
STT Thuộc tính Kiểu Ý nghĩa Khóa
1 Id Nvarchar(450) Mã voucher Khóa
2 Code Nvarchar(450) Mã nhập để giảm giá
Float Phần trăm giảm giá cho tổng tiền đơn hàng
Float Phần trăm giảm giá cho phí vận chuyển
5 DateCreated Datetime2(7) Ngày tạo voucher
Datetime2(7) Ngày hết hạn voucher
7 isDeleted Bit Đánh dấu voucher đã xóa
Int Số lượng còn lại
Int Số lượng nhập vào
THIẾT KẾ CHỨC NĂNG (BACKEND SWAGGER)
3.5.1 Chức năng địa chỉ khách hàng
Bài viết này mô tả các chức năng quan trọng như hiển thị tất cả địa chỉ của người dùng, hiển thị địa chỉ mặc định, tạo địa chỉ mới, chỉnh sửa địa chỉ và chỉnh sửa địa chỉ mặc định.
Hình 3.5.1.1 Thiết kế chức năng địa chỉ 3.5.2 Chức năng quản trị viên
Bao gồm các chức năng : Đăng nhập quản trị viên, hiển thị tất cả nhân viên, chỉnh sửa
Hình 3.5.2.1 Thiết kế chức năng quản trị viên 3.5.3 Chức năng giỏ hàng
Chức năng của giỏ hàng bao gồm: hiển thị tất cả sản phẩm có trong giỏ, hiển thị số lượng sản phẩm, hiển thị giỏ hàng theo ID, tăng hoặc giảm số lượng sản phẩm, tạo mới giỏ hàng, xóa giỏ hàng và xóa tất cả sản phẩm trong giỏ hàng.
Hình 3.5.3.1 Thiết kế chức năng giỏ hàng 3.5.4 Chức năng loại sản phẩm
Bài viết này giới thiệu các chức năng chính bao gồm: hiển thị tất cả các loại sản phẩm, tạo mới loại sản phẩm, chỉnh sửa thông tin loại sản phẩm, xóa loại sản phẩm không cần thiết, và tìm kiếm loại sản phẩm theo tên.
Hình 3.5.4.1 Thiết kế chức năng giỏ hàng 3.5.5 Chức năng thông tin cửa hàng
Bao gồm các chức năng : lấy thông tin shop
Hình 3.5.5.1 Thiết kế chức năng thông tin shop
Bao gồm các chức năng : hiển thị tất cả thông báo
Hình 3.5.6.1 Thiết kế chức năng thông báo 3.5.7 Chức năng đặt hàng
Hệ thống quản lý đơn hàng bao gồm các chức năng quan trọng như tạo đơn đặt hàng, hiển thị danh sách đơn hàng đang chờ, đơn hàng đang giao, đơn hàng đã giao và đơn hàng bị hủy Đối với quản trị viên, có thể theo dõi số lượng đơn hàng đang chờ, xem tất cả đơn hàng đang giao, đã giao và bị hủy Ngoài ra, hệ thống cũng hỗ trợ xác thực đơn đặt hàng, hủy bỏ đơn hàng, cùng với các phương thức thanh toán linh hoạt như thanh toán qua Paypal và VNPay, kèm theo hướng dẫn thủ tục thanh toán cho từng phương thức.
Hình 3.5.7.1 Thiết kế chức năng đặt hàng 3.5.8 Chức năng chi tiết đơn hàng
Bao gồm các chức năng : hiển thị chi tiết đặt hàng bỏi id đặt hàng
Hình 3.5.8.1 Thiết kế chức năng chi tiết đặt hàng 3.5.9 Chức năng sản phẩm
Chức năng của hệ thống bao gồm: hiển thị tất cả sản phẩm, hiển thị sản phẩm cuối cùng, tạo, chỉnh sửa và xóa sản phẩm Ngoài ra, người dùng có thể tìm kiếm sản phẩm theo tên, thêm và chỉnh sửa hình ảnh sản phẩm, hiển thị tất cả hình ảnh theo ID, cũng như hiển thị sản phẩm và sản phẩm theo ID tính chất.
Hình 3.5.9.1 Thiết kế chức năng sản phẩm 3.5.10 Chức năng vai trò người dùng
Bài viết này mô tả các chức năng quan trọng của hệ thống quản lý người dùng, bao gồm: hiển thị danh sách toàn bộ người dùng, tìm kiếm người dùng theo ID, tạo người dùng mới, chỉnh sửa tên người dùng, xóa người dùng và tìm kiếm người dùng bằng tên.
Hình 3.5.10.1 Thiết kế chức năng người dùng 3.5.11 Chức năng nhân viên
Hệ thống quản lý nhân viên bao gồm các chức năng thiết yếu như đăng nhập cho nhân viên, hiển thị danh sách tất cả nhân viên, đăng ký nhân viên mới, chỉnh sửa thông tin nhân viên, xóa nhân viên khỏi hệ thống, và tìm kiếm nhân viên thông qua tên hoặc email.
Hình 3.5.11.1 Thiết kế chức năng nhân viên 3.5.12 Chức năng lương nhân viên
Bao gồm các chức năng : hiển thị lương bằng id nhân viên, trả tiền theo ngày, trả tiền theo tháng
Hình 3.5.12.1 Thiết kế chức năng lương nhân viên
Bao gồm các chức năng : hiển thị doanh số, hiển thị chi phi lương, hiển thị chi phí sản phẩm
Hình 3.5.13.1 Thiết kế chức năng số liệu thống kê 3.5.14 Chức năng trạng thái đơn hàng
Bao gồm các chức năng : hiển thị tất cả trạng thái đơn hàng
Hình 3.5.14.1 Thiết kế chức năng trạng thái đơn hàng
3.5.15 Chức năng quản lí giao dịch
Bao gồm các chức năng : hiển thị tất cả giao dịch
Hình 3.5.15.1 Thiết kế chức năng giao dịch
Bài viết này đề cập đến các chức năng quan trọng của hệ thống, bao gồm: đăng nhập và đăng ký người dùng, hiển thị danh sách tất cả người dùng, chỉnh sửa thông tin và hồ sơ cá nhân, cập nhật ảnh đại diện, xóa người dùng, tìm kiếm khách hàng theo tên, và gửi email để thay đổi mật khẩu.
102 quên mật khẩu, xác thực email, hiển thị người dùng bởi id
Hình 3.5.16.1 Thiết kế chức năng người dùng
Bao gồm các chức năng : hiển thị tất cả voucher, tạo voucher mới, chỉnh sửa voucher, xóa voucher, tìm kiếm voucher bằng mã
Hình 3.5.17.1 Thiết kế chức năng voucher
THIẾT KẾ GIAO DIỆN
Hình 3.6.1.1 Hình ảnh giao diện trang chủ 3.6.1.2 Giao diện danh sách sản phẩm
Hình 3.6.1.2 Hình ảnh giao diện danh sách sản phẩm 3.6.1.3 Giao diện thông tin cửa hàng
Hình 3.6.1.3 Hình ảnh giao diện thông tin cửa hàng 3.6.1.4 Giao diện thông tin cửa hàng
Hình 3.6.1.4 Hình ảnh giao diện thông tin cửa hàng 3.6.1.5 Giao diện đăng nhập
Hình 3.6.1.5 Hình ảnh giao diện đăng nhập 3.6.1.6 Giao diện đăng kí
Hình 3.6.1.6 Hình ảnh giao diện đăng kí 3.6.1.7 Giao diện quên mật khẩu
Hình 3.6.1.7 Hình ảnh giao diện quên mật khẩu 3.6.1.8 Giao diện chi tiết sản phẩm
Hình 3.6.1.8 Hình ảnh giao diện chi tiết sản phẩm 3.6.1.9 Giao diện giỏ hàng
Hình 3.6.1.9 Hình ảnh giao diện giỏ hàng 3.6.1.10 Giao diện thanh toán
Hình 3.6.1.10 Hình ảnh giao diện thanh toán 3.6.1.11 Giao diện thay đổi địa chỉ giao hàng
Hình 3.6.1.11 Hình ảnh giao diện thay đổi địa chỉ giao hàng
3.6.1.12 Giao diện thêm một địa chỉ mới để nhận hàng
Hình 3.6.1.12 Hình ảnh giao diện thêm một địa chỉ mới để nhận hàng
3.6.1.13 Giao diện thay đổi hình thức thanh toán
Hình 3.6.1.13 Hình ảnh giao diện thay đổi hình thức thanh toán
3.6.1.14 Giao diện thông tin khách hàng
Hình 3.6.1.14 Hình ảnh giao diện thông tin khách hàng 3.6.1.15 Giao diện quản lí đơn hàng
Hình 3.6.1.15 Hình ảnh giao diện quản lí đơn hàng 3.6.1.16 Giao diện thông báo
Hình 3.6.1.16 Hình ảnh giao diện thông báo 3.6.2 Giao diện người quản trị
3.6.2.1 Giao diện quản lí vai trò
Hình 3.6.2.1 Hình ảnh giao diện quản lí vai trò 3.6.2.2 Giao diện thêm vai trò
Hình 3.6.2.2 Hình ảnh giao diện thêm vai trò 3.6.2.3 Giao diện chỉnh sửa vai trò
Hình 3.6.2.3 Hình ảnh giao diện chỉnh sửa vai trò 3.6.2.4 Giao diện xóa vai trò
Hình 3.6.2.4 Hình ảnh giao diện xóa vai trò 3.6.2.5 Giao diện quản lí thông tin khách hàng
Hình 3.6.2.5 Hình ảnh giao diện quản lí thông tin khách hàng
3.6.2.6 Giao diện chỉnh sửa thông tin khách hàng
Hình 3.6.2.6 Hình ảnh giao diện chỉnh sửa thông tin khách hàng
3.6.2.7 Giao diện xóa khách hàng
Hình 3.6.2.7 Hình ảnh giao diện xóa khách hàng
3.6.2.8 Giao diện quản lí nhân viên
Hình 3.6.2.8 Hình ảnh giao diện quản lí nhân viên 3.6.2.9 Giao diện thêm nhân viên mới
Hình 3.6.2.9 Hình ảnh giao diện thêm nhân viên mới 3.6.2.10 Giao diện xóa nhân viên
Hình 3.6.2.10 Hình ảnh giao diện xóa nhân viên 3.6.2.11 Giao diện chỉnh sửa nhân viên
Hình 3.6.2.11 Hình ảnh giao diện chỉnh sửa nhân viên
3.6.2.12 Giao diện quản lí lương nhân viên
Hình 3.6.2.12 Hình ảnh giao diện quản lí lương nhân viên 3.6.2.13 Giao diện quản lí sản phẩm
Hình 3.6.2.13 Hình ảnh giao diện quản lí sản phẩm 3.6.2.14 Giao diện thêm sản phẩm
Hình 3.6.2.14 Hình ảnh giao diện thêm sản phẩm 3.6.2.15 Giao diện xóa sản phẩm
Hình 3.6.2.15 Hình ảnh giao diện xóa sản phẩm 3.6.2.16 Giao diện chỉnh sửa thông tin sản phẩm
Hình 3.6.2.16 Hình ảnh giao diện chỉnh sửa thông tin sản phẩm
3.6.2.17 Giao diện thêm , chỉnh sửa , xóa hình ảnh sản phẩm
Hình 3.6.2.17 Hình ảnh giao diện thêm, chỉnh sửa, xóa hình ảnh sản phẩm 3.6.2.18 Giao diện xem thông tin sản phẩm
Hình 3.6.2.18 Hình ảnh giao diện xem thông tin sản phẩm 3.6.2.19 Giao diện quản lí loại sản phẩm
Hình 3.6.1.19 Hình ảnh giao diện quản lí loại sản phẩm 3.6.2.20 Giao diện thêm loại sản phẩm
Hình 3.6.2.20 Hình ảnh giao diện thêm loại sản phẩm 3.6.2.21 Giao diện xóa loại sản phẩm
Hình 3.6.2.21 Hình ảnh giao diện xóa loại sản phẩm 3.6.2.22 Giao diện chỉnh sửa thông tin loại sản phẩm
Hình 3.6.2.22 Hình ảnh giao diện chỉnh sửa thông tin loại sản phẩm
3.6.2.23 Giao diện xem thông tin loại sản phẩm
Hình 3.6.2.23 Hình ảnh giao diện xem thông tin loại sản phẩm
3.6.2.24 Giao diện quản lí voucher
Hình 3.6.2.24 Hình ảnh giao diện quản lí voucher 3.6.2.25 Giao diện thêm voucher
Hình 3.6.2.25 Hình ảnh giao diện thêm voucher 3.6.2.26 Giao diện xóa voucher
Hình 3.6.2.26 Hình ảnh giao diện xóa voucher 3.6.2.27 Giao diện chỉnh sửa thông tin voucher
Hình 3.6.2.27 Hình ảnh giao diện chỉnh sửa thông tin voucher
3.6.2.28 Giao diện xem thông tin voucher
Hình 3.6.2.28 Hình ảnh giao diện xem thông tin voucher
3.6.2.29 Giao diện quản lí đơn đặt
Hình 3.6.2.29 Hình ảnh giao diện quản lí đơn đặt hàng 3.6.2.30 Giao diện xem thông tin đơn đặt
Hình 3.6.2.30 Hình ảnh giao diện xem thông tin đơn đặt
3.6.2.31 Giao diện xác nhận đơn hàng
Hình 3.6.2.31 Hình ảnh giao diện xác nhận đơn đặt 3.6.2.32 Giao diện hủy đơn hàng
Hình 3.6.2.32 Hình ảnh giao diện hủy đơn đặt
3.6.2.33 Giao diện thống kê doanh thu
Hình 3.6.2.33 Hình ảnh giao diện thống kê doanh thu 3.6.2.34 Giao diện thống kê chi phí
Hình 3.6.2.34 Hình ảnh giao diện thống kê chi phí 3.6.2.35 Giao diện thống kê đơn hàng
Hình 3.6.2.35 Hình ảnh giao diện thống kê đơn hàng 3.6.2.36 Giao diện thống kê khách hàng mới
Hình 3.6.2.36 Hình ảnh giao diện thống kê khách hàng mới 3.6.2.37 Giao diện thống kê sản phẩm
Hình 3.6.2.37 Hình ảnh giao diện thống kê sản phẩm 3.6.2.38 Giao diện quản lí thông tin tài khoản
Hình 1Hình 3.6.2.38 Hình ảnh giao diện quản lí thông tin tài khoản