|
|
|
@ -380,7 +380,12 @@ public class LabelDataProcessorServiceImpl implements LabelDataProcessorService |
|
|
|
|
|
|
|
@Override |
|
|
|
public ReportLabelList processElementData(ReportLabelList element, Map<String, Object> dataMap,Boolean nextSeqNotExist,Boolean printFlag) { |
|
|
|
if (element == null || element.getData() == null || element.getData().isEmpty()) { |
|
|
|
if (element == null) { |
|
|
|
return element; |
|
|
|
} |
|
|
|
// 流水号规则允许为空。空规则仍要生成纯流水号,否则隐藏流水号被二维码等组合引用时没有内容。 |
|
|
|
boolean serialElement = "serialNumber".equals(element.getType()); |
|
|
|
if (!serialElement && (element.getData() == null || element.getData().isEmpty())) { |
|
|
|
return element; |
|
|
|
} |
|
|
|
|
|
|
|
@ -1713,10 +1718,11 @@ public class LabelDataProcessorServiceImpl implements LabelDataProcessorService |
|
|
|
try { |
|
|
|
log.debug("开始处理流水号元素: itemNo={}, data={}, showSerialNumber={}", element.getItemNo(), element.getData(), element.getShowSerialNumber()); |
|
|
|
|
|
|
|
// 检查是否显示流水号(默认显示) |
|
|
|
// 隐藏只决定流水号元素自身是否打印,不能在这里把值清空。 |
|
|
|
// 二维码等组合元素读取的就是本次生成结果;隐藏时若返回空串,引用内容也会丢失。 |
|
|
|
// 元素自身是否输出由 ZplGenerator.generateSerialNumberZPL 按 showSerialNumber 控制。 |
|
|
|
if (element.getShowSerialNumber() != null && "false".equals(element.getShowSerialNumber())) { |
|
|
|
log.debug("流水号元素设置为不显示,跳过处理"); |
|
|
|
return ""; // 不显示时返回空字符串 |
|
|
|
log.debug("流水号元素设置为不显示,仍生成流水号供组合元素引用: itemNo={}", element.getItemNo()); |
|
|
|
} |
|
|
|
|
|
|
|
if (element.getParentSerialLabelNo() != null && StringUtils.isNotBlank(element.getParentSerialLabelNo())) { |
|
|
|
|