mcwl-ai/mcwl-common/src/main/java/com/mcwl/common/utils/OrderCodeUtil.java

46 lines
1.2 KiB
Java

package com.mcwl.common.utils;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.Random;
/**
* 订单编号生成工具
*
* @date 2024/5/30 下午6:02
*/
public class OrderCodeUtil {
public static final int ORDER_CODE_LENGTH = 24;
private static final String ORDER_CODE_DATA_FORMAT = "yyyyMMddHHmmss";
private static final int ORDER_CODE_RANDOM_NUMBER = 10;
private static final int ORDER_CODE_RANDOM_LENGTH = 6;
/**
* 生成订单编号
*
* @return 订单编号
*/
public static String generateOrderCode() {
SimpleDateFormat dateFormat = new SimpleDateFormat(ORDER_CODE_DATA_FORMAT);
String random = getRandom(ORDER_CODE_RANDOM_LENGTH);
Date date = new Date();
String time = dateFormat.format(date);
String code = "XS" + time + random;
while (code.length() < ORDER_CODE_LENGTH) {
code = code + 0;
}
return code;
}
private static String getRandom(int len) {
Random r = new Random();
StringBuilder rs = new StringBuilder();
for (int i = 0; i < len; i++) {
rs.append(r.nextInt(ORDER_CODE_RANDOM_NUMBER));
}
return rs.toString();
}
}