From 390c2d34e13c494c654590ca0c8e97c3253367a0 Mon Sep 17 00:00:00 2001 From: jishenghua <752718920@qq.com> Date: Mon, 27 Oct 2025 22:08:05 +0800 Subject: [PATCH] =?UTF-8?q?=E7=BB=99=E5=95=86=E5=93=81=E6=8C=89=E6=9D=A1?= =?UTF-8?q?=E4=BB=B6=E6=9F=A5=E8=AF=A2=E6=8E=A5=E5=8F=A3=E5=A2=9E=E5=8A=A0?= =?UTF-8?q?=E9=9D=9E=E7=A9=BA=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../erp/controller/MaterialController.java | 24 ++++++++++--------- .../java/com/jsh/erp/service/UnitService.java | 2 +- 2 files changed, 14 insertions(+), 12 deletions(-) diff --git a/jshERP-boot/src/main/java/com/jsh/erp/controller/MaterialController.java b/jshERP-boot/src/main/java/com/jsh/erp/controller/MaterialController.java index 5520237f..cc00ccbf 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/controller/MaterialController.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/controller/MaterialController.java @@ -342,17 +342,19 @@ public class MaterialController extends BaseController { unit = unitService.getUnit(material.getUnitId()); //拼接副单位的比例 String commodityUnit = material.getCommodityUnit(); - if(commodityUnit.equals(unit.getBasicUnit())) { - ratioStr = "[基本]"; - } - if(commodityUnit.equals(unit.getOtherUnit()) && unit.getRatio()!=null) { - ratioStr = "[" + unit.getRatio().stripTrailingZeros().toPlainString() + unit.getBasicUnit() + "]"; - } - if(commodityUnit.equals(unit.getOtherUnitTwo()) && unit.getRatioTwo()!=null) { - ratioStr = "[" + unit.getRatioTwo().stripTrailingZeros().toPlainString() + unit.getBasicUnit() + "]"; - } - if(commodityUnit.equals(unit.getOtherUnitThree()) && unit.getRatioThree()!=null) { - ratioStr = "[" + unit.getRatioThree().stripTrailingZeros().toPlainString() + unit.getBasicUnit() + "]"; + if(StringUtil.isNotEmpty(commodityUnit) && unit!=null) { + if(commodityUnit.equals(unit.getBasicUnit())) { + ratioStr = "[基本]"; + } + if(commodityUnit.equals(unit.getOtherUnit()) && unit.getRatio()!=null) { + ratioStr = "[" + unit.getRatio().stripTrailingZeros().toPlainString() + unit.getBasicUnit() + "]"; + } + if(commodityUnit.equals(unit.getOtherUnitTwo()) && unit.getRatioTwo()!=null) { + ratioStr = "[" + unit.getRatioTwo().stripTrailingZeros().toPlainString() + unit.getBasicUnit() + "]"; + } + if(commodityUnit.equals(unit.getOtherUnitThree()) && unit.getRatioThree()!=null) { + ratioStr = "[" + unit.getRatioThree().stripTrailingZeros().toPlainString() + unit.getBasicUnit() + "]"; + } } } item.put("mBarCode", material.getmBarCode()); diff --git a/jshERP-boot/src/main/java/com/jsh/erp/service/UnitService.java b/jshERP-boot/src/main/java/com/jsh/erp/service/UnitService.java index 60022123..91f67292 100644 --- a/jshERP-boot/src/main/java/com/jsh/erp/service/UnitService.java +++ b/jshERP-boot/src/main/java/com/jsh/erp/service/UnitService.java @@ -227,7 +227,7 @@ public class UnitService { * @return */ public BigDecimal parseStockByUnit(BigDecimal stock, Unit unitInfo, String materialUnit) { - if(stock!=null) { + if(stock!=null && unitInfo!=null && StringUtil.isNotEmpty(materialUnit)) { if (materialUnit.equals(unitInfo.getOtherUnit()) && unitInfo.getRatio() != null && unitInfo.getRatio().compareTo(BigDecimal.ZERO) != 0) { stock = stock.divide(unitInfo.getRatio(), 2, BigDecimal.ROUND_HALF_UP); }