Đồ án: hệ thống quản lý bán hàng online

Tổng hợp kiến thức Đồ án hệ thống quản lý bán hàng online, tiếp cận khoa học, hỗ trợ học tập và nghiên cứu hiệu quả trong chuyên ngành

Trường đại học

Trường Đại Học An Giang

Chuyên ngành

Kỹ Thuật Phần Mềm

Người đăng

Ẩn danh

Thể loại

Thực Tập Cuối Khóa

2018

97
1
0

Phí lưu trữ

35 Point

Tóm tắt

I. Giới thiệu về Hệ thống Quản lý Bán hàng Online

Hệ thống quản lý bán hàng online là một giải pháp công nghệ thông tin hiện đại, được phát triển nhằm hỗ trợ các doanh nghiệp trong việc quản lý hoạt động bán hàng trên nền tảng điện tử. Đây là một đề án thực tập cuối khóa của ngành Kỹ thuật Phần mềm, được thực hiện tại Trường Đại học An Giang, Khoa Công nghệ Thông tin. Hệ thống này được xây dựng dựa trên nhu cầu thực tế của Công ty Cổ phần Nam Việt, một đơn vị chuyên kinh doanh online. Mục đích chính của hệ thống là tạo ra một nền tảng toàn diện để quản lý quy trình bán hàng, từ hiển thị sản phẩm, quản lý đơn hàng, cho đến theo dõi giao dịch. Thông qua việc áp dụng các công nghệ hiện đại như ASP.NET, SQL Server, và AngularJS, hệ thống mang lại hiệu quả cao trong hoạt động kinh doanh.

1.1. Bối cảnh và Nhu cầu Thực tế

Với sự phát triển nhanh chóng của thương mại điện tử, các doanh nghiệp cần một giải pháp quản lý bán hàng online hiệu quả. Công ty Cổ phần Nam Việt nhận thấy nhu cầu cấp thiết phải có một hệ thống tích hợp để xử lý các giao dịch online, quản lý kho hàng, và theo dõi doanh số bán hàng. Từ đó, đề án hệ thống quản lý bán hàng online được khởi động như một giải pháp toàn diện cho vấn đề này.

1.2. Phạm vi và Mục tiêu Dự án

Phạm vi của đề án bao gồm phân tích yêu cầu, thiết kế cơ sở dữ liệu, xây dựng giao diện người dùng, và cài đặt các tính năng chính. Mục tiêu dự án là tạo ra một nền tảng bán hàng online hoàn chỉnh với các chức năng như quản lý sản phẩm, xử lý đơn hàng, quản lý khách hàng, và báo cáo doanh số bán hàng.

II. Công nghệ và Phương pháp Thiết kế Hệ thống

Để xây dựng hệ thống quản lý bán hàng online hiệu quả, đề án sử dụng các công nghệ tiên tiến trong lĩnh vực phát triển phần mềm. SQL Server được chọn làm hệ quản trị cơ sở dữ liệu chính, cung cấp khả năng lưu trữ dữ liệu an toàn và hiệu suất cao. ASP.NET được sử dụng để xây dựng backend của ứng dụng, cho phép xử lý các yêu cầu từ phía client một cách nhanh chóng. AngularJS là framework frontend được lựa chọn để xây dựng giao diện người dùng tương tác, cung cấp trải nghiệm người dùng mượt mà. Entity Framework Code First giúp định nghĩa mô hình dữ liệu và tự động tạo cơ sở dữ liệu. Web API được sử dụng để tạo các endpoint cho giao tiếp giữa frontend và backend.

2.1. Các Công nghệ Chính

SQL Server cung cấp quản lý dữ liệu mạnh mẽ, ASP.NET cho phép xây dựng ứng dụng web scalable, AngularJS tạo nên giao diện động. Entity Framework Code First giúp thiết kế cơ sở dữ liệu linh hoạt, Web API RESTful cho phép giao tiếp dữ liệu hiệu quả. Các công nghệ này kết hợp tạo thành một hệ thống quản lý bán hàng online hoàn chỉnh và chuyên nghiệp.

2.2. Phương pháp Phân tích và Thiết kế

