From 23e3602b4f3ebde8665c3ab3a56ef81b8d671e0d Mon Sep 17 00:00:00 2001
From: zepengdev <lzpsmith@outlook.com>
Date: Wed, 17 Sep 2025 19:17:21 +0800
Subject: [PATCH] feat: 增加商品库存设置功能
---
oying-common/src/main/java/com/oying/utils/RedisUtils.java | 27 +++++++++++++++++++++++----
1 files changed, 23 insertions(+), 4 deletions(-)
diff --git a/oying-common/src/main/java/com/oying/utils/RedisUtils.java b/oying-common/src/main/java/com/oying/utils/RedisUtils.java
index 4467f18..6140508 100644
--- a/oying-common/src/main/java/com/oying/utils/RedisUtils.java
+++ b/oying-common/src/main/java/com/oying/utils/RedisUtils.java
@@ -24,8 +24,6 @@
@SuppressWarnings({"unchecked", "all"})
public class RedisUtils {
private static final Logger log = LoggerFactory.getLogger(RedisUtils.class);
- @Value("${jwt.generate-order-sn}")
- private String generateOrderSn;
@Value("${wx.enabled}")
private Boolean wxEnabled;
private static final String T = "T-";
@@ -44,10 +42,10 @@
* @param i
* @return
*/
- public String generateOrderSn(Integer i) {
+ public String generateSn(String generate, Integer i) {
StringBuilder sb = new StringBuilder();
String date = new SimpleDateFormat("yyyyMMdd").format(new Date());
- String key = generateOrderSn + i + date;
+ String key = generate + i + date;
Long increment = increment(key);
sb.append(date);
sb.append(String.format("%04d", i));
@@ -392,6 +390,27 @@
}
}
+ /**
+ * 分布式ID生成器
+ *
+ * @param key 键
+ * @param value 值
+ * @param time 时间(秒) time要大于0 如果time小于等于0 将设置无限期,注意:这里将会替换原有的时间
+ * @return true成功 false 失败
+ */
+ public boolean setIfAbsent(String key, Object value, long time) {
+ try {
+ if (time > 0) {
+ Boolean result = redisTemplate.opsForValue().setIfAbsent(key, value, time, TimeUnit.SECONDS);
+ return result;
+ } else {
+ return false;
+ }
+ } catch (Exception e) {
+ log.error(e.getMessage(), e);
+ return false;
+ }
+ }
// ================================Map=================================
/**
--
Gitblit v1.9.3