From 1443d5a84a4df99d9a86ac04c904554e91ae8271 Mon Sep 17 00:00:00 2001
From: zwl <1051256694@qq.com>
Date: 星期日, 12 四月 2026 15:35:06 +0800
Subject: [PATCH] 1.针对7.3接口文档,新增了几个字段需要加入到组托档中,不额外加字段 2.针对7.11接口文档,对outOrder方法进行重写,batchSeq在wrkMast表中新增一个字段放,entryWmsCode、outDoorNo这两个在wrkDetl中找两个字段存放 3.针对7.7接口文档,上报时加上orderId出库单号 4.针对7.9接口文档,wcs会先请求wms,只需要palletId托盘码,errorMsg错误信息;wms转发给加上orderId出库单号转发给ERP 5.针对7.10接口文档,ERP先按照这个文档发给wms,wms再发给wcs,发给wcs这块先不写
---
src/main/java/com/zy/asrs/utils/param/ItemUtilParam.java | 82 ++++++++++++++++++++++++++++++++++-------
1 files changed, 68 insertions(+), 14 deletions(-)
diff --git a/src/main/java/com/zy/asrs/utils/param/ItemUtilParam.java b/src/main/java/com/zy/asrs/utils/param/ItemUtilParam.java
index 4ca44df..39c799c 100644
--- a/src/main/java/com/zy/asrs/utils/param/ItemUtilParam.java
+++ b/src/main/java/com/zy/asrs/utils/param/ItemUtilParam.java
@@ -2,24 +2,78 @@
import lombok.Data;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.Map;
+import java.util.Set;
+
@Data
public class ItemUtilParam {
- String name;
- double unitSpace;
- int maxCapacity;
- int stock;
- int remaining;
- public ItemUtilParam(String name, int maxCapacity, int stock) {
- this.name = name;
- this.maxCapacity = maxCapacity;
- this.unitSpace = 1.0 / maxCapacity;
- this.stock = stock;
- this.remaining = stock;
+ @Data
+ public static class Item {
+ String name;
+ double unitSpace;
+ int maxCapacity;
+ int stock;
+ int remaining;
+
+ public Item(String name, int maxCapacity, int stock) {
+ this.name = name;
+ this.maxCapacity = maxCapacity;
+ this.unitSpace = 1.0 / maxCapacity;
+ this.stock = stock;
+ this.remaining = stock;
+ }
+
+ @Override
+ public String toString() {
+ return name + "(鍗曟斁" + maxCapacity + "涓�, 搴撳瓨" + stock + "涓�)";
+ }
}
- @Override
- public String toString() {
- return name + "(鍗曟斁" + maxCapacity + "涓�, 搴撳瓨" + stock + "涓�)";
+
+ static class Locker {
+ int id;
+ double remainingSpace;
+ long bindingTags;
+ Map<String, Integer> contents;
+ Set<String> itemTypes;
+
+ public Locker(int id) {
+ this.id = id;
+ this.remainingSpace = 1.0;
+ this.contents = new HashMap<>();
+ this.itemTypes = new HashSet<>();
+ this.bindingTags = System.currentTimeMillis();
+
+ }
+
+ public boolean canAdd(ItemUtilParam.Item item, int quantity) {
+ return remainingSpace >= quantity * item.unitSpace;
+ }
+
+ public void addItem(ItemUtilParam.Item item, int quantity) {
+ double spaceUsed = quantity * item.unitSpace;
+ remainingSpace -= spaceUsed;
+ contents.put(item.name, contents.getOrDefault(item.name, 0) + quantity);
+ itemTypes.add(item.name);
+ item.remaining -= quantity;
+ }
+
+ public boolean containsItemType(String itemName) {
+ return itemTypes.contains(itemName);
+ }
+
+ @Override
+ public String toString() {
+ StringBuilder sb = new StringBuilder();
+ sb.append("鍌ㄧ墿鏌�").append(id).append(": ");
+ sb.append(String.format("鍓╀綑绌洪棿%.4f", remainingSpace)).append("\n");
+ for (Map.Entry<String, Integer> entry : contents.entrySet()) {
+ sb.append(" ").append(entry.getKey()).append(": ").append(entry.getValue()).append("涓猏n");
+ }
+ return sb.toString();
+ }
}
}
--
Gitblit v1.9.1