From 1ce606a5cd06b859a57eabf8b12c4fb3704168b4 Mon Sep 17 00:00:00 2001
From: zjh <1084500556@qq.com>
Date: 星期一, 06 一月 2025 16:46:16 +0800
Subject: [PATCH] 20250106

---
 ltkj-common/src/main/java/com/ltkj/common/utils/IdUtils.java |   28 ++++++++++++++++++++++++++++
 1 files changed, 28 insertions(+), 0 deletions(-)

diff --git a/ltkj-common/src/main/java/com/ltkj/common/utils/IdUtils.java b/ltkj-common/src/main/java/com/ltkj/common/utils/IdUtils.java
index 1936ff9..f681ca0 100644
--- a/ltkj-common/src/main/java/com/ltkj/common/utils/IdUtils.java
+++ b/ltkj-common/src/main/java/com/ltkj/common/utils/IdUtils.java
@@ -6,6 +6,7 @@
 
 import java.text.SimpleDateFormat;
 import java.util.Date;
+import java.util.Random;
 
 /**
  * @Company: 瑗垮畨璺嘲绉戞妧鏈夐檺鍏徃
@@ -17,6 +18,8 @@
 
     private static final String LIS_LAST_ID_KEY = "id:generate:lis:id";
     private static final String LIS_CURRENT_DATE_KEY = "id:generate:lis:currentDate";
+
+//    private static final UidGenerator uidGenerator = new DefaultUidGenerator();  // 浣跨敤榛樿鐨凷nowflake鐢熸垚鍣�
 
     @Autowired
     private StringRedisTemplate stringRedisTemplate;
@@ -38,4 +41,29 @@
         return String.format(prefix+"%s%05d", yyMMdd, lastId);
     }
 
+
+    //鐢熸垚浣撴鍙风敤
+    private static long lastTimestamp = -1;
+    private static final Random random = new Random();
+
+    public static synchronized String getTjNumber() {
+        long timestamp = System.currentTimeMillis();  // 鑾峰彇褰撳墠鏃堕棿鎴筹紙姣锛�
+
+        // 濡傛灉鏃堕棿鎴冲拰涓婃鐢熸垚鐨勬椂闂存埑鐩稿悓锛岀敓鎴愪竴涓柊鐨勯殢鏈烘暟
+        if (timestamp == lastTimestamp) {
+            return String.format("%09d", (timestamp % 1000000000) + random.nextInt(900) + 100);
+        } else {
+            lastTimestamp = timestamp;  // 鏇存柊鏈�鍚庣敓鎴愭椂闂存埑
+            return String.format("%09d", (timestamp % 1000000000) + random.nextInt(900) + 100);
+        }
+    }
+
+
+//    浣跨敤鍒嗗竷寮廔D鐢熸垚鍣紙濡係nowflake锛�
+    public static String generateExamNumber() {
+//        long id = uidGenerator.getUID();  // 鑾峰彇鐢熸垚鐨勫敮涓�ID
+//        return String.format("%09d", Math.abs(id) % 1000000000);  // 鏍煎紡鍖栦负9浣�
+        return null;
+    }
+
 }

--
Gitblit v1.8.0