Dự án sử dụng phương pháp phân tích hướng đối tượng để thiết kế hệ thống. Use case diagram được sử dụng để mô tả các tương tác giữa người dùng và hệ thống. Sơ đồ tuần tự (sequence diagram) giúp mô tả luồng xử lý của các chức năng. Thiết kế giao diện được thực hiện dựa trên nguyên tắc UX/UI hiện đại, đảm bảo thân thiện với người dùng.

III. Phân tích Yêu cầu và Thiết kế Cơ sở Dữ liệu

Phân tích yêu cầu là bước quan trọng trong quá trình phát triển hệ thống quản lý bán hàng online. Đề án đã thực hiện thu thập yêu cầu chi tiết từ Công ty Cổ phần Nam Việt, bao gồm yêu cầu nghiệp vụ, yêu cầu chức năng, yêu cầu phi chức năng, và yêu cầu hệ thống. Thiết kế cơ sở dữ liệu được thực hiện sau khi xác định rõ các yêu cầu, sử dụng Entity Framework Code First để tạo các bảng dữ liệu và mối quan hệ giữa chúng. Các bảng chính bao gồm: Sản phẩm, Khách hàng, Đơn hàng, Chi tiết đơn hàng, Danh mục sản phẩm, và Người dùng. Mối quan hệ giữa các bảng được thiết kế để đảm bảo tính toàn vẹn dữ liệu.

3.1. Thu thập và Phân tích Yêu cầu

Yêu cầu nghiệp vụ xác định rõ các quy trình bán hàng cần được hỗ trợ. Yêu cầu chức năng liệt kê chi tiết các tính năng như đăng nhập, quản lý sản phẩm, tạo đơn hàng, và xuất báo cáo. Yêu cầu phi chức năng bao gồm hiệu suất, bảo mật, và khả năng mở rộng. Yêu cầu hệ thống xác định các công nghệ và nền tảng cần thiết để cài đặt hệ thống quản lý bán hàng online.

3.2. Thiết kế Cơ sở Dữ liệu

Cơ sở dữ liệu được thiết kế với các bảng chính như Sản phẩm, Khách hàng, Đơn hàng. Mỗi bảng có các trường dữ liệu được định nghĩa rõ ràng. Mối quan hệ One-to-Many giữa Danh mục và Sản phẩm, giữa Khách hàng và Đơn hàng. Mối quan hệ Many-to-Many giữa Sản phẩm và Đơn hàng thông qua bảng Chi tiết đơn hàng. Ràng buộc dữ liệu đảm bảo tính nhất quán.

IV. Thiết kế Cài đặt và Kết quả Đạt được

Thiết kế giao diện của hệ thống quản lý bán hàng online được xây dựng với AngularJS để tạo ra một giao diện người dùng động và thân thiện. Giao diện bao gồm các trang như trang chủ hiển thị sản phẩm, trang quản lý sản phẩm, trang giỏ hàng, trang thanh toán, và trang quản lý đơn hàng. Backend được cài đặt sử dụng ASP.NETWeb API, xử lý các logic nghiệp vụ phức tạp. Cài đặt cơ sở dữ liệu được thực hiện sử dụng SQL Server, với các bảng được tạo tự động thông qua Entity Framework Code First. Sau khi hoàn thành cài đặt, hệ thống quản lý bán hàng online đã đạt được các mục tiêu dự án, cung cấp một nền tảng bán hàng online hoàn chỉnh và hiệu quả cho Công ty Cổ phần Nam Việt.

4.1. Cài đặt Giao diện và Backend

Giao diện người dùng được xây dựng với HTML5, CSS3, và AngularJS, cung cấp trải nghiệm tương tác mượt mà. Backend sử dụng ASP.NET MVC để xử lý các yêu cầu từ client. Web API RESTful được cài đặt để cho phép giao tiếp dữ liệu hiệu quả. Các controller trong ASP.NET được thiết kế để xử lý logic nghiệp vụ như xác thực người dùng, quản lý sản phẩm, và xử lý đơn hàng.

4.2. Kết quả và Hướng Phát triển

