diff --git a/src/main/java/com/gaotao/modules/labelSplitMerge/controller/LabelSplitMergeController.java b/src/main/java/com/gaotao/modules/labelSplitMerge/controller/LabelSplitMergeController.java index ec38594..6a28f58 100644 --- a/src/main/java/com/gaotao/modules/labelSplitMerge/controller/LabelSplitMergeController.java +++ b/src/main/java/com/gaotao/modules/labelSplitMerge/controller/LabelSplitMergeController.java @@ -160,15 +160,10 @@ public class LabelSplitMergeController { // 设置操作人(这里可以从session或token中获取) params.put("operator", "PDA用户"); // 实际项目中应该获取真实用户信息 - boolean result = labelSplitMergeService.mergeLabel(params); - - if (result) { - logger.info("标签合并成功,目标标签: {}, 源标签: {}", targetLabelCode, sourceLabelCode); - return R.ok("标签合并成功"); - } else { - logger.error("标签合并失败,目标标签: {}, 源标签: {}", targetLabelCode, sourceLabelCode); - return R.error("标签合并失败"); - } + Map result = labelSplitMergeService.mergeLabel(params); + + logger.info("标签合并成功,目标标签: {}, 源标签: {}", targetLabelCode, sourceLabelCode); + return R.ok("标签合并成功").put("data", result); } catch (Exception e) { logger.error("标签合并失败", e); diff --git a/src/main/java/com/gaotao/modules/labelSplitMerge/service/LabelSplitMergeService.java b/src/main/java/com/gaotao/modules/labelSplitMerge/service/LabelSplitMergeService.java index 98163de..dc89263 100644 --- a/src/main/java/com/gaotao/modules/labelSplitMerge/service/LabelSplitMergeService.java +++ b/src/main/java/com/gaotao/modules/labelSplitMerge/service/LabelSplitMergeService.java @@ -32,7 +32,7 @@ public interface LabelSplitMergeService extends IService /** * 标签合并 * @param params 合并参数 - * @return 操作结果 + * @return 操作结果(包含打印参数列表) */ - boolean mergeLabel(Map params); + Map mergeLabel(Map params); } \ No newline at end of file diff --git a/src/main/java/com/gaotao/modules/labelSplitMerge/service/impl/LabelSplitMergeServiceImpl.java b/src/main/java/com/gaotao/modules/labelSplitMerge/service/impl/LabelSplitMergeServiceImpl.java index db739e5..689802a 100644 --- a/src/main/java/com/gaotao/modules/labelSplitMerge/service/impl/LabelSplitMergeServiceImpl.java +++ b/src/main/java/com/gaotao/modules/labelSplitMerge/service/impl/LabelSplitMergeServiceImpl.java @@ -10,6 +10,7 @@ import com.gaotao.modules.trans.service.TransDetailService; import com.gaotao.modules.trans.service.TransDetailSubService; import com.gaotao.modules.trans.service.TransHeaderService; import com.gaotao.modules.trans.service.TransNoControlService; +import com.gaotao.modules.wms.dao.WmsPrintDao; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; @@ -49,6 +50,9 @@ public class LabelSplitMergeServiceImpl extends ServiceImpl getStockInfoByLabelCode(String labelCode, String site, String warehouseId) { logger.info("根据标签条码获取库存信息,标签条码: {}, 站点: {}, 仓库: {}", labelCode, site, warehouseId); @@ -148,11 +152,34 @@ public class LabelSplitMergeServiceImpl extends ServiceImpl> printList = new ArrayList<>(); + try { + // 原标签打印参数 + Map printData1 = wmsPrintDao.callUspPartLabelTemplate( + site, buNo, "*", "", "", "", partNo, "", originalLabelCode + ); + if (printData1 != null) { + printList.add(printData1); + } + + // 新标签打印参数 + Map printData2 = wmsPrintDao.callUspPartLabelTemplate( + site, buNo, "*", "", "", "", partNo, "", newLabelCode + ); + if (printData2 != null) { + printList.add(printData2); + } + } catch (Exception e) { + logger.warn("获取打印参数失败,不影响拆分操作", e); + } + Map result = new HashMap<>(); result.put("newLabelCode", newLabelCode); result.put("originalQuantity", originalQuantity); result.put("splitQuantity", splitQuantity); result.put("remainingQuantity", remainingQuantity); + result.put("printList", printList); logger.info("标签拆分成功,原标签: {}, 新标签: {}, 拆分数量: {}", originalLabelCode, newLabelCode, splitQuantity); return result; @@ -165,7 +192,7 @@ public class LabelSplitMergeServiceImpl extends ServiceImpl params) { + public Map mergeLabel(Map params) { logger.info("开始标签合并,参数: {}", params); try { @@ -215,8 +242,28 @@ public class LabelSplitMergeServiceImpl extends ServiceImpl> printList = new ArrayList<>(); + try { + Map printData = wmsPrintDao.callUspPartLabelTemplate( + site, buNo, "*", "", "", "", partNo, "", sourceLabelCode + ); + if (printData != null) { + printList.add(printData); + } + } catch (Exception e) { + logger.warn("获取打印参数失败,不影响合并操作", e); + } + + Map result = new HashMap<>(); + result.put("success", true); + result.put("sourceLabelCode", sourceLabelCode); + result.put("targetLabelCode", targetLabelCode); + result.put("mergedQuantity", mergedQuantity); + result.put("printList", printList); + logger.info("标签合并成功,源标签: {}, 目标标签: {}, 合并数量: {}", sourceLabelCode, targetLabelCode, sourceQuantity); - return true; + return result; } catch (Exception e) { logger.error("标签合并失败", e);