Tôi đang mã hóa CMS thương mại tùy chỉnh trong PHP.
Tôi đã tích hợp API XML của UPS để nhận được mức phí giao hàng và hiện đang hoạt động. Tôi đang sử dụng Đánh dấu sandborn của lớp PHP http://code.google.com/p/ups-php/Xác định kích thước gói cho API vận chuyển UPS
API đòi hỏi đầu vào của gói thức của Chiều dài, Width, Chiều cao và Trọng lượng. Cơ sở dữ liệu sản phẩm của tôi có thông tin này cho mỗi sản phẩm tương ứng, do đó, không có vấn đề gì khi ai đó chỉ mua một mặt hàng. Câu chuyện hơi khác khi nhiều sản phẩm được thêm vào giỏ hàng ... Trọng lượng gói vẫn còn dễ dàng vì tôi chỉ có thể lấy tổng của tất cả các trọng số sản phẩm .
Tuy nhiên các phương pháp hay nhất để ước tính độ dài, chiều rộng và chiều cao của gói cuối cùng để chuyển cho UPS khi có nhiều sản phẩm trong giỏ hàng?
Sửa đổi
Dường như với tôi rằng bất kỳ nhà phát triển làm việc với các API UPS trong một môi trường cửa hàng phải đối phó với vấn đề này như vậy. Nhiều hơn là một giải pháp cho vấn đề knapsack Tôi hy vọng tôi hiểu lầm về cách API hoạt động và thực sự có một cách đơn giản để giải quyết vấn đề này hoặc thậm chí là một cách để bàn giao điều này cho UPS để tính toán.
Có thể trùng lặp: http://stackoverflow.com/questions/7648859/given-a-set-of-objects-how-to-calculate-how-many-fit-in-a-given-volume Bạn có kích thước hộp cụ thể mà bạn đang cố gắng để phù hợp với tất cả mọi thứ vào? Điều đó chắc chắn sẽ ảnh hưởng đến kết quả của thuật toán này. –
Hmm vì đây sẽ là một CMS được sử dụng cho nhiều cửa hàng khác nhau, tôi không có thông tin về kích thước hộp cụ thể. Tôi tin rằng các CMS khác như X-Cart, Magento, Zen Cart, vv cũng sử dụng API UPS để tính phí giao hàng, vì vậy tôi hy vọng sẽ có một cách tiếp cận chung để xử lý vấn đề này. – filip
Tôi đã tìm thấy điều này - không chắc chắn nếu nó hoạt động chính xác cho những gì bạn cần: https://github.com/yetzt/boxing –