Заказ Интернет-магазина может быть разделен на несколько посылок, если на одном из складов транспортных компаний не хватает товаров.
Исходные данные:
- вес товара: 2 кг
- количество товаров в заказе: 6 штук
- транспортные компании foo, bar, baz, quux и количество товаров, которое может хранится на складе транспортной компании (от 1 до 2 штук)
Реализовал разделение заказа на посылки следующим образом:
sandbox.onlinephpfunctions.com. Вес посылки рассчитывается на 49 строке, исходя из доступного количества товара на складе транспортной компании.
Однако задача усложнилась: если вес посылки (произведение количества товара и веса товара) больше 3 кг, то предпочтительная транспортная компания baz, иначе quux.
При этом, если на складе транспортной компании не хватает товаров, то это условие нужно опустить и исходить из наличия.
Какие могут быть пути решения этой задачи?