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

XÂY DỰNG HỆ THỐNG QUẢN LÝ BÁN HÀNG TRÊN NỀN TẢNG ASP.NET MVC5

114 25 0

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

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 114
Dung lượng 6,93 MB

Cấu trúc

  • CHƯƠNG I: TỔNG QUAN (20)
    • 1.1. Giới thiệu tổng quan (20)
    • 1.2. Mục đích chọn đề tài (20)
    • 1.3. Phạm vi nghiên cứu (20)
    • 1.4. Phương pháp nghiên cứu (20)
    • 1.5. Mục tiêu cần đạt (21)
    • 1.6. Đặc tả đề tài (21)
  • CHƯƠNG II: CƠ SỞ LÝ THUYẾT (24)
    • 2.1. Công nghệ ASP.NET MVC5 (24)
    • 2.2. Mô hình MVC5 (28)
    • 2.3. Giới thiệu Entity Framework (31)
    • 2.5. Tổng quan về SQL Server (36)
    • 2.6. Tổng quan về ngôn ngữ giao diện (36)
    • 2.7. Vài nét về thương mại điện tử B2C (41)
  • CHƯƠNG III: PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG (43)
    • 3.1. Xác định Actor (43)
    • 3.2. Xác định UseCase (43)
    • 3.3. Mô hình tương tác người dùng và hệ thống (44)
    • 3.4. Sơ đồ Class (62)
    • 3.5. Sơ đồ hoạt động các chức năng (63)
      • 3.5.1. Chức năng đăng nhập (63)
      • 3.5.2. Chức năng thêm người dùng (64)
      • 3.5.3. Chức năng thêm khách hàng (65)
      • 3.5.4. Chức năng thêm sản phẩm (66)
      • 3.5.5. Chức năng thêm hóa đơn/đơn hàng (67)
    • 3.6. Sơ đồ tuần tự các chức năng (68)
      • 3.6.1. Chức năng đăng nhập (68)
      • 3.6.2. Chức năng thêm nhân viên (68)
      • 3.6.3. Thêm khách hàng (69)
      • 3.6.4. Chức năng thêm sản phẩm (70)
      • 3.6.5. Chức năng thêm hóa đơn/đơn hàng (71)
    • 3.7. Mô hình cơ sở dữ liệu (72)
    • 3.8. Tổ chức bảng dữ liệu (0)
      • 3.8.1. Bảng dữ liệu BƯU CỤC (74)
      • 3.8.2. Bảng dữ liệu CHI TIẾT HÓA ĐƠN (74)
      • 3.8.3. Bảng dữ liệu CHI TIẾT NHẬP (74)
      • 3.8.4. Bảng dữ liệu CHỨC VỤ VỊ TRÍ (75)
      • 3.8.5. Bảng dữ liệu ĐƠN VỊ TÍNH (75)
      • 3.8.7. Bảng dữ liệu KHÁCH HÀNG (76)
      • 3.8.8. Bảng dữ liệu KHUYẾN MÃI (77)
      • 3.8.9. Bảng dữ liệu LOẠI SẢN PHẨM (78)
      • 3.8.10. Bảng dữ liệu NHÀ CUNG CẤP (78)
      • 3.8.11. Bảng dữ liệu NHÂN VIÊN (79)
      • 3.8.12. Bảng dữ liệu NHÓM (80)
      • 3.8.13. Bảng dữ liệu NHÓM SẢN PHẨM (80)
      • 3.8.14. Bảng dữ liệu PHIẾU NHẬP (80)
      • 3.8.15. Bảng dữ liệu QUY CÁCH ĐÓNG GÓI SẢN PHẨM (81)
      • 3.8.16. Bảng dữ liệu QUY CÁCH (81)
      • 3.8.17. Bảng dữ liệu SẢN PHẨM (82)
      • 3.8.18. Bảng dữ liệu TÀI KHOẢN NGÂN HÀNG (83)
      • 3.8.19. Bảng dữ liệu VẬN ĐƠN (84)
      • 3.8.20. Bảng dữ liệu TỈNH THÀNH PHỐ (0)
      • 3.8.21. Bảng dữ liệu QUẬN HUYỆN (86)
      • 3.8.22. Bảng dữ liệu XÃ PHƯỜNG (87)
    • 3.9. PHÂN TÍCH MỐI QUAN HỆ DỮ LIỆU GIỮA CÁC THỰC THỂ . 67 CHƯƠNG IV: DEMO VÀ TRIỂN KHAI HỆ THỐNG (87)
    • 4.1. Giới thiệu tổng quan về hạ tầng Demo (93)
    • 4.2. Giao diện chính (93)
    • 4.3. Cấu trúc giao diện (93)
      • 4.3.1. Trên máy tính (94)
      • 4.3.2. Trên điện thoại (95)
      • 4.4.2. Chức năng quản trị Hóa đơn (0)
      • 4.4.3. Chức năng quản trị Sản phẩm (0)
      • 4.4.4. Chức năng quản trị Khách hàng (0)
      • 4.4.5. Chức năng quản trị Nhà cung cấp (0)
      • 4.4.6. Chức năng quản trị Bưu cục (0)
      • 4.4.7. Chức năng quản trị Vận đơn (0)
  • CHƯƠNG V: KẾT LUẬN (113)
    • 5.1. Kết quả và kinh nghiệm (0)
    • 5.2. Hạn chế (0)
    • 5.3. Hướng phát triển (0)
  • TÀI LIỆU THAM KHẢO (114)

Nội dung

TỔNG QUAN

Giới thiệu tổng quan

Ngày nay, sự phát triển mạnh mẽ của công nghệ thông tin đã dẫn đến sự ra đời của nền tảng ứng dụng thế hệ mới - WEB APPLICATION (WAPP) do Microsoft phát triển WAPP hoạt động trên nền tảng NET Framework và có thể truy cập dễ dàng qua trình duyệt trên mọi thiết bị, cho phép người dùng làm việc mọi lúc, mọi nơi Công nghệ này đáp ứng nhu cầu công việc ngày càng cao, đặc biệt là trong quản lý và tính tiện dụng đa nền tảng WAPP có khả năng thay thế hoàn toàn Winform, nền tảng phát triển ứng dụng truyền thống trên hệ điều hành Windows mà chúng ta đã quen thuộc.

Mục đích chọn đề tài

Để đáp ứng nhu cầu thực tế, chúng tôi xây dựng một hệ thống quản lý bán hàng hoạt động độc lập, cho phép người dùng vận hành mọi lúc, mọi nơi trên mọi thiết bị chỉ cần có trình duyệt truy cập Internet.

Để đáp ứng nhu cầu phát triển xã hội và nâng cao hiệu quả công việc, việc chuyên nghiệp hóa trong xử lý hàng hóa là cần thiết Điều này không chỉ giúp tiết kiệm thời gian và nhân công mà còn giảm thiểu chi phí đầu tư vào trang thiết bị máy móc, từ đó nâng cao năng suất phục vụ khách hàng.

Nhằm tạo điều kiện thực hiện nghiên cứu, phát triển khả năng bản thân, góp phần phát triển xã hội.

Phạm vi nghiên cứu

Quản lý bán hàng tại cửa hàng hoặc công ty bao gồm việc quản lý thông tin quan trọng như khách hàng, nhân viên, sản phẩm và hóa đơn Việc tổ chức và theo dõi các thông tin này giúp nâng cao hiệu quả kinh doanh và cải thiện dịch vụ khách hàng.

Quy trình đặt hàng, mua hàng và nhận hàng của khách hàng cần được thiết kế dựa trên thông tin thực tế để đảm bảo phục vụ nhu cầu sử dụng một cách hiệu quả và hợp lý.

Phương pháp nghiên cứu

- Quan sát thực tế quy trình bán hàng tại các cửa hàng, công ty

- Trực tiếp đặt hàng tại các cửa hàng/công ty sản phẩm theo quy trình của từng cửa hàng/công ty.

- Nghiên cứu các website mua bán hàng sản có và quy trình thực hiện đặt hàng, mua bán sản phẩm.

- Tham khảo các mô hình, hệ thống trực tiếp sẳn có từ các nước phát triển.

Mục tiêu cần đạt

- Thêm và quản lý người dùng (Nhân viên công ty) vào hệ thống

- Thêm khách hàng và quản lý thông tin khách hàng trong hệ thống.

- Thêm và quản lý sản phẩm trong hệ thống với số lượng sản phẩm còn lại trong kho của từng sản phẩm, lượt mua, bán của từng sản phẩm.

Quản lý mã khuyến mãi hiệu quả cho từng đợt khuyến mãi bằng cách thêm thông tin chi tiết như số lần sử dụng, thời gian áp dụng, và loại khuyến mãi (giảm phần trăm hoặc giảm tiền hàng) để áp dụng trực tiếp vào hóa đơn.

- Quản lý các lượt nhập hàng với các thông tin giá nhập vào hệ thống theo từng đợt giá.

- Quản lý và cập nhật liên tục thông tin vận chuyển của các hóa đơn hàng hóa khách hàng đặt hàng có vận chuyển

- Chấp nhận thanh toán bằng nhiều hình thức khác nhau: thanh toán khi nhận hàng, thanh toán trực tiếp khi mua hàng và thanh toán qua chuyển khoản.

Quản lý đối tác vận chuyển hiệu quả bằng cách khai thác thông tin chi tiết của từng đối tác, đồng thời tích hợp API để tự động tạo đơn vận qua hệ thống.

- Quản lý tài khoản ngân hàng của khách hàng, nhân viên công ty, và các nhà cung cấp.

- Quản lý thông tin nhà cung cấp các các sản phẩm kinh doanh.

Đặc tả đề tài

Đề tài “Xây dựng hệ thống quản lý bán hàng trên nền tảng công nghệ MVC 5 với ngôn ngữ ASP.NET” nhằm ứng dụng công nghệ thông tin vào quản lý kinh doanh tại cửa hàng/công ty bán lẻ Hệ thống này giúp tiết kiệm thời gian, chi phí và nhân công, từ đó nâng cao hiệu quả và chất lượng công việc.

Kết quả của quá trình nghiên cứu và phát triển đã dẫn đến việc ra mắt sản phẩm hệ thống quản lý bán hàng trực tuyến mang tên Seller Manage phiên bản 1.0.

