From 402f2897a54242cd04133e74eeba3d8b700bfe9a Mon Sep 17 00:00:00 2001
From: skyouc <creaycat@gmail.com>
Date: 星期六, 29 十一月 2025 15:07:47 +0800
Subject: [PATCH] 小数点精度六位补充

---
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java  |    2 +-
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java  |    2 +-
 rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaOutStockServiceImpl.java   |    3 +--
 rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/ReviseLogServiceImpl.java |    2 +-
 4 files changed, 4 insertions(+), 5 deletions(-)

diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaOutStockServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaOutStockServiceImpl.java
index df9a7dd..59f408c 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaOutStockServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/api/service/impl/PdaOutStockServiceImpl.java
@@ -248,7 +248,7 @@
      */
     @Override
     @Transactional(rollbackFor = Exception.class)
-    public R wavePickItems(WavePickItemsParams params) {
+    public synchronized R wavePickItems(WavePickItemsParams params) {
         if (Objects.isNull(params.getBarcode())) {
             return R.error("鎵樼洏鐮佷笉鑳戒负绌猴紒锛�");
         }
@@ -338,7 +338,6 @@
                     if (!Boolean.parseBoolean(config.getVal())) {
                         Double v = Math.round((item.getQty() + taskItem.getAnfme()) * 1000000) / 1000000.0;
                         if (item.getAnfme().compareTo(v) < 0.0) {
-
                             throw new CoolException("鍓嶅綋鐗╂枡宸茶秴鍑哄彲鎷h寖鍥达紝璇锋牳瀵瑰悗鍐嶆搷浣滐紒锛�");
                         }
                     }
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java
index 6a387fb..9eba8f0 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/AsnOrderServiceImpl.java
@@ -386,7 +386,7 @@
             Purchase purchase = purchaseService.getOne(new LambdaQueryWrapper<Purchase>()
                     .eq(Purchase::getCode, list.stream().findFirst().get().getPoCode()));
             if (!Objects.isNull(purchase)) {
-                Double qty = Math.round((purchase.getQty() - sum) * 100) / 100.0;
+                Double qty = Math.round((purchase.getQty() - sum) * 1000000) / 1000000.0;
                 purchase.setQty(qty)
                         .setExceStatus(POExceStatus.PO_EXCE_STATUS_EXCE_ING.val);
 
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java
index c90f8a7..91700dc 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/OutStockServiceImpl.java
@@ -711,7 +711,7 @@
                         p1.getUnit(),
                         p1.getTrackCode(),
                         p1.getFieldsIndex(),
-                        Math.round((p1.getAnfme() + p2.getAnfme()) * 100) / 100.0,
+                        Math.round((p1.getAnfme() + p2.getAnfme())* 1000000) / 1000000.0,
                         p1.getWorkQty(),
                         p1.getTenantId(),
                         p1.getStatus(),
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/ReviseLogServiceImpl.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/ReviseLogServiceImpl.java
index 3682ded..3a4d54c 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/ReviseLogServiceImpl.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/service/impl/ReviseLogServiceImpl.java
@@ -86,7 +86,7 @@
 
             Double sum = locItems.stream().mapToDouble(LocItem::getAnfme).sum();
 
-            locRevise.setAnfme(Math.round((sum + locRevise.getAnfme()) * 100) / 100.0);
+            locRevise.setAnfme(Math.round((sum + locRevise.getAnfme()) * 1000000) / 1000000.0);
         });
 
         locRevise.setExceStatus(CommonExceStatus.COMMON_EXCE_STATUS_UN_EXCE.val);

--
Gitblit v1.9.1