Hệ thống quản lý bán hàng online đã được hoàn thành thành công, cung cấp đầy đủ các tính năng yêu cầu. Các hạn chế hiện tại bao gồm cần tối ưu hóa hiệu suất, mở rộng tính năng thanh toán trực tuyến. Hướng phát triển trong tương lai là tích hợp AI để gợi ý sản phẩm, phát triển mobile app, và mở rộng hỗ trợ đa ngôn ngữ.

22/12/2025

Trích đoạn nội dung tài liệu

ĐẶT VẤN ĐỀ - Để quản lý quy trình mua hàng của khách nhân viên kỹ thuật phải ghi chép các biểu mẫu hằng ngày và lưu trữ dưới dạng file thô, khả năng lưu trữ kém và có thể sai sót và gây nhiều bất lợi cho nhân viên kỹ thuật về việc quản lý 4 mua hàng của khách hàng. Ngoài ra khi các bộ phận, nhà máy đặt hàng với số lượng lớn và các mặt hàng khác nhau thì việc giải quyết các nhu cầu mua hàng đó vô cùng phức tạp và mất quá nhiều thời gian nhưng hiệu quả công việc vẫn còn rất thấp. - Vấn đề đặt ra cho bài toán là làm thế nào xây dựng một website cho phép nhân viên kỹ thuật có thể quản lý quy trình mua hàng của từng khách riêng biệt nhờ vậy mà công ty dễ dàng quản lý được các đơn đặt hàng, thống kê được doanh số bán hàng và lợi nhuận của từng tháng. - Bên cạnh đó đề tài cần đảm bảo được các yêu cầu sau:  Tính tiện dụng: Hệ thống phải có tính thân thiện với người dùng, đảm bảo khả năng hỗ trợ tối đa cho người dùng trong việc sử dụng và khai thác hệ thống.

 Tính bảo mật: Hệ thống phải đảm bảo khả năng bảo mật cho thông tin trong quá trình truy xuất thông tin từ phía người dùng. Mọi truy xuất của người dùng phải được kiểm soát cả từ phía trình khách lẫn trình chủ nhầm đảm bảo khả năng vận hành tốt nhất cho hệ thống.  Tính tùy biến: Hệ thống phải hỗ trợ khả năng tùy biến nhằm giúp cho người quản trị dễ dàng kiểm soát các nguồn thông tin của mình tùy thuộc vào nhu cầu của họ. LỊCH SỬ GIẢ QUYẾT VẤN ĐỀ: Đây là một vấn đề hoàn toàn mới của công ty và chưa hề được giải quyết nên công ty đã nghiên cứu giải pháp và đã đề xuất giải pháp cho em.

Sau đó em tiến hành thực hiện đề tài của mình bằng các giải pháp mà công ty đã đưa ra để giải quyết vấn đề hiện tại của công ty. PHẠM VI ĐỀ TÀI - Đề tài nghiên cứu xoay quanh vấn đề quản lý quy trình mua hàng của khách hàng và hỗ trợ cho nhân viên kỹ thuật để giúp công ty quản lý tốt quy trình mua hàng của của khách hàng được hiệu quả hơn. - Hệ thống được xây dựng trên nền website và người dùng là khách hàng có nhu cầu mua hàng trực tuyến trên hệ thống website của công ty. Hệ thống sẽ gồm các chức năng chính như sau: 5  Quản trị viên (admin) quản lý sản phẩm, đơn hàng, thành viên người dùng  Khách hàng xem, tìm kiếm và mua sản phẩm  Khách hàng có thể đăng nhập và xem danh sách đơn hàng đã mua  Khách hàng có thể gửi liên hệ và xem thông tin công ty  Có 2 view cho khách hàng và cho quản trị, quản trị yêu cầu đăng nhập còn khách hàng thì mặc định là không.

