zoukankan      html  css  js  c++  java
  • 规则:H+年+月+日+时+分+卡券类型+000000(最后六位为自然数增长加1)

    public class xxxGenerator {

    @Autowired
    private IRedisService redisService;

    /**
    * @desc : xxx规则:H+年+月+日+时+分+类型+000000(最后六位为自然数增长加1)
    **/
    public String generator(TypeEnum type){
    LocalDateTime nowTime = LocalDateTime.now();
    StringBuffer sb = new StringBuffer();
    sb.append("H");
    sb.append(String.valueOf(nowTime.getYear()).substring(2,4));
    sb.append(String.format("%02d",nowTime.getMonthValue()));
    sb.append(String.format("%02d",nowTime.getDayOfMonth()));
    sb.append(String.format("%02d",nowTime.getHour()));
    sb.append(String.format("%02d",nowTime.getMinute()));
    sb.append(couponType.getValue());

    StringBuffer redisKey = new StringBuffer();
    redisKey.append("H");
    redisKey.append(nowTime.getYear());
    redisKey.append(nowTime.getMonthValue());
    redisKey.append(nowTime.getDayOfMonth());

    LocalDateTime midnight = nowTime.plusDays(1).withHour(0).withMinute(0).withSecond(0).withNano(0);
    long seconds = ChronoUnit.SECONDS.between(nowTime, midnight);
    sb.append(String.format("%06d",redisService.incr(redisKey.toString(),seconds)));
    log.info("xxx号:{}",sb.toString());
    return sb.toString();
    }

    public String next(TypeEnum type) {
    // return UuidUtil.nextAsTextWithoutHyphen();
    return generator(type);
    }
    }
  • 相关阅读:
    前后端分类状态下SpringSecurity的玩法
    拓展 centos 7
    linux 日志管理
    Linux 内存监控
    Linux 周期任务
    Linux 文件系统
    linux 磁盘管理
    图论 最短路总结
    进阶线段树之乘法操作
    暑假集训Day 10 小烈送菜
  • 原文地址:https://www.cnblogs.com/maohuidong/p/14005902.html
Copyright © 2011-2022 走看看