タイトルが100%確実ではない場合は、自由に編集して、より一般的ですべてのユーザーに役立つようにしてください
注文をキャプチャできる「ポータル」の注文キャプチャがあります。注文の一部はボリュームまたは注文です。
パレットを最適に使用できるパレットを作成できるように、注文を処理する必要があります。
例として、梱包されたパレットの寸法は1.62立方メートル(1x1.2x1.35)にすることができます
その後、注文に次のアイテムがあります
製品コード、数量、総量
1、10、0.5
立方
メートル
2、3、0.2立方メートル3、5、1.2立方メートル4、1、0.15立方メートル
5、15、0.6立方メートル
これを処理したいのですが、次の出力が得られるようにmysqlトランザクションを想定しています。
パレット1:製品1、2、5。総体積=1.3立方メートル
パレット2:製品3,4。総体積=1.35立方メートル
したがって、明確にするために、スクリプトは0.5立方体の最初のパレットを取得し、リスト内で0.85に最も近い次の順序を探して、1.35立方メートルの目標を達成します。この場合は0.6になります。合計で1.1キューブになりました。残りのスペースは0.25キューブになりました。リストで最も近いアイテムは、製品2@0.2キューブになりました。合計で1.3キューブになり、0.05キューブ以下の製品は存在しないため、パレットは完成します。次に利用可能な製品は、製品3@1.2キューブになりました。したがって、0.15以下の製品が必要です。製品4は正確な量なので、パレットに追加して閉じます。
それが私の要件を明確にするのに役立つことを願っています。
これを支援できるmysqlトランザクションはありますか、またはこれをphpで処理する必要がありますか?
このロジックを構築する方法がわからない場合でも、これに関するヘルプをいただければ幸いです。
いつもお時間をいただきありがとうございます、
mysqlテーブルは以下のとおりです。