package com.ycl.common.utils; import java.util.Random; /** * 项目代码生成工具类 * * @Author: ljx * @CreateTime: 2024-11-04 15:06 */ public class ProjectCodeGenerator { private static final String PROJECT_PREFIX = "SHXM-"; // 项目编号前缀 private static final String ENGINEERING_PREFIX = "SHGC-"; private static final Random RANDOM = new Random(); /** * 根据当前时间戳和特定代码生成项目编号 * @return 生成的项目编号 */ public static String generateProjectCode() { // 获取当前时间的时间戳 long timestamp = System.currentTimeMillis(); // 生成随机数,增加唯一性 int randomNum = RANDOM.nextInt(1000); // 拼接前缀、时间戳和随机数生成项目编号 return PROJECT_PREFIX + timestamp + String.format("%03d", randomNum); } /** * 生成工程编码 * @return 生成工程编号 */ public static String generateEngineeringCode() { // 获取当前时间的时间戳 long timestamp = System.currentTimeMillis(); // 生成随机数,增加唯一性 int randomNum = RANDOM.nextInt(1000); // 拼接前缀、时间戳和随机数生成工程编号 return ENGINEERING_PREFIX + timestamp + String.format("%03d", randomNum); } public static void main(String[] args) { // 测试生成项目编号 String projectCode = generateEngineeringCode(); System.out.println("Generated Project Code: " + projectCode); } }