生成编码的工具
This commit is contained in:
@@ -0,0 +1,39 @@
|
|||||||
|
package com.guo.learningprogresstracker.utils;
|
||||||
|
|
||||||
|
import lombok.RequiredArgsConstructor;
|
||||||
|
|
||||||
|
import java.text.SimpleDateFormat;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 用于生成编码的工具
|
||||||
|
*
|
||||||
|
* @author guo
|
||||||
|
*/
|
||||||
|
@RequiredArgsConstructor
|
||||||
|
public class GenerateNumTool {
|
||||||
|
public static int getNextSequence() {
|
||||||
|
// 获取当前时间的毫秒级时间戳
|
||||||
|
long timestamp = System.currentTimeMillis();
|
||||||
|
|
||||||
|
// 使用时间戳的最后6位作为序列号
|
||||||
|
return (int) (timestamp % 1_000_000);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生成以prefix开头separator分割的编码
|
||||||
|
* 例如:PREFIX—20240711-423468
|
||||||
|
* @param prefix
|
||||||
|
* @param separator
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
public String generateNum(String prefix, String separator) {
|
||||||
|
String currentDate = new SimpleDateFormat("yyyyMMdd").format(new Date());
|
||||||
|
|
||||||
|
// 唯一的后缀
|
||||||
|
int sequence = getNextSequence();
|
||||||
|
|
||||||
|
// 返回完整的 taskNum
|
||||||
|
return prefix + separator + currentDate + separator + sequence;
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user