Kinh doanh dù lớn hay nhỏ cần có một hệ thống quản lý hay gọi phần mềm quản lý bán hàng Việc sử dụng phần mềm quản lý bán hàng giúp chủ cửa hàng quản lý bán hàng online offline, quản lý hàng hóa, tồn kho, lãi lỗ, quản lý khách hàng, nhân viên… từ hạn chế thất thoát, gian lận giúp việc kinh doanh ổn định Khi lĩnh vực đại hóa bán hàng khơng nằm ngồi quy luật Minh chứng cửa hàng bán lẻ, shop vừa nhỏ ứng dụng rộng rãi cơng nghệ bán hàng sử dụng máy tính tiền, máy bán hàng, máy in hóa đơn, máy quét mã vạch,… Tuy nhiên, tất thiết bị phần cứng nói khơng thể hoạt động thiếu phần mềm quản lý bán hàng Vì đồ án xây dựng hệ thống quản lý siêu thị áp dụng cho siêu thị vừa nhỏ cửa hàng với nhiều sản phẩm kinh doanh khác cửa hàng thời trang, giày dép, điện thoại, đồ ăn,… Sử dụng hệ thống quản lý siêu thị giúp khách hàng tiết kiệm 80% thời gian cơng sức chi phí cho việc quản lý bán hàng Đồ án hướng tới xây dựng hệ thống với ưu điểm: Bán hàng nhanh chóng: Phần mềm quản lý bán hàng cần tối ưu cho thao tác, tạo đơn hàng, in hóa đơn, tốn nhanh Dễ sử dụng: Khơng cần phải có người hướng dẫn bên mà cần nhìn giao diện thực Dễ dùng, dễ nhớ, dễ nắm bắt yếu tố mà cửa hàng cần Linh động: Các cửa hàng nhỏ thường khơng có mơ hình qn, chuyên nghiệp cao nên phần mềm cần linh hoạt với quy mô cửa hàng khác Chuyên nghiệp mảng kế toán: Phải phản ánh đầy đủ xác dịng tiền vào, xuất – nhập – tồn hàng hóa,… Báo cáo đầy đủ, xác lãi lỗ, theo dõi cơng nợ, đối sốt dễ dàng Đa dạng phương thức toán: Phần mềm quản lý bán hàng cần tích hợp nhiều hình thức toán, thuận tiện cho người mua lẫn người bán hàng
TỔNG QUAN VỀ HỆ THỐNG
Cơ sở khoa học
Trong thời đại công nghệ 4.0, việc áp dụng công nghệ vào quản lý siêu thị là điều cần thiết để nâng cao hiệu quả công việc Để tiết kiệm thời gian trong bán hàng, tính toán và quản lý hàng hóa, một hệ thống quản lý siêu thị là rất quan trọng Hiện nay, có nhiều hệ thống hỗ trợ quản lý siêu thị như kiotviet.vn, sapo.vn, suno.vn, pos365.vn, maybanhang.net, giúp giải quyết vấn đề quản lý hàng hóa và bán hàng Tuy nhiên, các hệ thống này vẫn còn một số nhược điểm như khó sử dụng và thiếu tính năng Do đó, đề tài này sẽ tập trung vào việc thiết kế và xây dựng một hệ thống mới nhằm khắc phục những nhược điểm của các hệ thống cũ, mang lại trải nghiệm dễ sử dụng và đầy đủ tính năng cho người dùng trong hai phân hệ bán hàng và quản lý đơn hàng.
Mục đích và phạm vi của hệ thống
Hệ thống quản lý siêu thị mang lại sự tiện lợi và chính xác cho công việc quản lý siêu thị và các cửa hàng kinh doanh khác Nhờ vào hệ thống này, khách hàng có thể tiết kiệm tới 80% thời gian và chi phí trong việc quản lý và bán hàng.
Xây dựng hệ thống quản lý siêu thị với hai phân hệ: bán hàng và quản lý đơn hàng, chạy trên nền tảng web ASP.NET
Phân hệ bán hàng giúp nhân viên bán hàng làm việc dễ dàng, nhanh chóng và chính xác Tính năng tích hợp với máy quét mã vạch cho phép tìm kiếm và lọc hàng hóa theo loại, đồng thời tra cứu thông tin như giá bán, số lượng tồn kho và hình ảnh sản phẩm Hệ thống còn cho phép chiết khấu theo từng sản phẩm và khách hàng là thành viên, đồng thời hỗ trợ xuất hóa đơn bán hàng một cách thuận tiện.
Phân hệ quản lý đơn hàng giúp nhân viên dễ dàng tạo và quản lý đơn hàng cho khách hàng Người dùng có thể xem danh sách các đơn hàng, tìm kiếm và áp dụng bộ lọc để tìm đơn hàng cụ thể Hệ thống cũng cho phép xem danh sách các đơn trả hàng, thêm mới các đối tác vận chuyển, tạo đơn giao hàng, cũng như tìm kiếm và theo dõi các đơn giao hàng một cách hiệu quả.
Khảo sát các hệ thống có liên quan
Quản lý siêu thị trên nền tảng web đã trở nên phổ biến và hiệu quả, giúp tối ưu hóa quy trình quản lý bán hàng, hàng hóa và đơn hàng một cách đơn giản và chính xác.
Trên thị trường hiện nay, có nhiều hệ thống quản lý bán hàng online nổi bật như kiotviet.vn, sapo.vn, suno.vn, nhanh.vn Trong số đó, kiotviet.vn nổi bật với khả năng quản lý đa dạng các hình thức bán hàng, từ siêu thị, cửa hàng tạp hóa đến thời trang, vật liệu, điện thoại, máy tính, cũng như các lĩnh vực kinh doanh như bar, cafe và nhà hàng.
Hình 1.2.1 Website Kiotviet, các lĩnh vực có thể quản lý
Hình 1.2.2 Giao diện bán hàng của hệ thống kiotviet
Sau khi đăng kí dùng thử thành công ta có giao diện bán hàng gồm:
Danh sách hàng hóa hiển thị thông tin chi tiết như giá bán, tên và hình ảnh trong một hộp Ở phần trên, có các nút chức năng cho phép người dùng thay đổi thứ tự sắp xếp, gộp hàng hóa liên quan, và lọc hàng hóa theo thuộc tính hoặc nhóm Danh sách cũng được phân trang và có tùy chọn ẩn xuống để tiết kiệm không gian hiển thị.
Thanh công cụ trên đầu website bao gồm một textbox tìm kiếm hàng hóa theo tên và mã hàng, giúp nhân viên dễ dàng tìm kiếm và kiểm tra hàng hóa Bên cạnh đó, có các tab hóa đơn cho phép tạo nhiều hóa đơn, nút phóng to toàn màn hình, nút chi nhánh, danh sách phím tắt, nút trả hàng, đồng bộ dữ liệu, thiết lập in, cùng với label tên tài khoản đang đăng nhập Menu chức năng cung cấp các tùy chọn như xem báo cáo cuối ngày, nhập hàng trả, lập phiếu thu, import, tùy chọn hiển thị và đăng xuất.
Bên phải giao diện là khu vực hiển thị thông tin khách hàng, thông tin hóa đơn, thời gian hóa đơn, thông tin thanh toán và nút thanh toán
Hình 1.2.3 Giao diện quản lý của hệ thống kiotviet
Giao diện quản lý bao gồm:
Trang tổng quan là trang chủ trong hệ thống quản lý, cung cấp thông tin bán hàng của ngày hiện tại Nó bao gồm biểu đồ doanh thu có thể chọn theo tháng hiện tại hoặc các điều kiện khác, cùng với biểu đồ hiển thị top 10 hàng hóa bán chạy nhất trong tháng Ngoài ra, khu vực này còn hiển thị các hoạt động gần đây của nhân viên.
Quản lý hàng hóa bao gồm nhiều chức năng quan trọng như xem danh sách hàng hóa theo các điều kiện lọc, khai báo hàng hóa mới và thực hiện nhập xuất hàng hóa thông qua Excel Bên cạnh đó, hệ thống cho phép thiết lập giá bán cho hàng hóa, với giao diện dễ dàng tìm kiếm và lọc theo các tiêu chí cụ thể, cũng như xuất dữ liệu ra Excel Ngoài ra, chức năng kiểm kho cung cấp giao diện hiển thị danh sách phiếu kiểm kho, cho phép người dùng tìm kiếm và thêm mới phiếu kiểm kho, đồng thời thực hiện nhập xuất hàng hóa bằng Excel.
Quản lý giao dịch bao gồm các chức năng quan trọng như: Hóa đơn - cho phép hiển thị danh sách hóa đơn bán hàng, tìm kiếm theo mã hóa đơn, mã hoặc tên hàng, và xuất danh sách đơn hàng ra Excel Về phần Trả hàng, hệ thống hiển thị danh sách các đơn trả hàng của khách hàng, cho phép tìm kiếm và lọc theo các điều kiện, cũng như tạo đơn trả hàng và xuất danh sách ra Excel Đối với Nhập hàng, người dùng có thể xem danh sách phiếu nhập hàng, tìm kiếm và lọc theo các điều kiện khác nhau, đồng thời nhập xuất bằng Excel Cuối cùng, chức năng Trả hàng nhập cho phép hiển thị danh sách phiếu trả hàng nhập, tìm kiếm và lọc theo các điều kiện khác nhau, cùng với khả năng nhập xuất phiếu trả hàng nhập bằng Excel.
Quản lý đối tác bao gồm hai thành phần chính: khách hàng và nhà cung cấp Giao diện quản lý khách hàng hiển thị danh sách khách hàng, cho phép người dùng tìm kiếm và lọc theo nhiều điều kiện khác nhau Ngoài ra, hệ thống cũng hỗ trợ nhập xuất dữ liệu khách hàng bằng Excel hoặc thêm mới khách hàng trực tiếp trên giao diện Tương tự, giao diện quản lý nhà cung cấp cung cấp danh sách nhà cung cấp, cho phép tìm kiếm và lọc theo các tiêu chí khác nhau, cùng với khả năng nhập xuất dữ liệu bằng Excel hoặc thêm mới nhà cung cấp ngay trên giao diện.
Quản lý sổ quỹ cung cấp giao diện hiển thị tất cả các loại phiếu thu và phiếu chi, cho phép người dùng xem tổng thu và tổng chi Người dùng có thể tìm kiếm phiếu thu, chi theo mã phiếu và ghi chú, đồng thời lọc theo thời gian, loại chứng từ, trạng thái người tạo, nhân viên, và người nộp nhận Hệ thống cũng hỗ trợ thêm mới phiếu thu, chi và xuất danh sách ra file Excel.
Hệ thống kiotviet cung cấp cho người dùng khả năng xem báo cáo với độ tùy biến cao và linh hoạt, cho phép truy cập vào các báo cáo cuối ngày với nhiều điều kiện khác nhau như thu chi, bán hàng, hàng hóa, và tổng hợp Người dùng có thể lọc báo cáo theo thời gian, khách hàng, nhân viên, người tạo, phương thức thanh toán và phương thức bán hàng Ngoài ra, báo cáo bán hàng cũng cho phép người dùng điều chỉnh kiểu hiển thị và xem báo cáo dựa trên các tiêu chí như thời gian, lợi nhuận, trả hàng và nhân viên.
Trong báo cáo, người dùng có thể xem và tinh chỉnh kiểu hiển thị cho các loại báo cáo khác nhau như báo cáo đặt hàng, hàng hóa, khách hàng, nhà cung cấp, nhân viên, kênh bán hàng và tài chính Mỗi báo cáo cho phép điều chỉnh theo các điều kiện như thời gian, mối quan tâm, và các yếu tố liên quan như khách hàng, hàng hóa, loại hàng hóa, nhóm hàng hóa, và nhân viên Việc này giúp người dùng dễ dàng theo dõi và phân tích dữ liệu một cách hiệu quả hơn.
Sau khi khảo sát hệ thống Kiotviet:
Phần mềm này nổi bật với giao diện đẹp mắt, phù hợp cho nhiều hình thức kinh doanh khác nhau Trải nghiệm sử dụng cho thấy sự mượt mà và phản hồi nhanh chóng Nó cung cấp nhiều tính năng tiện lợi như quản lý hàng hóa theo danh mục thương hiệu, kiểm kho nhanh chóng, nắm bắt hàng tồn kho và bổ sung hàng hóa kịp thời Hệ thống cũng cho phép cập nhật doanh thu và báo cáo chi tiết theo ngày, kiểm soát doanh số bán hàng của từng nhân viên, tích hợp máy quét mã vạch và hỗ trợ khách hàng hiệu quả qua dịch vụ trực tuyến hoặc qua điện thoại.
Nhược điểm: không tạo được các chương trình khuyến mãi, khó sử dụng với những người chưa có nghiệp vụ bán hàng.
Kết luận
Xác định mục đích và phạm vi của hệ thống quản lý siêu thị Khảo sát được một số hệ thống có liên quan tiêu biểu là kiotviet.vn.
PHÂN TÍCH VÀ THIẾT KẾ HỆ THỐNG
Chức năng hệ thống – Phân hệ bán hàng và quản lý đơn hàng
Chức năng tạo đơn hàng trực tiếp cho phép nhân viên bán hàng lập hóa đơn khi khách hàng mua sắm tại quầy Đầu vào của quy trình này là danh sách hàng hóa mà khách hàng đã chọn Nhân viên sẽ tìm kiếm và thêm các mặt hàng vào đơn hàng với số lượng tương ứng, đồng thời nhập thêm thông tin khách hàng, chiết khấu và lựa chọn khuyến mãi nếu có Cuối cùng, nhân viên nhấn lưu để hoàn tất đơn bán hàng và in hóa đơn cho khách.
Chức năng "thêm mới khách hàng" cho phép nhân viên bán hàng nhanh chóng tạo ra khách hàng mới bằng cách nhập thông tin cần thiết vào form Khi nhấn nút ‘+’ trên giao diện bán hàng trực tiếp, form thêm mới khách hàng sẽ xuất hiện Sau khi điền đầy đủ thông tin, nhân viên chỉ cần nhấn nút lưu để ghi lại khách hàng mới vào cơ sở dữ liệu.
Chức năng "Tạo đơn đặt hàng" cho phép nhân viên nhập thông tin đơn hàng, bao gồm danh sách hàng hóa, ngày chứng từ, mã đơn hàng, thông tin khách hàng, khuyến mãi, chiết khấu, thuế VAT và phí giao hàng Để tạo đơn hàng thành công, nhân viên cần cung cấp hai thông tin bắt buộc: thông tin khách hàng và thông tin hàng hóa Nếu thiếu một trong hai thông tin này, hệ thống sẽ không cho phép tạo đơn hàng Khi đủ thông tin cần thiết, đơn hàng sẽ được thêm mới vào cơ sở dữ liệu.
Chức năng "Xem danh sách đơn hàng" cho phép người dùng tìm kiếm và xem danh sách các đơn hàng thông qua từ khóa và các tùy chọn lọc Người dùng có thể tìm kiếm theo mã đơn hàng hoặc tên khách hàng, đồng thời sắp xếp danh sách theo mã đơn, tên khách hàng, ngày tạo và trạng thái đơn hàng Hệ thống cũng hỗ trợ lọc theo loại đơn đặt hàng và đơn bán hàng trực tiếp, cùng với tính năng phân trang để dễ dàng quản lý thông tin.
Chức năng "Xem danh sách đơn trả hàng" cho phép người dùng tra cứu các đơn trả hàng bằng cách nhập từ khóa tìm kiếm Kết quả trả về là danh sách các đơn trả hàng liên quan đến từ khóa đó Người dùng có thể nhấn vào mã đơn trả để xem chi tiết thông tin của từng đơn hàng.
Chức năng "Xem danh sách đơn giao hàng" cho phép người dùng tìm kiếm và xem danh sách các đơn giao hàng dựa trên từ khóa nhập vào Khi người dùng nhấn vào mã đơn giao hàng trong danh sách, họ có thể xem chi tiết của đơn hàng đó.
Chức năng quản lý đối tác vận chuyển cho phép người dùng tìm kiếm và thêm mới các đối tác vận chuyển Đầu vào bao gồm từ khóa tìm kiếm và thông tin đối tác cần thêm mới Kết quả đầu ra là danh sách các đối tác vận chuyển từ thao tác tìm kiếm và khả năng thêm mới đối tác Người dùng có thể xem danh sách đối tác, nhấn vào mã đối tác để xem chi tiết, hoặc nhấn vào nút thêm mới để thực hiện thao tác thêm mới một đối tác vận chuyển.
Usecase hệ thống
2.2.1 Xác định các tác nhân
Khách hàng mua sắm tại siêu thị sẽ được hệ thống quản lý điểm tích lũy cho khách hàng thân thiết, thực hiện thanh toán và nhận hóa đơn cho các sản phẩm đã mua Nếu có bất kỳ sai sót nào ảnh hưởng đến quyền lợi của mình, khách hàng có trách nhiệm phản hồi đến bộ phận quản lý của siêu thị.
Nhân viên siêu thị đóng vai trò quan trọng trong việc phục vụ khách hàng tại quầy thu tiền Họ sử dụng đầu đọc mã vạch để nhanh chóng tính tiền cho khách, đảm bảo quá trình thanh toán diễn ra suôn sẻ Mỗi mặt hàng đều được quản lý thông qua mã vạch, giúp nhân viên dễ dàng nhập thông tin vào hệ thống.
Người phụ trách quản lý hàng hóa có nhiệm vụ tạo phiếu nhập hàng khi tiếp nhận hàng hóa, lập phiếu xuất hàng khi chuyển hàng giữa các chi nhánh, thực hiện kiểm kê hàng tồn kho, và tạo phiếu trả hàng cho nhà cung cấp trong trường hợp sản phẩm bị lỗi.
Là người nắm được tính hình mua bán, doanh thu của siêu thị, quản lý nhân viên, xem báo cáo bán hàng, báo cáo kho, báo cáo tài chính.
2.2.3 Mô tả Usecase – phân hệ bán hàng và quản lý đơn hàng
1 Tạo đơn bán hàng trực tiếp
Use case: Tạo đơn hàng trực tiếp
Tác nhân: Nhân viên bán hàng
Tiền điều kiện: Truy cập hệ thống, đăng nhập thành công với tài khoản của nhân viên bán hàng
Mục tiêu: Tạo thành công đơn bán hàng và in hóa đơn bán hàng
Người dùng đăng nhập vào tài khoản nhân viên và truy cập trang bán hàng trực tiếp để tìm kiếm sản phẩm theo yêu cầu của khách hàng Sau đó, họ nhập thông tin đơn hàng, bao gồm số lượng sản phẩm, chiết khấu từng sản phẩm và chiết khấu tổng đơn hàng Tiếp theo, người dùng tìm kiếm và chọn khách hàng, chỉ định nhân viên thu tiền mặt, và cuối cùng in hóa đơn bán hàng cho khách.
Hoạt động của tác nhân Phản hồi hệ thống
1 Người dùng truy cập vào trang bán hàng trực tiếp
2 Hiển thị trang bán hàng
3 Người dùng tìm kiếm hàng hóa mà khách hàng đã chọn cho vào đơn hàng
4 Giao diện đơn hàng có thêm sản phầm mà nhân viên chọn
5 Nhập thông tin số lượng sản phẩm, chiết khấu, khách hàng, khuyến mãi
6 Tính tổng tiền khách hàng cần thanh toán
7 Nhập số tiền khách hàng trả 8 Hiển thị số tiền dư cho khách hàng
9 In hóa đơn cho khách hàng 10 Hiển thị giao diện in hóa đơn
Các hoạt động thay thế
Bước 5: Khi khách hàng chưa có trong hệ thống thì có thể nhấn nút ‘+’ trên giao diện để hiện form thêm mới khách hàng
Use case: Tạo đặt hàng
Tác nhân: Nhân viên bán hàng
Tiền điều kiện: Truy cập hệ thống, đăng nhập thành công với tài khoản của nhân viên bán hàng
Mục tiêu: Tạo thành công đơn đặt hàng
Hình 2.2.5 Sơ đồ hoạt động - Tạo đơn bán hàng trực tiếp
Người dùng đăng nhập vào tài khoản nhân viên để tạo đơn hàng, tìm kiếm sản phẩm khách hàng yêu cầu, và nhập thông tin đơn hàng bao gồm số lượng sản phẩm, chiết khấu cho từng sản phẩm và chiết khấu tổng cho đơn hàng Sau đó, người dùng sẽ tìm kiếm và chọn khách hàng trước khi lưu đơn hàng.
Hoạt động của tác nhân Phản hồi hệ thống
1 Người dùng truy cập vào trang tạo đơn hàng
2 Hiển thị trang tạo đơn đặt hàng
3 Người dùng tìm kiếm hàng hóa mà khách hàng đã chọn cho vào đơn hàng
4 Giao diện đơn hàng có thêm sản phẩm mà nhân viên chọn
5 Nhập thông tin số lượng sản phẩm, chiết khấu, khách hàng
6 Tính tổng tiền khách hàng cần thanh toán
7 Nhấn lưu 8 Hiển thị giao diện chi tiết đơn hàng
Các hoạt động thay thế
Bước 5: Khi khách hàng chưa có trong hệ thống thì có thể nhấn nút ‘+’ trên giao diện để hiện form thêm mới khách hàng
3 Tìm kiếm đơn đặt hàng
Use case: Tìm kiếm đơn đặt hàng
Tác nhân: Nhân viên bán hàng
Tiền điều kiện: Truy cập hệ thống, đăng nhập thành công với tài khoản của nhân viên bán hàng
Mục tiêu: Tìm kiếm đơn hàng theo mã đơn hàng, tên khách hàng
Hình 2.2.6 Sơ đồ hoạt động - Tạo đơn đặt hàng
Người dùng có thể đăng nhập thành công vào tài khoản nhân viên và truy cập trang danh sách đơn hàng Tại đây, họ có thể nhập từ khóa tìm kiếm hoặc chọn các điều kiện lọc để tinh chỉnh danh sách đơn đặt hàng.
Hoạt động của tác nhân Phản hồi hệ thống
1 Người dùng truy cập vào trang danh sách đơn hàng
2 Hiển thị trang danh sách đơn đặt hàng
3 nhập từ khóa tìm kiếm, chọn các điều kiện filter
4 Hiển thị danh sách đơn hàng đã được filter theo từ khóa tìm kiếm, điều kiện filter
4 Thao tác trên đơn đặt hàng
Use case: Thao tác trên đơn đặt hàng
Hình 2.2.7 Sơ đồ hoạt động - Tìm kiếm đơn đặt hàng
Tác nhân: Nhân viên bán hàng
Tiền điều kiện: Truy cập hệ thống, đăng nhập thành công với tài khoản của nhân viên bán hàng
Mục tiêu: Duyệt đơn, đóng gói, xuất kho, thanh toán
Người dùng đăng nhập thành công vào tài khoản nhân viên và truy cập trang chi tiết đơn hàng Tại đây, họ thực hiện các thao tác như duyệt đơn, đóng gói, xuất kho và thanh toán.
Hoạt động của tác nhân Phản hồi hệ thống
1 Người dùng truy cập vào trang chi tiết đơn đặt hàng
2 Hiển thị trang chi tiết đơn đặt hàng
3 Thực hiện thao tác: duyệt đơn, đóng gói, xuất kho, thanh toán
4 Phản hồi thành công thao tác mà người dùng chọn
Các hoạt động thay thế
Bước 4: Hệ thống có thể phản hồi không thành công của thao tác mà người dùng chọn
5 Tạo đối tác vận chuyển
Use case: Tạo đối tác vận chuyển
Tác nhân: Nhân viên bán hàng
Tiền điều kiện: Truy cập hệ thống, đăng nhập thành công với tài khoản của nhân viên bán hàng
Mục tiêu: Tạo thành công đối tác vận chuyển
Người dùng có thể đăng nhập thành công bằng tài khoản nhân viên và truy cập vào trang tạo đối tác vận chuyển Tại đây, họ cần điền thông tin chi tiết của đối tác vào mẫu thêm mới và sau đó lưu lại thông tin đối tác vận chuyển.
Hoạt động của tác nhân Phản hồi hệ thống
1 Người dùng truy cập vào trang tạo đối tác vận chuyển
2 Hiển thị trang tạo đối tác vận chuyển
Hình 2.2.8 Sơ đồ hoạt động - Thao tác trên đơn đặt hàng
3 Nhập thông tin đối tác vận chuyển vào form thêm mới
4 Hiển thị thông tin được nhập vào
5 Nhấn lưu 6 Thông báo lưu thành công đối tác vận chuyển, chuyển trang danh sách
Các hoạt động thay thế
Bước 6: Lưu không thành công do người dùng nhập thiếu thông tin bắt buộc, thông báo lưu không thành công, giữ nguyên form thêm mới
Hình 2.2.9 Sơ đồ hoạt động - Tạo đối tác vận chuyển
6 Tìm kiếm đối tác vận chuyển
Use case: Tìm kiếm đối tác vận chuyển
Tác nhân: Nhân viên bán hàng
Tiền điều kiện: Truy cập hệ thống, đăng nhập thành công với tài khoản của nhân viên bán hàng
Mục tiêu: Tìm kiếm đối tác vận chuển
Người dùng đã đăng nhập thành công vào tài khoản nhân viên và truy cập trang danh sách đối tác vận chuyển Tại đây, họ có thể nhập từ khóa tìm kiếm để lọc danh sách các đối tác vận chuyển một cách hiệu quả.
Hoạt động của tác nhân Phản hồi hệ thống
1 Người dùng truy cập vào trang tạo danh sách đối tác vận chuyển
2 Hiển thị trang danh sách đối tác vận chuyển
3 Nhập từ khóa tìm kiếm 4 Hiển thị danh sách đối tác vận chuyển đã được filter theo từ khóa tìm kiếm
Use case: Tạo đơn trả hàng
Tác nhân: Nhân viên bán hàng
Tiền điều kiện: Truy cập hệ thống, đăng nhập thành công với tài khoản của nhân viên bán hàng, đơn hàng đã được xuất kho
Mục tiêu: Tạo thành công đơn trả hàng
Để trả hàng, người dùng cần đăng nhập vào tài khoản nhân viên, truy cập vào trang đơn hàng, chọn tùy chọn trả hàng, điền đầy đủ thông tin vào form và nhấn lưu.
Hoạt động của tác nhân Phản hồi hệ thống
Hình 2.2.10 Sơ đồ hoạt động - Tìm kiếm đối tác vận chuyển
1 Người dùng truy cập vào trang chi tiết đơn hàng
2 Hiển thị trang chi tiết đơn hàng
3 Nhấn chọn trả hàng 4 Hiển thị form thông tin đơn trả hàng
5 Điền thông tin lên form trả hàng
6 Nhấn lưu 7 Hiển thị trang chi tiết đơn trả hàng
Các hoạt động thay thế
Bước 3: Ở đơn hàng mà không có trạng thái xuất kho thì sẽ không có nút trả hàng
Hình 2.2.11 Sơ đồ hoạt động - Tạo đơn trả hàng
8 Tìm kiếm đơn trả hàng
Use case: Tìm kiếm đơn trả hàng
Tác nhân: Nhân viên bán hàng
Tiền điều kiện: Truy cập hệ thống, đăng nhập thành công với tài khoản của nhân viên bán hàng
Mục tiêu: Tìm kiếm đơn trả hàng
Người dùng đã đăng nhập thành công vào tài khoản nhân viên và truy cập vào trang danh sách đơn trả hàng Tại đây, họ có thể nhập từ khóa tìm kiếm để lọc danh sách đơn trả hàng một cách hiệu quả.
Hoạt động của tác nhân Phản hồi hệ thống
1 Người dùng truy cập vào trang tạo danh sách đơn trả hàng
2 Hiển thị trang danh sách đơn trả hàng
3 Nhập từ khóa tìm kiếm 4 Hiển thị danh sách đơn trả hàng đã được filter theo từ khóa tìm kiếm
Hình 2.2.12 Sơ đồ hoạt động - Tìm kiếm đơn trả hàng
9 Thao tác trên đơn trả hàng
Use case: Thao tác trên đơn trả hàng
Tác nhân: Nhân viên bán hàng
Tiền điều kiện: Truy cập hệ thống, đăng nhập thành công với tài khoản của nhân viên bán hàng.
Mục tiêu: Nhận hàng, hoàn tiền cho khách hàng, in đơn trả hàng
Người dùng đăng nhập thành công vào tài khoản nhân viên và truy cập trang chi tiết đơn trả hàng Tại đây, họ thực hiện các thao tác nhận hàng trả lại, hoàn tiền cho khách hàng và in đơn trả hàng một cách dễ dàng.
Hoạt động của tác nhân Phản hồi hệ thống
1 Người dùng truy cập vào trang chi tiết đơn trả hàng
2 Hiển thị trang chi tiết đơn trả hàng
3 Nhấn chọn nhận lại hàng 4 Hiển thị nhận hàng thành công, mã phiếu nhận
5 Nhấn chọn hoàn tiền toàn bộ 6 Hiển thị hoàn tiền thành công, mã phiếu chi và ngày tạo
7 Nhấn In 8 Hiển thị giao diện in
9 Nhấn nút thoát 10 Hiển thị trang danh sách đơn trả hàng
Các hoạt động thay thế
Bước 5: Nhấn chọn hoàn tiền một phần, thì hệ thống hiển thị hoàn tiền thành công đồng thời hiển thị danh sách các phiếu chi.
Use case: Tạo đơn giao hàng
Tác nhân: Nhân viên bán hàng
Tiền điều kiện: Truy cập hệ thống, đăng nhập thành công với tài khoản của nhân viên bán hàng, đơn hàng có trạng thái đã đóng gói.
Mục tiêu: Tạo thành công đơn giao hàng
Người dùng đăng nhập thành công vào tài khoản nhân viên, truy cập trang chi tiết đơn hàng, chọn tùy chọn ‘sử dụng giao hàng’, sau đó điền thông tin vào mẫu tạo đơn giao hàng và nhấn lưu.
Hoạt động của tác nhân Phản hồi hệ thống
1 Người dùng truy cập vào trang chi tiết đơn hàng
2 Hiển thị trang chi tiết đơn hàng
Hình 2.2.13 Sơ đồ hoạt động - Thao tác trên đơn trả hàng
3 Nhấn chọn ‘Sử dụng giao hàng’ 4 Hiển thị form tạo đơn giao hàng
5 Điền thông tin lên form tạo đơn giao hàng
6 Nhấn lưu 7 Hiển thị trang chi tiết đơn giao hàng
Hình 2.2.14 Sơ đồ hoạt động - Tạo đơn giao hàng
11.Tìm kiếm đơn giao hàng
Use case: Tìm kiếm đơn giao hàng
Tác nhân: Nhân viên bán hàng
Tiền điều kiện: Truy cập hệ thống, đăng nhập thành công với tài khoản của nhân viên bán hàng
Mục tiêu: Tìm kiếm đơn giao hàng
Người dùng đã đăng nhập thành công vào tài khoản nhân viên và truy cập trang danh sách đơn giao hàng, sau đó sử dụng chức năng tìm kiếm để lọc danh sách đơn hàng theo từ khóa.
Hoạt động của tác nhân Phản hồi hệ thống
1 Người dùng truy cập vào trang danh sách đơn giao hàng
2 Hiển thị trang danh sách đơn giao hàng
3 Nhập từ khóa tìm kiếm 4 Hiển thị danh sách đơn giao hàng đã được filter theo từ khóa tìm kiếm
Hình 2.2.15 Sơ đồ hoạt động - Tìm kiếm đơn giao hàng
12.Thao tác trên đơn giao hàng
Use case: Thao tác trên đơn giao hàng
Tác nhân: Nhân viên bán hàng
Tiền điều kiện: Truy cập hệ thống, đăng nhập thành công với tài khoản của nhân viên bán hàng.
Mục tiêu: Xác nhận giao hàng, hủy giao hàng hoặc in đơn giao hàng
Người dùng đăng nhập thành công vào tài khoản nhân viên và truy cập trang chi tiết đơn giao hàng Tại đây, họ có thể thực hiện các thao tác như xác nhận giao hàng, hủy giao hàng và in đơn giao hàng một cách dễ dàng.
Hoạt động của tác nhân Phản hồi hệ thống
1 Người dùng truy cập vào trang chi tiết đơn giao hàng
2 Hiển thị trang chi tiết đơn giao hàng
3 Nhấn chọn xác nhận giao hàng 4 Hiển thị thông báo xác nhận giao hàng thành công
5 Nhấn chọn in đơn giao hàng 6 Hiển thị giao diện in
9 Nhấn nút thoát 10 Hiển thị trang danh sách đơn giao hàng
Các hoạt động thay thế
Bước 3: Nhấn chọn hủy giao hàng hệ thống hiển thị thông báo hủy giao hàng thành công.
Tác nhân: Nhân viên bán hàng, nhân viên thủ kho, người quản lý
Tiền điều kiện: Truy cập hệ thống
Mục tiêu: Đăng nhập thành công vào hệ thống
Tổng quan: Người dùng truy cập vào trang login của hệ thống, điền thông tin tài khoản mật khẩu vào form đăng nhập đăng nhập thành công
Hoạt động của tác nhân Phản hồi hệ thống
1 Người dùng truy cập vào trang login
3 Điền thông tin tài khoản, mật khẩu vào form đăng nhập
4 Nhấn đăng nhập 5 đăng nhập thành công vào trang chủ
Hình 2.2.16 Sơ đồ hoạt động - Thao tác trên đơn giao hàng
Các hoạt động thay thế
Bước 5: Hệ thống có thể phản hồi đăng nhập không thành công do tài khoản mật hoặc mật khẩu người dùng nhập vào không chính xác
Tác nhân: Nhân viên bán hàng, nhân viên thủ kho, người quản lý
Tiền điều kiện: Truy cập hệ thống, đăng nhập thành công
Mục tiêu: Đăng xuất khỏi hệ thống
Hình 2.2.17 Sơ đồ hoạt động - Đăng nhập
Tổng quan: Trên giao diện trang chủ người dùng nhấn nút đăng xuất để đăng xuất khỏi hệ thống
Hoạt động của tác nhân Phản hồi hệ thống
1 Người dùng nhấn nút đăng xuất 2 Hiển thị trang login
Kết luận
Trong chương này, chúng ta sẽ xác định các chức năng cần thiết, mô tả chi tiết từng chức năng, xác định các tác nhân liên quan, và trình bày các use case cùng với mô tả cụ thể Bên cạnh đó, chúng ta cũng sẽ xây dựng sơ đồ hoạt động để minh họa rõ ràng các quy trình.
THIẾT KẾ VÀ XÂY DỰNG HỆ THỐNG
Thiết kế mức cao
Hình 3.1.18 Kiến trúc hệ thống
DNS, viết tắt của Domain Name Server, là hệ thống thiết lập sự tương ứng giữa tên miền và địa chỉ IP trên Internet, giữ vai trò quan trọng trong World Wide Web Nó cho phép người dùng dễ dàng truy cập thông tin toàn cầu thông qua các thiết bị kết nối Internet DNS thực hiện việc chuyển đổi tên miền (như google.com) thành địa chỉ IP tương ứng (như 123.456.789), giúp máy tính kết nối với server thích hợp Hệ thống tên miền hoạt động như danh bạ điện thoại của Internet, giúp người dùng dễ dàng ghi nhớ và tra cứu thông tin mà không cần phải nhớ dãy số IP khó hiểu.
Cân Bằng Tải là quá trình phân phối lưu lượng truy cập đồng đều giữa nhiều máy chủ trong một hệ thống, giúp giảm thiểu tình trạng quá tải và nâng cao thời gian hoạt động của hệ thống Khi một máy chủ gặp sự cố, Cân Bằng Tải sẽ chuyển giao công việc cho các máy chủ còn lại, cải thiện năng suất hoạt động tổng thể Horizontal Scaling liên quan đến việc thêm máy chủ mới để mở rộng nguồn lực, trong khi Vertical Scaling là nâng cấp tài nguyên hiện tại như RAM và CPU Việc sử dụng Horizontal Scaling giúp duy trì sự ổn định cho website, ngay cả khi một máy chủ gặp vấn đề, do có các máy chủ khác hỗ trợ Ngoài ra, việc phân chia công việc giữa các máy chủ giúp tối ưu hóa hiệu suất backend như database và web server, tránh tình trạng quá tải cho bất kỳ máy chủ nào Vertical Scaling không phải là giải pháp khả thi do giới hạn trong khả năng nâng cấp máy tính và nguy cơ quá tải khi một máy chủ phải xử lý quá nhiều công việc.
3 Web app service Đây đơn giản là nơi xử lý công việc logic, nghĩa là xử lý request từ phía user và trả lại code HTML cho trình duyệt Để làm được việc này thì Web server phải được kết nối với cơ sở hạ tầng như database, caching layers, job queues, data queues, services, và nên dùng load balancer để xử lý khi lượng request từ user lớn Trong hệ thống này chúng ta dùng ngôn ngữ C# service ở đây là các API tương tác với CSDL
Sử dụng hệ quản trị CSDL SQL server 2014
Dịch vụ caching cung cấp kho dữ liệu key/value đơn giản, cho phép lưu trữ và tra cứu thông tin nhanh chóng Các ứng dụng thường sử dụng caching để lưu kết quả của các xử lý phức tạp, giúp tiết kiệm thời gian bằng cách lấy lại kết quả từ bộ nhớ đệm mà không cần thực hiện lại các xử lý Cache có thể lưu trữ kết quả truy vấn từ cơ sở dữ liệu, dịch vụ, hoặc HTML từ URL Ví dụ, Google lưu trữ kết quả tìm kiếm cho các từ thông dụng, trong khi Facebook giữ lại nhiều bài viết bạn thấy khi đăng nhập Hiện nay, hai hệ thống lưu trữ phổ biến là Redis và Memcache, trong đó Redis được ưu tiên sử dụng vì tiêu tốn ít RAM hơn so với Memcache.
6 Job Queue and Job servers
Nhiều ứng dụng web thực hiện các hoạt động bất đồng bộ không trực tiếp liên quan đến kết quả từ yêu cầu của người dùng, như việc Google tìm kiếm thông tin trên Internet Quá trình này diễn ra bất đồng bộ và không xảy ra mỗi lần người dùng thực hiện tìm kiếm Job Queues là danh sách các công việc cần xử lý một cách bất đồng bộ, thường được thực hiện theo lịch trình hoặc theo hành động của người dùng Job Server là máy chủ riêng biệt nơi các công việc này được thực thi.
Tìm kiếm toàn văn (full-text search) là phương pháp tự nhiên nhất để tra cứu thông tin, tương tự như cách Google hoạt động; chỉ cần gõ từ khóa và nhấn enter để nhận kết quả Phương pháp này sử dụng cấu trúc dữ liệu gọi là inverted index, cho phép tìm kiếm nhanh chóng các tài liệu chứa từ khóa cần tìm Inverted index hoạt động bằng cách ánh xạ giữa các từ khóa (term) và các tài liệu (document) chứa chúng, thay vì lập chỉ mục theo từng tài liệu như trong MySQL Ngoài việc tìm kiếm trực tiếp từ cơ sở dữ liệu, có thể sử dụng các dịch vụ tìm kiếm riêng để lưu trữ inverted index và cung cấp giao diện truy vấn Một số nền tảng phổ biến cho việc này bao gồm Elasticsearch, Sphinx và Apache Solr.
Một số dịch vụ sẽ được tách ra và hoạt động như những ứng dụng độc lập, cho phép các ứng dụng web và các dịch vụ khác tương tác với chúng.
Account service dùng để lưu trữ dữ liệu của tất cả các user qua các site.
Dịch vụ lưu trữ nội dung cho phép lưu trữ một lượng lớn dữ liệu như video, ảnh và file âm thanh Ngoài ra, dịch vụ này còn cung cấp giao diện người dùng để tải lên nội dung và theo dõi lịch sử tải lên một cách dễ dàng.
Payment service cung cấp giáo diện để trả phí qua thẻ tín dụng.
Cloud storage là giải pháp hiệu quả để lưu trữ, truy cập và chia sẻ dữ liệu trên Internet thông qua AWS Với dịch vụ này, bạn có thể dễ dàng lưu trữ và truy cập mọi thông tin đã được lưu trữ trên hệ thống cục bộ, đồng thời tương tác với chúng một cách thuận tiện.
Restful API Amazon S3 hiện nay là cloud storage phổ biến nhất để lưu trữ video, ảnh, audio, file css, js,
CDN, hay Mạng Phân Phối Nội Dung, là một hệ thống gồm nhiều máy chủ lưu trữ phân bố ở nhiều vị trí địa lý khác nhau, hoạt động cùng nhau để cung cấp nội dung như hình ảnh, CSS, Javascript, video và truyền tải media theo thời gian thực Cơ chế hoạt động của CDN cho phép người dùng truy cập nhanh chóng vào dữ liệu từ máy chủ web gần nhất, thay vì phải kết nối với máy chủ tại trung tâm dữ liệu, từ đó cải thiện tốc độ tải trang và trải nghiệm người dùng.
Thiết kế chi tiết
1 Giao diện bán hàng trực tiếp (POS)
Hình 3.2.19 Giao diện bán hàng POS
Hình 3.2.20 Giao diện bán hàng POS - chọn khuyến mại
Hình 3.2.21 Giao diện bán hàng POS - thêm mới khách hàng
2 Giao diện Thêm mới đơn hàng
Hình 3.2.22 Giao diện thêm mới đơn hàng
3 Giao diện Sửa đơn hàng
Hình 3.2.23 Giao diện sửa đơn hàng
4 Giao diện xem Chi tiết đơn hàng
Hình 3.2.24 Giao diện chi tiết đơn hàng
5 Giao diện Danh sách đơn hàng
Hình 3.2.25 Giao diện danh sách đơn hàng
6 Giao diện Thêm mới đơn trả hàng
Hình 3.2.26 Giao diện thêm mới đơn trả hàng
7 Giao diện Chi tiết đơn trả hàng
Hình 3.2.27 Giao diện chi tiết đơn hàng
8 Giao diện Danh sách đơn trả hàng
Hình 3.2.28 Giao diện danh sách đơn trả hàng
9 Giao diện Thêm mới đơn giao hàng
Hình 3.2.29 Giao diện thêm mới đơn giao hàng
10.Giao diện Chi tiết đơn giao hàng
Hình 3.2.30 Giao diện chi tiết đơn giao hàng
11.Giao diện Danh sách đơn giao hàng
Hình 3.2.31 Giao diện danh sách đơn giao hàng
12.Giao diện Danh sách đối tác vận chuyển
Hình 3.2.32 Giao diện danh sách đối tác vận chuyển
13.Giao diện Thêm mới đối tác vận chuyển
Hình 3.2.33 Giao diện thêm mới đối tác vận chuyển
3.2.2 Thiết kế cơ sở dữ liệu
1 MigrationHistory Quản lý lịch sử thay đổi database
2 Attribute Quản lý thuộc tính hàng hóa
3 AttributeDetail Quản lý chi tiết thuộc tính hàng hóa
4 Bank Quản lý thông tin ngân hàng
5 BankTransfer Quản lý thông tin chuyển khoản
6 BankTransferDetail Quản lý thông tin chi tiết chuyển khoản
7 Branch Quản lý chi nhánh
8 Error Quản lý thông tin lỗi hệ thống
9 Item Quản lý thông tin hàng hóa
10 ItemCategory Quản lý thông tin danh mục hàng hóa
11 ItemOption Quản lý thông tin tùy chọn hàng hóa
12 Object Quản lý thông tin đối tượng con người
13 ObjectKind Quản lý thông tin loại đối tượng
14 PaymentSchedule Quản lý thông tin lịch trình thanh toán
15 PricePolicy Quản lý thông tin chính sách giá
16 PrintForm Quản lý thông tin mẫu in
17 PurchaseInvoice Quản lý thông tin đơn nhập hàng
18 PurchaseInvoiceDetail Quản lý thông tin đơn nhập hàng chi tiết
19 Region Quản lý thông tin khu vực
20 SaleInvoice Quản lý thông tin hóa đơn bán hàng
21 SaleInvoiceDetail Quản lý thông tin chi tiết hóa đơn bán hàng
22 SalesPromotion Quản lý thông tin khuyến mãi
23 SalesPromotionDetail Quản lý thông tin chi tiết khuyến mãi
24 Stock Quản lý thông tin kho
25 StockTransfer Quản lý thông tin đơn chuyển kho
26 StockTransferDetail Quản lý thông tin chi tiết đơn chuyển kho
27 StoreInfo Quản lý thông tin siêu thị
28 VoucherType Quản lý thông tin loại phiếu
Hình 3.2.34 Sơ đồ diagram cơ sở dữ liệu
3 Thiết kế chi tiết các bảng dữ liệu.
MigrationHistory – Quản lý lịch sử thay đổi database.
Tên trường Mô tả Kiểu P
MigrationId Định danh lịch sử thay đổi Nvarchar(150) X X
Attribute – Quản lý thuộc tính hàng hóa
Tên trường Mô tả Kiểu PK FK NN REF
AttributeID Định danh thuộc tính
Name Tên thuộc tính Nvarchar(max)
AttributeDetail – Quản lý chi tiết thuộc tính hàng hóa
Tên trường Mô tả Kiểu PK FK NN REF
D Định danh chi tiết thuộc tính
Value Giá trị thuộc tính Nvarchar(max)
ID tùy chọn hàng hóa
Bank – Quản lý thông tin ngân hàng.
Tên trường Mô tả Kiểu P
BankID Định danh ngân hàng Uniqueidentifier X X
BankAccoun t Số tài khoản Nvarchar(250)
BankName Tên ngân hàng Nvarchar(250)
BankTransfer – Quản lý thông tin chuyển khoản.
Tên trường Mô tả Kiểu P
VoucherID Định danh phiếu chuyển khoản
VoucherTypeID Định danh loại phiếu
Tổng tiền quy đổi sang VNĐ
BankTransferDetail – Quản lý thông tin chi tiết chuyển khoản
Tên trường Mô tả Kiểu PK FK NN REF
VoucherDetailID Định danh chi tiết phiếu chuyển khoản
VoucherID Định danh phiếu chuyển khoản
Amount Số tiền quy đổi sang VNĐ Money
Branch – Quản lý chi nhánh
Tên trường Mô tả Kiểu P
BranchID Định danh chi nhánh Uniqueidentifier X X
BranchCode Mã chi nhánh Nvarchar(50)BranchName Tên chi Nvarchar(255) nhánh
Hot line chi nhánh Varchar(15)
Email Mail chi nhánh Varchar(100)
Status Trạng thái hoạt động Bit X
Error – Quản lý thông tin lỗi hệ thống
Tên trường Mô tả Kiểu PK F
ErrorID Định danh lỗi Uniqueidentifie r X X
Message Thông báo lỗi Nvarchar(max)
CreateDate Thời gian tạo Datetime X
Item – Quản lý thông tin hàng hóa
Tên trường Mô tả Kiểu PK FK NN REF
ItemID Định danh hàng hóa
CreateDate Thời gian tạo Datetime X
ModifiedDate Thời gian sửa Datetime
ModifiedBy Người sửa Nvarchar(150) ItemCategoryID Định danh danh
Band Thương hiệu Nvarchar(150) Image Đường dẫn ảnh hàng hóa
Name Tên hàng hóa Nvarchar(250) Quantity Số lượng Int
Trạng thái kinh doanh hàng hóa
Unit Đơn vị hàng hóa Nvarchar(50)
ItemCategory – Quản lý thông tin danh mục hàng hóa
Tên trường Mô tả Kiểu P
ID Định danh danh mục hàng hóa
ItemOption – Quản lý thông tin tùy chọn hàng hóa
Tên trường Mô tả Kiểu P
ID Định danh tùy chọn hàng hóa
Tên tùy chọn hàng hóa
Mã barcode tùy chọn hàng hóa
Mã SKU tùy chọn hàng hóa
StockID Định danh kho Uniqueidentifier X Stock
CreateDate Thời gian tạo Datetime
BranchID Định danh chi nhánh Uniqueidentifier X Branch
ModifiedDate Thời gian sửa đổi Datetime
ModifiedBy Người sửa đổi Nvarchar(150)
InitialPrice Giá khởi tạo Money
UnitName Tên đơn vị Nvarchar(150)
UnitConvertRate Đơn vị chuyển đổi Nvarchar(50)
ItemID Định danh hàng hóa Uniqueidentifier X X Item
Image1 Đường dẫn ảnh 1 Nvarchar(250)
Image2 Đường dẫn ảnh 2 Nvarchar(250)
Image3 Đường dẫn ảnh 3 Nvarchar(250)
Image4 Đường dẫn ảnh 4 Nvarchar(250)
MinimumInventory Tồn kho tối thiểu Decimal(18,2) MaximumInventor y
Tồn kho tối đa Decimal(18,2)
Object – Quản lý thông tin đối tượng con người.
Tên trường Mô tả Kiểu PK FK NN REF
ObjectID Định danh đối tượng
ObjectCode Mã đối tượng Nvarchar(50)
ObjectName Tên đối tượng Nvarchar(255) ObjectAddress Địa chỉ Nvarchar(255)
Tel Số điện thoại Nvarchar(50)
BankAccount Tài khoản ngân hàng Nvarchar(50)
BankName Tên ngân hàng Nvarchar(255)
AccumlativeP oint Điểm tích lũy Int
ObjectKind Loại đối tượng Int X ObjectKin d
ModifyDate Ngày thay đổi Datetime
ModifyBy Người thay đổi Nvarchar(100)
ObjectWard Định danh khu vực Nvarchar(255)
BranchID Định dang chi nhánh
ApplyIncentiv es Áp dụng ưu đãi Int
PricePolicyDe fault Định danh chính sách giá mặc định
Chiết khấu mặc định Decimal(18,2)
Phương thức thanh toán mặc định
Lịch trình thanh toán mặc định
ObjectKind – Quản lý thông tin loại đối tượng
Tên trường Mô tả Kiểu PK FK NN REF
ObjectKindID Định danh loại đối tượng Int X X
Tên loại đối tượng Nvarchar(100)
PaymentSchedule – Quản lý thông tin lịch trình thanh toán
Tên trường Mô tả Kiểu PK FK NN REF
IsDefault Cờ mặc định Bit
PricePolicy – Quản lý thông tin chính sách giá
Tên trường Mô tả Kiểu P
PricePolicyID Định danh chính sách
PricePolicyCode Mã chính sách giá Nvarchar(50) PricePolicyNam e
Tên chính sách giá Nvarchar(150)
ModifyDate Ngày thay đổi Datetime
ModifyBy Người thay đổi Nvarchar(100)
PrintForm – Quản lý thông tin mẫu in
Tên trường Mô tả Kiểu P
ID Định danh mẫu in Uniqueidentifier X X
Code Mã mẫu in Nvarchar(50)
Name Tên mẫu in Nvarchar(50)
HtmlHeader Mã header mẫu in Nvarchar(4000)
HtmlBody Mã body mẫu in Nvarchar(max)
PurchaseInvoice – Quản lý thông tin đơn nhập hàng
Tên trường Mô tả Kiểu PK FK NN REF
VoucherID Định danh đơn nhập hàng
INVoucherDate Ngày hóa đơn Datetime
INVoucherNo Mã hóa đơn Nvarchar(
VoucherType Loại hóa đơn Int X VoucherT ype
ObjectID Định danh đối tượng
ObjectName Tên đối tượng Nvarchar(
BranchID Định danh chi nhánh
EmployeeID Nhân viên Uniqueid entifier InvoiceExportSta tus
Trạng thái hóa đơn xuất Int
Thuế tiêu thụ đặc biệt Bit
Trạng thái nhập kho Int
PaymentStatus Trạng thái thanh toán Int TotalPurchaseQu antity
Tổng số lượng nhập Int
TotalAmountOC Tổng tiền thanh toán gốc Money
TotalAmount Tổng tiền quy đổi sang VNĐ MoneyTotalPaymentA Tổng tiền thanh Money mount toán
AmountOC Tổng thuế nhập Money
Amount Tổng thuế nhập Money
TotalVATAmou ntOC Tổng VAT Money
TotalVATAmou nt Tổng VAT Money
Chiết khấu cho hóa đơn Money
TotalDiscountA mountOC Tổng chiết khấu Money
TotalDiscountA mount Tổng chiết khấu Money
Tổng tiền vận chuyển Money
Tổng tiền vận chuyển Money
Tổng giá trị xuất Money
Tổng giá trị xuất Money
100) ModifyDate Ngày thay đổi datetime
ModifiedBy Người thay đổi nvarchar(
PurchaseInvoiceDetail – Quản lý thông tin chi tiết đơn nhập hàng
Tên trường Mô tả Kiểu P
VoucherDetailID Định danh chi tiết đơn nhập uniqueidentifier X X
VoucherID Định danh đơn nhập uniqueidentifier X PurchaseInvoice
ItemID Định danh hang hóa uniqueidentifier X Item
StockID Định danh kho uniqueidentifier
Amount Tổng tiền money DiscountAmount
Region – Quản lý thông tin khu vực
Tên trường Mô tả Kiểu PK FK NN REF
RegionID Định danh khu vực uniqueidentifier X X
RegionCode Mã khu vực nvarchar(255)
RegionName Tên khu vực nvarchar(255)
ParentID Định danh khu vực cha Uniqueidentifier X Region
IsParent Là khu vực cha bit
ParentCode Mã khu vực cha nvarchar(255)
Grade Phân cấp khu vực Int
SaleInvoice – Quản lý thông tin đơn bán hàng
Tên trường Mô tả Kiểu P
VoucherID Định danh đơn bán hàng uniqueidentifie r X X
Mã đơn bán hàng nvarchar(50)
VoucherType Loại chứng int X VoucherTyp e từ
ObjectID Định danh đối tượng uniqueidentifie r X Object
Hóa đơn thanh toán bit
Tỉ lệ chiết khấu decimal(22, 8)
Chiết khấu đơn hàng money
CreatedBy Người tạo nvarchar(100) ModifiedBy
Trạng thái đơn hàng int
Employee Nhân viên nvarchar(100) OriginalVoucherNo
Mã chứng từ gốc nvarchar(50)
BranchID Định danh chi nhánh uniqueidentifie r X BranchID
PromotionID Định danh khuyế n mãi uniqueidentifie r
SaleInvoiceDetail – Quản lý thông tin chi tiết đơn bán hàng
Tên trường Mô tả Kiểu P
VoucherDetailID Định danh chi tiết đơn hàng uniqueidentifie r X X
VoucherID Định danh đơn hàng uniqueidentifie r X SaleInvoice
X ItemOption tùy chọn hàng hóa Description Mô tả nvarchar(255)
Tỉ lệ chiết khấu decimal(22, 8)
VATRate Tỉ lệ thuế decimal(22, 8) VATAmount
SalesPromotion – Quản lý thông tin khuyến mãi
Tên trường Mô tả Kiểu P
VoucherID Định danh khuyến mãi uniqueidentifier X X
VoucherType Loại phiếu int X VoucherType
VoucherDate Ngày hóa đơn datetime
ApplyQuantity Số lượng áp dụng int Description Mô tả nvarchar(255)
Expirydate Ngày hết hạn datetime
BranchID Định danh chi nhánh uniqueidentifier X Branch
Tên khuyến mãi nvarchar(MAX) Object Đối tượng uniqueidentifier
SalesPromotionDetail – Quản lý thông tin chi tiết khuyến mãi
Tên trường Mô tả Kiểu P
D Định danh chi tiết phiếu khuyến mãi uniqueidentifi er X X
VoucherID Định phiếu khuyến mãi uniqueidentifi er X X SalesProm otion ItemID Định danh quy cách hàng hóa uniqueidentifi er X ItemOptio n
ConditionsMax Giá trị tối ta đơn hàng decimal(18, 2)
ConditionsMin Giá trị tối decimal(18, thiểu đơn hàng 2)
PromotionValue Giá trị khuyến mãi decimal(18, 2)
QuantityItem Số lượng tối thiểu int
LimitPromotion Số lượng tối đa int
PromotionType Loại khuyến mãi int
Stock – Quản lý thông tin kho
Tên trường Mô tả Kiểu PK F
StockID Định danh kho uniqueidentifie r X X
BranchID Định danh chi nhánh uniqueidentifie r X Branch
Tồn kho ban đầu decimal(18, 2)
ItemOptionID Định danh quy cách hàng hóa uniqueidentifie r X ItemOption
StockTransfer – Quản lý thông tin phiếu chuyển kho
Tên trường Mô tả Kiểu P
VoucherID Định danh phiếu uniqueidentifie r
VoucherType Loại phiếu int X VoucherTyp e VoucherDate
VoucherNo Số phiếu nvarchar(20) ObjectName
ObjectAddress Địa chỉ nvarchar(255) InwardStockKeeper
Người thay đổi nvarchar(100)ModifiedBy Người nvarchar(100) thay đổi
BranchID Định danh chi nhánh uniqueidentifie r
FromStockID Định danh kho chuyể n uniqueidentifie r X Stock
ToStockID Định danh kho chuyể n đến uniqueidentifie r X Stock
StockTransferDetail – Quản lý thông tin chi tiết phiếu chuyển kho
Tên trường Mô tả Kiểu P
VoucherDetailID Định danh chi tiết phiếu chuyển kho uniqueidentifier X X
VoucherID Định danh uniqueidentifier X StockTransfer phiếu chuyển kho
ItemID Định danh hàng hóa uniqueidentifier Item
SortOrder Số thứ tự int
UnitConvert Đơn vị chuyển đổi nvarchar(20)
Tỷ lệ chuyển đổi decimal(22, 8)
QuantityItem Số lượng int transferPrice Giá chuyển int importPrice Giá nhập int ConversionPrice
StoreInfo – Quản lý thông siêu thị
Tên trường Mô tả Kiểu PK F
VoucherType – Quản lý thông tin loại phiếu
Tên trường Mô tả Kiểu PK F
D Định danh loại phiếu int X X
VoucherName Tên loại phiếu nvarchar(250
Xây dựng hệ thống
Để xây dựng được hệ thống quản lý siêu thị thì chúng ta cần sử dụng một số công nghệ phổ biến sau đây:
ASP.NET WEB API không chỉ hỗ trợ phát triển hệ thống trên nền tảng web mà còn giúp xây dựng và phát triển ứng dụng di động một cách dễ dàng Khi phát triển ứng dụng di động, chúng ta chỉ cần gọi lại các API và thiết kế giao diện trên thiết bị di động, điều này giúp tiết kiệm đáng kể thời gian phát triển.
AngularJS: là một framework dựa trên javascript rất phổ biến, giúp giao diện hệ thống có tính tương tác rất cao, tăng trải nghiệm cho người dùng.
SQL Server 2014: lưu trữ lượng dữ liệu lớn và truy xuất dữ liệu cao.
Quản lý siêu thị là yếu tố cốt lõi trong việc xây dựng và phát triển hệ thống kinh doanh hiện đại Khi chúng ta thành công trong việc quản lý siêu thị, một mô hình kinh doanh tổng hợp, điều này sẽ giúp chúng ta dễ dàng quản lý các lĩnh vực kinh doanh nhỏ lẻ khác.
Kết luận
Trong chương này, chúng tôi đã thiết kế kiến trúc hệ thống và giao diện cho hai phân hệ: bán hàng và quản lý đơn hàng Bên cạnh đó, chúng tôi cũng thực hiện thiết kế cơ sở dữ liệu cho hệ thống và xác định công nghệ phù hợp để xây dựng hệ thống.