Hệ thống là một tập hợp các công cụ quản lý thông tin thiết yếu cho cửa hàng hoặc công ty kinh doanh bán lẻ, giúp tối ưu hóa quy trình quản lý và theo dõi các thông tin cần thiết.

Khi người dùng tham gia vào hệ thống, họ sẽ được cấp một tài khoản để đăng nhập và sử dụng các tính năng theo quyền hạn được phân quyền bởi quản trị viên Khi khách hàng thực hiện đơn hàng tại cửa hàng, nhân viên sẽ thu thập thông tin điện thoại của khách hàng để tạo đơn đặt hàng hoặc xuất hóa đơn Hệ thống sẽ kiểm tra xem khách hàng đã có trong cơ sở dữ liệu hay chưa; nếu chưa, thông tin khách hàng sẽ được thêm mới vào hệ thống trước khi tiếp tục tạo hóa đơn Đối với những đơn hàng cần giao hàng, nhân viên kinh doanh sẽ hỗ trợ tạo vận đơn để gửi hàng thông qua các đối tác vận chuyển.

Chúng tôi cung cấp nhiều hình thức thanh toán linh hoạt cho khách hàng, bao gồm thanh toán khi nhận hàng, thanh toán trực tiếp tại thời điểm lập hóa đơn, và thanh toán chuyển khoản ngân hàng.

Khi có chương trình khuyến mãi từ công ty bán lẻ, cửa hàng có thể áp dụng các hình thức giảm giá trên hóa đơn bán hàng như giảm giá theo phần trăm hoặc giảm giá trực tiếp bằng tiền Thời gian và số lần áp dụng giảm giá cho từng đơn hàng cũng được quy định trong chương trình khuyến mãi Khách hàng có thể nhận ưu đãi bằng cách nhập mã giảm giá trực tiếp vào hóa đơn khi thanh toán.

Hệ thống quản lý sản phẩm cho phép phân loại và phân nhóm sản phẩm theo nhiều đơn vị tính do người dùng tạo Khi tạo sản phẩm mới, người dùng cần chọn loại sản phẩm, đơn vị tính và nhóm sản phẩm nếu có nhiều thuộc tính Nếu loại, đơn vị tính hoặc nhóm chưa tồn tại, nhân viên có thể thêm mới trong cấu hình sản phẩm khi tạo đơn hàng Ngoài ra, hệ thống cũng quản lý thông tin nhà cung cấp để tối ưu hóa quy trình nhập hàng sau này Nhân viên chỉ cần lựa chọn nhà cung cấp, sản phẩm và số lượng nhập, hệ thống sẽ kiểm tra dữ liệu và thực hiện nhập hàng, đồng thời xuất phiếu nhập để in cho nhân viên.

Hệ thống phát triển với mục tiêu tích hợp API đến các trang thương mại điện tử như Sendo, Lazada, Shopee, giúp đồng bộ hóa sản phẩm và tiết kiệm thời gian đăng bán Ngoài ra, hệ thống cũng tích hợp với các đơn vị vận chuyển, cho phép tạo vận đơn trực tiếp và đồng bộ hóa thông tin với bộ phận vận chuyển, từ đó tối ưu hóa quy trình tạo vận đơn.

Hình 1 Logo hệ thống

CƠ SỞ LÝ THUYẾT

Công nghệ ASP.NET MVC5

Vào những năm 70 của thế kỷ 20, tại phòng thí nghiệm Xerox PARC ở Palo Alto, sự ra đời của giao diện đồ họa (GUI) và lập trình hướng đối tượng (Object Oriented Programming) đã mở ra một kỷ nguyên mới cho lập trình viên, cho phép họ làm việc với các thành phần đồ họa như những đối tượng có thuộc tính và phương thức riêng Hơn nữa, các nhà nghiên cứu tại Xerox PARC còn phát triển kiến trúc MVC (Model – View – Controller), đánh dấu một bước tiến quan trọng trong việc tổ chức và quản lý mã nguồn.

- MVC được phát minh tại Xerox Parc vào những năm 70, bởi

The Model-View-Controller (MVC) architecture was first publicly introduced in Smalltalk-80, with significant foundational documents like “A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk-80” authored by Glenn This framework has since become a cornerstone in software design, facilitating the separation of concerns in application development.

Krasner và Stephen Pope, xuất bản trong tháng 8 / tháng 9 năm 1988.

- Thế hệ tiếp theo của MVC xuất hiện cùng với hệ điều hành NeXT và các phần mềm của nó.

Kiến trúc phần mềm đang ngày càng được cải tiến và phát triển để giải quyết các vấn đề phát sinh trong quá trình phát triển Những giải pháp mới được đưa ra nhằm tối ưu hóa hiệu quả và nâng cao chất lượng sản phẩm phần mềm.

- Vì vậy sau đó, lần lượt các MVC framework ra đời dựa trên mô hình MVC như: CodeIgniter, Zend, ASP.NET MVC …

Thời gian phát hành Phiên bản

Bảng 1 Lịch sử các phiên bản MVC.

2.1.2 Sự khác nhau giữa MVC và webform

Thành ASP.net MVC chia ra làm 3 phần: ASP.net WebForm sử dụng phần

– Models ViewState để quản lý Các

– View trang ASP.net đều có

– Controller lifecycle, postback và dùng

Mọi tương tác của người dùng với các web controls, các event

Views sẽ được xử lý thông qua việc để thực hiện các hành động thực hiện các action hành động trong cho UI (User Interface)

Controllers, không còn postback, Khi có sự tương tác với lifecycle và events người dùng nên hầu hết

ASP.net WebForm xử lý chậm.

Với ASP.NET WebForms, việc thực hiện unit test có thể gặp khó khăn hơn so với MVC Trong khi MVC cho phép kiểm tra các Controllers một cách dễ dàng, thì việc thay đổi ID của bất kỳ Controls nào trong WebForms có thể ảnh hưởng đến toàn bộ ứng dụng.

Bảng 2 Sự khác nhau giữa MVC và Webform

2.1.3 Kiến trúc sử dụng ASP.NET MVC

ASP.NET MVC là một framework nhẹ, giúp đơn giản hóa quá trình phát triển ứng dụng web bằng cách phân chia thành ba tầng: Model, View và Controller Sự phân chia này không chỉ giúp lập trình viên dễ dàng quản lý các thành phần trong quá trình phát triển mà còn mang lại lợi ích lâu dài cho việc kiểm tra, bảo trì và nâng cấp ứng dụng.

Model là thành phần quan trọng trong ứng dụng, chứa đựng các đặc tính và logic cốt lõi Nó đại diện cho dữ liệu và thông tin cần thiết để thao tác, thường được biểu diễn dưới dạng các lớp (class) Ví dụ, một Model cho "Sản phẩm" sẽ bao gồm các thông tin như "Tên sản phẩm", "Loại sản phẩm" và "Đơn giá".

View đóng vai trò quan trọng trong việc trình bày một hoặc nhiều Model một cách trực quan trên trang web Nó nhận thông tin từ Model và thể hiện chúng một cách sinh động, giúp người dùng dễ dàng tiếp cận và tương tác với dữ liệu.

- Controller: Controller nằm giữa tầng View và Model, làm nhiệm vụ tìm kiếm, xử lý một hoặc nhiều Model, sau đó gửi Model tới View để View hiển thị.

Hình 2 Mô hình MVC

2.1.4 Đặc điểm ASP.NET MVC Framework

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

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

ASP.NET offers comprehensive security features, including Form and Windows authentication, URL authorization, and robust membership and role management It also supports output and data caching, along with section and profile state management, all integrated within a flexible configuration system and provider architecture.

 Tách rõ ràng các mối liên quan, mở ra khả năng test TDD (Test Driven Developer).

Bạn có thể thực hiện kiểm tra đơn vị (unit test) trong ứng dụng mà không cần chạy các Controllers cùng với tiến trình của ASP.NET Điều này cho phép bạn sử dụng bất kỳ framework kiểm tra đơn vị nào như NUnit, MBUnit, hay MS Test để đảm bảo chất lượng mã nguồn hiệu quả.

MVC có khả năng mở rộng với thiết kế giúp dễ dàng thay thế và tùy biến mọi thành phần Hệ thống ánh xạ URL mạnh mẽ cho phép xây dựng ứng dụng với các URL sạch, tối ưu hóa trải nghiệm người dùng và cải thiện SEO.

 Không sử dụng mô hình post-back từ giao diện gửi đến server Thay vào đó, chủ động đưa những post-back từ View đến thẳng lớp Controller.

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

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

- Các loại view engine o Web Forms (ASPX) o Razor o Hay một view engine nguồn mở như Spark, NHaml, NDjango.

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

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

URLs sang các Controller Classes.

Bạn có thể dễ dàng thiết lập các quy tắc và cấu hình đường dẫn trong ASP.NET, từ đó hệ thống sẽ xác định Controller và action cần thực thi dựa trên các quy tắc đó.

- ASP.NET còn có khả năng phân tích URL, chuyển các thông số trong

URL thành các tham số trong lời gọi hàm của Controller.

- Model Binding là tính năng thế mạnh của ASP.NET MVC (và bây giờ nó cũng được áp dụng cho cả Web Forms trong phiên bản ASP.NET 4.5).

- Hỗ trợ bạn viết phương thức nhận một đối tượng tùy biến như là một tham số

Với sự hỗ trợ của Model Binding, bạn có thể tập trung vào việc triển khai các nghiệp vụ logic mà không phải lo lắng về việc ánh xạ dữ liệu từ người dùng sang các đối tượng NET.

Sinh viên thực hiện: Trần Lam Anh – 13D480201016 8

Tính năng kiểm tra tính hợp lệ trong ASP.NET MVC là một yếu tố quan trọng, giúp đảm bảo dữ liệu đầu vào được xác thực trước khi gọi phương thức action hoặc sau khi phương thức action được thực thi.

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

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

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

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

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

Mô hình MVC5

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

- So với phiên bản ASP.NET MVC2 thì MVC3 được hỗ trợ thêm HTML5 và CSS3.

- Cải thiện về Model Validation – tính năng kiểm tra tính hợp lệ của dữ liệu do người dùng nhập vào.

- Hỗ trợ 2 View Engine: RAZOR, ASPX, kể cả Open source trong khi ASP.NET MVC2 chỉ có ASPX.

- Controller được cải tiến hơn như thuộc tính ViewBag và kiểu ActionResult.

