From 37844746c8344b5a0f6b5b0b0add29dd06c2d2cb Mon Sep 17 00:00:00 2001
From: zhou zhou <3272660260@qq.com>
Date: 星期二, 07 四月 2026 14:11:53 +0800
Subject: [PATCH] #lua锁示例
---
rsf-server/src/main/java/com/vincent/rsf/server/common/redis/RedisKeys.java | 14 ++++----------
rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/LocManageUtil.java | 7 ++-----
2 files changed, 6 insertions(+), 15 deletions(-)
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/common/redis/RedisKeys.java b/rsf-server/src/main/java/com/vincent/rsf/server/common/redis/RedisKeys.java
index 28d6979..da7bde9 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/common/redis/RedisKeys.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/common/redis/RedisKeys.java
@@ -5,19 +5,13 @@
private RedisKeys() {
}
- public static String locationOccupy(Long locationId) {
- return "wms:location:occupy:" + locationId;
+ public static String locationOccupy(String key) {
+ return "wms:location:occupy:" + key;
}
- public static String locationTaskOccupy(Long locationId) {
- return "wms:task:occupy:location:" + locationId;
+ public static String stationOccupy(String key) {
+ return "wms:station:occupy:" + key;
}
- public static String stockAvailable(Long inventoryId) {
- return "wms:stock:available:" + inventoryId;
- }
- public static String stockReserve(String orderNo) {
- return "wms:stock:reserve:" + orderNo;
- }
}
diff --git a/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/LocManageUtil.java b/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/LocManageUtil.java
index 1814a3e..f5d8e89 100644
--- a/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/LocManageUtil.java
+++ b/rsf-server/src/main/java/com/vincent/rsf/server/manager/utils/LocManageUtil.java
@@ -5,6 +5,7 @@
import com.vincent.rsf.framework.common.SpringUtils;
import com.vincent.rsf.framework.exception.CoolException;
import com.vincent.rsf.server.api.utils.LocUtils;
+import com.vincent.rsf.server.common.redis.RedisKeys;
import com.vincent.rsf.server.manager.controller.dto.ExistDto;
import com.vincent.rsf.server.manager.controller.dto.OrderOutItemDto;
import com.vincent.rsf.server.manager.controller.params.WaveToLocParams;
@@ -85,16 +86,12 @@
if (Objects.isNull(loc) || Cools.isEmpty(loc.getCode())) {
continue;
}
- boolean claimed = wmsRedisLuaService.claimLocation(buildTargetLocLockKey(loc.getCode()), loc.getCode(), TARGET_LOC_LOCK_TTL);
+ boolean claimed = wmsRedisLuaService.claimLocation(RedisKeys.locationOccupy(loc.getCode()), loc.getCode(), TARGET_LOC_LOCK_TTL);
if (claimed) {
return loc.getCode();
}
}
return null;
- }
-
- private static String buildTargetLocLockKey(String locCode) {
- return TARGET_LOC_LOCK_KEY_PREFIX + locCode;
}
/**
--
Gitblit v1.9.1