|
|
|
@ -713,7 +713,7 @@ public class ReportLabelListServiceImpl extends ServiceImpl<ReportLabelListMappe |
|
|
|
customerId: "CUST123",// customerId是可选的,如果传了,系统会优先根据customerId解析标签编号 |
|
|
|
addressNo: "ADDR001", // addressNo是可选的,传了会优先按customerId+addressNo精确匹配 |
|
|
|
"customFields": { |
|
|
|
"QTY": ["100","200","300"], |
|
|
|
"QTY": ["100","200","300"],//这里有几个数字就是几个外箱标签 |
|
|
|
"grossWeight": 15.6, |
|
|
|
"netWeight": 14.9 |
|
|
|
} |
|
|
|
@ -731,7 +731,7 @@ public class ReportLabelListServiceImpl extends ServiceImpl<ReportLabelListMappe |
|
|
|
List<String> outerQtyList = extractRequiredOuterQtyList(customFields); |
|
|
|
int outerBatchIndex = 1; |
|
|
|
for (String outerQty : outerQtyList) { |
|
|
|
Map<String, Object> outerCustomFields = buildOuterCustomFields(customFields, outerQty); |
|
|
|
Map<String, Object> outerCustomFields = buildOuterCustomFields(customFields, outerQty, outerBatchIndex, outerQtyList.size()); |
|
|
|
queryParams.put("customFields", outerCustomFields); |
|
|
|
|
|
|
|
// 生成当前QTY对应的外箱标签(同一queryParams会复用IFS缓存) |
|
|
|
@ -958,9 +958,10 @@ public class ReportLabelListServiceImpl extends ServiceImpl<ReportLabelListMappe |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* 构建外箱标签 customFields:保留原字段并覆盖 qty |
|
|
|
* 构建外箱标签 customFields:保留原字段并覆盖 qty、当前箱序号和总箱数 |
|
|
|
*/ |
|
|
|
private Map<String, Object> buildOuterCustomFields(Map<String, Object> sourceCustomFields, String outerQty) { |
|
|
|
private Map<String, Object> buildOuterCustomFields(Map<String, Object> sourceCustomFields, String outerQty, |
|
|
|
int serialNumber, int outerBoxes) { |
|
|
|
Map<String, Object> outerCustomFields = new HashMap<>(); |
|
|
|
if (sourceCustomFields != null && !sourceCustomFields.isEmpty()) { |
|
|
|
outerCustomFields.putAll(sourceCustomFields); |
|
|
|
@ -975,6 +976,8 @@ public class ReportLabelListServiceImpl extends ServiceImpl<ReportLabelListMappe |
|
|
|
if (!qtyUpdated) { |
|
|
|
outerCustomFields.put("qty", outerQty); |
|
|
|
} |
|
|
|
outerCustomFields.put("serialNumber", serialNumber); |
|
|
|
outerCustomFields.put("outerBoxes", outerBoxes); |
|
|
|
return outerCustomFields; |
|
|
|
} |
|
|
|
|
|
|
|
|