Xây dựng hệ thống quản lý bán hàng trên nền tảng ASP.NET MVC5 - 3


CHƯƠNG I: TỔNG QUAN

1.1. GIỚI THIỆU TỔNG QUAN

Ngày nay, cùng với sự phát triển vượt bậc của công nghệ thông tin, Microsoft (MS) một trong những đơn vị tuyên phong cho ra đời một nền tảng ứng dựng thế hệ mới chính là WEB APPLICATION (WAPP). WAPP được phát triển trên nền tảng

.NET Framework và được vận hành bằng ứng dụng truy cập Website thông thường (Browser) một cách đơn giản, tiện dụng trên mọi thiết bị có hỗ trợ truy cập website và quá trình vận hành được thực hiện mọi lúc, mọi nơi. Đây là một công nghệ rất tiên tiến, đủ để đáp ứng cho nhu cầu công việc ngày càng phát triển, khâu quản lý ngày càng được quan tâm và đặc biệt hơn hết tính tiện dụng đa nền tảng, đa thiết bị ngày càng được quan trọng. Công nghệ WAPP có thể thay thế hoàn toàn cho Winform một nền tảng phát triển ứng dụng cho ra đời các phần mềm được chạy trên hệ điều hành Windows mà hầu hết chúng ta đang được học, phát triển và sử dụng trong thời gian qua.

1.2. MỤC ĐÍCH CHỌN ĐỀ TÀI

Nhằm đáp ứng nhu cầu thực tế, xây dựng một hệ thống quản lý bán hàng hoạt động độc lập được vận hành mọi lúc mọi nơi, trên mọi thiết bị chỉ cần trang bị một trình duyệt có khả năng truy cập Website.

Nhằm đáp ứng nhu cầu phát triển xã hội, nâng cao năng suất, hiệu quả công việc, tiết kiệm thời gian, nhân công và tiết kiệm chi phí đầu tư trang thiết bị máy móc, đáp ứng nhu cầu chuyên nghiệp hóa xử lý hàng hóa phục vụ cho 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.

1.3. PHẠM VI NGHIÊN CỨU

Quản lý bán hàng tại một cửa hàng, một công ty bao gồm quản lý các thông tin: khách hàng, nhân viên, sản phẩm, hóa đơn, sản phẩm… của cửa hàng/công ty.

Quy trình khách hàng đặt hàng, mua hàng và nhận hàng, căn cứ vào thông tin thực tế để thiết kế hệ thống thích hợp phục vụ tuần tự đúng cho nhu cầu sử dụng.

1.4. 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.

1.5. 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.

- Thêm và quản lý mã khuyến mãi được tạo cho từng đợt khuyến mãi với các thông tin khuyến mãi: số lần sử dụng, thời gian áp dụng, khuyến mãi giảm phần trăm hay giảm tiền hà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ý các đối tác vận chuyển với các thông tin khai thác của từng đối tác, tích hợp được API các đối tác nhằm mục đích tạo được các đơn vận tự động thông 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.

1.6. ĐẶ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” được hình thành trên ý tưởng ứng dụng công nghệ thông tin vào việc quản lý kinh doanh tại một cửa hàng/công ty bán lẻ góp phần tạo điều kiện


thuận lợi để tiết kiệm thời gian, chi phí, nhân công nhằm mang lại hiệu quả cao và chất lượng tốt cho công việc.

Kết quả của quá trình nghiên cứu và thực hiện cho ra đời sản phẩm chính là hệ thống quản lý bán hàng bán hàng trực tuyến với tên gọi Seller Manage version 1.0. Hệ thống là một tổng hợp các quản lý thông tin cần thiết cho một cửa hàng/ công ty kinh doanh bán lẻ. Hệ thống hỗ trợ quản lý các thông tin cần thiết:

