java110
2023-05-23 cca504b84583f8f8289b34e794939b8590a16446
java110-core/src/main/java/com/java110/core/factory/GenerateCodeFactory.java
@@ -280,8 +280,12 @@
    private static String PLATFORM_CODE = "0001";
    @SuppressWarnings("finally")
    public static String nextId(String idLength) {
        return nextId(idLength,true);
    }
    @SuppressWarnings("finally")
    public static String nextId(String idLength,boolean hasRandom) {
        LOCK.lock();
        try {
            if (lastCount == ONE_STEP) {
@@ -290,7 +294,7 @@
            count = lastCount++;
        } finally {
            LOCK.unlock();
            String id = getRandom() + String.format(idLength, count);
            String id = (hasRandom?getRandom():"") + String.format(idLength, count);
            id = id.replace("-","");
            return id;
        }
@@ -343,7 +347,22 @@
     */
    public static String getGeneratorId(String prefix) throws GenerateCodeException {
        if (!MappingConstant.VALUE_ON.equals(MappingCache.getValue(MappingConstant.KEY_NEED_INVOKE_GENERATE_ID))) {
            return prefix + DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_H) + nextId("%04d");
            //2+14+4+6
            //7920230518235714886
            return prefix + DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_DEFAULT) + nextId("%06d");
        }
        //调用服务
        return getCode(prefix);
    }
    /**
     * pgId生成
     *
     * @return
     * @throws GenerateCodeException
     */
    public static String getDetailId(String prefix) throws GenerateCodeException {
        if (!MappingConstant.VALUE_ON.equals(MappingCache.getValue(MappingConstant.KEY_NEED_INVOKE_GENERATE_ID))) {
            return prefix + DateUtil.getNow(DateUtil.DATE_FORMATE_STRING_O) + nextId("%06d",false);
        }
        //调用服务
        return getCode(prefix);