Enhance Dependency Injection in ASP.NET MVC3 with IDependencyResolver, which consists of the DependencyResolver and the IDependencyResolver interface This implementation follows the Service Locator pattern, enabling the framework to invoke the DIContainer when interacting with a specific implementation of a given type.

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

- Hỗ trợ caching trong Partial page.

- ASP.NET Web API ra đời, nhằm đơn giản hoá việc lập trình với HTML hiện đại và đây là một cải tiến mới thay cho WCF Web API.

- Mặc định của dự án được cải thiện hơn về hình thức bố trí, giúp dễ nhìn hơn.

- Mẫu Empty Project là project trống, phù hợp cho những developer muốn nâng cao khả năng lập trình với ASP.NET MVC4.

- Giới thiệu jQuery Mobile và mẫu Mobile Project cho dự án.

- Kiểm soát Bundling và Minification thông qua web.config.

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

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

2.2.2 Các cải tiến của MVC5

- Với MVC5 thì cải tiến hơn so với ASP.NET MVC4, Bootstrap được thay thế mẫu MVC mặc định.

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

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

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

Bootstrap là một framework CSS do Twitter phát triển, giúp web designer tiết kiệm thời gian bằng cách cung cấp bộ chọn, thuộc tính và giá trị sẵn có Nó cho phép giảm thiểu việc lặp lại khi tạo class CSS và mã HTML trong các dự án web Ngoài CSS, Bootstrap còn tích hợp các chức năng tiện ích dựa trên jQuery như Carousel, Tooltip và Popovers.

 Những lý do để sử dụng Bootstrap:

Được phát triển bởi những chuyên gia có óc thẩm mỹ và tài năng toàn cầu, trình duyệt này đã trải qua nhiều lần kiểm tra tính tương thích với thiết bị, đảm bảo độ tin cậy cao trong kết quả Nhờ đó, dự án của bạn sẽ tiết kiệm được cả thời gian và chi phí mà không cần phải kiểm tra lại nhiều lần.

Chỉ cần nắm vững kiến thức cơ bản về HTML, CSS, Javascript và Jquery, bạn có thể tận dụng Bootstrap để xây dựng một trang web đẹp mắt và hoàn chỉnh mà không cần phải viết quá nhiều mã CSS.

Giao diện mặc định của nền tảng này có màu xám bạc sang trọng, tích hợp các thành phần cần thiết cho các website hiện đại Là mã nguồn mở, bạn có thể tùy chỉnh mã nguồn theo sở thích cá nhân của mình.

- Do có sử dụng Grid System nên Bootstrap mặc định hỗ trợ Responsive

Bootstrap được thiết kế theo hướng Mobile First, ưu tiên giao diện cho thiết bị di động trước tiên Việc sử dụng Bootstrap giúp website của bạn tương thích với mọi kích thước màn hình, loại bỏ nhu cầu xây dựng một trang web riêng biệt cho phiên bản di động.

Đội ngũ phát triển Bootstrap đã giới thiệu tính năng Customizer, cho phép các designer lựa chọn thuộc tính và component phù hợp với dự án của họ Tính năng này giúp người dùng không cần tải toàn bộ mã nguồn về máy, tiết kiệm thời gian và tài nguyên.

Một trong những vấn đề bảo mật quan trọng nhất là đảm bảo chỉ những người dùng hợp lệ được truy cập vào hệ thống Trong ASP.NET, hai khái niệm chính liên quan đến vấn đề này là Xác thực (Authentication) và Phân quyền (Authorize).

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

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

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

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

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

Windown Authentication Ứng dụng chạy trên intranet tức sử dụng tài khoản windows để đăng nhập

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

Mỗi loại bảo mật phù hợp với các ứng dụng khác nhau Khi lựa chọn Tài khoản Người dùng Cá nhân, ứng dụng sẽ chạy trên Internet và sử dụng SQL Server để lưu trữ thông tin thành viên hoặc cho phép đăng nhập từ các hệ thống bên ngoài như Google, Facebook Người dùng có thể thực hiện các thao tác như đăng ký, đăng nhập, đổi mật khẩu và đăng xuất với tài khoản cục bộ hoặc từ các nền tảng bên ngoài như Google và Facebook.

Code của AccountController có hai điểm khác biệt chính: đầu tiên, annotation [Authorize] được sử dụng để ngăn chặn mọi hành động trong controller nếu người dùng chưa đăng nhập, trừ khi hành động đó được đánh dấu bằng annotation [AllowAnonymous] Thứ hai, thuộc tính UserManager được khởi tạo trong constructor nhằm quản lý các thành viên, cho phép thực hiện các chức năng bảo mật như đăng ký, đăng nhập và đổi mật khẩu.

Giới thiệu Entity Framework

Entity Framework (EF) là một framework ánh xạ quan hệ đối tượng (ORM) cho ADO.NET, thuộc NET Framework, cho phép các nhà phát triển Web tương tác với dữ liệu quan hệ theo phương pháp hướng đối tượng Lợi ích lớn nhất của EF là giảm thiểu mã nguồn cần thiết để truy cập và tương tác với cơ sở dữ liệu Được Microsoft hỗ trợ phát triển lâu dài, EF trở thành một trong những framework mạnh nhất hiện nay cho phát triển ứng dụng Web, với sự ủng hộ rộng rãi từ cộng đồng lập trình viên.

Hình 3 Mô hình ki ến trúc Entity Framework

Ứng dụng là lớp giao diện của trang web, bao gồm HTML, CSS, Javascript, hình ảnh và mã nguồn như C# và VB, nhằm tương tác dữ liệu với các tầng khác trong mô hình thông qua dịch vụ đối tượng.

Dịch vụ đối tượng (Object Services) là tầng trung gian giữa ứng dụng và cơ sở dữ liệu, cho phép truy cập và trả kết quả dữ liệu về giao diện Nó cung cấp tiện ích để theo dõi các thay đổi và quản lý danh tính cũng như các mối quan hệ trong cơ sở dữ liệu Các lớp này được tự động sinh ra dựa trên mô hình dữ liệu.

ObjectContext là đại diện cho một cơ sở dữ liệu, có nhiệm vụ quản lý các kết nối và định nghĩa mô hình dữ liệu thông qua metadata Lớp này không chỉ thao tác với cơ sở dữ liệu mà còn cho phép thêm các phương thức để đại diện cho các stored procedure trong cơ sở dữ liệu.

ObjectSet là tập hợp các thực thể, trong đó mỗi thực thể tương ứng với một bảng trong cơ sở dữ liệu Người dùng có thể truy xuất các thực thể này thông qua các thuộc tính tương ứng của ObjectContext.

- EntityObject, ComplexObject là các lớp tương ứng cho một dòng dữ liệu của table trong database Khác biệt chính giữa hai loại này là ComplexObject không chứa primary key.

EntityCollection and EntityReference are objects that represent the relationship between two entity classes Each of these objects can be accessed through the properties of the entity class.

- Sự ánh xạ tương đương được thể hiện bảng sau:

Database Object Entity Framework Object

Bảng 4 Bảng ánh xạ tương đương giữa các đối tượng trong database và EF

EntityClient là một nhà cung cấp dữ liệu mới trong ADO.NET, được thiết kế để truy xuất thông tin từ cơ sở dữ liệu Nó được xây dựng dựa trên các nhà cung cấp dữ liệu ADO.NET cơ bản và không thực hiện truy xuất dữ liệu trực tiếp, mà thay vào đó, sử dụng các nhà cung cấp dữ liệu khác dựa trên thông tin từ Entity Data Model.

EntityClient includes classes similar to other ADO.NET data providers, with class names prefixed by "Entity." For instance, you can establish a connection using EntityConnection, create queries with EntityCommand, and read results through EntityDataReader.

EntityClient distinguishes itself from other data providers by utilizing Entity SQL for data querying The Entity SQL commands are transformed into a command tree structure, which is then passed down to other data providers for execution.

2.3.5 Tầng ADO.NET Data Providers Đây là tầng thấp nhấp để dịch các truy vấn L2E (LINQ to Entity) thông qua cây lệnh thành các câu lệnh SQL và thực thi các câu lệnh trong hệ thống DBMS (database management system – hệ quản lý dữ liệu) nào đó Tầng này kết với database sử dụng ADO.NET.

EntityClient là một nhà cung cấp dữ liệu mới trong ADO.NET, được thiết kế để truy xuất dữ liệu từ cơ sở dữ liệu Khác với các nhà cung cấp dữ liệu ADO.NET truyền thống, EntityClient không truy xuất dữ liệu trực tiếp mà sử dụng các nhà cung cấp dữ liệu khác, dựa trên thông tin từ Entity Data Model.

EntityClient includes classes similar to other ADO.NET data providers, with class names prefixed by "Entity." For instance, you can establish a connection using EntityConnection, create queries with EntityCommand, and read results using EntityDataReader.

EntityClient distinguishes itself from other data providers by utilizing Entity SQL for data queries The Entity SQL commands are transformed into a command tree structure, which is then passed down to other data providers.

2.3.6 Tầng EDM (Entity Data Model)

Mô hình dữ liệu Entity Data Model (EDM) được định nghĩa thông qua các ngôn ngữ chuẩn XML và bao gồm ba lớp chính: Conceptual, Mapping và Logical Mỗi lớp này được quy định bởi ngôn ngữ riêng biệt theo định dạng XML.

Conceptual Schema Definition Language (CSDL) is a language used to define entities, relationships, and functions within files that have the csdl extension It enables the creation of entity classes, facilitating the development of the object layer in applications.

- Mapping – Mapping specification language (MSL): định nghĩa các ánh xạ giữa lớp conceptual và logical, nội dung này được lưu trong tập tin msl.

- Logical – Store Schema Definition Language (SSDL): định nghĩa mô hình lưu trữ của dữ liệu, lưu trữ trong tập tin ssdl.

Hình 4 Lưu đồ Entity Mapping Model

2.3.7 Cách sử dụng trong Entity Framework

Tổng quan về SQL Server

SQL Server là hệ quản trị cơ sở dữ liệu quan hệ do Microsoft phát triển, hoạt động theo mô hình khách-chủ Hệ thống này cho phép nhiều người dùng truy cập dữ liệu đồng thời, đồng thời quản lý quyền truy cập và quyền hạn của từng người dùng trên mạng.

Tổng quan về ngôn ngữ giao diện

