From b35d41081842402526012dfced289ade1150aefd Mon Sep 17 00:00:00 2001 From: zhangzhiqiang Date: Tue, 10 Jan 2023 17:12:37 +0800 Subject: [PATCH] =?UTF-8?q?fix:jo=5Fin=E6=B7=BB=E5=8A=A0=E5=88=A4=E6=96=AD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/StorPublicServiceImpl.java | 22 ++++++++++--------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/core/service/impl/StorPublicServiceImpl.java b/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/core/service/impl/StorPublicServiceImpl.java index 143e9050..fb998e05 100644 --- a/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/core/service/impl/StorPublicServiceImpl.java +++ b/mes/hd/nladmin-system/src/main/java/org/nl/wms/st/core/service/impl/StorPublicServiceImpl.java @@ -229,17 +229,19 @@ public class StorPublicServiceImpl implements StorPublicService { // 获取仓位物料信息 JSONObject jo_in = wql.query(sql_where.toString()).uniqueResult(0); - //TODO:兼容小数点不一致问题:后续有问题保留三位处理 - jo_in.put("canuse_qty",new BigDecimal(jo_in.getDoubleValue("canuse_qty")).setScale(3, RoundingMode.HALF_UP)); - jo_in.put("frozen_qty",new BigDecimal(jo_in.getDoubleValue("frozen_qty")).setScale(3, RoundingMode.HALF_UP)); - jo_in.put("ivt_qty",new BigDecimal(jo_in.getDoubleValue("ivt_qty")).setScale(3, RoundingMode.HALF_UP)); - double add = NumberUtil.add(jo_in.getDoubleValue("canuse_qty"), jo_in.getDoubleValue("frozen_qty")); - double sub_qty = NumberUtil.sub(add,jo_in.getDoubleValue("ivt_qty")); - if (sub_qty != 0) { - throw new BadRequestException("库存 stockrecord_id:"+jo_in.getString("stockrecord_id")+"可用数加冻结数不等于总数"); + if (jo_in != null) { + //TODO:兼容小数点不一致问题:后续有问题保留三位处理 + jo_in.put("canuse_qty",new BigDecimal(jo_in.getDoubleValue("canuse_qty")).setScale(3, RoundingMode.HALF_UP)); + jo_in.put("frozen_qty",new BigDecimal(jo_in.getDoubleValue("frozen_qty")).setScale(3, RoundingMode.HALF_UP)); + jo_in.put("ivt_qty",new BigDecimal(jo_in.getDoubleValue("ivt_qty")).setScale(3, RoundingMode.HALF_UP)); + double add = NumberUtil.add(jo_in.getDoubleValue("canuse_qty"), jo_in.getDoubleValue("frozen_qty")); + double sub_qty = NumberUtil.sub(add,jo_in.getDoubleValue("ivt_qty")); + if (sub_qty != 0) { + throw new BadRequestException("库存 stockrecord_id:"+jo_in.getString("stockrecord_id")+"可用数加冻结数不等于总数"); + } + jo_in.put("warehousing_qty",new BigDecimal(jo_in.getDoubleValue("warehousing_qty")).setScale(3, RoundingMode.HALF_UP)); } - jo_in.put("warehousing_qty",new BigDecimal(jo_in.getDoubleValue("warehousing_qty")).setScale(3, RoundingMode.HALF_UP)); - switch (change_type_scode) { + switch (change_type_scode) { case "11": //11加冻结、减可用:出库分配、移库移出 if (jo_in != null) { double ivt_qty = jo_in.getDoubleValue("ivt_qty");