From cc5ba069b6dbd52acade8b3b557afe14ffdac26b Mon Sep 17 00:00:00 2001 From: chenbowen Date: Wed, 24 Dec 2025 18:00:30 +0800 Subject: [PATCH] =?UTF-8?q?1.=20=E5=90=8C=E6=AD=A5=E4=B8=BB=E6=95=B0?= =?UTF-8?q?=E6=8D=AE=E7=89=A9=E6=96=99=E6=97=B6=EF=BC=8C=E9=9C=80=E8=A6=81?= =?UTF-8?q?=E6=8E=A7=E5=88=B6=E6=89=B9=E6=AC=A1=E5=A4=A7=E5=B0=8F?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zt/plat/module/base/enums/ErrorCodeConstants.java | 1 + .../masterdatasync/MasterDataSyncServiceImpl.java | 9 ++++++++- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/zt-module-base/zt-module-base-api/src/main/java/com/zt/plat/module/base/enums/ErrorCodeConstants.java b/zt-module-base/zt-module-base-api/src/main/java/com/zt/plat/module/base/enums/ErrorCodeConstants.java index 8bda5275..11cc1010 100644 --- a/zt-module-base/zt-module-base-api/src/main/java/com/zt/plat/module/base/enums/ErrorCodeConstants.java +++ b/zt-module-base/zt-module-base-api/src/main/java/com/zt/plat/module/base/enums/ErrorCodeConstants.java @@ -72,4 +72,5 @@ public interface ErrorCodeConstants { // ========== 主数据同步 ========== ErrorCode MASTER_DATA_SYNC_DISABLED = new ErrorCode(1_027_900_001, "主数据同步功能已禁用"); + ErrorCode MASTER_DATA_SYNC_BATCH_SIZE_TOO_LARGE = new ErrorCode(1_027_900_002, "最大批次不得超过 1000"); } diff --git a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/service/masterdatasync/MasterDataSyncServiceImpl.java b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/service/masterdatasync/MasterDataSyncServiceImpl.java index 3fd3f984..3d2e0c2a 100644 --- a/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/service/masterdatasync/MasterDataSyncServiceImpl.java +++ b/zt-module-base/zt-module-base-server/src/main/java/com/zt/plat/module/base/service/masterdatasync/MasterDataSyncServiceImpl.java @@ -75,6 +75,9 @@ public class MasterDataSyncServiceImpl implements MasterDataSyncService { if (!properties.isEnabled()) { throw ServiceExceptionUtil.exception(ErrorCodeConstants.MASTER_DATA_SYNC_DISABLED); } + if (command.getBatchSize() > 1000) { + throw ServiceExceptionUtil.exception(ErrorCodeConstants.MASTER_DATA_SYNC_BATCH_SIZE_TOO_LARGE, command.getBatchSize()); + } MasterDataSyncReport report = MasterDataSyncReport.start(command); List materialCodes = sanitizeCodes(command.getMaterialCodes()); report.setMaterialCodes(materialCodes); @@ -306,7 +309,11 @@ public class MasterDataSyncServiceImpl implements MasterDataSyncService { continue; } MaterialInfomationDO current = existingById.get(codeId); - String name = normalizeValue(item.getMaterialName()); + // 名称优先取 MDM 的长描述(desclong),若为空再回退到 desc1 + String name = normalizeValue(item.getLongDescription()); + if (name == null) { + name = normalizeValue(item.getMaterialName()); + } if (current == null) { MaterialInfomationDO created = MaterialInfomationDO.builder() .id(codeId)