From 1340c6ff0460ccd783b4cf794d00ca7227de93e4 Mon Sep 17 00:00:00 2001 From: HuangHuiKang Date: Fri, 26 Jun 2026 10:04:01 +0800 Subject: [PATCH] =?UTF-8?q?fix:=E4=BF=AE=E5=A4=8D=E4=BA=A7=E5=93=81?= =?UTF-8?q?=E6=96=B0=E5=A2=9E=E6=97=B6=E5=BA=93=E5=AD=98=E5=8D=95=E4=BD=8D?= =?UTF-8?q?=E5=90=8D=E5=90=8D=E7=A7=B0=E5=9B=9E=E6=98=BE=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../dal/dataobject/product/ErpProductDO.java | 5 +++++ .../product/ErpProductServiceImpl.java | 22 +++++++++++++++---- .../mapper/product/ErpProductMapper.xml | 2 +- 3 files changed, 24 insertions(+), 5 deletions(-) diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/dal/dataobject/product/ErpProductDO.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/dal/dataobject/product/ErpProductDO.java index b375b7bf7..0b9e2c4fe 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/dal/dataobject/product/ErpProductDO.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/dal/dataobject/product/ErpProductDO.java @@ -66,6 +66,11 @@ public class ErpProductDO extends BaseDO { */ private Long unitId; + /** + * 单位名称 + */ + private String unitName; + /** * 采购单位编号 * diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductServiceImpl.java b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductServiceImpl.java index fb47ca113..257974ff4 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductServiceImpl.java +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/java/cn/iocoder/yudao/module/erp/service/product/ErpProductServiceImpl.java @@ -370,6 +370,15 @@ public class ErpProductServiceImpl implements ErpProductService { } private void fillProductUnitName(ErpProductDO product) { + if (product.getUnitId() == null) { + product.setUnitName(null); + } else { + ErpProductUnitDO unit = productUnitService.getProductUnit(product.getUnitId()); + if (unit == null) { + throw exception(PRODUCT_UNIT_NOT_EXISTS); + } + product.setUnitName(unit.getName()); + } if (product.getPurchaseUnitId() == null) { product.setPurchaseUnitName(null); return; @@ -662,10 +671,14 @@ public class ErpProductServiceImpl implements ErpProductService { product.setSubCategoryName(subCategory.getName()); product.setCategoryType(subCategory.getType()); }); - MapUtils.findAndThen(unitMap, product.getUnitId(), - unit -> product.setUnitName(unit.getName())); - MapUtils.findAndThen(purchaseUnitMap, product.getPurchaseUnitId(), - unit -> product.setPurchaseUnitName(unit.getName())); + if (StrUtil.isBlank(product.getUnitName())) { + MapUtils.findAndThen(unitMap, product.getUnitId(), + unit -> product.setUnitName(unit.getName())); + } + if (StrUtil.isBlank(product.getPurchaseUnitName())) { + MapUtils.findAndThen(purchaseUnitMap, product.getPurchaseUnitId(), + unit -> product.setPurchaseUnitName(unit.getName())); + } product.setPackagingSchemes(packagingSchemeMap.getOrDefault(product.getId(), Collections.emptyList())); product.setSuppliers(supplierMap.getOrDefault(product.getId(), Collections.emptyList())); product.setDefaultSupplierId(defaultSupplierMap.get(product.getId())); @@ -836,6 +849,7 @@ public class ErpProductServiceImpl implements ErpProductService { ErpProductUnitDO unitDO = productUnitService.getProductUnitByName(importProduct.getUnitName()); if (unitDO != null) { productDO.setUnitId(unitDO.getId()); + productDO.setUnitName(unitDO.getName()); } } diff --git a/yudao-module-erp/yudao-module-erp-biz/src/main/resources/mapper/product/ErpProductMapper.xml b/yudao-module-erp/yudao-module-erp-biz/src/main/resources/mapper/product/ErpProductMapper.xml index 74b3362c4..68d1605cf 100644 --- a/yudao-module-erp/yudao-module-erp-biz/src/main/resources/mapper/product/ErpProductMapper.xml +++ b/yudao-module-erp/yudao-module-erp-biz/src/main/resources/mapper/product/ErpProductMapper.xml @@ -9,7 +9,7 @@ 文档可见:https://www.iocoder.cn/MyBatis/x-plugins/ -->