| | |
| | | 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; |
| | |
| | | private Class entity; |
| | | private ClassInfo dao; |
| | | |
| | | private DaoData daoData; |
| | | |
| | | public Builder setBaseDao(ClassInfo baseDao) { |
| | | this.baseDao = baseDao; |
| | | return this; |
| | |
| | | |
| | | public Builder setDao(ClassInfo dao) { |
| | | this.dao = dao; |
| | | return this; |
| | | } |
| | | |
| | | public Builder setDaoData(DaoData daoData) { |
| | | this.daoData = daoData; |
| | | return this; |
| | | } |
| | | |
| | |
| | | } |
| | | |
| | | //获取查询条件 |
| | | 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; |
| | | } |
| | | } |
| | | } |
| | | |