From ef04b570bf13e1437cb29f3d760e8de9a11e890d Mon Sep 17 00:00:00 2001 From: icanci Date: Fri, 11 Nov 2022 14:08:32 +0800 Subject: [PATCH 1/5] dao --- .../dal/mongodb/daointerface/BaseDataDAO.java | 22 ++++++++++++++++++ .../mongodb/daointerface/DataSourceDAO.java | 22 ++++++++++++++++++ .../mongodb/daointerface/LogOperateDAO.java | 23 +++++++++++++++++++ .../dal/mongodb/daointerface/MetadataDAO.java | 22 ++++++++++++++++++ .../dal/mongodb/daointerface/SceneDAO.java | 22 ++++++++++++++++++ 5 files changed, 111 insertions(+) create mode 100644 rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/BaseDataDAO.java create mode 100644 rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/DataSourceDAO.java create mode 100644 rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/LogOperateDAO.java create mode 100644 rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/MetadataDAO.java create mode 100644 rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/SceneDAO.java diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/BaseDataDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/BaseDataDAO.java new file mode 100644 index 0000000..ac9b99d --- /dev/null +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/BaseDataDAO.java @@ -0,0 +1,22 @@ +package cn.icanci.rec.admin.dal.mongodb.daointerface; + +import cn.icanci.rec.admin.dal.mongodb.dateobject.BaseDataDO; + +/** + * @author icanci + * @since 1.0 Created in 2022/11/11 14:02 + */ +public interface BaseDataDAO extends BaseDAO { + /** + * 文档对应的名字 + */ + String COLLECTION_NAME = "rec-basedata"; + /** + * 文档对应的Class + */ + Class COLLECTION_CLASS = BaseDataDO.class; + + interface BaseDataColumn extends BaseColumn { + + } +} diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/DataSourceDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/DataSourceDAO.java new file mode 100644 index 0000000..14b1277 --- /dev/null +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/DataSourceDAO.java @@ -0,0 +1,22 @@ +package cn.icanci.rec.admin.dal.mongodb.daointerface; + +import cn.icanci.rec.admin.dal.mongodb.dateobject.DataSourceDO; + +/** + * @author icanci + * @since 1.0 Created in 2022/11/11 14:04 + */ +public interface DataSourceDAO extends BaseDAO { + /** + * 文档对应的名字 + */ + String COLLECTION_NAME = "rec-dataSource"; + /** + * 文档对应的Class + */ + Class COLLECTION_CLASS = DataSourceDO.class; + + interface DataSourceColumn extends BaseColumn { + + } +} diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/LogOperateDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/LogOperateDAO.java new file mode 100644 index 0000000..5099e2b --- /dev/null +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/LogOperateDAO.java @@ -0,0 +1,23 @@ +package cn.icanci.rec.admin.dal.mongodb.daointerface; + +import cn.icanci.rec.admin.dal.mongodb.dateobject.DomainDO; +import cn.icanci.rec.admin.dal.mongodb.dateobject.LogOperateDO; + +/** + * @author icanci + * @since 1.0 Created in 2022/11/11 14:05 + */ +public interface LogOperateDAO extends BaseDAO { + /** + * 文档对应的名字 + */ + String COLLECTION_NAME = "rec-log"; + /** + * 文档对应的Class + */ + Class COLLECTION_CLASS = LogOperateDO.class; + + interface LogColumn extends BaseColumn { + + } +} diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/MetadataDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/MetadataDAO.java new file mode 100644 index 0000000..4175c61 --- /dev/null +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/MetadataDAO.java @@ -0,0 +1,22 @@ +package cn.icanci.rec.admin.dal.mongodb.daointerface; + +import cn.icanci.rec.admin.dal.mongodb.dateobject.MetadataDO; + +/** + * @author icanci + * @since 1.0 Created in 2022/11/11 14:06 + */ +public interface MetadataDAO extends BaseDAO { + /** + * 文档对应的名字 + */ + String COLLECTION_NAME = "rec-metadata"; + /** + * 文档对应的Class + */ + Class COLLECTION_CLASS = MetadataDO.class; + + interface LogColumn extends BaseColumn { + + } +} diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/SceneDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/SceneDAO.java new file mode 100644 index 0000000..14ed7f3 --- /dev/null +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/SceneDAO.java @@ -0,0 +1,22 @@ +package cn.icanci.rec.admin.dal.mongodb.daointerface; + +import cn.icanci.rec.admin.dal.mongodb.dateobject.SceneDO; + +/** + * @author icanci + * @since 1.0 Created in 2022/11/11 14:07 + */ +public interface SceneDAO extends BaseDAO { + /** + * 文档对应的名字 + */ + String COLLECTION_NAME = "rec-scene"; + /** + * 文档对应的Class + */ + Class COLLECTION_CLASS = SceneDO.class; + + interface LogColumn extends BaseColumn { + + } +} -- Gitee From f3e66b30750275494a853cbf6c9057b7a5845fc2 Mon Sep 17 00:00:00 2001 From: icanci Date: Fri, 11 Nov 2022 14:16:56 +0800 Subject: [PATCH 2/5] MongoDomainDAO --- .../dal/mongodb/daointerface/DomainDAO.java | 3 +- .../dal/mongodb/mongo/MongoDomainDAO.java | 44 ++++++++++++++++--- 2 files changed, 41 insertions(+), 6 deletions(-) diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/DomainDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/DomainDAO.java index 9de7592..b45562f 100644 --- a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/DomainDAO.java +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/DomainDAO.java @@ -17,6 +17,7 @@ public interface DomainDAO extends BaseDAO { Class COLLECTION_CLASS = DomainDO.class; interface DomainColumn extends BaseColumn { - + String domainCode = "domainCode"; + String domainName = "domainName"; } } diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoDomainDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoDomainDAO.java index 9ceaa88..05e5ef2 100644 --- a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoDomainDAO.java +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoDomainDAO.java @@ -5,11 +5,14 @@ import cn.icanci.rec.admin.dal.mongodb.daointerface.DomainDAO; import cn.icanci.rec.admin.dal.mongodb.dateobject.DomainDO; import java.util.List; +import java.util.UUID; +import org.apache.commons.lang3.StringUtils; +import org.springframework.data.domain.Sort; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; import org.springframework.stereotype.Service; -import com.google.common.collect.Lists; - /** * @author icanci * @since 1.0 Created in 2022/10/30 15:15 @@ -17,18 +20,49 @@ import com.google.common.collect.Lists; @Service("domainDAO") public class MongoDomainDAO extends AbstractBaseDAO implements DomainDAO { + @Override + public void insert(DomainDO domainDO) { + super.insert(domainDO); + domainDO.setUuid(UUID.randomUUID().toString()); + mongoTemplate.insert(domainDO, COLLECTION_NAME); + } + + @Override + public void update(DomainDO domainDO) { + super.update(domainDO); + mongoTemplate.save(domainDO, COLLECTION_NAME); + } + @Override public List queryAll() { - return Lists.newArrayList(); + Criteria criteria = Criteria.where(DomainColumn.env).is(DEFAULT_ENV); + Query query = new Query(criteria); + return mongoTemplate.find(query, COLLECTION_CLASS, COLLECTION_NAME); } @Override public PageList pageQuery(DomainDO domainDO, int pageNum, int pageSize) { - return null; + Criteria criteria = Criteria.where(DomainColumn.env).is(DEFAULT_ENV); + if (StringUtils.isNotBlank(domainDO.getDomainName())) { + // 不分区大小写查询,其中操作符"i":表示不分区大小写 + criteria.and(DomainColumn.domainName).regex("^.*" + domainDO.getDomainName() + ".*$", "i"); + } + if (StringUtils.isNotBlank(domainDO.getDomainCode())) { + // 不分区大小写查询,其中操作符"i":表示不分区大小写 + criteria.and(DomainColumn.domainCode).regex("^.*" + domainDO.getDomainCode() + ".*$", "i"); + } + + Query query = new Query(criteria); + query.with(Sort.by(Sort.Direction.DESC, DomainColumn.createTime)); + + return pageQuery(query, COLLECTION_CLASS, pageSize, pageNum, COLLECTION_NAME); } @Override public DomainDO queryOneById(String _id) { - return null; + Criteria criteria = Criteria.where(DomainColumn._id).is(_id); + criteria.and(DomainColumn.env).is(DEFAULT_ENV); + Query query = new Query(criteria); + return mongoTemplate.findOne(query, COLLECTION_CLASS, COLLECTION_NAME); } } -- Gitee From 57049f6076b7e458a73e0ad1082c968e5f5a088b Mon Sep 17 00:00:00 2001 From: icanci Date: Fri, 11 Nov 2022 14:20:42 +0800 Subject: [PATCH 3/5] MongoDomainDAO and idholder --- .../rec/admin/dal/mongodb/mongo/AbstractBaseDAO.java | 2 ++ .../rec/admin/dal/mongodb/mongo/MongoDomainDAO.java | 2 -- .../rec/admin/dal/utils}/IDGeneratorService.java | 2 +- .../rec/admin/dal/utils}/IDGeneratorServiceImpl.java | 6 +----- .../java/cn/icanci/rec/admin/dal}/utils/IDHolder.java | 11 +++++------ .../cn/icanci/rec/admin/dal}/utils/SnowFlake.java | 2 +- 6 files changed, 10 insertions(+), 15 deletions(-) rename rec-admin/{rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service => rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils}/IDGeneratorService.java (85%) rename rec-admin/{rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl => rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils}/IDGeneratorServiceImpl.java (78%) rename rec-admin/{rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz => rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal}/utils/IDHolder.java (84%) rename rec-admin/{rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz => rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal}/utils/SnowFlake.java (99%) diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/AbstractBaseDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/AbstractBaseDAO.java index 28746d2..27e85be 100644 --- a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/AbstractBaseDAO.java +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/AbstractBaseDAO.java @@ -2,6 +2,7 @@ package cn.icanci.rec.admin.dal.mongodb.mongo; import cn.icanci.rec.admin.dal.mongodb.daointerface.BaseDAO; import cn.icanci.rec.admin.dal.mongodb.dateobject.BaseDO; +import cn.icanci.rec.admin.dal.utils.IDHolder; import java.util.Date; @@ -21,6 +22,7 @@ public abstract class AbstractBaseDAO extends MongoPageHelper t.setCreateTime(new Date()); t.setCreateTime(new Date()); t.setEnv(DEFAULT_ENV); + t.setUuid(IDHolder.generateNoBySnowFlakeDefaultPrefix()); } @Override diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoDomainDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoDomainDAO.java index 05e5ef2..decfe34 100644 --- a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoDomainDAO.java +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoDomainDAO.java @@ -5,7 +5,6 @@ import cn.icanci.rec.admin.dal.mongodb.daointerface.DomainDAO; import cn.icanci.rec.admin.dal.mongodb.dateobject.DomainDO; import java.util.List; -import java.util.UUID; import org.apache.commons.lang3.StringUtils; import org.springframework.data.domain.Sort; @@ -23,7 +22,6 @@ public class MongoDomainDAO extends AbstractBaseDAO implements DomainD @Override public void insert(DomainDO domainDO) { super.insert(domainDO); - domainDO.setUuid(UUID.randomUUID().toString()); mongoTemplate.insert(domainDO, COLLECTION_NAME); } diff --git a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/IDGeneratorService.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/IDGeneratorService.java similarity index 85% rename from rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/IDGeneratorService.java rename to rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/IDGeneratorService.java index cb796cb..331f5a0 100644 --- a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/IDGeneratorService.java +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/IDGeneratorService.java @@ -1,4 +1,4 @@ -package cn.icanci.rec.admin.biz.service; +package cn.icanci.rec.admin.dal.utils; /** * @author icanci diff --git a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/IDGeneratorServiceImpl.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/IDGeneratorServiceImpl.java similarity index 78% rename from rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/IDGeneratorServiceImpl.java rename to rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/IDGeneratorServiceImpl.java index 67cf097..5357261 100644 --- a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/service/impl/IDGeneratorServiceImpl.java +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/IDGeneratorServiceImpl.java @@ -1,8 +1,4 @@ -package cn.icanci.rec.admin.biz.service.impl; - -import cn.icanci.rec.admin.biz.service.IDGeneratorService; -import cn.icanci.rec.admin.biz.utils.IDHolder; -import cn.icanci.rec.admin.biz.utils.SnowFlake; +package cn.icanci.rec.admin.dal.utils; import org.apache.commons.lang3.RandomUtils; import org.springframework.beans.factory.InitializingBean; diff --git a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/utils/IDHolder.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/IDHolder.java similarity index 84% rename from rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/utils/IDHolder.java rename to rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/IDHolder.java index d2bb95f..474f973 100644 --- a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/utils/IDHolder.java +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/IDHolder.java @@ -1,12 +1,10 @@ -package cn.icanci.rec.admin.biz.utils; - -import cn.icanci.rec.admin.biz.service.IDGeneratorService; +package cn.icanci.rec.admin.dal.utils; /** - * id生成器 + * Id 生成器 * * @author icanci - * @since 1.0 Created in 2022/10/30 07:04 + * @since 1.0 Created in 2022/11/11 14:18 */ public class IDHolder { /** 分布式id服务 */ @@ -36,4 +34,5 @@ public class IDHolder { public static String generateNoBySnowFlakeDefaultPrefix() { return idGeneratorService.generateNoBySnowFlake(DEFAULT_PREFIX); } -} \ No newline at end of file + +} diff --git a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/utils/SnowFlake.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/SnowFlake.java similarity index 99% rename from rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/utils/SnowFlake.java rename to rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/SnowFlake.java index 3159918..7a079c7 100644 --- a/rec-admin/rec-admin-biz/src/main/java/cn/icanci/rec/admin/biz/utils/SnowFlake.java +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/utils/SnowFlake.java @@ -1,4 +1,4 @@ -package cn.icanci.rec.admin.biz.utils; +package cn.icanci.rec.admin.dal.utils; /** * id生成器-雪花算法 -- Gitee From 1a72774e91a97c9c2915a2e4820cc1357f9c94cd Mon Sep 17 00:00:00 2001 From: icanci Date: Fri, 11 Nov 2022 14:32:32 +0800 Subject: [PATCH 4/5] MongoStrategyDAO --- .../cn/icanci/rec/admin/dal/mongodb/MongoConnection.java | 3 +++ .../rec/admin/dal/mongodb/mongo/MongoStrategyDAO.java | 8 +++++++- 2 files changed, 10 insertions(+), 1 deletion(-) diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/MongoConnection.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/MongoConnection.java index 7cdca97..11085bd 100644 --- a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/MongoConnection.java +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/MongoConnection.java @@ -9,9 +9,12 @@ import org.apache.commons.lang3.StringUtils; import com.mongodb.*; /** + * 废弃,因为使用了启动器,自动bean注册,无需手动注册bean + * * @author icanci(1205068) * @version Id: MongoConnection, v 0.1 2022/10/29 21:19 icanci Exp $ */ +@Deprecated public class MongoConnection extends MongoClient { /** * 创建单片无账号密码客户端 diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoStrategyDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoStrategyDAO.java index ce27cde..7c582f1 100644 --- a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoStrategyDAO.java +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoStrategyDAO.java @@ -6,6 +6,7 @@ import cn.icanci.rec.admin.dal.mongodb.dateobject.StrategyDO; import java.util.List; +import org.springframework.data.domain.Sort; import org.springframework.data.mongodb.core.query.Criteria; import org.springframework.data.mongodb.core.query.Query; import org.springframework.stereotype.Service; @@ -20,11 +21,13 @@ public class MongoStrategyDAO extends AbstractBaseDAO implements Str @Override public void insert(StrategyDO strategyDO) { super.insert(strategyDO); + mongoTemplate.insert(strategyDO, COLLECTION_NAME); } @Override public void update(StrategyDO strategyDO) { super.update(strategyDO); + mongoTemplate.save(strategyDO, COLLECTION_NAME); } @Override @@ -36,7 +39,10 @@ public class MongoStrategyDAO extends AbstractBaseDAO implements Str @Override public PageList pageQuery(StrategyDO strategyDO, int pageNum, int pageSize) { - return null; + Criteria criteria = Criteria.where(StrategyColumn.env).is(DEFAULT_ENV); + Query query = new Query(criteria); + query.with(Sort.by(Sort.Direction.DESC, StrategyColumn.createTime)); + return pageQuery(query, COLLECTION_CLASS, pageSize, pageNum, COLLECTION_NAME); } @Override -- Gitee From c5bcbdbb577028c84380bbd3df01549c51a48ca7 Mon Sep 17 00:00:00 2001 From: icanci Date: Fri, 11 Nov 2022 15:46:59 +0800 Subject: [PATCH 5/5] MongoBaseDataDAO --- .../dal/mongodb/daointerface/BaseDataDAO.java | 27 +++++++- .../dal/mongodb/daointerface/DomainDAO.java | 6 ++ .../dal/mongodb/daointerface/StrategyDAO.java | 25 ++++++- .../dal/mongodb/mongo/MongoBaseDataDAO.java | 67 +++++++++++++++++++ 4 files changed, 123 insertions(+), 2 deletions(-) create mode 100644 rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoBaseDataDAO.java diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/BaseDataDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/BaseDataDAO.java index ac9b99d..2711b29 100644 --- a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/BaseDataDAO.java +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/BaseDataDAO.java @@ -17,6 +17,31 @@ public interface BaseDataDAO extends BaseDAO { Class COLLECTION_CLASS = BaseDataDO.class; interface BaseDataColumn extends BaseColumn { - + /** + * 域Code + */ + String domainCode = "domainCode"; + /** + * 基础数据名称 + */ + String fieldName = "fieldName"; + /** + * 数据类型(布尔、字符串、数值、日期、元数据等) + */ + String dataType = "dataType"; + /** + * 脚本执行类型 + */ + String scriptType = "scriptType"; + /** + * 脚本内容 + */ + String scriptContent = "scriptContent"; + /** + * TODO 是否有必要 + * 脚本执行返回类型(只能是基本数据类型) + */ + @Deprecated + String resultType = "resultType"; } } diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/DomainDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/DomainDAO.java index b45562f..e9227c4 100644 --- a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/DomainDAO.java +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/DomainDAO.java @@ -17,7 +17,13 @@ public interface DomainDAO extends BaseDAO { Class COLLECTION_CLASS = DomainDO.class; interface DomainColumn extends BaseColumn { + /** + * 域Code + */ String domainCode = "domainCode"; + /** + * 域name + */ String domainName = "domainName"; } } diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/StrategyDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/StrategyDAO.java index f5f7283..2a4e4d0 100644 --- a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/StrategyDAO.java +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/daointerface/StrategyDAO.java @@ -19,6 +19,29 @@ public interface StrategyDAO extends BaseDAO { Class COLLECTION_CLASS = StrategyDO.class; interface StrategyColumn extends BaseColumn { - + /** + * 域Code + */ + String domainCode = "domainCode"; + /** + * 场景Code + */ + String sceneCode = "sceneCode"; + /** + * 策略组名称 + */ + String strategyName = "strategyName"; + /** + * 数据源类型(脚本、接口、SQL) + */ + String dataSourceType = "dataSourceType"; + /** + * 数据源关联Code + */ + String dataSourceCode = "dataSourceCode"; + /** + * 规则配置类型(默认为List) + */ + String ruleType = "ruleType"; } } \ No newline at end of file diff --git a/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoBaseDataDAO.java b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoBaseDataDAO.java new file mode 100644 index 0000000..d9e2e68 --- /dev/null +++ b/rec-admin/rec-admin-dal/src/main/java/cn/icanci/rec/admin/dal/mongodb/mongo/MongoBaseDataDAO.java @@ -0,0 +1,67 @@ +package cn.icanci.rec.admin.dal.mongodb.mongo; + +import cn.icanci.rec.admin.dal.mongodb.common.PageList; +import cn.icanci.rec.admin.dal.mongodb.daointerface.BaseDataDAO; +import cn.icanci.rec.admin.dal.mongodb.dateobject.BaseDataDO; + +import java.util.List; + +import org.apache.commons.lang3.StringUtils; +import org.springframework.data.domain.Sort; +import org.springframework.data.mongodb.core.query.Criteria; +import org.springframework.data.mongodb.core.query.Query; +import org.springframework.stereotype.Service; + +/** + * @author icanci + * @since 1.0 Created in 2022/11/11 14:59 + */ +@Service("baseDataDAO") +public class MongoBaseDataDAO extends AbstractBaseDAO implements BaseDataDAO { + + @Override + public void insert(BaseDataDO baseDataDO) { + super.insert(baseDataDO); + mongoTemplate.insert(baseDataDO, COLLECTION_NAME); + } + + @Override + public void update(BaseDataDO baseDataDO) { + super.update(baseDataDO); + mongoTemplate.save(baseDataDO, COLLECTION_NAME); + } + + @Override + public List queryAll() { + Criteria criteria = Criteria.where(BaseDataColumn.env).is(DEFAULT_ENV); + Query query = new Query(criteria); + return mongoTemplate.find(query, COLLECTION_CLASS, COLLECTION_NAME); + + } + + @Override + public PageList pageQuery(BaseDataDO baseDataDO, int pageNum, int pageSize) { + Criteria criteria = Criteria.where(BaseDataColumn.env).is(DEFAULT_ENV); + + // TODO 查询参数与页面确认 + if (StringUtils.isNotBlank(baseDataDO.getDomainCode())) { + // 不分区大小写查询,其中操作符"i":表示不分区大小写 + criteria.and(BaseDataColumn.domainCode).regex("^.*" + baseDataDO.getDomainCode() + ".*$", "i"); + } + + Query query = new Query(criteria); + query.with(Sort.by(Sort.Direction.DESC, BaseDataColumn.createTime)); + + return pageQuery(query, COLLECTION_CLASS, pageSize, pageNum, COLLECTION_NAME); + + } + + @Override + public BaseDataDO queryOneById(String _id) { + Criteria criteria = Criteria.where(BaseDataColumn._id).is(_id); + criteria.and(BaseDataColumn.env).is(DEFAULT_ENV); + Query query = new Query(criteria); + return mongoTemplate.findOne(query, COLLECTION_CLASS, COLLECTION_NAME); + + } +} -- Gitee