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