!1217 fix: 无时间中缀不设置Redis过期时间

Merge pull request !1217 from Lesan/feature/bpm-new
This commit is contained in:
芋道源码 2025-02-08 22:58:03 +00:00 committed by Gitee
commit 3cbe59ace3
No known key found for this signature in database
GPG Key ID: 173E9B9CA92EEF8F
1 changed files with 7 additions and 1 deletions

View File

@ -29,6 +29,7 @@ public class BpmProcessIdRedisDAO {
public String generate(BpmModelMetaInfoVO.ProcessIdRule processIdRule) {
// 生成日期前缀
String infix = "";
boolean expireEnable = true;
switch (processIdRule.getInfix()) {
case "DAY":
infix = DateUtil.format(LocalDateTime.now(), "yyyyMMDD");
@ -42,13 +43,18 @@ public class BpmProcessIdRedisDAO {
case "SECOND":
infix = DateUtil.format(LocalDateTime.now(), "yyyyMMDDHHmmss");
break;
default:
expireEnable = false;
break;
}
// 生成序号
String noPrefix = processIdRule.getPrefix() + infix + processIdRule.getPostfix();
String key = RedisKeyConstants.BPM_PROCESS_ID + noPrefix;
Long no = stringRedisTemplate.opsForValue().increment(key);
stringRedisTemplate.expire(key, Duration.ofDays(1L));
if (Boolean.TRUE.equals(expireEnable)) {
stringRedisTemplate.expire(key, Duration.ofDays(1L));
}
return noPrefix + String.format("%0" + processIdRule.getLength() + "d", no);
}