PHƯƠNG PHÁP NGHIÊN CỨU/HƯỚNG GIẢI QUYẾT VẤN ĐỀ: - Cấu trúc dự án  Dự án được xây dựng theo sự kết hợp của mô hình 3 lớp và MVC.  Mục đích là để có thể sử dụng lại được toàn bộ code ở phần server side vì AngularJS cũng là MVC.  Một số khái niệm:  Backend: Toàn bộ code c# xử lý WebAPI, EF, MVC5  Frontend: Phần code giao diện bên ngoài như AngularJS, Bootstrap, HTML, CSS, JavaScript  Trang admin: Trang dành cho Admin  Trang customer: Trang dành cho khách hàng Database  Repository  Service  Web API, Controller  AngularJS, ASP.NET MVC - Yêu cầu cài đặt:  Microsoft SQL Server 2008 R2: https://www.com/en-us/download/details.aspx?id=30438  Visual Studio 2015 Community: https://www.com/downloads/download-visual-studio-vs  Node Package Manage: https://nodejs.org/en/  Bower: https://bower.io/ - Công nghệ sử dụng  Truy xuất dữ liệu: Entity Framework 6  Resfull API: Web API  Hiển thị cho khách hàng: ASP.NET MVC thuần  Phần quản trị: AngularJS  Phần chứng thực: ASP.NET Identity - Định hướng công nghệ:  Có thể sử dụng ADO.NET nếu cần tốc độ nhưng lại vất vả trong khi code và cần có kỹ năng quản lý code tốt.  Có thể dùng Dapper hỗ trợ bạn quản lý kết nối và mapping data.

 Ngoài ra có thể dùng các thư viện khác.  Tất cả các thư viện này đều phải base trên ADO.NET tốc độ vẫn là vô địch vì nó nằm gần SQL nhất. - Dựng cấu trúc solution cho dự án  Các thành phần của Solution  Demo.Common: Chứa các lớp tiện ích dùng chung cho dự án  Demo.Model: Chứa các lớp Domain Entities của dự án  Shop.Data: Chứa tầng truy cập dữ liệu sủ dụng Entity Framework Codefirst  Demo.Service: Chứa các service xử lý Business logic  Demo.Web: Project chính dùng để hiển thị giao diện và tương tác người dùng.UnitTest: Chứa các class Text sử dụng cho việc Unit Test - Các package cần cài đặt  Shop.Model  Entity Framework  Microsoft.Data  Entity Framework  Shop.Web  Autofac, AutoMapper, Entity Framework.UnitTest  Moq, Entity Framwork 2. Hệ quản trị CSDL SQL Server Hình 4.

Hệ quản trị CSDL SQL Server Hình 5. Các thành cơ bản trong SQL ServerHình 6. Hệ quản trị CSDL SQL Server - Giới Thiệu SQL Server  SQL Server là một hệ quản trị cơ sở dữ liệu quan hệ (Relational Database Management System (RDBMS) ) sử dụng câu lệnh SQL (Transact-SQL) để trao đổi dữ liệu giữa máy Client và máy cài SQL Server. Một RDBMS bao gồm databases, database engine và các ứng dụng dùng để quản lý dữ liệu và các bộ phận khác nhau trong RDBMS.

 SQL Server được tối ưu để có thể chạy trên môi trường cơ sở dữ liệu rất lớn (Very Large Database Environment) lên đến Tera-Byte và có thể phục vụ cùng lúc cho hàng ngàn user. SQL Server có thể kết hợp “ăn ý” 8 với các server khác như Microsoft Internet Information Server (IIS), E- Commerce Server, Proxy Server…. - Các thành cơ bản trong SQL Server SQL Server được cấu tạo bởi nhiều thành phần như Database Engine, Reporting Services, Notification Services, Integration Services, Full-Text Search Service…. Các thành phần này khi phối hợp với nhau tạo thành một giải pháp hoàn chỉnh giúp cho việc lưu trữ và phân tích dữ liệu một cách dễ dàng.

 Database Engine: Đây là một engine có khả năng chứa dữ liệu ở các quy mô dưới dạng support và table. Ngoài ra, nó còn có khả năng tự điều chỉnh ví dụ: trả lại tài nguyên cho ệ điều hành khi một user log off và sử dụng thêm các tài nguyên của máy khi cần.  Integration Services: là tập hợp các đối tượng lập trình Hình 7. Các thành cơ bản trong và các công cụ đồ họa cho SQL Server việc sao chép, di chuyển và chuyển đổi dữ liệu.

