From 6f01b51fc0770fda7787076caf0314be7a7f6656 Mon Sep 17 00:00:00 2001 From: Junjie <fallin.jie@qq.com> Date: 星期五, 27 六月 2025 10:58:21 +0800 Subject: [PATCH] # --- src/main/java/com/zy/asrs/utils/MatUtils.java | 30 ++++++++++++++++++++++++++++-- 1 files changed, 28 insertions(+), 2 deletions(-) diff --git a/src/main/java/com/zy/asrs/utils/MatUtils.java b/src/main/java/com/zy/asrs/utils/MatUtils.java index 2a8dd63..b88aa94 100644 --- a/src/main/java/com/zy/asrs/utils/MatUtils.java +++ b/src/main/java/com/zy/asrs/utils/MatUtils.java @@ -8,6 +8,7 @@ import lombok.extern.slf4j.Slf4j; import java.math.BigDecimal; +import java.math.RoundingMode; /** * Created by vincent on 2022/4/23 @@ -52,9 +53,34 @@ BigDecimal origin1 = new BigDecimal(split[1]); BigDecimal origin0 = new BigDecimal(split[0]); - BigDecimal divideResult1 = anfmeBigDecimal.divide(origin1); - BigDecimal weightBigDecimal = divideResult1.divide(origin0); + BigDecimal divideResult1 = anfmeBigDecimal.divide(origin1, 9, RoundingMode.HALF_UP); + BigDecimal weightBigDecimal = divideResult1.divide(origin0, 9, RoundingMode.HALF_UP); return weightBigDecimal.doubleValue(); } + public static Double calcAnfmeFromWeight(String matnr, Double weight) { + MatService matService = SpringUtils.getBean(MatService.class); + //鏇存柊杈呮枡 + Mat mat = matService.selectByMatnr(matnr); + if (mat == null) { + throw new CoolException("鐗╂枡淇℃伅涓嶅瓨鍦�"); + } + + //杞崲鍏崇郴 + String origin = mat.getOrigin(); + if (Cools.isEmpty(origin)) { + throw new CoolException("涓昏緟鏁伴噺杞崲鍏紡涓嶅瓨鍦�"); + } + String[] split = origin.split("/"); + //杈呭崟浣� + + BigDecimal weightBigDecimal = BigDecimal.valueOf(weight); + BigDecimal origin1 = new BigDecimal(split[1]); + BigDecimal origin0 = new BigDecimal(split[0]); + + BigDecimal multiplyResult1 = weightBigDecimal.multiply(origin1); + BigDecimal anfmeBigDecimal = multiplyResult1.multiply(origin0); + return anfmeBigDecimal.doubleValue(); + } + } -- Gitblit v1.9.1