@Override public <T> Page<T> searchPage(SqlHelper sqlHelper, Class<T> clazz, Page<T> page) throws Exception { if (sqlHelper == null || StringUtils.isBlank(sqlHelper.getSql())) { List<T> list = new ArrayList<>(); page.setTotalCount(0); page.setResult(list); return page; } return searchPage(sqlHelper.getSql(), clazz, sqlHelper.getParameters(), page); }
@Override public Page<Map<String, Object>> searchPageMap( SqlHelper sqlHelper, Page<Map<String, Object>> page) throws Exception { if (sqlHelper == null || StringUtils.isBlank(sqlHelper.getSql())) { List<Map<String, Object>> list = new ArrayList<>(); page.setTotalCount(0); page.setResult(list); return page; } return searchPageMap(sqlHelper.getSql(), sqlHelper.getParameters(), page); }
@Override public void batchDel(List<Object> ids, Class clazz) throws Exception { EntityInfo entityInfo = ClassUtils.getEntityInfoByClazz(clazz); if (entityInfo == null) { throw new DaoException("无效的实体类class"); } Object[] objects = new Object[ids.size()]; Arrays.fill(objects, "?"); SqlHelper sqlHelper = SqlHelper.getDeleteHelper(clazz); sqlHelper .append(" WHERE ") .append(entityInfo.getPkClumnName()) .append(" IN (") .append(StringUtils.join(objects, ",")) .append(")"); update(sqlHelper.getSql(), ids); }
@Override public int searchForCount(SqlHelper sqlHelper) throws Exception { return getCount(sqlHelper.getSql(), sqlHelper.getParameters()); }
@Override public List<Map<String, Object>> searchAllMap(Class clazz) throws Exception { SqlHelper sqlHelper = SqlHelper.getSelectHelper(clazz); return searchForListMap(sqlHelper.getSql(), sqlHelper.getParameters()); }
@Override public <T> List<T> searchAll(Class<T> clazz) throws Exception { SqlHelper sqlHelper = SqlHelper.getSelectHelper(clazz); return searchForList(sqlHelper.getSql(), clazz, sqlHelper.getParameters()); }
@Override public List<Map<String, Object>> searchForListMap(SqlHelper sqlHelper) throws Exception { return searchForListMap(sqlHelper.getSql(), sqlHelper.getParameters()); }
@Override public <T> List<T> searchForList(SqlHelper sqlHelper, Class<T> clazz) throws Exception { return searchForList(sqlHelper.getSql(), clazz, sqlHelper.getParameters()); }
@Override public Map<String, Object> searchMapForOne(SqlHelper sqlHelper) throws Exception { return searchMapForOne(sqlHelper.getSql(), sqlHelper.getParameters()); }
@Override public int update(SqlHelper sqlHelper) throws Exception { return update(sqlHelper.getSql(), sqlHelper.getParameters()); }