PHÂN TÍCH HỆ THỐNG
Biểu đồ ca sử dụng tổng quát quy trình quản lý đơn hàng đang giao
Quy trình quản lý đơn hàng đang giao bao gồm các chức năng:
- Tìm kiếm đơn hàng:Cho phép tìm kiếm đơn hàng muốn thao tác
- Hoàn thành đơn hàng: Sau khi đơn hàng được giao thành công, COD sẽ thao tác cập nhật trạng thái đã hoàn thành
- Yêu cầu check khách: Nếu chưa giao được hàng cho khách, COD sẽ cập nhật lý do chưa giao được hàng
- Liên lạc với khách hàng/shop: Cho phép gọi điện, nhắn tin với khách hàng khi cần thiết
- Sắp xếp đơn hàng: Sắp xếp lại danh sách đơn hàng
- Thêm tag thông tin khách hàng: Cập nhật các tag thông tin cho khách hàng
- Thêm ghi chú nội bộ cho đơn hàng: Cập nhật ghi chú cho đơn hàng nếu có
- Xem chi tiết đơn hàng: Giúp COD có thể xem các thông tin chi tiết của đơn hàng
- Thông báo quá cân: Cập nhật cân nặng thực tế cho đơn hàng
- Báo xấu shop: Thực hiện báo xấu nếu shop có những hành vi không đúng
- Report shopp gửi hàng cấm: Gửi báo cáo nếu shop gửi các loại hàng cấm: vũ khí, chất độc hại,…
- Báo xấu người nhận hàng: Khi nhận hàng, nếu khách hàng có những thái độ, hành động không đúng, COD cũng cần thao tác báo xấu khách hàng
- Report vỡ hỏng: Thực hiện khi hàng hóa có dấu hiệu bị vỡ hỏng
- Liên lạc nội bộ:Cho phép liên lạc tới nhân viên hỗ trợ khi cần thiết
Hình 2 1: Biểu đồ ca sử dụng quy trình quản lý đơn hàng đang giao
2.2 Chức năng cập nhật trạng thái Hoàn thành đơn hàng
2.2.1 Kịch bản ca sử dụng chức năng cập nhật trạng thái Hoàn thành đơn hàng
Tên ca sử dụng Cập nhật trạng thái Hoàn thành đơn hàng
Tác nhân COD giao Điều kiện đầu vào Các ĐH có trạng thái đang giao, yêu cầu check khách
Các luồng sự kiện Hành động của tác nhân Hành động của hệ thống
- COD nhấn chọn màn hình Đang giao - Hệ thống hiển thị danh sách đơn hàng có trạng thái đang giao
- Nhập tìm kiếm đơn hàng - Hiển thị đơn hàng vừa tìm kiếm
- Nhấn chọn thao tác Hoàn thành - Yêu cầu chụp ảnh (nếu đơn hàng chưa có ảnh)
- Chụp ảnh đơn hàng - Lưu ảnh đơn hàng → hiển thị
- Nhấn chọn hoàn thành Toàn phần đơn hàng - Hệ thống hiển thị thông báo xác nhận COD đã giao hàng toàn phần → đơn hàng chuyển sang tab H.Thành
- Nhấn chọn hoàn thành Một phần đơn hàng - Hệ thống hiển thị thông báo xác nhận COD đã giao hàng một phần → đơn hàng chuyển sang tab M.Phần
Bảng 2 1: Kịch bản ca sử dụng quy trình cập nhật trạng thái hoàn thành đơn hàng
2.2.2 Biểu đồ tuần tự chức năng cập nhật trạng thái Hoàn thành đơn hàng
Hình 2 2: Biểu đồ tuần tự chức năng cập nhật trạng thái Hoàn thành đơn hàng
Chức năng cập nhật trạng thái Yêu cầu check khách
2.3.1 Kịch bản ca sử dụng chức năng cập nhật trạng thái Yêu cầu check khách
Tên ca sử dụng Cập nhật trạng thái Yêu cầu check khách
Tác nhân COD giao Điều kiện đầu vào Các ĐH có trạng thái đang giao
Các luồng sự kiện Hành động của tác nhân Hành động của hệ thống
- COD nhấn chọn màn hình Đang giao - Hệ thống hiển thị danh sách đơn hàng có trạng thái đang giao
- Nhập tìm kiếm đơn hàng - Hiển thị đơn hàng vừa tìm kiếm
- Nhấn chọn thao tác Yêu cầu check khách - Yêu cầu chụp ảnh (nếu đơn hàng chưa có ảnh)
- Chụp ảnh đơn hàng - Lưu ảnh đơn hàng → hiển thị màn hình Yêu cầu check khách
- Nhấn chọn lý do “Khách hàng hẹn ngày giao”
- Nhập thời gian khách hàng hẹn giao- Nhấn Xác nhận
- Hệ thống hiển thị popup cập nhật thời gian hẹn giao hàng
- Lưu thời gian hẹn giao → hiển thị thông báo xác nhận Yêu cầu check khách với lý do “Khách hàng hẹn ngày giao”
- Đơn hàng chuyển sang tab Yêu cầu check khách
- Nhấn chọn lý do “Shop hẹn ngày giao”
- Nhập thời gian shop hẹn ngày giao- Nhấn Xác nhận
- Hệ thống hiển thị popup cập nhật thời gian hẹn giao hàng
- Lưu thời gian hẹn giao → hiển thị thông báo xác nhận Yêu cầu check khách với lý do “Shop hẹn ngày giao”
- Đơn hàng chuyển sang tab Yêu cầu check khách
- Nhấn chọn lý do “Khách hàng chuyển địa chỉ mới”
- Nhập thông tin địa chỉ mới của khách hàng
- Hệ thống hiển thị popup cập nhật địa chỉ khách hàng
- Lưu thông tin địa chỉ mới của khách hàng → hiển thị thông báo xác nhận Yêu cầu check khách với lý do “Khách hàng chuyển địa chỉ mới”
- Đơn hàng chuyển sang tab Yêu
- Nhấn chọn lý do “Địa chỉ/số điện thoại khách hàng sai”
- Hệ thống hiển thị thông báo xác nhận Yêu cầu check khách với lý do “Địa chỉ/số điện thoại khách hàng sai”
- Đơn hàng chuyển sang tab Yêu cầu check khách
- Nhấn chọn lý do “Không liên hệ được với khách hàng (gọi 3 cuộc)”
- Liên lạc lại với khách hàng
- Hệ thông yêu cầu gọi lại cho khách hàng (nếu chưa liên lạc đủ
- Hệ thống hiển thị thông báo xác nhận Yêu cầu check khách với lý do “Không liên hệ được với khách hàng (gọi 3 cuộc)”
- Đơn hàng chuyển sang tab Yêu cầu check khách
- Nhấn chọn lý do “Khách hàng không nhận sản phẩm”
- Hệ thống hiển thị thông báo xác nhận Yêu cầu check khách với lý do “Khách hàng không nhận sản phầm”
- Đơn hàng chuyển sang tab Yêu cầu check khách
- Nhấn chọn lý do “Khách hàng nhận hàng tại bưu cục”
- Cập nhật lại địa điểm bưu cục, ngày, thời gian hẹn giao
- Hệ thống hiển thị màn hình Hẹn giao tại bưu cục
- Lưu thông tin → hiển thị thông báo xác nhận Yêu cầu check khách với lý do “Khách hàng nhận hàng tại bưu cục”
- Đơn hàng chuyển sang tab Yêu cầu check khách
- Nhấn chọn lý do “Xin lỗi vì GHTK giao không kịp”
- Hệ thống hiển thị thông báo xác nhận Yêu cầu check khách với lý do “Xin lỗi vì GHTK giao không kịp”
- Đơn hàng chuyển sang tab Yêu cầu check khách
- Nhấn chọn lý do “Không giao được hàng/lưu kho chờ check”
- Hệ thống hiển thị thông báo xác nhận Yêu cầu check khách với lý do “Không giao được hàng/lưu kho chờ check”
- Đơn hàng chuyển sang tab Yêu cầu check khách
Bảng 2 2: Kịch bản ca sử dụng quy trình cập nhật trạng thái Yêu cầu check khách
2.3.2 Biểu đồ tuần tự chức năng cập nhật trạng thái Yêu cầu check khách
Hình 2 3: Biểu đồ tuần tự chức năng cập nhật trạng thái Yêu cầu check khách
Chức năng Liên lạc với khách hàng/shop
2.4.1 Kịch bản ca sử dụng chức năng Liên lạc với khách hàng/shop
Tên ca sử dụng Liên lạc với khách hàng/shop
Tác nhân COD giao điều kiện đầu vào cho các đại học có trạng thái đang giao, hoàn thành hoặc một phần, yêu cầu kiểm tra từ khách hàng Các luồng sự kiện bao gồm hành động của tác nhân và hành động của hệ thống.
- COD nhấn chọn màn hình Đang giao - Hệ thống hiển thị danh sách đơn hàng có trạng thái đang giao
- Nhập tìm kiếm đơn hàng - Hiển thị đơn hàng vừa tìm kiếm
- Nhấn chọn vào icon call - Hiển thị popup Gọi điện/Nhắn tin
- Nhấn chọn Nhắn tin hẹn giao hàng - Hệ thống hiển thị popup xác nhận gửi tin nhắn
- Nhấn chọn Nhắn tin yêu cầu check khách
- Hệ thống hiển thị popup xác nhận gửi tin nhắn
- Hiển thị thông báo thành công hoặc không thành công
- Nhấn chọn Gọi khách hàng ngay - Thực hiện gọi cho khách hàng
- Nhấn chọn Gọi điện cho shop - Thực hiện gọi cho shop
Bảng 2 3: Kịch bản ca sử dụng chức năng Liên lạc với khách hàng/shop
2.4.2 Biểu đồ tuần tự chức năng Liên lạc với khách hàng/shop
Hình 2 4: Biểu đồ tuần tự chức năng Liên lạc với khách hàng/Shop
Chức năng Sắp xếp đơn hàng
2.5.1 Kịch bản ca sử dụng chức năng Sắp xếp đơn hàng
Tên ca sử dụng Sắp xếp đơn hàng
Tác nhân COD giao yêu cầu kiểm tra khách hàng đối với các điều kiện đầu vào của các trường đại học có trạng thái đang giao, hoàn thành hoặc một phần Các luồng sự kiện liên quan đến hành động của tác nhân và hệ thống giao hàng đều có trạng thái đang giao.
- Nhập tìm kiếm đơn hàng - Hiển thị đơn hàng vừa tìm kiếm
Nhấn chọn "Sắp xếp" để hệ thống hiển thị các tùy chọn sắp xếp như: Khoảng cách gần đến xa, Khoảng cách xa đến gần, Thời gian xuất hàng, Thời gian gọi khách hàng theo lịch sử, Thời gian nhận hàng theo lịch sử, Khả năng nhận hàng từ cao đến thấp, Thời gian nhận hàng từ thấp đến cao, và Thời gian hẹn giao hàng.
- Nhấn chọn loại sắp xếp - Hiển thị lại danh sách đơn hàng
Bảng 2 4: Kịch bản ca sử dụng chức năng Sắp xếp đơn hàng
2.5.2 Biểu đồ tuần tự chức năng Sắp xếp đơn hàng
Hình 2 5: Biểu đồ tuần tự chức năng Sắp xếp đơn hàng
Chức năng Thêm tag thông tin khách hàng
2.6.1 Kịch bản ca sử dụng chức năng Thêm tag thông tin khách hàng
Tên ca sử dụng Thêm tag thông tin khách hàng
Tác nhân COD giao yêu cầu kiểm tra khách hàng đối với các điều kiện đầu vào của các trường đại học đang trong trạng thái giao, hoàn thành hoặc một phần Các luồng sự kiện và hành động của tác nhân sẽ kích hoạt các phản ứng tương ứng từ hệ thống.
- COD nhấn chọn màn hình - Hệ thống hiển thị danh sách
- Nhập tìm kiếm đơn hàng - Hiển thị đơn hàng vừa tìm kiếm
- Nhấn chọn tên khách hàng - Hiển thị màn hình cập nhật thông tin khách hàng
- Cập nhật tag thông tin cho khách hàng - Lưu tag thông tin, hiển thị các tag vừa cập nhật
Bảng 2 5: Kịch bản ca sử dụng chức năng Thêm tag thông tin khách hàng
2.6.2 Biểu đồ tuần tự chức năng Thêm tag thông tin khách hàng
Hình 2 6: Biểu đồ tuần tự chức năng Thêm tag thông tin KH
Chức năng Thêm ghi chú nội bộ cho đơn hàng
2.7.1 Kịch bản ca sử dụng chức năng Thêm ghi chú nội bộ cho đơn hàng
Tên ca sử dụng Thêm tag thông tin khách hàng
Tác nhân COD giao điều kiện đầu vào cho các đại học có trạng thái đang giao, hoàn thành hoặc một phần, yêu cầu kiểm tra khách hàng Các luồng sự kiện liên quan đến hành động của tác nhân và hành động của hệ thống được xác định rõ ràng.
- COD nhấn chọn màn hình Đang giao - Hệ thống hiển thị danh sách đơn hàng có trạng thái đang giao
- Nhấn chọn icon hình bút chì - Hiển thị popup Ghi chú nội bộ
- Nhập ghi chú - Lưu thông tin ghi chú, hiển thị ghi chú vừa nhập
Bảng 2 6: Kịch bản ca sử dụng chức năng Thêm ghi chú nội bộ cho đơn hàng
2.7.2 Biểu đồ tuần tự chức năng Thêm ghi chú nội bộ cho đơn hàng
Hình 2 7: Biểu đồ tuần tự chức năng Thêm ghi chú nội bộ cho ĐH
Chức năng Xem chi tiết đơn hàng
2.8.1 Kịch bản ca sử dụng chức năng Xem chi tiết đơn hàng
Tên ca sử dụng Xem chi tiết đơn hàng
Tác nhân COD giao điều kiện đầu vào cho các đại học có trạng thái đang giao, hoàn thành hoặc một phần, đồng thời yêu cầu kiểm tra khách hàng Các luồng sự kiện liên quan đến hành động của tác nhân và hành động của hệ thống cần được theo dõi chặt chẽ để đảm bảo quy trình diễn ra suôn sẻ.
- COD nhấn chọn màn hình Đang - Hệ thống hiển thị danh sách đơn
Bảng 2 7: Kịch bản ca sử dụng chức năng Thông báo quá cân
2.8.2 Biểu đồ tuần tự chức năng Xem chi tiết đơn hàng
Hình 2 8: Biểu đồ tuần tự chức năng Xem chi tiết đơn hàng
Chức năng Thông báo quá cân
2.9.1 Kịch bản ca sử dụng chức năng Thông báo quá cân
Tên ca sử dụng Thông báo quá cân
Tác nhân COD chịu trách nhiệm giao hàng theo điều kiện đầu vào của các đại học đang trong trạng thái giao, hoàn thành hoặc một phần, đồng thời yêu cầu kiểm tra từ khách hàng Các luồng sự kiện bao gồm hành động của tác nhân và phản ứng của hệ thống.
Hành động của tác nhân Hành động của hệ thống
- Nhập tìm kiếm đơn hàng - Hiển thị đơn hàng vừa tìm kiếm
Nhấn vào mã đơn hàng để hiển thị thông tin chi tiết, bao gồm tên khách hàng, số điện thoại và địa chỉ khách hàng, tên shop cùng số điện thoại của shop, tên sản phẩm, khối lượng, tiền COD, và ảnh đơn hàng với trạng thái đang giao.
- Nhập tìm kiếm đơn hàng - Hiển thị đơn hàng vừa tìm kiếm
- Nhấn chọn Thông báo quá cân - Hiển thị popup Báo quá cân
Bảng 2 8: Kịch bản ca sử dụng chức năng Thông báo quá cân
2.9.2 Biểu đồ tuần tự chức năng Thông báo quá cân
Hình 2 9: Biểu đồ tuần tự chức năng Thông báo quá cân
Chức năng Báo xấu Shop
2.10.1 Kịch bản ca sử dụng chức năng Báo xấu Shop
Tên ca sử dụng Báo xấu Shop
Tác nhân COD thực hiện giao hàng theo điều kiện đầu vào của các trường đại học, bao gồm trạng thái đang giao, hoàn thành hoặc một phần, và yêu cầu kiểm tra từ khách hàng Các luồng sự kiện này liên quan đến hành động của tác nhân và hành động của hệ thống.
- COD nhấn chọn màn hình Đang giao - Hệ thống hiển thị danh sách đơn hàng có trạng thái đang giao
- Nhấn chọn Báo xấu Shop - Hiển thị popup Báo xấu Shop
- Nhấn chọn lý do báo xấu - Lưu thông tin báo xấu
Bảng 2 9: Kịch bản ca sử dụng chức năng Báo xấu Shop
2.10.2 Biểu đồ tuần tự chức năng Báo xấu Shop
Hình 2 10: Biểu đồ tuần tự chức năng Báo xấu Shop
Chức năng Report shop gửi hàng cấm
2.11.1 Kịch bản ca sử dụng chức năng Report shop gửi hàng cấm
Tên ca sử dụng Report shop gửi hàng cấm
Tác nhân COD giao điều kiện đầu vào cho các ĐH đang trong trạng thái giao, hoàn thành hoặc một phần, yêu cầu kiểm tra khách hàng Hệ thống sẽ phản hồi tương ứng với các luồng sự kiện và hành động của tác nhân.
- COD nhấn chọn màn hình Đang giao - Hệ thống hiển thị danh sách đơn hàng có trạng thái đang giao
- Nhập tìm kiếm đơn hàng - Hiển thị đơn hàng vừa tìm kiếm
- Chụp ảnh xác minh - Lưu ảnh
- Chọn thông tin hàng hóa - Lưu thông tin báo shop gửi hàng cấm
Bảng 2 10: Kịch bản ca sử dụng chức năng Report shop gửi hàng cấm
2.11.2 Biểu đồ tuần tự chức năng Report shop gửi hàng cấm
Hình 2 11: Biểu đồ tuần tự chức năng Report shop gửi hàng cấm
Chức năng Báo xấu người nhận hàng
2.12.1 Kịch bản ca sử dụng chức năng Báo xấu người nhận hàng
Tên ca sử dụng Báo xấu người nhận hàng
Tác nhân COD chịu trách nhiệm giao điều kiện đầu vào cho các trường đại học đang trong trạng thái giao, hoàn thành hoặc một phần, đồng thời yêu cầu kiểm tra từ phía khách hàng Các luồng sự kiện bao gồm hành động của tác nhân và phản ứng của hệ thống.
- COD nhấn chọn màn hình Đang giao - Hệ thống hiển thị danh sách đơn hàng có trạng thái đang giao
- Nhập tìm kiếm đơn hàng - Hiển thị đơn hàng vừa tìm kiếm
- Nhấn chọn Báo xấu người nhận hàng - Hiển thị popup Báo xấu người nhận hàng
2.12.2 Biểu đồ tuần tự chức năng Báo xấu người nhận hàng
Hình 2 12: Biểu đồ tuần tự chức năng Báo xấu người nhận hàng
Chức năng Report vỡ hỏng
2.13.1 Kịch bản ca sử dụng chức năng Report vỡ hỏng
Tên ca sử dụng Report vỡ hỏng
Tác nhân COD thực hiện giao hàng theo điều kiện đầu vào của các đại học đang trong trạng thái giao, hoàn thành hoặc một phần, yêu cầu kiểm tra từ khách hàng Các luồng sự kiện liên quan đến hành động của tác nhân và hệ thống sẽ được cập nhật để đảm bảo tính chính xác và hiệu quả trong quy trình giao nhận.
- COD nhấn chọn màn hình Đang giao - Hệ thống hiển thị danh sách đơn hàng có trạng thái đang giao
- Nhập tìm kiếm đơn hàng - Hiển thị đơn hàng vừa tìm kiếm
- Nhấn chọn report vỡ hỏng - Yêu cầu chụp ảnh đơn hàng
- Chụp ảnh đơn hàng - Lưu thông tin report
Bảng 2 12: Kịch bản ca sử dụng chức năng Report vỡ hỏng
2.13.2 Biểu đồ tuần tự chức năng Report vỡ hỏng
Hình 2 13: Biểu đồ tuần tự chức năng Report vỡ hỏng
Chức năng Liên lạc nội bộ
2.14.1 Kịch bản ca sử dụng chức năng Liên lạc nội bộ
Tên ca sử dụng Liên lạc nội bộ
Tác nhân COD chịu trách nhiệm giao các điều kiện đầu vào cho các đại học đang trong trạng thái giao, hoàn thành hoặc một phần, đồng thời yêu cầu kiểm tra từ phía khách hàng Các luồng sự kiện phản ánh hành động của tác nhân và hành động tương ứng của hệ thống.
- COD nhấn chọn màn hình Đang giao - Hệ thống hiển thị danh sách đơn hàng có trạng thái đang giao
- Nhập tìm kiếm đơn hàng - Hiển thị đơn hàng vừa tìm kiếm
- Nhấn chọn Liên lạc nội bộ - Tạo channel chat với người được chọn
Bảng 2 13: Kịch bản ca sử dụng chức năng Liên lạc nội bộ
2.14.2 Biểu đồ tuần tự chức năng Liên lạc nội bộ
Hình 2 14: Biểu đồ tuần tự chức năng Liên lạc nội bộ
Chức năng Tìm kiếm đơn hàng
2.15.1 Kịch bản ca sử dụng chức năng Tìm kiếm đơn hàng
Tên ca sử dụng Tìm kiếm đơn hàng
Tác nhân COD giao Điều kiện đầu vào Các ĐH có trạng thái đang giao, hoàn thành, một phần, yêu cầu check khách
Các luồng sự kiện Hành động của tác nhân Hành động của hệ thống
- COD nhấn chọn màn hình Đang giao - Hệ thống hiển thị danh sách đơn hàng có trạng thái đang giao
- Nhập tìm kiếm đơn hàng - Hiển thị đơn hàng vừa tìm kiếm
Bảng 2 14: Kịch bản ca sử dụng chức năng Tìm kiếm đơn hàng
2.15.2 Biểu đồ tuần tự chức năng Tìm kiếm đơn hàng
Hình 2 15: Biểu đồ tuần tự chức năng Tìm kiếm đơn hàng
THIẾT KẾ GIAO DIỆN HỆ THỐNG
Các thực thể tham gia vào hệ thống
- cods (id, order, alias, fullname, identity_number, province_id, district_id, street_id, user_id, group_id)
The article outlines the essential components of a package, including identifiers such as id, shop_code, and shop_id, along with customer details like fullname, province, district, and contact information It highlights the importance of pick-up information, including the picker's name and address, as well as package specifics such as type, shipping and pick-up costs, and delivery options Additionally, it addresses delivery statuses, reasons for delays, and the overall value and weight of the package, ensuring a comprehensive understanding of the package's journey from sender to recipient.
- shops (id, order, code, name, first_address, email, password, tel, modified_id, modified_username, province_id, district_id, street_id, ward_id, shop_type)
- users (id, username, password, fullname, tel, birthday, group_id, station_id)
- stations (id, name, sname, code, province_id, district_id, address, type, ward_id, street_id)
- report_customers (id, pkg_order, customer_tel, province_id, district_id, tag_id, is_delete)
- districts (id, name, province_id)
- streets (id, name, province_id, district_id)
- wards (id, name, province_id, district_id, street_id)
- image_packages (id, pkg_order, file_path, created_user_id, action,
- reports_cods(id, cod_id, object_report, tel, type_object, pkg_orders, note)// type: shop or customer
- pkg_over_weights (id, pkg_o, over, note, fee, new_fee, pen_fee, shop_order,cur_weight)
Thiết kế cơ sở dữ liệu vật lý
The table structure includes several columns with specific attributes: the 'id' column is an integer with a maximum size of 10; the 'order' column is also an integer with a size of 10; the 'alias' is a varchar with a size of 50; the 'fullname' is a varchar of size 50; the 'identity_number' is a varchar with a size of 50; the 'province_id' is an integer with a size of 10 serving as a foreign key; the 'district_id' is an integer with a size of 10, also a foreign key; the 'street_id' is an integer with a size of 10, functioning as a foreign key; the 'ward_id' is an integer with a size of 10, designated as a foreign key; and the 'group_id' is an integer with a size of 10, serving as a foreign key as well.
The article outlines a database schema with various columns and their descriptions, including data types and constraints Key fields include 'id' as an integer with a size of 10, 'shop_code' and 'shop_id' also as integers with a size of 10, both serving as foreign keys The 'alias' field represents the full code as an integer, while 'package_status_id' indicates the order status as an integer foreign key Customer details include 'customer_fullname' as a varchar of 50 characters, 'customer_province_id' as an integer foreign key for the customer's province, and 'customer_province' as a varchar of 50 for the province name Additionally, 'customer_district_id' and 'customer_ward' are included, with the former being an integer foreign key for the district and the latter as a varchar for the ward name.
_id Mã khu vực của khách hàng int 10 Khóa ngoại customer_ward Tên khu vực của khách hàng varchar 50 customer_street
The article outlines the essential fields for managing customer and shop information in a delivery system It includes customer details such as street code, address, email, and phone number, alongside shop information like shop name, province, district, ward, street code, address, email, and phone number Additionally, it specifies package type, shipping costs, cash on delivery amounts, and relevant timestamps for delivery delays and messages The structure also incorporates foreign keys for seamless data relationships, ensuring efficient tracking and management of deliveries.
The delivery schedule is defined by a varchar field of 50 characters, while the reason for any delays is indicated by an integer code of 10 The weight of the order is recorded as a varchar of 50 characters, alongside the value of the goods, also in varchar format Additionally, any notes regarding the order are captured in a varchar field of 50 characters, with a detailed description available in another varchar field of the same length.
The article outlines a database schema with the following columns: 'id' as an integer with a size of 10, 'code' representing the shop code as a varchar of 50 characters, 'name' for the shop name also as a varchar of 50, 'first_address' for the shop's address as a varchar of 50, 'email' for the shop's email as a varchar of 50, 'password' for the shop's password as a varchar of 50, 'tel' for the phone number as a varchar of 50, 'modifiles_id' as an integer of size 10 indicating the creator's ID with a foreign key, 'modifiled_username' as a varchar of 50 for the creator's name, 'province_id' as an integer of size 10 representing the province or city with a foreign key, 'district_id' as an integer of size 10 for the district with a foreign key, 'street_id' as an integer of size 10 for the street with a foreign key, 'ward_id' as an integer of size 10 for the area with a foreign key, and 'shop_type' as an integer of size 10 for the type of shop.
Bài viết mô tả cấu trúc bảng dữ liệu với các cột như sau: cột "id" là kiểu số nguyên (int) với kích thước 10, cột "username" lưu trữ tên đăng nhập dưới dạng chuỗi ký tự (varchar) có kích thước 50, cột "fullname" chứa tên đầy đủ cũng là varchar 50, cột "tel" lưu số điện thoại với kiểu varchar 50, cột "birthday" ghi nhận ngày sinh dưới dạng timestamp, cột "group_id" là mã nhóm kiểu int 10 với ràng buộc khóa ngoại, và cột "station_id" là mã kho cũng kiểu int 10 với ràng buộc khóa ngoại.
The table structure includes several key columns: "id" as an integer with a size of 10, "name" and "sname" as varchar types with a size of 50, and "code" also as varchar with a size of 50 The "province_id," "district_id," "ward_id," and "street_id" are integer types with a size of 10, serving as foreign keys The "address" column is defined as varchar with a size of 50, while the "type" column is an enum type that also acts as a foreign key Allowing null values is specified for certain columns, ensuring flexibility in data entry.
Tên cột Mô tả Kiểu dữ liệu Kích thước Allow null Ràng buộc id int 10 name Tên group varchar 50 description Mô tả varchar 50
The table structure includes the following columns: 'id' as an integer with a size of 10, representing the order ID; 'pkg_order' as an integer with a size of 10 for the order code; 'customer_tel' as a varchar of 50 for the customer's phone number; 'province_id' as an integer with a size of 10 serving as a foreign key for the province or city code; 'district_id' as an integer with a size of 10 acting as a foreign key for the district or county code; 'tag_id' as an integer with a size of 10 also functioning as a foreign key for the tag code; and 'is_delete' as an integer with a size of 10 indicating whether the tag has been deleted.
Tên cột Mô tả Kiểu dữ liệu Kích thước Allow null Ràng buộc id int 10 alias Tên tag varchar 50
Tên cột Mô tả Kiểu dữ liệu Kích thước Allow null Ràng buộc id int 10 name Tên tỉnh/ thành phố varchar 50
Tên cột Mô tả Kiểu dữ liệu Kích thước Allow null Ràng buộc id int 10 name Tên quận/ huyện varchar 50 province_id Mã tỉnh int 10 Khóa ngoại
Cột "id" có kiểu dữ liệu int với kích thước 10, không cho phép null và là khóa chính Cột "name" lưu trữ tên đường/phố với kiểu dữ liệu varchar và kích thước 50 Cột "province_id" chứa mã tỉnh/thành phố với kiểu dữ liệu int kích thước 10 và là khóa ngoại Cuối cùng, cột "district_id" lưu mã quận/huyện cũng có kiểu dữ liệu int và kích thước 10, đóng vai trò là khóa ngoại.
Cột "id" có kiểu dữ liệu int với kích thước 10, cho phép không có giá trị null và là khóa chính Cột "name" lưu trữ tên khu vực với kiểu dữ liệu varchar và kích thước 50 Cột "province_id" là mã tỉnh/thành phố có kiểu dữ liệu int kích thước 10 và là khóa ngoại Cột "district_id" chứa mã quận/huyện, cũng với kiểu dữ liệu int kích thước 10 và là khóa ngoại Cuối cùng, cột "street_id" lưu trữ mã đường/phố, có kiểu dữ liệu int kích thước 10 và cũng là khóa ngoại.
The table structure includes the following columns: 'id' as an integer with a size of 10, representing the unique identifier; 'pkg_order' as an integer with a size of 10, denoting the order code; 'file_path' as a varchar with a size of 50 for the image file; 'created_user_id' as an integer with a size of 10, serving as a foreign key for the creator's ID; 'action' as an integer with a size of 10, indicating the type of action; and 'package_type' as an integer with a size of 10, specifying the type of order All columns are designed to handle null values appropriately and adhere to specified constraints.
Tên cột Mô tả Kiểu dữ liệu Kích thước Allow null Ràng buộc id int 10 name Tên trạng thái varchar 50
The table includes the following columns: 'id' as an integer with a size of 10, 'cod_id' as a foreign key represented by a varchar of size 50, 'object_report' as an integer for report type, 'tel' for phone number as a varchar of size 50, 'type_object' as an enum for object type, 'pkg_orders' as an integer for order code with a size of 10, and 'note' as a varchar of size 50 for remarks All columns allow null values where applicable and are subject to specific constraints.
The article outlines a database schema with specific columns including 'id' as an integer with a size of 10, 'pkg_o' for order codes also as an integer, and 'over' representing excess weight as a float with a size of 20 Additional columns include 'note' for comments as a varchar of 50, 'fee' and 'new_fee' both as floats of size 20 for current charges, 'pen_fee' as a float of size 20, and 'shop_order' as an integer with a size of 10 serving as a foreign key Lastly, 'cur_weight' indicates the current weight, recorded as a float with a size of 20.
Bảng 3 16: Bảng pkg_over_weights
Sơ đồ thực thể liên kết
Hình 3 1: Sơ đồ thực thể liên kết
Giao diện hệ thống
Sau khi thực hiện thao tác lấy hàng về kho, COD có thể chọn đơn hàng để giao Khi điều phối xác nhận, đơn hàng sẽ được chuyển sang màn hình Giao hàng để COD tiến hành giao Quy trình quản lý các đơn hàng đang giao sẽ bắt đầu từ đây.
Màn hình này hiển thị danh sách đơn hàng đang giao trong ca của COD Các
3.4.1 Giao diện chức năng Hoàn thành đơn hàng
B1: Nhấn chọn màn hình Đang giao
Hình 3 2: Màn hình danh sách các đơn hàng đang giao
B2: Nhấn chọn Hoàn thành, nếu đơn hàng chưa có ảnh → COD bắt buộc phải chụp ảnh đơn hàng mới có thể thao tác tiếp
Hình 3 3: Chụp ảnh đơn hàng
B3: Sau khi chụp ảnh đơn hàng, COD sẽ thao tác chọn giao hàng toàn phần/một phần đơn hàng.
- Nếu đã giao toàn bộ cho khách hàng → đơn hàng sẽ nhảy sang tab H.Thành.
- Nếu đơn hàng giao một phần → đơn hàng sẽ nhảy sang tab M.Phần.
Hình 3 4: Thao tác giao hàng toàn phần
Hình 3 5: Thao tác giao hàng một phần
COD thao tác nhấn chọn Yêu cầu check khách.
B2: Đơn hàng phải có đủ 2 điều kiện: có ảnh và có log cuộc gọi đến khách hàng thì mới được thao tác yêu cầu check khách.
Hình 3 6: Danh sách các lý do yêu cầu check khách
Hình 3 7: Lý do khách hàng hẹn ngày giao
Hình 3 8: Lý do khách hàng chuyển địa chỉ mới
Hình 3 9: Yêu cầu check khách do địa chỉ/sđt khách hàng sai
Hình 3 10: Không liên hệ được với khách hàng
Hình 3 11: Lý do khách hàng nhận hàng tại bưu cục
Hình 3 12: Yêu cầu check khách do GHTK giao hàng không kịp
B3: Đơn hàng sau khi được tick chọn lý do yêu cầu check khách → chuyển sang tab Yêu cầu check khách.
Ngoài thao tác chính là Hoàn thành và Yêu cầu check khách, COD cũng có thể thao tác khác trên đơn hàng như:
Để liên lạc với khách hàng hoặc shop, bạn có thể dễ dàng gọi điện hoặc nhắn tin bằng cách nhấp vào số điện thoại hiển thị trên màn hình hoặc chọn biểu tượng gọi cho khách hàng hoặc shop.
Hình 3 13: Popup liên lạc với Shop/KH
- Thông báo quá cân: Nhấn chọn mã đơn hàng → chọn Khác → Thông báo quá cân → cập nhật lại cân nặng thực tế cho đơn hàng.
Hình 3 14: Thao tác thông báo quá cân
- Báo xấu Shop: Nhấn chọn mã đơn hàng → chọn Khác → Báo xấu Shop
→ tick chọn lý do báo xấu.
Hình 3 15: Popup Báo xấu Shop
- Báo xấu người nhận hàng: Nhấn chọn mã đơn hàng → chọn Khác → Báo xấu người nhận hàng → Tick chọn lý do báo xấu khách hàng.
Hình 3 16: Popup Báo xấu khách hàng
- Report Shop gửi hàng cấm: Nhấn chọn mã đơn hàng → chọn Khác → Chụp ảnh đơn hàng → Tick chọn xác nhận thông tin hàng hóa.
Hình 3 17: Popup Report shop gửi hàng cấm
- Report vỡ hỏng: Nhấn chọn mã đơn hàng → chọn Khác → Report vỡ hỏng
Hình 3 18: Popup Report vỡ hỏng
- Liên lạc nội bộ: Nhấn chọn mã đơn hàng → chọn Khác → Liên lạc nội bộ → chọn người muốn liên lạc.
Hình 3 19: Popup Liên lạc nội bộ
- Ghi chú nội bộ: Nhấn chọn icon bút chì/ chọn khác → Ghi chú nội bộ.
- Sắp xếp đơn hàng: Nhấn chọn Sắp xếp → chọn loại sắp xếp.
Hình 3 21: Popup sắp xếp đơn hàng
- Lọc đơn hàng theo đường/phố: Nhấn chọn đường/phố → chọn đường phố muốn giao hàng → lọc ra đơn ở đường/phố đó.
Hình 3 22: Popup lọc đơn hàng theo đường/phố
KIỂM THỬ HỆ THỐNG
Kịch bản kiểm thử chức năng cập nhật trạng thái Hoàn thành đơn hàng 53
Mô tả: Đầu vào: đơn hàng ở trạng thái Đang giao hoặc Yêu cầu check khách
Mong muốn: Hoàn thành đơn hàng
Đơn hàng chưa có ảnh bắt buộc chụp ảnh mới được thao tác tiếp
Đơn hàng đã có ảnh cho phép thao tác Đơn hàng sau khi được hoàn thành sẽ được chuyển sang tab H.Thành hoặcM.Phần
Hình 4 1: Kịch bản kiểm thử chức năng cập nhật trạng thái Hoàn thành đơn hàng
Kịch bản kiểm thử chức năng cập nhật Yêu cầu check khách
Mô tả: Đầu vào: đơn hàng ở trạng thái Đang giao
Mong muốn: Yêu cầu check khách
Đơn hàng chưa có ảnh bắt buộc chụp ảnh mới được thao tác tiếp
Đơn hàng đã có ảnh cho phép thao tác Đơn hàng sau khi được yêu cầu check khách sẽ được chuyển sang tab Yêu cầu check khách.
Kịch bản kiểm thử chức năng Liên lạc với khách hàng/Shop
Mô tả: Đầu vào: đơn hàng ở trạng thái Đang giao, H.Thành, M.Phần, Yêu cầu check khách Mong muốn: Liên lạc thành công tới khách hàng/shop
Hình 4 3: Kịch bản kiểm thử chức năng Liên lạc với khách hàng/shop
Kịch bản kiểm thử chức năng Sắp xếp đơn hàng
Mô tả: Đầu vào: đơn hàng ở trạng thái Đang giao, H.Thành, M.Phần, Yêu cầu check khách.Mong muốn: Sắp xếp đơn hàng theo tiêu chí đã chọn.
Hình 4 4: Kịch bản kiển thử chức năng Sắp xếp đơn hàng
Kịch bản kiểm thử chức năng Thêm tag thông tin khách hàng
Để cải thiện quy trình xử lý đơn hàng đang giao, cần nhập thông tin về H.Thành và M.Phần, đồng thời yêu cầu kiểm tra thông tin khách hàng Mục tiêu là thêm tag thông tin khách hàng thành công và hiển thị các tag đã thêm tương ứng với từng đơn hàng.
Hình 4 5: Kịch bản kiểm thử chức năng Thêm tag thông tin khách hàng
Kịch bản kiểm thử Thêm ghi chú nội bộ cho ĐH
Để cải thiện quy trình giao hàng, cần nhập thông tin đơn hàng đang trong trạng thái giao, bao gồm H.Thành và M.Phần, cùng với yêu cầu kiểm tra từ khách hàng Mục tiêu là tạo ghi chú thành công và hiển thị nó trong phần chi tiết của đơn hàng.
Hình 4 6: Kịch bản kiểm thử chức năng Thêm ghi chú nội bộ cho đơn hàng
Kịch bản kiểm thử Xem chi tiết đơn hàng
Đầu vào là đơn hàng đang trong trạng thái giao, bao gồm thông tin về H.Thành và M.Phần, cùng với yêu cầu kiểm tra thông tin khách hàng Mục tiêu là hiển thị chính xác các thông tin chi tiết của đơn hàng đã được chọn.
Hình 4 7: Kịch bản kiểm thử chức năng Thêm ghi chú nội bộ cho đơn hàng
4.8 Kịch bản kiểm thử Thông báo quá cân
Mô tả: Đầu vào: đơn hàng ở trạng thái đang giao, H.Thành, M.Phần, yêu cầu check khách.Mong muốn: Cập nhật báo quá cân thành công.
Hình 4 8: Kịch bản kiểm thử chức năng Thông báo quá cân
Kịch bản kiểm thử Báo xấu Shop
Mô tả: Đầu vào: đơn hàng ở trạng thái đang giao, H.Thành, M.Phần, yêu cầu check khách.Mong muốn: Cập nhật báo xấu Shop thành công.
Kịch bản kiểm thử Report shop gửi hàng cấm
Mô tả: Đầu vào: đơn hàng ở trạng thái đang giao, H.Thành, M.Phần, yêu cầu check khách. Mong muốn: Cập nhật report shop gửi hàng cấm thành công.
Hình 4 10: Kịch bản kiểm thử chức năng Report shop gửi hàng cấm
Kịch bản kiểm thử Báo xấu người nhận hàng
Mô tả: Đầu vào: đơn hàng ở trạng thái đang giao, H.Thành, M.Phần, yêu cầu check khách.Mong muốn: Cập nhật báo xấu khách hàng thành công.
Hình 4 11: Kịch bản kiểm thử chức năng Báo xấu người nhận hàng
Kịch bản kiểm thử Report vỡ hỏng
Mô tả: Đầu vào: đơn hàng ở trạng thái đang giao, H.Thành, M.Phần, yêu cầu check khách. Mong muốn: Cập nhật report vỡ hỏng đơn hàng thành công.
Hình 4 12: Kịch bản kiểm thử chức năng Report vỡ hỏng
Kịch bản kiểm thử chức năng Liên lạc nội bộ
Mô tả: Đầu vào: đơn hàng ở trạng thái đang giao, H.Thành, M.Phần, yêu cầu check kháchMong muốn: Tạo channel chat với người muốn liên lạc
Hình 4 13: Kịch bản kiểm thử chức năng Liên lạc nội bộ
Kịch bản kiểm thử chức năng Tìm kiếm đơn hàng
Mô tả: Đầu vào: đơn hàng ở trạng thái đang giao, H.Thành, M.Phần, yêu cầu check khách Mong muốn: Hiển thị đúng đơn hàng với mã vừa nhập
Hình 4 14: Kịch bản kiểm thử chức năng Tìm kiếm đơn hàng