Hình 3.20 : Sơ đồ use case chức năng thống kê sản phẩm bán chạy
Hình 3.21 : Sơ đồ use case tổng quát chức năng của staff 3.5.1Mô hình use case chức năng quản lý đánh giá của khách hàng
đánh giá sản phẩm 3.5.2Mô hình use case chức năng quản lý sản phẩm
Hình 3.23 : Sơ đồ use case chức năng quản lý sản phẩm 3.5.3Mô hình use case chức năng quản lý danh mục
Hình 3.25 : Sơ đồ use case chức năng quản lý đơn hàng 3.5.5Mô hình use case chức năng đăng nhập và quản lý tài khoản
Hình 3.26 : Sơ đồ use case chức năng đăng nhập và quản lý tài khoản
Hình 3.27 : Sơ đồ use case chức năng quản lý nhập hàng 3.5.7Mô hình use case chức năng thống kê thu chi
Hình 3.29 : Sơ đồ use case chức năng thống kê sản phẩm tồn kho 3.5.9Mô hình use case chức năng thống kê sản phẩm bán chạy
Hình 3.30 : Sơ đồ use case chức năng thống kê sản phẩm bán chạy
3.6 Mô tả quá trình.
Đăng nhập : use case này giúp người dùng sử dụng các chức năng của hệ thống cần đến quyền truy cập
Đăng kí tài khoản : use case này mô tả chức năng tạo tài khoản cho người dùng, phải có tài khoản mới thực hiện chức năng đăng nhập thành công.
Quản lý tài khoản cá nhân: khách hàng có thể quản lý tài khoản cá nhân của họ.
- Xem thông tin cá nhân : khách hàng có thể xem thông tin chi tiết tài khoản của họ.
như tên , email , số điện thoại ,…
- Đổi mật khẩu : khách hàng có thể thực hiện đổi mật khẩu tài khoản đăng nhập.
- Xóa tài khoản : khách hàng có thể xóa tài khoản khi không sử dụng nữa. Xem thông tin sản phẩm : use case này mô tả chức năng xem thông tin sản
phẩm của người sử dụng như xem tên sản phẩm, loại sản phẩm, mô tả chi tiết của sản phẩm và giá bán.
Tìm kiếm sản phẩm : use case này mô tả chức năng tìm kiếm sản phẩm theo tên sản phẩm, loại sản phẩm, hãng sản xuất.
Xem lịch sử đặt hàng : use case giúp khách hàng có thể xem trạng thái đơn hàng, và lịch sử mua hàng.
Đánh giá sản phẩm : use case này mô tả chức năng đánh giá sản phẩm cho người dùng.
Đặt hàng : use case này mô tả chức năng đặt hàng của khách hàng, khách hàng có thể thay đổi số lượng sản phẩm theo ý muốn, khách hàng có thể chọn phương thức thanh toán là thanh toán trực tiếp hoặc thanh toán online qua ví paypal.
Quản lý giỏ hàng : chức năng của giỏ hàng là đựng những mặt hàng mà khách hàng chọn.
- Thêm sản phẩm : sau khi xem thông tin sản phẩm, khách hàng có thể lựa chọn mặt hàng mình cần mua và đặt vào giỏ hàng, nếu muốn chọn tiếp thì quay lại trang sản phẩm để chọn tiếp và cho thêm vào giỏ hàng. - Cập nhật số lượng sản phẩm : sau khi thêm sản phẩm vào giỏ hàng, nếu
muốn tăng số lượng sản phẩm lên thì có thể cập nhật số lượng. - Xóa sản phẩm : nếu không ưng ý mặt hàng đã chọn thì có thể xóa. Quản lý sản phẩm : use case này mô tả chức năng cập nhật thông tin sản phẩm
vào hệ thống của Admin. Khi thông tin của một sản phẩm thay đổi thì Admin/Staff sẽ cập nhật những thông tin đó vào hệ thống.
- Thêm sản phẩm : Admin/Staff có thể thêm thông tin sản phẩm khi nhập mới một sản phẩm.
- Sửa thông tin sản phẩm : Admin/Staff có thể sửa thông tin sản phẩm khi nhập thêm sản phẩm đã có trong database hoặc sửa một số thông tin liên
còn bán mặt hàng đó nữa.
- Tìm kiếm sản phẩm : Admin/Staff có thể tìm kiếm sản phẩm theo tên sản phẩm, loại sản phẩm,..
- In danh sách sản phẩm : Admin có thể xuất danh sách sản phẩm.
Quản lý đơn hàng : Admin/Staff quản lý đơn hàng khi khách hàng đặt mua sản phẩm của cửa hàng.
- Xem thông tin đơn hàng : Admin/Staff có thể xem thông tin chi tiết đơn đặt hàng của khách hàng.
- Cập nhật trạng thái : Admin/Staff có thể cập nhập trạng thái đơn hàng khi đơn hàng đã được giao hàng thành công.
- Xóa đơn hàng : Admin/Staff có thể có thể xóa đơn hàng của khách hàng khi đã được giao hàng thành công.
- Tìm kiếm đơn hàng : Admin/Staff có thể tìm kiếm đơn hàng nếu cần. Quản lý danh mục: khi thông tin về danh mục sản phẩm nào đó thay đổi thì
Admin/Staff sẽ có nhiệm vụ thực hiện chức năng cập nhật lại thông tin đó vào hệ thống.
- Thêm danh mục : Admin/Staff có thể thêm danh mục sản phẩm vào nếu chưa tồn tại danh mục sản phẩm đó.
- Sửa danh mục : Admin/Staff có thể sửa thông tin danh mục nếu danh mục sản phẩm đó đã được lưu trữ rồi.
- Xóa danh mục : Admin/Staff có thể xóa danh mục của sản phẩm đó khi không dùng sản phẩm của danh mục đó nữa.
Quản lý đánh giá sản phẩm : use case này mô tả chức năng quản lý đánh giá của sản phẩm có thể xem đánh giá của khách hàng, xóa đánh giá của khách hàng.
Đánh giá sản phẩm : Admin/Staff có thể đánh giá sản phẩm bất kì. Xem đánh giá : Admin/Staff có thể xem tất cả đánh giá của khách hàng. Xóa đánh giá : Admin có thể xóa bất kỳ đánh giá sản phẩm nào.
Quản lý tài khoản chung : Admin quản lý tài khoản của những khách hàng đăng ký là thành viên của trang web và những nhân viên (staff).
- Tạo tài khoản : Admin thêm tài khoản Admin hoặc tài khoản Staff vào nếu chưa tồn tại tài khoản Admin hoặc Staff đó.
của người dùng, Staff và Admin
- Sửa thông tin tài khoản : Admin sửa thông tin tài khoản (đổi mật khẩu) nếu tài khoản người dùng hoặc Staff đó đã được lưu trữ rồi.
- Xóa tài khoản : xóa tài khoản người dùng, tài khoản Staff và tài khoản Admin khi tài khoản đó không còn sử dụng nữa.
Quản lý tài khoản khách hàng (Staff) :
- Xem thông tin tài khoản khách hàng : Staff có thể xem thông tin chi tiết tài khoản của người dùng
- Sửa thông tin tài khoản khách hàng : Staff sửa thông tin tài khoản nếu tài khoản người dùng đó đã được lưu trữ rồi.
- Xóa thông tin tài khoản khách hàng : xóa tài khoản người dùng khi tài khoản đó không còn sử dụng nữa.
Quản lý nhập hàng : Admin/ Staff quản lý đơn nhập hàng khi cửa hàng nhập hàng mới về.
Tạo đơn nhập hàng : Admin/Staff có thể thêm đơn nhập mới khi có nhu cầu nhập hàng mới. Có thể tạo đơn nhập hàng ở excel rồi lấy dữ liệu ở file mới tạo thành đơn nhập hàng.
Xem đơn nhập hàng : Admin/Staff có thể xem thông tin chi tiết của đơn nhập hàng.
Xóa đơn nhập hàng/Staff : có thể xóa đơn hàng khi đã nhận hàng thành công.
Thống kê :
- Thống kê thu chi: Admin/Staff có thể xem chi phí nhập hàng, doanh thu theo tháng của website
- Thống kê sản phẩm bán chạy: Admin/Staff có thể thống kê lại toàn bộ những mặt hàng đã bán để xem những mặt hàng nào là mặt hàng bán nhanh nhất với số lượng nhiều nhất theo tháng.
- Thống kê sản phẩm trong kho : Admin/Staff có thể xem thống kê các sản phẩm tồn kho, và các tình trạng của từng sản phẩm.
Sao lưu và phục hồi dữ liệu: Admin có thể sao lưu và phục hồi dữ liệu về một thời điểm xác định
3.7.1Biểu đồ tuần tự chức năng đăng nhập.
Hình 3.31 : Biểu đồ tuần tự chức năng đăng nhập 3.7.2Biểu đồ tuần tự chức năng đăng ký.
Hình 3.32 : Biểu đồ tuần tự chức năng đăng ký 3.7.3Biểu đồ tuần tự chức năng đổi mật khẩu.
Hình 3.34 : Biểu đồ tuần tự chức năng quên mật khẩu 3.7.5Biểu đồ tuần tự chức năng tìm kiếm.
Hình 3.36 : Biểu đồ tuần tự chức năng đặt hàng 3.7.7Biểu đồ tuần tự chức năng thanh toán trực tuyến.
Hình 3.37 : Biểu đồ tuần tự chức năng thanh toán trực tuyến3.7.8Biểu đồ tuần tự chức năng quản lý sản phẩm. 3.7.8Biểu đồ tuần tự chức năng quản lý sản phẩm.
Hình 3.39 : Biểu đồ tuần tự chức năng quản lý danh mục 3.7.10 Biểu đồ tuần tự chức năng quản lý đơn hàng.
Hình 3.40 : Biểu đồ tuần tự chức năng quản lý đơn hàng 3.7.11 Biểu đồ tuần tự chức năng quản lý nhập hàng.
Hình 3.42 : Biểu đồ tuần tự chức năng quản lý nhập hàng của Nhân viên 3.7.12 Biểu đồ tuần tự chức năng quản lý đánh giá.
Hình 3.43 : Biểu đồ tuần tự chức năng quản lý đánh giá sản phẩm 3.7.13 Biểu đồ tuần tự chức năng quản lý tài khoản khách hàng.
Hình 3.45 : Biểu đồ tuần tự chức năng quản lý tài khoản nhân viên 3.7.15 Biểu đồ tuần tự chức năng thống kê.
Hình 3.46 : Biểu đồ tuần tự chức năng thống kê
3.8 Biểu đồ hoạt động.
Hình 3.48 : Biểu đồ hoạt động chức năng đăng ký 3.8.3 Biểu đồ hoạt động chức năng quên mật khẩu.
Hình 3.50 : Biểu đồ hoạt động chức năng đổi mật khẩu 3.8.5 Biểu đồ hoạt động chức năng đặt hàng.
Quản trị viên (Admin) :
- Biểu đồ hoạt động chức năng thêm, sửa sản phẩm :
Hình 3.52 : Biểu đồ hoạt động chức năng thêm sửa sản phẩm của Admin
- Biểu đồ hoạt động chức năng xóa và in danh sách sản phẩm :
- Biểu đồ hoạt động chức năng thêm, sửa sản phẩm :
Hình 3.54 : Biểu đồ hoạt động chức năng thêm sửa sản phẩm của nhân viên
3.8.7 Biểu đồ hoạt động chức năng quản lý tài khoản.
Quản trị viên (Admin) :
- Biểu đồ hoạt động chức năng thêm và sửa tài khoản nhân viên và khách hàng :
Hình 3.56 : Biểu đồ hoạt động chức năng thêm sửa tài khoản của Admin
Nhân viên (Staff) :
- Biểu đồ hoạt động chức năng sửa tài khoản khách hàng :
Hình 3.58 : Biểu đồ hoạt động chức năng sửa tài khoản của nhân viên
3.8.8 Biểu đồ hoạt động chức năng quản lý danh mục
Quản trị viên (Admin) :
- Biểu đồ hoạt động chức năng thêm và sửa danh mục sản phẩm :
Hình 3.60 : Biểu đồ hoạt động chức năng thêm sửa danh mục của Admin
Nhân viên (Staff) :
- Biểu đồ hoạt động chức năng thêm và sửa danh mục sản phẩm :
Hình 3.62 : Biểu đồ hoạt động chức năng thêm sửa danh mục của nhân viên
Hình 3.63 : Biểu đồ hoạt động chức năng xóa danh mục của nhân viên 3.8.9 Biểu đồ hoạt dộng chức năng quản lý đơn hàng.
Quản trị viên (Admin) :
- Biểu đồ hoạt động chức năng thay đổi trạng thái đơn hàng :
Hình 3.64 : Biểu đồ hoạt động chức năng chỉnh sửa trạng thái đơn hàng của Admin
Hình 3.65 : Biểu đồ hoạt động chức năng chỉnh sửa trạng thái đơn hàng của nhân viên
3.8.10 Biểu đồ hoạt động chức năng quản lý nhập hàng.
Quản trị viên (Admin) :
Admin
- Biểu đồ hoạt động chức năng xóa đơn nhập hàng :
Hình 3.67 : Biểu đồ hoạt động chức năng xóa đơn nhập hàng của Admin
Nhân viên (Staff) :
Hình 3.68 : Biểu đồ hoạt động chức năng thêm mới đơn nhập hàng của nhân viên
3.8.11 Biểu đồ hoạt động chức năng thống kê.
Quản trị viên (Admin) :
Hình 3.70 : Biểu đồ hoạt động chức năng thống kê của nhân viên
3.9 Thiết kế cơ sở dữ liệu.
Xác định các thực thể :
- PRODUCTS(PRODUCTID, NAME, PRICE, QUANTITY,
DESCRIPTION, BRAND, PHOTO, CREATEDATE, UPDATEDATE, STATUS)
- PERSONS(PERSONID, EMAIL, PASSWORD, FULLNAME, DOB, GENDER, ADDRESS, PHONENUMBER, ROLE, STATUS)
- ORDERBILL(ORDERBILLID, TIMEBOUGHT, ADDRESS, STATUS,ISPAY)
- REVIEW (REVIEWID , RATE_TEXT, RATE_NUM, DATEREVIEW)
- CATEGORIES(CATEGORIESID, NAME, DESCRIPTION)
- ORDERIMPORT(ORDERIMPORTID, TIMEIMPORT, STATUS) Xác định mối quan hệ giữa các thực thể:
- Giữa 2 thực thể PERSONS và PRODUCTS có mối quan hệ với nhau là 1-n. Một nhân viên thêm nhiều sản phẩm, một sản phẩm chỉ được thêm bởi một nhân viên.
nhau là 1-n. Một danh mục có nhiều sản phẩm, một sản phẩm chỉ thuộc một danh mục.
- Giữa 2 thực thể PERSONS và ODERBILL có mối quan hệ với nhau là 1-n. Một nhân viên có thể tạo nhiều đơn hàng, một đơn hàng chỉ được tạo bởi một nhân viên.
- Giữa 2 thực thể PRODUCTS và ODERBILL có mỗi quan hệ với nhau là n-n. Một sản phẩm có thể thuộc nhiều đơn đặt hàng và một đơn đặt hàng có thể có nhiều sản phẩm.
- Giữa 2 thực thể PERSONS và ORDERIMPORT có mối quan hệ với nhau là 1-n. Một nhân viên có thể tạo nhiều đơn nhập hàng, một đơn nhập hàng chỉ được tạo bởi một nhân viên.
- Giữa 2 thực thể PRODUCTS và ORDERIMPORT có mối quan hệ với nhau là n-n. Một sản phẩm có thể thuộc nhiều đơn nhập hàng và một đơn nhập hàng có thể có nhiều sản phẩm.
- Giữa 2 thực thể PERSONS và REVIEW có mối quan hệ với nhau là 1- n. Một khách hàng có thể đánh giá nhiều đánh giá và một đánh giá chỉ được đánh giá bởi một khách hàng.
- Giữa 2 thực thể PRODUCTS và REVIEW có mối quan hệ với nhau là 1-n. Một sản phẩm có thể có nhiều đánh giá và một đánh giá chỉ đánh giá được một sản phẩm.
Hình 3.71 : Mô hình ERD
Mô hình dữ liệu quan hệ:
- PRODUCTS(PRODUCTID, NAME, PRICE, QUANTITY,
DESCRIPTION, BRAND, PHOTO, CREATEDATE, UPDATEDATE, STATUS, UPDATEBY, PRODUCTTYPE)
- PERSONS(PERSONID, EMAIL, PASSWORD, FULLNAME, DOB, GENDER, ADDRESS, PHONENUMBER, ROLE, STATUS)
- ORDERBILL(ORDERBILLID, CUSTOMERID, APPROVEBY, TIMEBOUGHT, ADDRESS, STATUS,ISPAY)
- ORDERDETAILS(ORDERIMPORTID, PRODUCTID, AMOUNT, UNITPRICE)
- REVIEW (REVIEWID, RATE_NUM, RATE_TEXT, DATEREVIEW,
PRODUCTID, CUSTOMERID)
- CATEGORIES(CATEGORIESID, NAME, DESCRIPTION) - ORDERIMPORT(ORDERIMPORTID, EMPLOYEEID,
TIMEIMPORT, STATUS)
- ORDERIMPORTDETAILS(ORDERIMPORTID, PRODUCTID, AMOUNT, PRICE)
Các bảng dữ liệu :
Email Text Email người dùng
Password Text Mật khẩu người dùng
Fullname Text Tên người dùng
Dob Timestamp Ngày sinh
Gender Bool Giới tính
Address Text Địa chỉ
Phonenumber Text Số điện thoại
Role Text Chức vụ
Status Bool Trạng thái người dùng
Bảng 3.1: Bảng dữ liệu người dùng (PERSONS)
STT Tên Loại Kiểu Miền giá trị Ý nghĩa
Khóa chính Int Mã thể loại
Name Text Tên thể loại
Description Text Miêu tả
Status Bool Trạng thái
Bảng 3.2: Bảng dữ liệu danh mục (CATEGORIES)
STT Tên Loại Kiểu Miền giá trị Ý nghĩa
Khóa chính Text Mã sản phẩm
Name Text Tên sản phẩm
Price Float Giá sản phẩm
Quantity Int Số lượng còn
Description Text Miêu tả sản phẩm
Brand Bool Hãng của sản phẩm
Photo Bytea Hình sản phẩm
CreateDate Timestamp Ngày tạo sản phẩm
UpdateDate Timestamp Ngày sửa sản phẩm