From fac5d01bfcddfc8edef0a5fd3d401b1fe383fe16 Mon Sep 17 00:00:00 2001 From: admin <weikou2014> Date: 星期二, 29 三月 2022 16:48:15 +0800 Subject: [PATCH] 采用配置文件自动化生成代码 --- src/main/java/org/yeshi/utils/generater/vo/dao/MongoDBDaoVO.java | 45 ++++++++++++++++++++++++++++++++++++--------- 1 files changed, 36 insertions(+), 9 deletions(-) diff --git a/src/main/java/org/yeshi/utils/generater/vo/dao/MongoDBDaoVO.java b/src/main/java/org/yeshi/utils/generater/vo/dao/MongoDBDaoVO.java index 9bc53a3..159938f 100644 --- a/src/main/java/org/yeshi/utils/generater/vo/dao/MongoDBDaoVO.java +++ b/src/main/java/org/yeshi/utils/generater/vo/dao/MongoDBDaoVO.java @@ -5,6 +5,8 @@ import org.yeshi.utils.StringUtil; import org.yeshi.utils.generater.annotation.admin.DaoQueryCondition; import org.yeshi.utils.generater.entity.*; +import org.yeshi.utils.generater.vo.xmlconfig.dao.DaoData; +import org.yeshi.utils.generater.vo.xmlconfig.dao.DaoQuery; import java.lang.annotation.Annotation; import java.lang.reflect.Field; @@ -31,6 +33,8 @@ private Class entity; private ClassInfo dao; + private DaoData daoData; + public Builder setBaseDao(ClassInfo baseDao) { this.baseDao = baseDao; return this; @@ -43,6 +47,11 @@ public Builder setDao(ClassInfo dao) { this.dao = dao; + return this; + } + + public Builder setDaoData(DaoData daoData) { + this.daoData = daoData; return this; } @@ -95,16 +104,34 @@ } //鑾峰彇鏌ヨ鏉′欢 - for (Annotation a : as) { - if (a instanceof DaoQueryCondition) { - MybatisColumnData columnData=new MybatisColumnData(columName); - if (fd.getType().getSimpleName().equalsIgnoreCase("Date")) { - daoQueryColumnList.add(new DaoQueryColumnData("max" + StringUtil.firstCharToUpper(columName),columnData, fd.getType().getSimpleName(), DaoQueryCondition.QueryType.lt)); - daoQueryColumnList.add(new DaoQueryColumnData("min" + StringUtil.firstCharToUpper(columName),columnData, fd.getType().getSimpleName(), DaoQueryCondition.QueryType.gte)); - } else { - daoQueryColumnList.add(new DaoQueryColumnData(columName,columnData, fd.getType().getSimpleName(), ((DaoQueryCondition) a).queryType())); + + if (daoData != null) { + //鏌ヨ鏉′欢浠庡閮ㄤ紶鍏� + for (DaoQuery query : daoData.getQueryList()) { + if (query.getName().equalsIgnoreCase(columName)) { + MybatisColumnData columnData = new MybatisColumnData(columName); + if (fd.getType().getSimpleName().equalsIgnoreCase("Date")) { + daoQueryColumnList.add(new DaoQueryColumnData("max" + StringUtil.firstCharToUpper(columName), columnData, fd.getType().getSimpleName(), DaoQueryCondition.QueryType.lt)); + daoQueryColumnList.add(new DaoQueryColumnData("min" + StringUtil.firstCharToUpper(columName), columnData, fd.getType().getSimpleName(), DaoQueryCondition.QueryType.gte)); + } else { + daoQueryColumnList.add(new DaoQueryColumnData(columName, columnData, fd.getType().getSimpleName(), query.getQueryType())); + } } - break; + } + + } else { + //鏍规嵁娉ㄨВ璁剧疆鐨勬煡璇㈡潯浠� + for (Annotation a : as) { + if (a instanceof DaoQueryCondition) { + MybatisColumnData columnData = new MybatisColumnData(columName); + if (fd.getType().getSimpleName().equalsIgnoreCase("Date")) { + daoQueryColumnList.add(new DaoQueryColumnData("max" + StringUtil.firstCharToUpper(columName), columnData, fd.getType().getSimpleName(), DaoQueryCondition.QueryType.lt)); + daoQueryColumnList.add(new DaoQueryColumnData("min" + StringUtil.firstCharToUpper(columName), columnData, fd.getType().getSimpleName(), DaoQueryCondition.QueryType.gte)); + } else { + daoQueryColumnList.add(new DaoQueryColumnData(columName, columnData, fd.getType().getSimpleName(), ((DaoQueryCondition) a).queryType())); + } + break; + } } } -- Gitblit v1.8.0