HTML, viết tắt của HyperText Markup Language, là ngôn ngữ đánh dấu dùng để tạo ra các trang web trên World Wide Web Kết hợp với CSS và JavaScript, HTML là một trong ba công nghệ nền tảng cho việc phát triển web Hiện tại, HTML5 đang được phát triển, hứa hẹn mang đến diện mạo mới cho các trang web.

Trong ASP.NET, các thẻ HTML có thể được sử dụng kết hợp với các lệnh ngôn ngữ C# thông qua việc khai báo @{…} hoặc @, cho phép tạo ra một mẫu view (file cshtml).

Từ phiên bản Asp.net MVC 3, Microsoft đã chọn Razor View Engine làm View Engine mặc định Khi có yêu cầu View từ Http Request, Razor View Engine sẽ tiến hành biên dịch trang View tương ứng.

Khi sử dụng Razor View Engine, lập trình viên không cần học ngôn ngữ mới, vì Razor kết hợp cú pháp HTML với C# hoặc VB trong các trang View Điều này giúp các lập trình viên quen thuộc với C# hoặc VB dễ dàng làm quen và sử dụng Razor View Engine.

2.6.2.2 Cú pháp Razor Để thông dịch các đoạn mã được viết bởi các ngôn ngữ như C#, VB trong các trang View, Razor đưa ra những quy tắc nhằm để xác định các đoạn mã đó được biên dịch ở phía Server (server-side code) và các đoạn mã đánh dấu (markup code) được thực hiện biên dịch ở phía client (như javascript, css, html, …), Razor sử dụng ký tự @ nhằm phân biệt giữa server-side code và markup code.

Khi tạo ra các Razor view chúng ta cần chú ý như sau :

Để viết một khối mã lệnh trong Razor, lập trình viên có thể sử dụng cú pháp @{ code } Để tạo một biểu thức inline, chỉ cần sử dụng ký tự @ trong đoạn mã markup.

Sử dụng từ khóa var để khai báo biến

Sử dụng ; để kết thúc một câu lệnh

Razor views that utilize the C# language have file extensions ending in cshtml, while those using VB language have file extensions ending in vbhtml.

Razor là một công cụ hữu ích cho lập trình viên trong việc viết mã lệnh trực tiếp tại các View Mỗi khối mã lệnh Razor được tích hợp vào View và có thể được viết bằng ngôn ngữ C# hoặc VB.

Mô tả code : là các đoạn mã code được viết bởi ngôn ngữ C# hoặc VB và được biên dịch ở phía Server

Hình 6 Minh họa khối mã lệnh Razor View

CSS, viết tắt của Cascading Style Sheets, là tập hợp các lệnh định dạng cho các phần tử HTML, bao gồm màu sắc, kích thước và font chữ Nhờ có CSS, giao diện và nội dung của website trở nên rõ ràng và hấp dẫn hơn đối với người dùng.

Hình 7 Vai trò CSS v ới Website

Bootstrap là framework hàng đầu và phổ biến nhất hiện nay, hỗ trợ phát triển giao diện website cho cả thiết bị di động và máy tính, bao gồm HTML, CSS và JavaScript Phiên bản mới nhất của Bootstrap tại thời điểm thực hiện tutorial là 3.3.2.

Bootstrap là một framework phổ biến nhờ vào những lợi ích lớn mà nó mang lại, như khả năng tạo giao diện website tương thích với các thiết bị smartphone, tablet và máy tính để bàn thông qua tính năng tự động co giãn kích thước Với các module hỗ trợ sẵn, Bootstrap giúp người dùng dễ dàng tìm hiểu và nhanh chóng xây dựng giao diện.

JavaScript (.js) là một ngôn ngữ lập trình kịch bản dựa trên đối tượng, phát triển từ các ý niệm nguyên mẫu và được sử dụng rộng rãi trên các trang web cũng như trong việc viết script cho các ứng dụng Ngôn ngữ này có cú pháp tương tự C, nhưng gần giống với Self hơn là Java Hiện nay, nhiều framework và thư viện nổi bật được phát triển bằng JavaScript, bao gồm jQuery - một thư viện mạnh mẽ và thông dụng, AngularJS - thư viện cho ứng dụng Single Page, NodeJS - thư viện phía Server cho ứng dụng realtime, và Firebase - nền tảng di động lưu trữ dữ liệu theo thời gian thực.

- jQuery là một thư viện kiểu mới của JavaScript, được tạo bởi John Resig vào năm 2006 với một phương châm tuyệt vời: Write less, do more.

jQuery giúp đơn giản hóa việc xử lý HTML, sự kiện, hiệu ứng động và tương tác Ajax, mang lại trải nghiệm phát triển web nhanh chóng Nhờ jQuery, khái niệm Phát triển Web Nhanh (Rapid Web Development) trở nên dễ tiếp cận hơn bao giờ hết.

jQuery là một bộ công cụ JavaScript giúp đơn giản hóa các tác vụ bằng cách giảm thiểu lượng code cần viết Một số tính năng quan trọng của jQuery bao gồm khả năng thao tác DOM, cho phép người dùng dễ dàng chọn và duyệt các phần tử DOM giống như sử dụng CSS, cùng với việc chỉnh sửa nội dung thông qua một công cụ Selector mã nguồn mở gọi là Sizzle Ngoài ra, jQuery cũng hỗ trợ xử lý các sự kiện một cách hiệu quả.

jQuery là một thư viện JavaScript mạnh mẽ giúp cải thiện tương tác với người dùng thông qua việc xử lý sự kiện một cách linh hoạt mà không làm rối mã HTML Nó hỗ trợ công nghệ AJAX, cho phép phát triển các trang web với tính năng phong phú và khả năng phản hồi tốt Ngoài ra, jQuery cung cấp nhiều hiệu ứng đẹp mắt và đa dạng, giúp nâng cao trải nghiệm người dùng Đặc biệt, jQuery có kích thước nhẹ, chỉ khoảng 19KB, giúp tối ưu hóa hiệu suất trang web.

Vài nét về thương mại điện tử B2C

Mô hình B2C (Business to Consumer), hay còn gọi là mô hình bán lẻ trực tuyến, là hình thức thương mại điện tử diễn ra giữa doanh nghiệp và người tiêu dùng Trong mô hình này, các công ty, doanh nghiệp tiến hành buôn bán và trao đổi hàng hóa cũng như dịch vụ trực tiếp với người tiêu dùng Doanh nghiệp có thể bao gồm nhà sản xuất, nhà phân phối hoặc đại lý.

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

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

Cửa hàng điện tử (e-store) là một trang web chuyên cung cấp hàng hóa và dịch vụ, thường do cá nhân, nhà sản xuất hoặc nhà bán lẻ sở hữu Trang web này thường bao gồm danh mục sản phẩm, công cụ tìm kiếm, giỏ hàng, cổng thanh toán và dịch vụ khách hàng, nhằm tạo điều kiện thuận lợi cho người tiêu dùng trong việc mua sắm trực tuyến.

Siêu thị điện tử (e-mall) là một nền tảng trực tuyến tập hợp nhiều cửa hàng điện tử, cung cấp danh bạ hàng hóa phong phú và danh mục các cửa hàng đa dạng.

2.7.3 Hoạt động của mô hình B2C

Mô hình B2C được sử dụng phổ biến trong các siêu thị điện tử và website bán lẻ, nơi khách hàng có thể truy cập, lựa chọn sản phẩm, cung cấp thông tin cần thiết, chọn phương thức thanh toán và hoàn tất đơn hàng.

PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG

Xác định Actor

3.1.1 Quản trị viên hệ thống

- Là thành viên có cấp độ cao nhất khi giao tiếp với hệ thống với toàn quyền thao tác với hệ thống.

Thêm thành viên vào hệ thống là một bước quan trọng, giúp phân quyền cho người dùng phù hợp với vai trò và nhiệm vụ của họ Việc cấp quyền này đảm bảo rằng mỗi nhân viên có khả năng thao tác với hệ thống một cách hiệu quả và an toàn.

3.1.2 Giám đốc, kế toán, thư ký

Người dùng có đầy đủ quyền thao tác với hệ thống tương tự như quản trị viên, nhưng không có các quyền đặc thù riêng của quản trị viên như điều chỉnh giao diện hay quản lý hệ thống.

- Và dưới đây Giám đốc, Kế toán và Thư ký được gọi chung là Nhân sự công ty

3.1.3 Nhân viên kinh doanh (người dùng hệ thống)

- Tạo và quản lý sản phẩm, đơn hàng, đơn vận trên hệ thống

- Thêm mới, cập nhật thông tin khách hàng trên hệ thống

- Thêm mới, cập nhật thông tin nhà cung cấp, nhập hàng vào hệ thống

Xác định UseCase

3.2.1 Quản trị viên hệ thống

- Thay đổi cấu trúc giao diện hệ thống

- Cấu hình xử lý các thông tin hệ thống

- Quản trị tài khoản quản trị viên hệ thống

- Quản trị tài khoản giám đốc, thư ký, kế toán

- Quản trị tài khoản nhân viên kinh doanh

3.2.2 Nhân sự công ty (Giám đốc, thư ký và kế toán)

- Quản trị tài khoản nhân viên kinh doanh

- Quản trị thông tin thống kê, báo cáo

- Quản trị sản phẩm và cấu hình sản phẩm

- Quản trị đối tác vận chuyển và vận đơn

- Quản trị tài khoản ngân hàng của nhân viên

- Quản trị thông tin khách hàng

- Quản trị thông tin khuyến mãi

- Quản trị sản phẩm và cấu hình sản phẩm

- Quản trị thông tin khách hàng, tài khoản ngân hàng khách hàng

- Quản trị đối tác vận chuyển và vận đơn

Mô hình tương tác người dùng và hệ thống

Hình 8 Sơ đồ UseCase tổng thể

3.3.2 Sơ đồ phân rã Actor

- Quản trị cấu hình hiển thị hệ thống

Hình 9 UseCase quản trị cấu hình hệ thống

- Quản trị tài khoản nhân sự công ty

Hình 10 UseCase qu ản trị nhân sự

3.3.2.2 Actor Nhân sự công ty

- Quản trị tài khoản người dùng (nhân viên kinh doanh)

- Quản trị báo cáo thống kê

Hình 12 UseCase quản trị báo cáo thống kê

- Quản trị nhà cung cấp

Hình 13 UseCase qu ản trị nhà cung cấp

