diff --git a/pom.xml b/pom.xml
index f0680e799f9c5f88592d3fccd2f305ed6d65ef99..5717ef84da2cd39899810ecb0f5a9fe0c605c077 100644
--- a/pom.xml
+++ b/pom.xml
@@ -38,14 +38,6 @@
UTF-8
8
8
-
- 2.2.2.RELEASE
-
- 3.4
- 2.4
- 3.10.0
- 4.3
- 19.0
4.13.2
@@ -54,12 +46,20 @@
2.13.3
2.13.3
3.3.4
+
+ 2.2.2.RELEASE
+
+ 3.4
+ 2.4
+ 3.10.0
+ 4.3
+ 19.0
2.11.2
1.2.70
1.4.2.Final
-
+ 5.4.2
2.4.7.Final
@@ -177,6 +177,12 @@
mapstruct
${mapstruct.version}
+
+
+ cn.hutool
+ hutool-all
+ ${hutool.version}
+
org.mvel
@@ -248,6 +254,10 @@
com.fasterxml.jackson.core
jackson-databind
+
+ cn.hutool
+ hutool-all
+
diff --git a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/BaseDataServiceImpl.java b/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/BaseDataServiceImpl.java
index 7425d9bd979f5206c66f2f2618ff097700c5713f..309c35392e065390a64d70619f1063669dc40ea5 100644
--- a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/BaseDataServiceImpl.java
+++ b/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/BaseDataServiceImpl.java
@@ -1,5 +1,6 @@
package cn.icanci.rec.admin.biz.service.impl;
+import cn.hutool.json.JSONUtil;
import cn.icanci.rec.admin.biz.event.log.LogEvent;
import cn.icanci.rec.admin.biz.mapper.config.BaseDataMapper;
import cn.icanci.rec.admin.biz.model.BaseDataDebugResult;
@@ -61,10 +62,10 @@ public class BaseDataServiceImpl implements BaseDataService {
if (doInsert(baseData)) {
BaseDataDO insert = baseDataMapper.vo2do(baseData);
baseDataDAO.insert(insert);
- eventDispatcher.fire(new LogEvent(insert.getUuid(), ModuleTypeEnum.REC_BASE_DATA, FastJsonUtils.toJSONString(insert), LogOperatorTypeEnum.CREATE));
+ eventDispatcher.fire(new LogEvent(insert.getUuid(), ModuleTypeEnum.REC_BASE_DATA, JSONUtil.toJsonStr(insert), LogOperatorTypeEnum.CREATE));
} else {
baseDataDAO.update(baseDataMapper.vo2do(baseData));
- eventDispatcher.fire(new LogEvent(baseData.getUuid(), ModuleTypeEnum.REC_BASE_DATA, FastJsonUtils.toJSONString(baseData), LogOperatorTypeEnum.UPDATE));
+ eventDispatcher.fire(new LogEvent(baseData.getUuid(), ModuleTypeEnum.REC_BASE_DATA, JSONUtil.toJsonStr(baseData), LogOperatorTypeEnum.UPDATE));
}
}
diff --git a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/DataSourceServiceImpl.java b/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/DataSourceServiceImpl.java
index 4eae568adc7c310504e597f091eebba7f8ad93ad..a8f9335cabf1eb50b64ad6dc0968f68e19c7c5e9 100644
--- a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/DataSourceServiceImpl.java
+++ b/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/DataSourceServiceImpl.java
@@ -1,5 +1,6 @@
package cn.icanci.rec.admin.biz.service.impl;
+import cn.hutool.json.JSONUtil;
import cn.icanci.rec.admin.biz.event.log.LogEvent;
import cn.icanci.rec.admin.biz.mapper.config.DataSourceMapper;
import cn.icanci.rec.admin.biz.model.DataSourceDebugResult;
@@ -38,19 +39,19 @@ import com.google.common.collect.Lists;
@Service
public class DataSourceServiceImpl implements DataSourceService {
@Resource
- private DataSourceDAO dataSourceDAO;
+ private DataSourceDAO dataSourceDAO;
@Resource
- private DataSourceMapper dataSourceMapper;
+ private DataSourceMapper dataSourceMapper;
@Resource
- private EventDispatcher eventDispatcher;
+ private EventDispatcher eventDispatcher;
- private final RecScriptEngine recScriptEngine = RecScriptEngineManager.getRecScriptEngine();
+ private final RecScriptEngine recScriptEngine = RecScriptEngineManager.getRecScriptEngine();
/** label 格式化 */
- String DELETED_TYPE_FORMAT = "[无效] [%s] %s";
+ protected static final String DELETED_TYPE_FORMAT = "[无效] [%s] %s";
/** label 格式化 */
- String NOT_DELETED_TYPE_FORMAT = "[有效] [%s] %s";
+ protected static final String NOT_DELETED_TYPE_FORMAT = "[有效] [%s] %s";
@Override
public List queryAll() {
@@ -62,10 +63,10 @@ public class DataSourceServiceImpl implements DataSourceService {
if (doInsert(dataSource)) {
DataSourceDO insert = dataSourceMapper.vo2do(dataSource);
dataSourceDAO.insert(insert);
- eventDispatcher.fire(new LogEvent(insert.getUuid(), ModuleTypeEnum.REC_DATA_SOURCE, FastJsonUtils.toJSONString(insert), LogOperatorTypeEnum.CREATE));
+ eventDispatcher.fire(new LogEvent(insert.getUuid(), ModuleTypeEnum.REC_DATA_SOURCE, JSONUtil.toJsonStr(insert), LogOperatorTypeEnum.CREATE));
} else {
dataSourceDAO.update(dataSourceMapper.vo2do(dataSource));
- eventDispatcher.fire(new LogEvent(dataSource.getUuid(), ModuleTypeEnum.REC_DATA_SOURCE, FastJsonUtils.toJSONString(dataSource), LogOperatorTypeEnum.UPDATE));
+ eventDispatcher.fire(new LogEvent(dataSource.getUuid(), ModuleTypeEnum.REC_DATA_SOURCE, JSONUtil.toJsonStr(dataSource), LogOperatorTypeEnum.UPDATE));
}
}
@@ -130,7 +131,7 @@ public class DataSourceServiceImpl implements DataSourceService {
result.setRealResult(context.getRealRetVal());
} else if (realRetVal instanceof Map) {
result.setSuccess(true);
- result.setRealResult(FastJsonUtils.toJSONString(context.getRealRetVal()));
+ result.setRealResult(JSONUtil.toJsonStr(context.getRealRetVal()));
} else {
result.setSuccess(false);
result.setExceptionMessage("脚本执行返回类型为:" + realRetVal.getClass().getName());
diff --git a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/DomainServiceImpl.java b/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/DomainServiceImpl.java
index fd5688c7c4b41fb25e58b90e58a47400b15dcb83..78cc2e64228e7c97f8cc5eeab01da61e4a6ddfcb 100644
--- a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/DomainServiceImpl.java
+++ b/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/DomainServiceImpl.java
@@ -1,5 +1,6 @@
package cn.icanci.rec.admin.biz.service.impl;
+import cn.hutool.json.JSONUtil;
import cn.icanci.rec.admin.biz.event.log.LogEvent;
import cn.icanci.rec.admin.biz.mapper.config.DomainMapper;
import cn.icanci.rec.admin.biz.service.DomainService;
@@ -10,7 +11,6 @@ import cn.icanci.rec.common.enums.LogOperatorTypeEnum;
import cn.icanci.rec.common.enums.ModuleTypeEnum;
import cn.icanci.rec.common.model.TextValue;
import cn.icanci.rec.common.model.config.DomainVO;
-import cn.icanci.rec.common.utils.FastJsonUtils;
import cn.icanci.rec.spi.event.EventDispatcher;
import java.util.List;
@@ -47,10 +47,10 @@ public class DomainServiceImpl implements DomainService {
if (doInsert(domain)) {
DomainDO insert = domainMapper.vo2do(domain);
domainDAO.insert(insert);
- eventDispatcher.fire(new LogEvent(insert.getUuid(), ModuleTypeEnum.REC_DOMAIN, FastJsonUtils.toJSONString(insert), LogOperatorTypeEnum.CREATE));
+ eventDispatcher.fire(new LogEvent(insert.getUuid(), ModuleTypeEnum.REC_DOMAIN, JSONUtil.toJsonStr(insert), LogOperatorTypeEnum.CREATE));
} else {
domainDAO.update(domainMapper.vo2do(domain));
- eventDispatcher.fire(new LogEvent(domain.getUuid(), ModuleTypeEnum.REC_DOMAIN, FastJsonUtils.toJSONString(domain), LogOperatorTypeEnum.UPDATE));
+ eventDispatcher.fire(new LogEvent(domain.getUuid(), ModuleTypeEnum.REC_DOMAIN, JSONUtil.toJsonStr(domain), LogOperatorTypeEnum.UPDATE));
}
}
diff --git a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/MetadataServiceImpl.java b/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/MetadataServiceImpl.java
index b36f1d04b2608dec993684c05892adaec07df88b..7d1f3c5f12dbab13181c4bc03e43ed60a47e9d67 100644
--- a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/MetadataServiceImpl.java
+++ b/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/MetadataServiceImpl.java
@@ -1,5 +1,6 @@
package cn.icanci.rec.admin.biz.service.impl;
+import cn.hutool.json.JSONUtil;
import cn.icanci.rec.admin.biz.event.log.LogEvent;
import cn.icanci.rec.admin.biz.mapper.config.MetadataMapper;
import cn.icanci.rec.admin.biz.service.MetadataService;
@@ -10,7 +11,6 @@ import cn.icanci.rec.common.enums.LogOperatorTypeEnum;
import cn.icanci.rec.common.enums.ModuleTypeEnum;
import cn.icanci.rec.common.model.TextValue;
import cn.icanci.rec.common.model.config.MetadataVO;
-import cn.icanci.rec.common.utils.FastJsonUtils;
import cn.icanci.rec.spi.event.EventDispatcher;
import java.util.List;
@@ -45,10 +45,10 @@ public class MetadataServiceImpl implements MetadataService {
if (doInsert(metadata)) {
MetadataDO insert = metadataMapper.vo2do(metadata);
metadataDAO.insert(insert);
- eventDispatcher.fire(new LogEvent(insert.getUuid(), ModuleTypeEnum.REC_METADATA, FastJsonUtils.toJSONString(insert), LogOperatorTypeEnum.CREATE));
+ eventDispatcher.fire(new LogEvent(insert.getUuid(), ModuleTypeEnum.REC_METADATA, JSONUtil.toJsonStr(insert), LogOperatorTypeEnum.CREATE));
} else {
metadataDAO.update(metadataMapper.vo2do(metadata));
- eventDispatcher.fire(new LogEvent(metadata.getUuid(), ModuleTypeEnum.REC_METADATA, FastJsonUtils.toJSONString(metadata), LogOperatorTypeEnum.UPDATE));
+ eventDispatcher.fire(new LogEvent(metadata.getUuid(), ModuleTypeEnum.REC_METADATA, JSONUtil.toJsonStr(metadata), LogOperatorTypeEnum.UPDATE));
}
}
diff --git a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/StrategyServiceImpl.java b/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/StrategyServiceImpl.java
index 9eb57e0fdff3158be50e591a1c6bceb51095763b..eed88a2f669de6548179ad716bbb4464dd3caca1 100644
--- a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/StrategyServiceImpl.java
+++ b/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/StrategyServiceImpl.java
@@ -1,5 +1,6 @@
package cn.icanci.rec.admin.biz.service.impl;
+import cn.hutool.json.JSONUtil;
import cn.icanci.rec.admin.biz.event.log.LogEvent;
import cn.icanci.rec.admin.biz.mapper.config.StrategyMapper;
import cn.icanci.rec.admin.biz.mapper.config.StrategyVoDtoMapper;
@@ -74,10 +75,10 @@ public class StrategyServiceImpl implements StrategyService {
if (doInsert(strategy)) {
StrategyDO insert = strategyMapper.vo2do(strategy);
strategyDAO.insert(insert);
- eventDispatcher.fire(new LogEvent(insert.getUuid(), ModuleTypeEnum.REC_STRATEGY, FastJsonUtils.toJSONString(insert), LogOperatorTypeEnum.CREATE));
+ eventDispatcher.fire(new LogEvent(insert.getUuid(), ModuleTypeEnum.REC_STRATEGY, JSONUtil.toJsonStr(insert), LogOperatorTypeEnum.CREATE));
} else {
strategyDAO.update(strategyMapper.vo2do(strategy));
- eventDispatcher.fire(new LogEvent(strategy.getUuid(), ModuleTypeEnum.REC_STRATEGY, FastJsonUtils.toJSONString(strategy), LogOperatorTypeEnum.UPDATE));
+ eventDispatcher.fire(new LogEvent(strategy.getUuid(), ModuleTypeEnum.REC_STRATEGY, JSONUtil.toJsonStr(strategy), LogOperatorTypeEnum.UPDATE));
}
}
@@ -140,7 +141,7 @@ public class StrategyServiceImpl implements StrategyService {
// 9.构建执行返回结果
result.setSuccess(execute.isSuccess());
result.setRetValue(execute.getResult());
- result.setExecutorParam(FastJsonUtils.toJSONString(execute.getBindings()));
+ result.setExecutorParam(JSONUtil.toJsonStr(execute.getBindings()));
result.setExceptionMessage(execute.isSuccess() ? StringUtils.EMPTY : execute.getErrorMessage());
} catch (Throwable e) {
result.setSuccess(false);
diff --git a/rec-admin/rec-admin-biz/src/test/java/cn/icanci/rec/admin/biz/test/HutoolTest.java b/rec-admin/rec-admin-biz/src/test/java/cn/icanci/rec/admin/biz/test/HutoolTest.java
new file mode 100644
index 0000000000000000000000000000000000000000..918ba0f7f39e526d40c5833ff8f96d2713dd6142
--- /dev/null
+++ b/rec-admin/rec-admin-biz/src/test/java/cn/icanci/rec/admin/biz/test/HutoolTest.java
@@ -0,0 +1,31 @@
+package cn.icanci.rec.admin.biz.test;
+import cn.hutool.json.JSONUtil;
+import cn.icanci.rec.common.model.config.DomainVO;
+
+import java.util.Date;
+
+import org.junit.Test;
+
+/**
+ * @author icanci
+ * @since 1.0 Created in 2022/12/01 08:50
+ */
+public class HutoolTest {
+ @Test
+ public void testJsonUtil(){
+ DomainVO domainVO = new DomainVO();
+ domainVO.setDomainName("");
+ domainVO.setDomainCode("");
+ domainVO.setId("");
+ domainVO.setUuid("");
+ domainVO.setDesc("");
+ domainVO.setCreateTime(new Date());
+ domainVO.setUpdateTime(new Date());
+ domainVO.setIsDelete(0);
+ domainVO.setEnv("");
+ String json = JSONUtil.toJsonStr(domainVO);
+ System.out.println(json);
+ DomainVO domainVO1 = JSONUtil.toBean(json, DomainVO.class);
+ System.out.println(domainVO1);
+ }
+}
diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/IDHolder.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/IDHolder.java
index f211addfef1322607807c7d4922a337fec4054fb..a3719d64f29d7753d2b7ed06204c17ab005049d8 100644
--- a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/IDHolder.java
+++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/IDHolder.java
@@ -25,7 +25,7 @@ public class IDHolder {
* @return id
*/
public static String generateNoBySnowFlake(String prefix) {
- return idGeneratorService.generateNoBySnowFlake(prefix);
+ return idGeneratorService.generateBySnowFlake(prefix);
}
/**
@@ -34,7 +34,7 @@ public class IDHolder {
* @return id
*/
public static String generateNoBySnowFlakeDefaultPrefix() {
- return idGeneratorService.generateNoBySnowFlake(DEFAULT_PREFIX);
+ return idGeneratorService.generateBySnowFlake(DEFAULT_PREFIX);
}
}
diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/service/IDGeneratorService.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/service/IDGeneratorService.java
index 610f20557b7550f31996f4a58f8a17bdb192ebbc..343149ff5ff0664d20632b285bbb92b7ceb302e3 100644
--- a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/service/IDGeneratorService.java
+++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/service/IDGeneratorService.java
@@ -11,5 +11,5 @@ public interface IDGeneratorService {
* @param prefix 前缀
* @return id
*/
- String generateNoBySnowFlake(String prefix);
+ String generateBySnowFlake(String prefix);
}
diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/service/SnowFlake.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/service/SnowFlake.java
deleted file mode 100644
index 10bdd65c57e56563ad3253fef94e3f13643d8aee..0000000000000000000000000000000000000000
--- a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/service/SnowFlake.java
+++ /dev/null
@@ -1,108 +0,0 @@
-package cn.icanci.rec.admin.dal.utils.service;
-
-/**
- * id生成器-雪花算法
- *
- * snowflake的结构如下(每部分用-分开):
- * 0 - 0000000000 0000000000 0000000000 0000000000 0 - 00000 - 00000 - 000000000000
- * 第一位为未使用,接下来的41位为毫秒级时间(41位的长度可以使用69年),然后是5位datacenterId和5位workerId(10位的长度最多支持部署1024个节点) ,最后12位是毫秒内的计数(12位的计数顺序号支持每个节点每毫秒产生4096个ID序号)
- * 一共加起来刚好64位,为一个Long型。(转换成字符串长度为18)
- * snowflake生成的ID整体上按照时间自增排序,并且整个分布式系统内不会产生ID碰撞(由datacenter和workerId作区分),并且效率较高。据说:snowflake每秒能够产生26万个ID。
- *
- * @author icanci
- * @since 1.0 Created in 2022/10/30 07:04
- */
-public class SnowFlake {
- /** 起始的时间戳 */
- private static final long START_STAMP = 1480166465631L;
-
- /** 序列号占用的位数 */
- private static final long SEQUENCE_BIT = 12;
-
- /** 机器标识占用的位数 */
- private static final long MACHINE_BIT = 5;
-
- /** 数据中心占用的位数 */
- private static final long DATACENTER_BIT = 5;
-
- /** 每一部分的最大值 */
- private static final long MAX_DATACENTER_NUM = ~(-1L << DATACENTER_BIT);
-
- private static final long MAX_MACHINE_NUM = ~(-1L << MACHINE_BIT);
-
- private static final long MAX_SEQUENCE = ~(-1L << SEQUENCE_BIT);
-
- /** 每一部分向左的位移 */
- private static final long MACHINE_LEFT = SEQUENCE_BIT;
-
- private static final long DATACENTER_LEFT = SEQUENCE_BIT + MACHINE_BIT;
-
- private static final long TIMESTAMP_LEFT = DATACENTER_LEFT + DATACENTER_BIT;
-
- /** 数据中心 */
- private final long datacenterId;
-
- /** 机器标识 */
- private final long machineId;
-
- /** 序列号 */
- private long sequence = 0L;
-
- /** 上一次时间戳 */
- private long lastStamp = -1L;
-
- public SnowFlake(long datacenterId, long machineId) {
- if (datacenterId > MAX_DATACENTER_NUM || datacenterId < 0) {
- throw new IllegalArgumentException("datacenterId can't be greater than MAX_DATACENTER_NUM or less than 0");
- }
- if (machineId > MAX_MACHINE_NUM || machineId < 0) {
- throw new IllegalArgumentException("machineId can't be greater than MAX_MACHINE_NUM or less than 0");
- }
- this.datacenterId = datacenterId;
- this.machineId = machineId;
- }
-
- /**
- * 产生下一个ID
- *
- * @return 下一个ID
- */
- public synchronized long nextId() {
- long currStamp = getNewStamp();
- if (currStamp < lastStamp) {
- throw new RuntimeException("Clock moved backwards. Refusing to generate id");
- }
- if (currStamp == lastStamp) {
- //相同毫秒内,序列号自增
- sequence = (sequence + 1) & MAX_SEQUENCE;
- //同一毫秒的序列数已经达到最大
- if (sequence == 0L) {
- currStamp = getNextMill();
- }
- } else {
- //不同毫秒内,序列号置为0
- sequence = 0L;
- }
- lastStamp = currStamp;
- return //时间戳部分
- (currStamp - START_STAMP) << TIMESTAMP_LEFT
- //数据中心部分
- | datacenterId << DATACENTER_LEFT
- //机器标识部分
- | machineId << MACHINE_LEFT
- //序列号部分
- | sequence;
- }
-
- private long getNextMill() {
- long mill = getNewStamp();
- while (mill <= lastStamp) {
- mill = getNewStamp();
- }
- return mill;
- }
-
- private long getNewStamp() {
- return System.currentTimeMillis();
- }
-}
\ No newline at end of file
diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/service/impl/IDGeneratorServiceImpl.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/service/impl/IDGeneratorServiceImpl.java
index 1548f8eb9b4267759fea11c20e324abc37e1a9ba..02e3f2c199afd4c07ba487175eac52c565e12c04 100644
--- a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/service/impl/IDGeneratorServiceImpl.java
+++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/service/impl/IDGeneratorServiceImpl.java
@@ -1,13 +1,13 @@
package cn.icanci.rec.admin.dal.utils.service.impl;
-import cn.icanci.rec.admin.dal.utils.IDHolder;
-import cn.icanci.rec.admin.dal.utils.service.IDGeneratorService;
-import cn.icanci.rec.admin.dal.utils.service.SnowFlake;
-
import org.apache.commons.lang3.RandomUtils;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.stereotype.Service;
+import cn.hutool.core.lang.Snowflake;
+import cn.icanci.rec.admin.dal.utils.IDHolder;
+import cn.icanci.rec.admin.dal.utils.service.IDGeneratorService;
+
/**
* 分布式ID生成器
*
@@ -17,10 +17,10 @@ import org.springframework.stereotype.Service;
@Service
public class IDGeneratorServiceImpl implements IDGeneratorService, InitializingBean {
/** 雪花序列号生成算法 */
- private final static SnowFlake SNOW_FLAKE = new SnowFlake(RandomUtils.nextInt(1, 9), RandomUtils.nextInt(1, 9));
+ private static final Snowflake SNOW_FLAKE = new Snowflake(RandomUtils.nextInt(1, 9), RandomUtils.nextInt(1, 9));
@Override
- public String generateNoBySnowFlake(String prefix) {
+ public String generateBySnowFlake(String prefix) {
return prefix + SNOW_FLAKE.nextId();
}
diff --git a/rec-common/src/main/java/cn/icanci/rec/common/utils/DateFormatDeserializer.java b/rec-common/src/main/java/cn/icanci/rec/common/utils/DateFormatDeserializer.java
deleted file mode 100644
index 5feaa0a605a702af626641f99812fc3ddd671e46..0000000000000000000000000000000000000000
--- a/rec-common/src/main/java/cn/icanci/rec/common/utils/DateFormatDeserializer.java
+++ /dev/null
@@ -1,76 +0,0 @@
-package cn.icanci.rec.common.utils;
-
-import java.lang.reflect.Type;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-
-import com.alibaba.fastjson.JSONException;
-import com.alibaba.fastjson.parser.DefaultJSONParser;
-import com.alibaba.fastjson.parser.JSONToken;
-import com.alibaba.fastjson.parser.deserializer.AbstractDateDeserializer;
-
-/**
- * @author icanci
- * @since 1.0 Created in 2022/11/13 20:26
- */
-public class DateFormatDeserializer extends AbstractDateDeserializer {
- /** 日期格式*/
- private String format;
-
- /**
- *
- * @param format
- */
- public DateFormatDeserializer(String format) {
- super();
- this.format = format;
- }
-
- @Override
- public int getFastMatchToken() {
- return JSONToken.LITERAL_INT;
- }
-
- /**
- * @see com.alibaba.fastjson.parser.deserializer.DateFormatDeserializer#cast(com.alibaba.fastjson.parser.DefaultJSONParser, java.lang.reflect.Type, java.lang.Object, java.lang.Object)
- */
- @SuppressWarnings("unchecked")
- @Override
- protected Date cast(DefaultJSONParser parser, Type clazz, Object fieldName, Object val) {
- if (format == null) {
- format = "yyyy-MM-dd HH:mm:ss";
- }
- if (val instanceof String) {
- String strVal = (String) val;
- if (strVal.length() == 0) {
- return null;
- }
-
- try {
- return (Date) new SimpleDateFormat(format).parse((String) val);
- } catch (ParseException e) {
- throw new JSONException("parse error");
- }
- }
- throw new JSONException("parse error");
- }
-
- /**
- * Getter method for property myFormat.
- *
- * @return property value of myFormat
- */
- public String getMyFormat() {
- return format;
- }
-
- /**
- * Setter method for property myFormat.
- *
- * @param myFormat value to be assigned to property myFormat
- */
- public void setMyFormat(String myFormat) {
- this.format = myFormat;
- }
-
-}
diff --git a/rec-common/src/main/java/cn/icanci/rec/common/utils/DateUtils.java b/rec-common/src/main/java/cn/icanci/rec/common/utils/DateUtils.java
index 69ef64ba943b41c207200175bac7cb1a2d75ef21..9eccbae1b16d919fca5c535092932b956ad87d1a 100644
--- a/rec-common/src/main/java/cn/icanci/rec/common/utils/DateUtils.java
+++ b/rec-common/src/main/java/cn/icanci/rec/common/utils/DateUtils.java
@@ -1,9 +1,8 @@
package cn.icanci.rec.common.utils;
-import java.math.BigDecimal;
-import java.text.ParseException;
-import java.text.SimpleDateFormat;
-import java.util.*;
+import cn.hutool.core.date.DateUtil;
+
+import java.util.Date;
import org.apache.commons.lang3.StringUtils;
@@ -15,133 +14,78 @@ import org.apache.commons.lang3.StringUtils;
* @since 1.0 Created in 2022/11/16 23:06
*/
public final class DateUtils {
- /** YYYY */
- public final static String YYYY = "yyyy";
- /** MM_DD */
- public final static String MM_DD = "MM-dd";
+ public enum FormatType {
+ /** YYYY */
+ YYYY("yyyy"),
+
+ /** MM_DD */
+ MM_DD("MM-dd"),
+
+ /** HH_MM */
+ HH_MM("HH:mm"),
+
+ /** HH_MM_SS */
+ HH_MM_SS("HH:mm:ss"),
- /** HH_MM_SS */
- public final static String HH_MM = "HH:mm";
+ /** YYYY_MM */
+ YYYY_MM("yyyy-MM"),
- /** HH_MM_SS */
- public final static String HH_MM_SS = "HH:mm:ss";
+ /** YYYY_MM_DD */
+ YYYY_MM_DD("yyyy-MM-dd"),
- /** YYYY_MM */
- public static final String YYYY_MM = "yyyy-MM";
+ /** YYYY_MM_DD_HH */
+ YYYY_MM_DD_HH("yyyy-MM-dd HH"),
- /** YYYY_MM_DD */
- public static final String YYYY_MM_DD = "yyyy-MM-dd";
+ /** YYYY_MM_DD_HH_MM */
+ YYYY_MM_DD_HH_MM("yyyy-MM-dd HH:mm"),
- /** YYYY_MM_DD_HH */
- public final static String YYYY_MM_DD_HH = "yyyy-MM-dd HH";
+ /** YYYY_MM_DD_HH_MM_SS */
+ YYYY_MM_DD_HH_MM_SS("yyyy-MM-dd HH:mm:ss"),
- /** YYYY_MM_DD_HH_MM */
- public final static String YYYY_MM_DD_HH_MM = "yyyy-MM-dd HH:mm";
+ ;
- /** YYYY_MM_DD_HH_MM_SS */
- public final static String YYYY_MM_DD_HH_MM_SS = "yyyy-MM-dd HH:mm:ss";
+ private final String code;
- /** 本地线程日期格式 */
- private final static ThreadLocal