From b1012d23b8ae65e45902900c687bf68f39840ac2 Mon Sep 17 00:00:00 2001
From: pang.jiabao <pang_jiabao@163.com>
Date: 星期一, 17 十一月 2025 09:24:37 +0800
Subject: [PATCH] 高并发下库位抢占导致的数据错乱

---
 src/main/java/com/zy/common/service/CommonService.java |    5 ++++-
 1 files changed, 4 insertions(+), 1 deletions(-)

diff --git a/src/main/java/com/zy/common/service/CommonService.java b/src/main/java/com/zy/common/service/CommonService.java
index dce1bc3..bab0964 100644
--- a/src/main/java/com/zy/common/service/CommonService.java
+++ b/src/main/java/com/zy/common/service/CommonService.java
@@ -166,12 +166,14 @@
         return null;
     }
 
+    private final Object locLock = new Object();
+
     @Transactional(propagation = Propagation.REQUIRED)
     public StartupDto getLocNoNew(Integer staDescId, Integer sourceStaNo, FindLocNoAttributeVo findLocNoAttributeVo, int locArea) {
 
         // 鐩爣搴撲綅
         LocMast locMast;
-
+        synchronized (locLock) {
         // 鍏ョ┖妗跺簱
         if (staDescId == 1 && locArea == 2) {
             Config config = configService.selectOne(new EntityWrapper<Config>().eq("code", "emptyBucketInCacheCount").eq("status", 1));
@@ -438,6 +440,7 @@
         startupDto.setSourceStaNo(sourceStaNo);
         startupDto.setLocNo(locMast.getLocNo());
         return startupDto;
+        }
     }
 
     // 杈呭姪鏂规硶锛氬畾涔� crn_no 鐨勬帓搴忎紭鍏堢骇

--
Gitblit v1.9.1