Khi người dùng tham gia vào hệ thống được Quản trị hệ thống cấp một tài khoản người dùng để đăng nhập và sử dụng trong hệ thống. Người dùng hệ thống tùy vào mức độ cho phép mà được sử dụng các tính năng khác nhau được phân quyền bởi quản trị viên hệ thống. Khi có cách hàng thực hiện đơn hàng tại công ty bán lẻ/cửa hàng, nhân viên lấy thông tin điện thoại khách hàng để tạo đơn đặt hàng hoặc xuất hóa đơn bán hàng, thông qua số điện thoại được lấy từ khách hàng, hệ thống sẽ phản hồi khách hàng đã có trong hệ thống hoặc chưa tồn tại, nếu khách hàng chưa có trong hệ thống thì thêm mới thông tin khách hàng vào hệ thống và tiếp tục quá trình tạo hóa đơn hoặc đơn hàng với hệ thống. Đối với khách hàng cần giao hàng hoặc gửi hàng đến nơi người nhận khách thì nhân viên kinh doanh hỗ trợ tạo vận đơn cho khách hàng để hỗ trợ gửi hàng thông qua các đối tác khai thác vận chuyển.

Bên cạnh đó hỗ trợ khách hàng thanh toán cho mỗi hóa đơn bằng nhiều hình thức thanh toán khác nhau: thanh toán khi nhận hàng, thanh toán trực tiếp khi thực hiện hóa đơn hoặc thanh toán chuyển khoảng nhân hàng.

Khi có chương trình khuyến mãi của công ty kinh doanh bán lẻ/cửa hàng có thể tạo chương trình khuyến mãi giảm giá trên hóa đơn bán hàng với các hình thức giảm giá như giảm giá % tiền hàng, giảm giá trực tiếp tiền của hàng, thời gian áp dụng và số lần áp dụng đối với từng đơn hàng thông qua chương trình khuyến mãi và các áp dụng giảm giá bằng cách trực tiếp điền mã vào hóa đơn khi tạo.

Ngoài ra, hệ thống cho phép quản lý sản phẩm với từng mức độ phân loại sản phẩm, phân nhóm sản phẩm, với nhiều đơn vị tính được tạo bởi người dùng. Khi tạo mới sản phẩm, người dùng phải lựa chọn loại sản phẩm, đơn vị tính và nhóm sản phẩm nếu sản phẩm có chứa nhiều thuộc tính cần được quản lý. Và khi loại, đơn vị tính,


nhóm chưa có khi tạo đơn hàng nhân viên có thể thêm mới thuộc tính tại các mục tương ứng trong cấu hình sản phẩm. Mặc khác, để nhập hàng, hệ thống còn quản lý cả thông tin đối với nhà cung cấp sản phẩm đảm bảo tối ưu hóa tính tiện dụng cho các lần nhập hàng tiếp theo. Để nhập hàng vào hệ thống nhân viên lựa chọn nhà cung cấp sản phẩm, lựa chọn sản phẩm nhập và số lượng nhập. Hệ thống sẽ kiểm tra dữ liệu và tiến hàng nhập vào hệ thống, đồng thời xuất phiếu nhập có thể in ra cho nhân viên.

Mặc khác, thiên hướng phát triển của hệ thống là hỗ trợ tích hợp được API đến các trang thương mại điện tử bán hàng: Sendo, Lazada, Shopee,… nhằm mục đích đồng bộ hóa sản phẩm đến các trang bán hàng, tiết kiếm tối đa thời gian đăng sản phẩm. Và tích hợp được đến các đơn vị đối tác vận chuyển khai thác, hỗ trợ tạo vận đơn trực tiếp tại hệ thống và đồng bộ hóa đến bộ phận vận chuyển, tiết kiệm thời gian tạo vận đơn trên các trang đơn vị.


Hi ̀ nh 1 Logo hệ thống CHƯƠNG II CƠ SỞ LÝ THUYẾT 2 1 CÔNG NGHỆ ASP NET MVC5 1


Hình 1. Logo hệ thống


CHƯƠNG II: CƠ SỞ LÝ THUYẾT

2.1. CÔNG NGHỆ ASP.NET MVC5

2.1.1. Lịch sử ra đời:

- Tất cả bắt đầu 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) cho phép lập trình viên làm việc với những thành phần đồ họa như những đối tượng đồ họa có thuộc tính và phương thức riêng của nó. Không dừng lại ở đó, những nhà nghiên cứu ở Xerox PARC còn đi xa hơn khi cho ra đời cái gọi là kiến trúc MVC (viết tắt của Model – View – Controller).

