彭雪彬
2025-09-05 1b1215fbeb15f860e134a0ae32bbe0fb11926446
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=================================
    /**