Hình 14 UseCase qu ản trị nhập hàng

Hình 15 UseCase qu ản trị khuyến mãi

- Quản trị sản phẩm và cấu hình

Hình 16 UseCase qu ản trị sản phẩm và cấu hình

Hình 17 UseCase qu ản trị hóa đơn

- Quản trị tài khoản ngân hàng

Hình 18 UseCase qu ản trị tài khoản ngân hàng

- Quản trị đối tác vận chuyển

Hình 19 UseCase quản trị đối tác vận chuyển

Hình 20 UseCase qu ản trị vận đơn

3.3.2.3 Actor Nhân viên công ty

Hình 21 UseCase qu ản trị nhập hàng của nhân viên

- Quản trị sản phẩm và cấu hình

Hình 22 UseCase qu ản trị sản phẩm và cấu hình của nhân viên

Hình 23 UseCase qu ản trị hóa đơn của nhân viên

Hình 24 UseCase quản trị vận đơn của nhân viên

- Quản trị tài khoản ngân hàng

Hình 25 UseCase qu ản trị tài khoản ngân hàng của nhân viên

3.3.3 Đặc tả các UseCase tổng quát

3.3.3.1 Đặc tả UseCase đăng nhập

Tên Use case Đăng nhập

Mô tả Use case Chức năng này thực hiện kiểm tra Mã Nhân viên và

Mật khẩu đăng nhập của người dùng trong hệ thống.

Tác nhân chính Quản trị viên, Nhân sự công ty, nhân viên kinh doanh

Người chịu trách nhiệm Quản trị viên

Tiền điều kiện không yêu cầu, nhưng cần đảm bảo tối thiểu để hệ thống tự động thoát khi không sử dụng Người dùng sẽ thấy màn hình đăng nhập lại, đảm bảo thành công khi truy cập vào trang chính của hệ thống.