- MVC được phát minh tại Xerox Parc vào những năm 70, bởi TrygveReenskaug. MVC lần đầu tiên xuất hiện công khai là trong Smalltalk-80. Các giấy tờ quan trọng đầu tiên được công bố trên MVC là “A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk – 80”, bởi Glenn 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 này ngày càng được phát triển và hoàn thiện nhằm giải quyết các vấn đề phát sinh cũng như các giải pháp cho quá trình phát triển 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

2008

ASP.NET MVC 1.0

2008

ASP.NET MVC 2.0 (.NET 3.5)

1/2010

ASP.NET MVC 3.0 (.Net 4)

15/8/2012

ASP.NET MVC 4.0 (.Net 4.5)

17/10/2013

ASP.NET MVC 5.0 (.Net 5.0)

Có thể bạn quan tâm!

Xem toàn bộ 115 trang tài liệu này.

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



MVC

Webform

Thành

ASP.net MVC chia ra làm 3 phần:

ASP.net WebForm sử dụng


phần

– Models

– View

– Controller.

Mọi tương tác của người dùng với Views sẽ được xử lý thông qua việc thực hiện các action hành động trong Controllers, không còn postback, lifecycle và events.

ViewState để quản lý Các trang ASP.net đều có

lifecycle, postback và dùng các web controls, các event để thực hiện các hành động cho UI (User Interface) .

Khi có sự tương tác với người dùng nên hầu hết ASP.net WebForm xử lý

chậm.

Việc kiểm tra (test), gỡ lỗi

(debug)


Đối với MVC thì việc đó có thể sử dụng các unit test có thể thẩm định rất dễ dàng các Controllers thực hiện như thế nào.

Với ASP.net WebForm đều phải chạy tất cả các tiến trình của ASP.net, và sự thay đổi ID của bất kỳ Controls nào cũng ảnh hưởng đến ứ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 được thiết kế một cách gọn nhẹ, giảm thiểu sự phức tạp của việc xây dựng ứng dụng website bằng cách chia một ứng dụng thành 3 tầng (layer): Model, View và Controller. Sự chia nhỏ này giúp lập trình viên dễ dàng kiểm soát các thành phần trong khi phát triển, cũng như lợi ích lâu dài trong việc kiểm tra, bảo trì và nâng cấp.

- Model: Model chứa và thể hiện các đặc tính và logic ứng dụng. Theo một cách hiểu khác, Model đại diện cho dữ liệu và logic cốt lòi. Nó chính là những lớp (class) chứa thông tin về các đối tượng mà ta cần phải thao tác, làm việc trên nó. Ví dụ: “Sản phẩm” chứa các thông tin như “Tên sản phẩm”, ”Loại sản phẩm”, “Đơn giá”, …

- View: View làm nhiệm vụ thể hiện một Model hay nhiều Model một cách trực quan, nó nhận thông tin (một Model hoặc nhiều Model) sau đó biểu diễn lên trang website.


- 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ị.

Hi ̀ nh 2 Mô hình MVC 2 1 4 Đặc điểm ASP NET MVC Framework  Tiếp tục hỗ trợ 2

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.

- Hỗ trợ đầy đủ các tính năng bảo mật của ASP.net: Form/ Windows authenticate, URL authorization, membership/roles, output và data caching, section/ profile state, configuration system, provider architecture.

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

- Có thể test unit trong ứng dụng mà không cần phải chạy Controllers cùng với tiến trình của ASP.NET và có thể dùng bất kỳ một unit testing

framework nào như NUnit, MBUnit, MS Test,…


Có khả năng mở rộng, mọi thứ trong MVC được thiết kế để dễ thay thế, dễ dàng tùy biến. Ánh xạ URL mạnh mẽ, cho phép xây dựng ứng dụng với những URL sạch.

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.

Hỗ trợ định tuyến

- 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 định ra các quy luật, cài đặt đường đi, ASP.NET dựa vào các quy luật đường đi đó để xác định Controller và action cần phải

thực thi.

- 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

- 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ây giờ bạn chỉ cần tập trung vào việc cài đặt các nghiệp vụ logic, không cần phải bận tâm về việc suy nghĩ làm cách nào để ánh xạ dữ liệu từ người dùng sang các đối ượng .NET.

Filters

..... Xem trang tiếp theo?
⇦ Trang trước - Trang tiếp theo ⇨

Ngày đăng: 12/07/2022