From bbf11a79fce0131aa95905c09b00f25e7696d20b Mon Sep 17 00:00:00 2001
From: lsh <lsh@163.com>
Date: 星期二, 21 十月 2025 16:53:13 +0800
Subject: [PATCH] *
---
src/main/java/com/zy/asrs/utils/ToSortLineUtils.java | 67 ++++++++++++++++++++++-----------
1 files changed, 44 insertions(+), 23 deletions(-)
diff --git a/src/main/java/com/zy/asrs/utils/ToSortLineUtils.java b/src/main/java/com/zy/asrs/utils/ToSortLineUtils.java
index 7195635..f2b5c46 100644
--- a/src/main/java/com/zy/asrs/utils/ToSortLineUtils.java
+++ b/src/main/java/com/zy/asrs/utils/ToSortLineUtils.java
@@ -1,7 +1,7 @@
package com.zy.asrs.utils;
-import com.zy.asrs.entity.OrderDetl;
import com.zy.asrs.entity.param.OrderToLine;
+import com.zy.asrs.utils.param.ItemUtilParam;
import java.util.ArrayList;
import java.util.List;
@@ -36,34 +36,29 @@
return sku+sign_F+po+sign_F+upc;
}
- public static OrderToLine GetOrderToLineGro(List<GroupedLockerOptimizerUtils.Item> items,OrderToLine orderToLine){
- List<OrderToLine.MatList> matLists = new ArrayList<>();
- // 浣跨敤鍒嗙粍浼樺厛绠楁硶
- GroupedLockerOptimizerUtils.PackingSolution solution = GroupedLockerOptimizerUtils.packItemsWithGrouping(items);
- for (GroupedLockerOptimizerUtils.Locker locker:solution.lockers) {
- for (String mantnr : locker.contents.keySet()){
- System.out.println(mantnr+"<===>"+locker.contents.get(mantnr));
- String[] split = mantnr.split(Pattern.quote(sign_F));
- OrderToLine.MatList mat = new OrderToLine.MatList(
- split[0], // matnr -> sku
- split[1], // supp -> po -> s1
- locker.contents.get(mantnr).doubleValue(), //鏁存枡
- split[2], //barcode -> upc -> s2
- 1,
- null, //origin -> supplier 璐ф簮
- locker.bindingTags
- );
- matLists.add(mat);
- }
+ public static OrderToLine GetOrderToLine(List<ItemUtilParam.Item> items, OrderToLine orderToLine,String sign){
+ switch (sign){
+ case "Opt":
+ List<OptimizedLockerPackingUtils.Item> itemsOpt = new ArrayList<>();
+ for (ItemUtilParam.Item item:items){
+ itemsOpt.add(new OptimizedLockerPackingUtils.Item(item.getName(),item.getMaxCapacity(),item.getStock()));
+ }
+ return GetOrderToLineOpt(itemsOpt,orderToLine);
+ case "Opt3":
+ List<OptimizedLockerPacking3Utils.Item> itemsOpt3 = new ArrayList<>();
+ for (ItemUtilParam.Item item:items){
+ itemsOpt3.add(new OptimizedLockerPacking3Utils.Item(item.getName(),item.getMaxCapacity(),item.getStock()));
+ }
+ return GetOrderToLineOpt3(itemsOpt3,orderToLine);
+ default:
+ return null;
}
- orderToLine.setMatList(matLists);
- return orderToLine;
}
-
public static OrderToLine GetOrderToLineOpt(List<OptimizedLockerPackingUtils.Item> items,OrderToLine orderToLine){
List<OrderToLine.MatList> matLists = new ArrayList<>();
// 浣跨敤鍒嗙粍浼樺厛绠楁硶
OptimizedLockerPackingUtils.PackingSolution packingSolution = OptimizedLockerPackingUtils.optimizedPacking(items);
+// System.out.println("\n" + packingSolution);
for (OptimizedLockerPackingUtils.Locker locker:packingSolution.lockers) {
for (String mantnr : locker.contents.keySet()){
System.out.println(mantnr+"<===>"+locker.contents.get(mantnr));
@@ -83,4 +78,30 @@
orderToLine.setMatList(matLists);
return orderToLine;
}
+
+ public static OrderToLine GetOrderToLineOpt3(List<OptimizedLockerPacking3Utils.Item> items,OrderToLine orderToLine){
+ List<OrderToLine.MatList> matLists = new ArrayList<>();
+ // 浣跨敤鍒嗙粍浼樺厛绠楁硶
+ OptimizedLockerPacking3Utils.PackingSolution packingSolution = OptimizedLockerPacking3Utils.optimizedPacking(items);
+// System.out.println("\n" + packingSolution);
+ for (OptimizedLockerPacking3Utils.Locker locker:packingSolution.lockers) {
+ for (String mantnr : locker.contents.keySet()){
+// System.out.println(mantnr+"<===>"+locker.contents.get(mantnr));
+ String[] split = mantnr.split(Pattern.quote(sign_F));
+ OrderToLine.MatList mat = new OrderToLine.MatList(
+ split[0], // matnr -> sku
+ split[1], // supp -> po -> s1
+ locker.contents.get(mantnr).doubleValue(), //鏁存枡
+ split[2], //barcode -> upc -> s2
+ 1,
+ null, //origin -> supplier 璐ф簮
+ locker.bindingTags
+ );
+ matLists.add(mat);
+ }
+ }
+ orderToLine.setMatList(matLists);
+ return orderToLine;
+ }
+
}
--
Gitblit v1.9.1