我将创建一个我想购买的产品列表。假设他们都被赋予了一个唯一的参考代码。我有一个供应商列表,我可以从这些供应商那里购买,为方便起见,每个供应商对每种产品都使用相同的参考代码。
一些供应商收取运费。其他人仅在您花费少于一定金额时才收取运费。如果您多次购买某些产品,一些供应商会打折,但可能会有限制(例如 1 送 1)。
获取我想购买的产品清单并计算从每个供应商处购买所有产品的总成本非常容易。我想做的是创建一个脚本来确定拆分订单是否更好。
例如:
零售商 A 收费:
产品 A - 5 英镑
产品 B - 10 英镑
产品 C - 10 英镑
产品 D - 10 英镑
运费 - 5 英镑
零售商 B 收费:
产品 A - 5 英镑
产品 B - 12 英镑
产品 C - 12 英镑
产品 D - 30 英镑
运费 - 5 英镑 - 消费 20 英镑或以上免费
在这种情况下,如果我只想购买产品 C,最便宜的将来自零售商 A。
如果我想购买:
1x 产品 A
2x 产品 B
1x 产品 D
最便宜的是零售商 B(因为免费送货)产品 A 和 B,然后拆分订单并从零售商 A 购买产品 D(因为即使包含送货,价格也会显着降低)。
所以在我看来,这不是一项复杂的任务,我可以很容易地在纸上解决它。问题是,我如何将其转换为代码。我不是在寻找代码来做这件事——只是关于如何实现它的理论的一些指导。