Khi bạn làm việc trong một công ty Hình 8. Mô hình ASP.NET MVCHình 9. Các thành cơ bản trong lớn thì dữ liệu được lưu trữ ở SQL Server nhiều nơi khác nhau như được chứa trong: Oracle, SQL Server, DB2, Microsoft Access,… và bạn chắc chắn sẽ có nhu cầu di chuyển dữ liệu giữa các server này. Ngoài ra, bạn còn muốn định dạng dữ liệu trước khi lưu vào database.

Chắc chắn Integration Services sẽ giúp bạn giải quyết được công việc này dễ dàng.  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 khi được lưu trữ vào trong database mà bạn không thể lấy được những thông tin bổ ích thì coi như không có ý nghĩa gì. Chính vì thế, công cụ này ra đời giúp bạn trong việc phân tích dữ liệu một cách 9 hiệu quả và dễ dàng bằng cách dùng kỹ thuật khai thác dữ liệu – datamining và khái niệm hình khối nhiều chiều – multi dimendion cubes.

 Notification Services: Dịch vụ thông báo này là nền tảng cho sự phát triển và triển khai các ứng dụng soạn và gửi thông báo. Ngoài ra, dịch vụ này còn có chức năng gửi thông báo theo dịch thời đến hàng ngàn người dăng ký sử dụng trên nhiều loại thiết bị khác nhau.  Reporting Services: là một công cụ tạo, quản lý và triển khai báo cáo bao gồm: server và client. Ngoài ra, nó còn là nền tảng cho việc phát triển và xây dựng các ứng dụng báo cáo.

 Full Text Search Service: là một thành phần đặc biệt trong việc truy vấn và đánh 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.Tổng quan về ASP.NET MVC - Mẫu kiến trúc Model – View – Controller được sử dụng nhằm chi ứng dụng thành ba thành phần chính: model, view và controller. Nền tảng ASP.NET MVC giúp cho chúng ta có thể tạo được các ứng dụng web áp dụng mô hình MVC thay vì tạo ứng dụng theo mẫu ASP.NET Web Forsm. Nền tảng ASP.NET MVC có đặc điểm nổi bật là nhẹ (lighweigt), dễ kiểm thử phần giao diện (so với ứng dụng Web Forms), tích hợp các tính năng có sẵn của ASP.

Nền tảng ASP.NET MVC được định nghĩa trong namespace System.Mvc và là một phần của name space System. - MVC là một mẫu thiết kế (design pattern) chuẩn mà nhiều lập trình viên đã quen thuộc. Một số loại ứng dụng web sẽ thích hợp với kiến trúc MVC. Một số khác vẫn thích hợp với ASP.NET Web Forms và cơ chế postbacks.

Đôi khi có những ứng dụng kết hợp cả hai kiến trúc trên. 10 - Nền tảng MVC bao gồm các thành phần dưới đây: Hình 10. Mô hình ASP.NET MVC Hình 11. Cấu trúc RESTHình 12.

Mô hình ASP.NET MVC  Models: Các đối tượng Models là một phần của ứng dụng, các đối tượng này thiết lập logic của phần dữ liệu của ứng dụng. Thông thường, các đối tượng model lấy và lưu trạng thái của model trong CSDL. Ví dụ như, một đối tượng Product (sản phẩm) sẽ lấy dữ liệu từ CSDL, thao tác trên dữ liệu và sẽ cập nhật dữ liệu trở lại vào bảng Products ở SQL Server.  Views: Views là các thành phần dùng để hiển thị giao diện người dùng (UI).

Thông thường, view được tạo dựa vào thông tin dữ liệu model. Ví dụ như, view dùng để cập nhật bảng Products sẽ hiển thị các hộp văn bản, drop-down list, và các check box dựa trên trạng thái hiện tại của một đối tượng Product.  Controllers: Controller là các thành phần dùng để quản lý tương tác người dùng, làm việc với model và chọn view để hiển thị giao diện người dùng. Trong một ứng dụng MVC, view chỉ được dùng để hiển thị thông tin, controller chịu trách nhiệm quản lý và đáp trả nội dung người dùng nhập và tương tác với người dùng.

Ví dụ, controller sẽ quản lý các dữ liệu người dùng gởi lên (query-string values) và gởi các giá trị đó đến model, model sẽ lấy dữ liệu từ CSDL nhờ vào các giá trị này.

Nội dung được bảo vệ bản quyền — Tải xuống đầy đủ