Kích hoạt Truy cập vào hệ thống (https://seller.mrtrananh.com)

- Nhập mật khẩu đăng nhập

Chuổi sự kiện chính - Gõ Enter hoặc Click Đăng nhập

- Hệ thống kiểm tra Mã nhân viên, mật khẩu đăng nhập

Ngoại lệ Không có Điểm mở rộng Không có

Bảng 5 Đặc tả UseCase đăng nhập

3.3.3.2 Đặc tả UseCase Cấu hình giao diện

Tên Use case Cấu hình giao diện

Một giao diện thường ngày thường giờ phải dụng đã

Việc mô tả use case có thể trở nên nhàm chán hoặc thiếu tính tiện dụng cho người dùng Do đó, quản trị viên cần thay đổi các khối hiển thị trên giao diện để phù hợp hơn với nhu cầu của người sử dụng.

Tác nhân chính Quản trị viên

Người chịu trách nhiệm Quản trị viên

Để đảm bảo việc đăng nhập vào hệ thống thành công, người dùng cần đáp ứng các điều kiện tối thiểu Giao diện hiện hành sẽ trở về trạng thái ban đầu, và các khối thông tin sẽ được điều chỉnh để hiển thị đúng theo nhu cầu của người sử dụng.

Kích hoạt Từ Menu của hệ thống lựa chọn mục Quản trị > Cấu hình giao diện

- Vào chuyên mục Cấu hình giao diện

- Cấu hình khối giao diện

Chuổi sự kiện chính - Lựa chọn hiển thị các khối cần thiết

- Thay đổi vị trí hiển thị của khối hiển thị theo nhu cầu sử dụng

Ngoại lệ Không có Điểm mở rộng Không có

Ba ng 6 Đặc tả UseCase C ấu hình giao di ện ̉̉

3.3.3.3 Đặc tả UseCase Quản trị tài khoản nhân sự

Tên Use case Quản trị tài khoản nhân sự Đối với một công ty việc thay đổi nhân sự, thay đổi vị

Sử dụng trí tuệ nhân tạo trong quản lý nhân sự là một xu hướng tất yếu, giúp tối ưu hóa quy trình quản trị và quản lý thông tin nhân viên Việc áp dụng công nghệ này không chỉ nâng cao hiệu quả làm việc mà còn đảm bảo thông tin nhân sự được quản lý một cách chính xác và nhanh chóng.

Tác nhân chính Quản trị viên, Nhân sự công ty

Người chịu trách nhiệm Quản trị viên, Nhân sự công ty

Để đảm bảo quá trình đăng nhập vào hệ thống diễn ra suôn sẻ, cần thiết phải có tiền điều kiện rõ ràng Việc xóa nhân sự không còn hoạt động khỏi hệ thống cũng rất quan trọng để duy trì tính chính xác Sau khi cập nhật thông tin, cần lưu trữ thông tin của nhân sự mới và nhân sự đã được chỉnh sửa để đảm bảo thông tin luôn được cập nhật và đầy đủ.

Từ Menu chức năng hệ thống lựa chọn chuyên mục

Kích hoạt Người dùng > Thêm mới hoặc lựa chọn người dùng trong bảng Người dùng > Cập nhật

-Lựa chọn thêm người dùng

-Nhập thông tin người dùng

-Lựa chọn chức vụ người dùng là các chức vụ thuộc nhân sự công ty tương ứng

Chuổi sự kiện chính 2 Cập nhật thông tin

-Chọn người dùng cần cập nhật

-Điền thông tin thay đổi

-Chọn người dùng cần xóa

Nhân sự đã tạo đơn hàng tại công ty sẽ không thể bị xóa mà chỉ có thể được vô hiệu hóa.

Bảng 7 UseCase Quản trị tài khoản nhân sự

3.3.3.4 Đặc tả UseCase Quản trị tài khoản nhân viên kinh doanh

Tên Use case Quản trị tài khoản nhân viên kinh donah Đối với một công ty việc thay đổi hoặc thêm mới nhân

Mô tả use case cho viên kinh doanh là điều cần thiết, vì nó giúp quản lý hiệu quả các thông tin liên quan đến nhân viên kinh doanh Việc này không chỉ hỗ trợ trong việc theo dõi hiệu suất làm việc mà còn nâng cao khả năng quản trị và phát triển đội ngũ kinh doanh.

Tác nhân chính Quản trị viên, Nhân sự công ty

Người chịu trách nhiệm Quản trị viên, Nhân sự công ty

Tiền điều kiện Đăng nhập vào hệ thống Đảm bảo tối thiểu Xóa nhân viên kinh doanh ra khỏi hệ thống

Lưu trữ thông tin nhân viên kinh doanh mới mới, nhân Đảm bảo thành công viên kinh doanh sau khi cập nhật thông tin vào hệ thống

Từ Menu chức năng hệ thống lựa chọn chuyên mục

Kích hoạt Người dùng > Thêm mới hoặc lựa chọn người dùng trong bảng Người dùng > Cập nhật

1 Thêm mới nhân viên kinh doanh:

-Lựa chọn thêm người dùng

-Nhập thông tin người dùng

-Lựa chọn chức vụ người dùng là các chức vụ thuộc nhân viên kinh doanh công ty tương ứng

Chuổi sự kiện chính - Xác nhận thêm

-Chọn người dùng cần cập nhật

-Điền thông tin thay đổi

-Chọn người dùng cần xóa

Nhân viên kinh doanh từng tạo các đơn hàng tại công

Ngoại lệ ty thì không thể xóa mà thay vào đó là vô hiệu hóa người dùng. Điểm mở rộng Không có

Bảng 8 Đặc tả UseCase Quản trị tài khoản nhân viên kinh doanh

3.3.3.5 Đặc tả UseCase Quản trị nhà cung cấp

Tên Use case Quản trị nhà cung cấp

Thông tin nhà cung cấp sản phẩm là quan trọng, góp

Mô tả trường hợp sử dụng phần mềm giúp quản lý dữ liệu lâu dài sau khi nhập hàng vào hệ thống, hỗ trợ công ty trong việc thống kê và kiểm toán một cách dễ dàng và hiệu quả.

Tác nhân chính Nhân sự công ty

Người chịu trách nhiệm Quản trị viên, Nhân sự công ty

Để đảm bảo quá trình đăng nhập vào hệ thống diễn ra suôn sẻ, cần phải đáp ứng các điều kiện tối thiểu Việc xóa nhà cung cấp không còn hoạt động ra khỏi hệ thống là cần thiết để duy trì tính chính xác của dữ liệu Sau khi cập nhật thông tin, hệ thống sẽ lưu trữ thông tin của nhà cung cấp mới một cách hiệu quả, đảm bảo rằng tất cả dữ liệu được cập nhật chính xác và kịp thời.

Từ Menu chức năng hệ thống lựa chọn chuyên mục

Kích hoạt Nhà cung cấp > Thêm mới hoặc lựa chọn Nhà cung cấp trong bảng Nhà cung cấp > Cập nhật

1 Thêm mới nhà cung cấp:

-Lựa chọn thêm nhà cung cấp

-Nhập thông tin nhà cung cấp

Chuổi sự kiện chính 2 Cập nhật thông tin

-Chọn nhà cung cấp cần cập nhật

-Điền thông tin thay đổi

-Chọn nhà cung cấp cần xóa

Ngoại lệ Nhà cung cấp đã từng cung cấp hàng thông qua nhập hàng thì không thể xóa khỏi hệ thống. Điểm mở rộng Không có

Ba ng 9 Đặc tả UseCase Quản trị nhà cung cấp ̉̉

3.3.3.6 Đặc tả UseCase Quản trị nhập hàng

Tên Use case Quản trị nhập hàng

Thông qua thông tin nhập hàng vào hệ thống với số

Mô tả trường hợp sử dụng lượng hàng và đơn giá nhập theo từng đợt, hỗ trợ nhân sự công ty trong việc thống kê hàng hóa, kiểm tra số lượng tồn kho và báo cáo doanh thu một cách hiệu quả.

Tác nhân chính Nhân sự công ty, nhân viên kinh doanh

Người chịu trách nhiệm Quản trị viên, Nhân sự công ty, nhân viên kinh doanh

Để đăng nhập vào hệ thống, người dùng cần đáp ứng các điều kiện tối thiểu Hệ thống cho phép tạo đơn nhập hàng với nhiều sản phẩm đa dạng trong phạm vi cung cấp của nhà cung cấp Đảm bảo rằng thông tin nhập hàng được lưu trữ thành công trong hệ thống.

Kích hoạt Từ Menu chức năng hệ thống lựa chọn chuyên mục

-Lựa chọn nhà cung cấp

Chuổi sự kiện chính -Nhập số lượng, đơn giá

-Nhập các thông tin khác: hạn thanh toán, đã thanh toán,…

Nhà cung cấp đã từng cung cấp hàng qua hình thức nhập hàng sẽ không thể bị xóa khỏi hệ thống Bên cạnh đó, điểm mở rộng cho phép người dùng in phiếu nhập hoặc lưu trữ dữ liệu dưới dạng file PDF.

Ba ng 10 Đặc tả UseCase Quản trị nhập hàng ̉̉

3.3.3.7 Đặc tả UseCase Quản trị khuyến mãi

Tên Use case Quản trị khuyến mãi

Chức năng cho phép tạo mới chương trình khuyến mãi

Mô tả Use case và quản lý chương trình khuyến mãi hiện có một cách hiệu quản nhất.

Tác nhân chính Nhân sự công ty

Người chịu trách nhiệm Quản trị viên, Nhân sự công ty

Để đăng nhập vào hệ thống, người dùng cần đảm bảo các điều kiện tối thiểu, bao gồm việc tạo mã khuyến mãi với đầy đủ thông tin khuyến mãi Điều này giúp đảm bảo thành công trong việc lưu trữ thông tin nhập hàng vào hệ thống.

Kích hoạt Từ Menu chức năng hệ thống lựa chọn chuyên mục

-Kiểm tra tỉnh khả dụng

Chuổi sự kiện chính -Nhập thông tin hạn khuyến mãi

-Nhập thông tin đối tượng áp dụng và các chính sách thụ hưởng khuyến mãi

Ngoại lệ Không có Điểm mở rộng Không có

Ba ng 11 Đặc tả UseCase Quản trị khuyến mãi ̉̉

3.3.3.8 Đặc tả UseCase Quản trị sản phẩm và các cấu hình

Tên Use case Quản trị sản phẩm và các cấu hình

Chức năng cho phép quản trị sản phẩm trong hệ thống với các thông tin căn bản của sản phẩm và các thuộc

Sản phẩm này được thiết kế để tối ưu hóa quy trình nhập hàng và xuất hóa đơn bán hàng, mang lại hiệu quả nhanh chóng và chính xác cao, đáp ứng nhu cầu của người dùng một cách hiệu quả nhất.

Tác nhân chính Nhân sự công ty, nhân viên kinh doanh

Người chịu trách nhiệm Quản trị viên, Nhân sự công ty, nhân viên kinh doanh

Tiền điều kiện Đăng nhập vào hệ thống

Thêm mới và cập nhật thông tin sản phẩm là cần thiết để quản lý hiệu quả các thuộc tính như kích thước, cân nặng, loại sản phẩm và các đặc điểm khác Điều này giúp đảm bảo rằng hệ thống luôn lưu trữ thông tin sản phẩm một cách chính xác và kịp thời.

Kích hoạt Từ Menu chức năng hệ thống lựa chọn chuyên mục

-Thêm thuộc tính Loại sản phẩm

-Thêm thuộc tính Nhóm sản phẩm

-Thêm thuộc tính quy cách đóng gói

Chuổi sự kiện chính -Nhập thông tin sản phẩm

-Lựa chọn các thuộc tính cho sản phẩm

-Nhập đơn giá sản phẩm

-Xác nhận thêm sản phẩm

Ngoại lệ Không có Điểm mở rộng Không có

Ba ng 12 Đặc tả UseCase Quản trị sản phẩm và các cấu hình ̉̉

3.3.3.9 Đặc tả UseCase Quản trị hóa đơn

Tên Use case Quản trị hóa đơn

Chức năng cho phép tạo mới hóa đơn bán hàng với các

Mô tả Use case thông tin khách hàng, hàng hóa mua, số lượng mua và tổng thanh toán hóa đơn nhanh chóng, tiện lợi và chính xác nhất.

Tác nhân chính Nhân sự công ty, nhân viên kinh doanh

Người chịu trách nhiệm Quản trị viên, Nhân sự công ty, nhân viên kinh doanh

Tiền điều kiện Đăng nhập vào hệ thống

Sơ đồ Class

Hình 26 Sơ đồ class tổng thể

Sơ đồ hoạt động các chức năng

Hình 27 Sơ đồ hoạt động đăng nhập vào hệ thống

3.5.2 Chức năng thêm người dùng

Hình 28 Sơ đồ hoạt động thêm nhân viên

3.5.3 Chức năng thêm khách hàng

Hình 29 Sơ đồ tuần tự thêm khách hàng

3.5.4 Chức năng thêm sản phẩm

Hình 30 Sơ đồ hoạt động thêm sản phẩm

3.5.5 Chức năng thêm hóa đơn/đơn hàng

Hình 31 Sơ đồ hoạt động thêm hóa đơn/đơn hàng

Sơ đồ tuần tự các chức năng

Hình 32 Sơ đồ tuần tự chức năng đăng nhập

3.6.2 Chức năng thêm nhân viên

Hình 33 Sơ đồ tuần tự thêm nhân viên

Hình 34 Sơ đồ hoạt động thêm khách hàng

3.6.4 Chức năng thêm sản phẩm

Hình 35 Sơ đồ tuần tự thêm sản phẩm

3.6.5 Chức năng thêm hóa đơn/đơn hàng

Hình 36 Sơ đồ tuần tự thêm hóa đơn/ đơn hàng

Mô hình cơ sở dữ liệu

MAHD MASP DONGIA SP SOLUONG TONGTIEN

Hình 37 Mô hình dữ liệu hệ thống

Sinh viên thực hiện: Trần Lam Anh – 13D480201016 53

Tổ chức bảng dữ liệu

TỔ CHỨC BẢNG DỮ LIỆU

3.8.1 Bảng dữ liệu BƯU CỤC

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MABC char(13) Not Null Mã bưu cục

2 TENBC nvarchar(256) Tên bưu cục

Ba ng 15 Bảng dữ liệu Bưu cục ̉̉

3.8.2 Bảng dữ liệu CHI TIẾT HÓA ĐƠN

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MAHD char(12) Not Null Mã hóa đơn

2 MASP int Not Null Mã sản phẩm

4 SOLUONG int Not Null Số lượng

5 TONGTIEN money Not Null Tổng tiền

Ba ng 16 Bảng dữ liệu Chi tiết hóa đơn ̉̉

3.8.3 Bảng dữ liệu CHI TIẾT NHẬP

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MAPN int Not Null Mã phiếu nhập

2 MASP int Not Null Mã sản phẩm

4 SOLUONGNHAP int Not Null Số lượng

5 DONGIANHAP money Not Null Đơn giá nhập

Ba ng 17 Bảng dữ liệu chi tiết nhập hàng ̉̉

3.8.4 Bảng dữ liệu CHỨC VỤ VỊ TRÍ

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MACV int Not Null Mã chức vụ

2 TENCV nvarchar(128) Tên chức vụ

Ba ng 18 Bảng dữ liệu Chức vụ vị trí ̉̉

3.8.5 Bảng dữ liệu ĐƠN VỊ TÍNH

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MACV int Not Null Mã chức vụ

2 TENCV nvarchar(128) Tên chức vụ

Ba ng 19 Bảng dữ liệu Đơn vị tính ̉̉

3.8.6 Bảng dữ liệu HÓA ĐƠN

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MAHD char(12) Not Null Mã hóa đơn

2 MAVD char(18) Mã vận đơn

3 MAKM char(8) Mã khuyến mãi

4 MANV char(8) Not Null Mã nhân viên

5 MAKH int Not Null Mã khách hàng

6 THOIGIANXUATHD datetime Not Null Thời gian xuất hóa đơn

7 HINHTHUCTHANHTOANHD int Not Null Hình thức thanh toán

8 TONGTIENHANGHD money Not Null Tổngtiền hàng

9 THUEHD int Thuế giá tị gia tăng

10 TONGTHANHTOANHD money Not Null Tổng thanh toán

11 SHIPHANGHD bit Not Null Có vận chuyển

12 PHISHIPHD money Phí vận chuyển

13 DATHANHTOANHD bit Not Null Đã thanh toán

15 DAGIAOHANGHD bit Not Null Đã giao hàng

Ba ng 20 Bảng dữ liệu Hóa đơn ̉̉

3.8.7 Bảng dữ liệu KHÁCH HÀNG

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MAKH int Not Null Mã khách hàng

3 TENKH nvarchar(256) Tên khách hàng

4 MASOTHUEKH char(10) Mã số thuế

5 DIENTHOAIKH char(13) Not Null Điện thoại

15 MABUUCHINHKH char(6) Mã bưu chính

Ba ng 21 Bảng dữ liệu Khách hàng ̉̉

3.8.8 Bảng dữ liệu KHUYẾN MÃI

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MAKM char(8) Not Null Mã khuyến mãi

2 TENKM nvarchar(256) Tên khuyến mãi

3 NGAYBATDAUKM datetime Not Null Ngày bắt đầu

4 NGAYKETTHUCKM datetime Not Null Ngày kết thúc

5 LOAIKM bit Not Null Loại khuyến mãi

6 GIATRIKM decimal(18, 0) Not Null Giá trị khuyến mãi

7 GIATRIDONHANGKM money Not Null Giá trị đơn hàng áp dụng

8 SOLANSUDUNGKM int Số lần sử dụng

Bảng 22 Bảng dữ liệu khuyến mãi

3.8.9 Bảng dữ liệu LOẠI SẢN PHẨM

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MALSP int Not Null Mã loại sản phẩm

2 TENLSP nvarchar(256) Tên loại sản phẩm

4 ANHMINHHOALSP char(1024) Ảnh minh họa

Ba ng 23 Bảng dữ liệu Loại sản phẩm ̉̉

3.8.10 Bảng dữ liệu NHÀ CUNG CẤP

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MANCC int Not Null Mã nhà cung cấp

2 TENNCC nvarchar(512) Tên nhà cung cấp

3 DIACHINCC nvarchar(256) Địa chỉ nhà cung cấp

8 MABUUCHINHNCC nvarchar(12) Mã bưu chính

9 DIENTHOAINCC char(13) Not Null Điện thoại

13 NGUOILIENHENCC nvarchar(256) Người liên hệ

14 SDTNGUOILIENHENCC char(13) Số điện thoại người liên hệ

Ba ng 24 Bảng dữ liệu Nhà cung cấp ̉̉

3.8.11 Bảng dữ liệu NHÂN VIÊN

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MANV char(8) Not Null Mã nhân viên

2 TENNV nvarchar(256) Tên nhân viên

3 NGAYSINHNV date Not Null Ngày sinh

8 SODIENTHOAINV char(13) Not Null Số điện thoại

10 SOCMTNV char(13) Số chứng minh

13 MatkhauNV char(32) Not Null Mật khẩu

Ba ng 25 Bảng cơ sở dữ liệu Nhân viên ̉̉

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MANSP int Not Null Mã nhóm sản phẩm

2 TENNSP nvarchar(256) Not Null Tên nhóm sản phẩm

4 ANHMINHHOANSP char(1024) Ảnh minh họa

Ba ng 26 Bảng dữ liệu Nhóm sản phẩm ̉̉

3.8.13 Bảng dữ liệu NHÓM SẢN PHẨM

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MASP int Not Null Mã sản phẩm

2 MANSP int Not Null Mã nhóm sản phẩm

Ba ng 27 Bảng dữ liệu Sản phẩm thuộc nhóm ̉̉

3.8.14 Bảng dữ liệu PHIẾU NHẬP

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MAPN int Not Null Mã phiếu nhập

2 MANCC int Not Null Mã nhà cung cấp

3 MANV char(8) Not Null Mã nhân viên

4 NGAYNHAPPN datetime Not Null Ngày nhập

5 TONGSOLUONGPN int Not Null Số lượng nhập

6 TONGTIENPN int Not Null Tổng tiền nhập

7 TONGMATHANGPN int Not Null Tổng mặt hàng

8 DATHANHTOANPN bit Đã thanh toán

9 HENTHANHTOANPN datetime Not Null Hẹn thanh toán

Ba ng 28 Bảng dữ liệu phiếu nhập ̉̉

3.8.15 Bảng dữ liệu QUY CÁCH ĐÓNG GÓI SẢN PHẨM

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MASP int Not Null Mã sản phẩm

2 MAQC int Not Null Mã quy cách

Ba ng 29 Quy cách đóng gói sản phẩm ̉̉

3.8.16 Bảng dữ liệu QUY CÁCH

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MAQC int Not Null Mã quy cách

3 SOLUONGQC int Not Null Số lượng

4 GIATRIQC int Not Null Giá trị

5 LOAIGITRIQC bit Loại giá trị

Ba ng 30 Bảng dữ liệu Quy cách ̉̉

3.8.17 Bảng dữ liệu SẢN PHẨM

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MASP int Not Null Mã sản phẩm

2 MADVT int Not Null Mã đơn vị tính

3 MALSP int Not Null Mã loại sản phẩm

4 MAKM char(8) Mã khuyến mãi

5 TENSP nvarchar(256) Tên sản phẩm

6 KHOILUONGSP float Not Null Khối lượng

10 NHASXSP nvarchar(512) Nhà sản xuất

12 DONGIASP money Not Null Đơn giá

15 THONGTINCHITIETSP ntext Thông tin chi tiết

16 ANHSP1 char(1024) Ảnh minh họa 1

17 ANHSP2 char(1024) Ảnh minh họa 2

18 ANHSP3 char(1024) Ảnh minh họa 3

Ba ng 31 Bảng dữ liệu Sản phẩm ̉̉

3.8.18 Bảng dữ liệu TÀI KHOẢN NGÂN HÀNG

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MATKNH int Not Null Mã tài khoản

2 TENNH nvarchar(512) Tên tài khoản

4 TENCHUTAIKHOANNH nvarchar(128) Tên chủ tài khoản

5 SOTAIKHOANNH char(15) Not Null Số tài khoản

6 MANV char(8) Mã nhân viên

7 MANCC int Mã nhà cung cấp

8 MAKH int Mã khách hàng

Ba ng 32 Bảng dữ liệu Khách hàng

3.8.19 Bảng dữ liệu VẬN ĐƠN

STT Tên cột Kiểu dữ liệu Not Diễn

2 MAHD char(12) Mã hóa đơn

4 MADIEUCHINHVD char(24) Mã điều chỉnh

6 TENNGUOINHANVD nvarchar(512) Tên người nhận

7 SDTNGUOINHANVD char(13) Not Số điện

8 DIACHINGUOINHANVD nvarchar(128) Địa chỉ người nhận

12 THOIGIANGUIVD datetime Thời gian gửi

13 THOIGIANNHANDUKIENVD datetime Thời gian nhận dự kiến

18 PHIVANCHUYENVD money Not Phí vận

20 PHITHUHOVD money Phí thu hộ

Ba ng 33 Bảng dữ liệu Vận đơn ̉̉

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MATTP char(5) Not Null Mã tỉnh thành phố

2 TENTTP nvarchar(128) Not Null Tên tỉnh thành phố

3 LOAITTP nvarchar(50) Not Null Loại tỉnh thành phố

Bảng 34 Bảng dữ liệu Tỉnh Thành phố

3.8.21 Bảng dữ liệu QUẬN HUYỆN

Tên cột Kiểu dữ liệu char(5)

Diễn giải Mã quận huyện

2 TENQH nvarchar(128) Not Null Tên

3 LOAIQH nvarchar(50) Not Null Loại

4 TOADOQH char(64) Not Null Tọa độ

5 MATTP char(5) Not Null Mã tỉnh thành phố

Ba ng 35 Bảng dữ liệu Quận huyện ̉̉

3.8.22 Bảng dữ liệu XÃ PHƯỜNG

STT Tên cột Kiểu dữ liệu Not Null Diễn giải

1 MAXP char(5) Not Null Mã Xã/

2 TENXP nvarchar(128) Not Null Tên Xã/ phường

3 LOAIXP nvarchar(50) Not Null Loại

4 TOADOXP char(64) Not Null Tọa độ

5 MAQH char(5) Not Null Mã

Ba ng 36 Bảng dữ liệu Xã phường ̉̉

PHÂN TÍCH MỐI QUAN HỆ DỮ LIỆU GIỮA CÁC THỰC THỂ 67 CHƯƠNG IV: DEMO VÀ TRIỂN KHAI HỆ THỐNG

ST Tên mối quan hệ Sơ đồ thể hiện mối quan hệ

- Một Loại sản phẩm có thể không có hoặc có

SẢN PHẨM - Một Sản phẩm chỉ thuộc một và chỉ một loại sản phẩm

PHẢM - Một nhóm sản phẩm có thể không có hoặc có

2 nhiều sản phẩm và -Một sản phẩm có thể không thuộc hoặc thuộc SẢN PHẨM nhiều nhóm ĐƠN VỊ TÍNH

3 và -Một đơn vị tính có thể không có hoặc có nhiều sản phẩm SẢN PHẨM

-Một sản phẩm chỉ có một và chỉ một đơn vị tính

4 và - Một quy cách không có hoặc có nhiều sản

-Một sản phẩm có thể không có hoặc có nhiều quy cách đóng gói

-Một khuyến mãi có thể không có hoặc có nhiều

SẢN PHẨM -Một sản phẩm chỉ có một và chỉ một khuyến mãi

PHIẾU NHẬP -Một phiếu nhập có một hoặc nhiều chi tiết nhập

-Một chi tiết nhập có chỉ một hoặc nhiều sản

-Một sản phẩm có thể không có hoặc có nhiều chi tiết nhập

-Một chi tiết nhập có duy nhất một và chỉ một phiếu nhập

-Một hóa đơn có thể không có hoặc có duy nhất

7 và chỉ một khuyến mãi

KHUYẾN MÃI -Một khuyến mãi có thể không có hoặc có nhiều hóa đơn

HÓA ĐƠN -Một hóa đơn có một hoặc nhiều chi tiết hóa đơn

8 và -Một chi tiết hóa đơn có một hoặc nhiều sẩn

-Một sản phẩm có thể không có hoặc có nhiều chi tiết hóa đơn

-Một chi tiết hóa đơn chỉ duy nhất một hóa đơn

HÓA ĐƠN -Một hóa đơn có thể không có hoặc có nhiều vận

VẬN ĐƠN -Một vận đơn có thể không có hoặc có nhiều hóa đơn

- Một hóa đơn chỉ thuộc một và chỉ một nhân

-Một nhân viên có thể không có hoặc có nhiều hóa đơn

- Một hóa đơn chỉ thuộc một và duy nhất một

11 và khách hàng KHÁCH HÀNG

-Một khách hàng có thể không có hoặc có nhiều hóa đơn

- Một vận đơn chỉ thuộc một và duy nhất một

12 và bưu cục BƯU CỤC

-Một bưu cục có thể không có hoặc có nhiều vận đơn

-Một phiếu nhập chỉ thuộc một và chỉ một nhà

13 và cung cấp NHÀ CUNG CẤP

-Một nhà cung cấp có thể không có hoặc có nhiều phiếu nhập

-Một phiếu nhập chỉ thuộc một và chỉ một nhân

-Một nhân viên có thể không có hoặc có nhiều phiếu nhập

NHÂN VIÊN -Một chức vụ có thể không có hoặc có nhiều nhân viên -Một nhân viên có một hoặc nhiều chức vụ TÀI KHOẢN

Mỗi nhân viên có thể sở hữu một hoặc nhiều tài khoản ngân hàng, tuy nhiên, mỗi tài khoản ngân hàng chỉ thuộc về một nhân viên duy nhất.

NGÂN HÀNG -Một khách hàng có thể không có hoặc có nhiều

17 và tài khoản ngân hàng

KHÁCH HÀNG -Một tài khoản ngân hàng chỉ thuộc một và duy nhất một khách hàng TÀI KHOẢN

Một nhà cung cấp có thể sở hữu một hoặc nhiều tài khoản ngân hàng, trong khi mỗi tài khoản ngân hàng chỉ thuộc về một nhà cung cấp duy nhất.

Giới thiệu tổng quan về hạ tầng Demo

- Demo được cài đặt và vận hành trực tiếp tại tên miền

Demo được cài đặt và vận hành trên Hosting Server Windows, tích hợp kết nối với Microsoft SQL Server Version 12.0 Hệ thống cũng đã đăng ký chứng thực an toàn với mã hóa thông tin qua HTTPS.

Giao diện chính

Hình 38 Giao di ện Dashboard

Sau khi đăng nhập thành công, người dùng sẽ thấy giao diện chính của hệ thống (Dashboard) với đầy đủ các tính năng cần thiết.

Cấu trúc giao diện

Cấu trúc giao diện trên máy tính được chia ra thành 4 phần.

Hình 39 Cấu trúc giao diện trên máy tính

- Menu Site (1): Bao gồm toàn bộ Menu thể hiện các tính năng mà hệ thống đáp ứng.

- Header Site (2): Bao gồm tên của xử lý hiện hành, khung tìm kiếm thông trong site tương ứng dữ liệu với xử lý hiện hành.

- Body Site (3): Đây là phần thân cốt lõi của hệ thống, thể hiện toàn bộ thông tin dữ kiện, nhập liệu và biểu diễn.

- Footer Site (4): Là phần dưới cùng của hệ thống, thông thường được dùng để ghi nhận thông tin site, thông tin bản quyền, tác giả,…

Hi ̀ nh 40 Cấu trúc giao diện trên điện thoại

Cấu trúc giao diện trên điện thoại được thể hiện vẫn đảm bảo đầy đủ như trên máy tính với 4 thành phần:

- Menu Site (1): Bao gồm toàn bộ Menu thể hiện các tính năng mà hệ thống đáp ứng.

- Header Site (2): Bao gồm tên của xử lý hiện hành, khung tìm kiếm thông trong site tương ứng dữ liệu với xử lý hiện hành.

- Body Site (3): Đây là phần thân cốt lõi của hệ thống, thể hiện toàn bộ thông tin dữ kiện, nhập liệu và biểu diễn.

- Footer Site (4): Là phần dưới cùng của hệ thống, thông thường được dùng để ghi nhận thông tin site, thông tin bản quyền, tác giả,…

Khi lần đầu truy cập vào hệ thống, người dùng sẽ thấy giao diện đăng nhập yêu cầu nhập [Mã nhân viên] và [Mật khẩu] để được cấp quyền truy cập.

Nếu thông tin nhập vào không chính xác, hệ thống sẽ hiển thị thông báo “Đăng nhập thất bại, vui lòng thử đăng nhập lại” Quá trình này sẽ tiếp tục cho đến khi người dùng nhập đúng thông tin để truy cập vào hệ thống hoặc tự nguyện thoát ra.

4.4.1 Chức năng quản trị Hóa đơn

Để quản lý hóa đơn, người dùng có thể dễ dàng thực hiện bằng cách nhấp vào tổng đơn hàng trên giao diện chính hoặc chọn mục Đơn hàng từ Menu Site bên tay phải của hệ thống.

Hình 43 Quản trị hóa đơn

Trang quản trị hóa đơn cung cấp nhiều thông tin quan trọng ngoài hệ thống quản lý Người dùng có thể xem chi tiết các hóa đơn đã tạo và dễ dàng tìm kiếm hóa đơn bằng cách sử dụng thanh công cụ tìm kiếm trên Header, cho phép tìm theo tên khách hàng, mã khách hàng và mã hóa đơn.

Hình 44 Chi ti ết hóa đơn

Chuyên trang chi tiết hóa đơn cung cấp thông tin đầy đủ về hóa đơn mà người dùng đã tạo Tại đây, người dùng có thể dễ dàng in hóa đơn để lưu trữ hoặc lưu dưới dạng file PDF khi cần thiết.

Hình 45 Thêm mới hóa đơn

Chuyên trang thêm hóa đơn giúp người dùng thực hiện thao tác thêm hóa đơn nhanh chóng và tiện lợi Người dùng chỉ cần chọn khách hàng, lựa chọn mặt hàng cần mua, nhập số lượng và xác nhận để hoàn tất hóa đơn.

4.4.2 Chức năng quản trị Sản phẩm

Để quản trị sản phẩm, người dùng có thể chọn sản phẩm từ Menu Site bên tay phải hoặc nhấn vào "Thêm sản phẩm" trên màn hình chính để nhanh chóng thêm sản phẩm mới.

Hình 47 Quản trị sản phẩm

Chuyên trang quản trị sản phẩm đươc hiển thị tóm tắt các thông tin chính của sản phẩm đủ đáp ứng cho chu cầu quản lý.

Bằng công cụ tìm kiếm trên Header, người dùng có thể tìm nhanh một sản phẩm thông qua tên sản phẩm hoặc mã sản phẩm.

Hình 48 Chi ti ết sản phẩm

Chi tiết sản phẩm mà người dùng lựa chọn được trình bày một cách rõ ràng và thẩm mỹ, đảm bảo tính hiển thị tốt trên cả máy tính và thiết bị di động.

Hình 49 Quản lý loại sản phẩm

Danh sách loại sản phẩm được hiện thị với tên loại, diễn giải, ảnh minh họa và số lượng sản phẩm thuộc loại sản phẩm.

Bằng thanh công cụ tìm kiếm trên Header, người dùng dễ dàng tìm nhanh một loại sản phẩm theo tên hoặc theo mã loại sản phẩm.

Hình 50 Quản lý đơn vị tính sản phẩm

Danh sách quản lý đơn vị tính sản phẩm được hiển thị trong cài đặt cấu hình sản phẩm, bao gồm thông tin về tên đơn vị, số lượng sản phẩm thuộc đơn vị và diễn giải chi tiết.

Bằng thành công cụ tìm kiếm trên Header, người dùng có thể tìm kiếm nhanh đơn vị tính theo tên, mã đơn vị.

Hình 51 Quản trị nhóm sản phẩm

Danh sách nhóm sản phẩm được hiển thị khi lựa chọn cấu hình nhóm sản phẩm tại chức năng Quản trị Sản phẩm.

Bằng công cụ tìm kiếm trên Header người dùng hoàn toàn có thể tìm kiếm nhanh một nhóm theo tên nhóm hoặc mã nhóm.

4.4.3 Chức năng quản trị Khách hàng

Để quản lý khách hàng, người dùng có thể truy cập vào chuyên mục khách hàng trong Menu bên trái hoặc chọn block Tổng khách hàng trên màn hình Dashboard Tại đây, người dùng cũng có thể dễ dàng thêm mới khách hàng bằng cách chọn tùy chọn Thêm khách hàng.

Hình 53 Quản trị Khách hàng

Quá trình truy cập vào Quản trị khách hàng mang lại danh sách khách hàng với các thông tin cơ bản được tóm tắt rõ ràng.

Bằng thành công cụ tìm kiếm trực tiếp trên Header người dùng có thể tìm nhanh tên của khách hàng với tên khách hàng, số điện thoại,…

Hình 54 Chi tiết thông tin Khách hàng

Chi tiết thông tin khách hàng được tổ thức hiển thị rõ ràng và đầy đủ thông tin đúng như đăng ký.

Hình 55 Quản lý Thêm khách hàng

Người dùng nhập thông tin khách hàng chưa có trong hệ thống và tiến hành xác nhận thêm khách hàng.

4.4.4 Chức năng quản trị Nhà cung cấp

Hình 56 Quản trị Nhà cung cấp

Sau khi chọn chuyên mục quản lý nhà cung cấp, hệ thống sẽ hiển thị danh sách các nhà cung cấp kèm theo thông tin cơ bản về từng nhà cung cấp.

Hình 57 Chi tiết thông tin nhà cung c ấp

Chi tiết thông tin nhà cung cấp được thể hiện đầy đủ như thông tin nhân viên đã được nhập vào hệ thống.

Hình 58 Thêm nhà cung cấp

Thêm nhà cung cấp thật dễ dàng và nhanh chóng chỉ với một việc duy nhất là điền thông tin và xác nhận gửi đi xử lý.

4.4.5 Chức năng quản trị Bưu cục

Để truy cập vào hệ thống quản lý bưu cục, người dùng cần chọn chức năng vận chuyển trên thanh Menu bên trái của chương trình.

Hình 60.Quản trị Bưu cục

Sau khi thực hiện lựa chọn tính năng quản lý bưu cục, danh sách bưu cục tồn tại trong hệ thống được hiển thị.

Người dùng có thể nhanh chóng tìm kiếm một bưu cục bằng cách sử dụng công cụ tìm kiếm trên Header, thông qua các thông tin như tên, số điện thoại, số fax hoặc địa chỉ của người nhận.

Để thêm một bưu cục, người dùng chỉ cần điền đầy đủ thông tin vào biểu mẫu và thực hiện thao tác thêm bưu cục một cách đơn giản.

4.4.6 Chức năng quản trị Vận đơn

Ngày đăng: 14/02/2022, 18:26

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
[1] Phạm Nguyễn Cương – Nguyễn Trần Minh Thư – Hồ Bảo Quốc, Giáo trình phân tích thiết kế hệ thống thông tin theo hướng đối tượng.Nhà xuất bản Khoa học và Kỹ thuật, Hà Nội, 2016 Sách, tạp chí
Tiêu đề: Giáo trình phân tích thiết kế hệ thống thông tin theo hướng đối tượng
Nhà XB: Nhà xuất bản Khoa học và Kỹ thuật
[2] Nguyễn Văn Vy, Giáo trình phân tích thiết kế các hệ thống thông tin. Nhà xuất bản Giáo dục Việt Nam, 2010 Sách, tạp chí
Tiêu đề: Giáo trình phân tích thiết kế các hệ thống thông tin
Nhà XB: Nhà xuất bản Giáo dục Việt Nam
[3] Đậu Quang Tuấn, Giáo trình lập trình hướng đối tượng và lập trình cơ sở dữ liệu với C#. Nhà xuất bạn Giao Thông Vận Tải, 2006 Sách, tạp chí
Tiêu đề: Giáo trình lập trình hướng đối tượng và lập trình cơ sở dữ liệu với C#
[4] Technology Education, “Khóa học lập trình ASP.NET MVC”. https://goo.gl/fynVqn Sách, tạp chí
Tiêu đề: Khóa học lập trình ASP.NET MVC
[5] Đào Hải Nam (21/7/2013), “Bắt đầu với mô hình ASP.NET MVC5”https://goo.gl/mC8WO1 [6] Lập trình ASP.NET MVC.https://goo.gl/W90OohTiếng Anh Sách, tạp chí
Tiêu đề: Bắt đầu với mô hình ASP.NET MVC5
[4] Learn about ASP.NET MVC http://www.asp.net/mvc/overview/getting-started Link

TỪ KHÓA LIÊN QUAN

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

TÀI LIỆU LIÊN QUAN

w