forked from p85126437/datagear
恢复AbstractMybatisService相关方法的postProcessQuery参数,便于子类使用控制
This commit is contained in:
parent
afbd23f27f
commit
06f4d5a87e
|
@ -147,6 +147,14 @@ public class User extends AbstractStringIdEntity implements CloneableEntity
|
|||
this.roles = roles;
|
||||
}
|
||||
|
||||
/**
|
||||
* 清空密码,将其设置为{@code null}。
|
||||
*/
|
||||
public void clearPassword()
|
||||
{
|
||||
this.setPassword(null);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取账号名称标签。
|
||||
*
|
||||
|
@ -187,7 +195,7 @@ public class User extends AbstractStringIdEntity implements CloneableEntity
|
|||
public User cloneWithoutPassword()
|
||||
{
|
||||
User entity = clone();
|
||||
entity.setPassword(null);
|
||||
entity.clearPassword();
|
||||
|
||||
return entity;
|
||||
}
|
||||
|
|
|
@ -186,7 +186,7 @@ public abstract class AbstractMybatisDataPermissionEntityService<ID, T extends D
|
|||
Map<String, Object> params = buildParamMap();
|
||||
addDataPermissionParameters(params, user);
|
||||
|
||||
return query(query, params);
|
||||
return query(query, params, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -202,7 +202,7 @@ public abstract class AbstractMybatisDataPermissionEntityService<ID, T extends D
|
|||
addDataPermissionParameters(params, user);
|
||||
setDataFilterParam(params, dataFilter);
|
||||
|
||||
return pagingQuery(pagingQuery, params);
|
||||
return pagingQuery(pagingQuery, params, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -219,7 +219,7 @@ public abstract class AbstractMybatisDataPermissionEntityService<ID, T extends D
|
|||
}
|
||||
|
||||
protected PagingData<T> pagingQueryForAnalysisProjectId(User user, PagingQuery pagingQuery, String dataFilter,
|
||||
String analysisProjectId)
|
||||
String analysisProjectId, boolean postProcessQuery)
|
||||
{
|
||||
Map<String, Object> params = buildParamMap();
|
||||
addDataPermissionParameters(params, user);
|
||||
|
@ -228,7 +228,7 @@ public abstract class AbstractMybatisDataPermissionEntityService<ID, T extends D
|
|||
if (!StringUtil.isEmpty(analysisProjectId))
|
||||
params.put(AnalysisProjectAwareEntityService.QUERY_PARAM_ANALYSIS_PROJECT_ID, analysisProjectId);
|
||||
|
||||
return pagingQuery(pagingQuery, params);
|
||||
return pagingQuery(pagingQuery, params, postProcessQuery);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -132,7 +132,7 @@ public abstract class AbstractMybatisEntityService<ID, T extends Entity<ID>> ext
|
|||
* 此方法的默认实现是:直接返回{@code obj}。
|
||||
* </p>
|
||||
*
|
||||
* @see #getById(Object) getById(Object)将在内部调用此方法
|
||||
* @see #getById(Object) getById(Object)会在其内部调用此方法
|
||||
*/
|
||||
@Override
|
||||
protected T postProcessGet(T obj)
|
||||
|
@ -143,13 +143,13 @@ public abstract class AbstractMybatisEntityService<ID, T extends Entity<ID>> ext
|
|||
@Override
|
||||
public List<T> query(Query query)
|
||||
{
|
||||
return super.query(query);
|
||||
return super.query(query, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
public PagingData<T> pagingQuery(PagingQuery pagingQuery)
|
||||
{
|
||||
return super.pagingQuery(pagingQuery);
|
||||
return super.pagingQuery(pagingQuery, true);
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
@ -105,6 +105,9 @@ public abstract class AbstractMybatisService<T> extends SqlSessionDaoSupport
|
|||
|
||||
/**
|
||||
* 添加。
|
||||
* <p>
|
||||
* 此方法调用底层的{@code insert} SQL。
|
||||
* </p>
|
||||
*
|
||||
* @param entity
|
||||
*/
|
||||
|
@ -115,6 +118,9 @@ public abstract class AbstractMybatisService<T> extends SqlSessionDaoSupport
|
|||
|
||||
/**
|
||||
* 添加。
|
||||
* <p>
|
||||
* 此方法调用底层的{@code insert} SQL。
|
||||
* </p>
|
||||
*
|
||||
* @param entity
|
||||
* @param params
|
||||
|
@ -130,6 +136,9 @@ public abstract class AbstractMybatisService<T> extends SqlSessionDaoSupport
|
|||
|
||||
/**
|
||||
* 更新。
|
||||
* <p>
|
||||
* 此方法调用底层的{@code update} SQL。
|
||||
* </p>
|
||||
*
|
||||
* @param entity
|
||||
* @return
|
||||
|
@ -188,17 +197,18 @@ public abstract class AbstractMybatisService<T> extends SqlSessionDaoSupport
|
|||
* <p>
|
||||
* 此方法调用底层的{@code getByParam} SQL。
|
||||
* </p>
|
||||
* <p>
|
||||
* 此方法内部会执行{@linkplain #postProcessGet(Object)}。
|
||||
* </p>
|
||||
*
|
||||
* @param param
|
||||
* @param postProcessGet
|
||||
* 是否内部执行{@linkplain #postProcessGet(Object)}
|
||||
* @return
|
||||
*/
|
||||
protected T getByParam(T param)
|
||||
protected T getByParam(T param, boolean postProcessGet)
|
||||
{
|
||||
T obj = getByParam("getByParam", param, buildParamMap());
|
||||
obj = postProcessGetNullable(obj);
|
||||
|
||||
if (postProcessGet)
|
||||
obj = postProcessGetNullable(obj);
|
||||
|
||||
return obj;
|
||||
}
|
||||
|
@ -247,16 +257,15 @@ public abstract class AbstractMybatisService<T> extends SqlSessionDaoSupport
|
|||
* <p>
|
||||
* 此方法调用底层的{@code query} SQL。
|
||||
* </p>
|
||||
* <p>
|
||||
* 此方法内部会执行{@linkplain #postProcessQuery(List)}。
|
||||
* </p>
|
||||
*
|
||||
* @param query
|
||||
* @param postProcessQuery
|
||||
* 是否内部执行{@linkplain #postProcessQuery(List)}
|
||||
* @return
|
||||
*/
|
||||
protected List<T> query(Query query)
|
||||
protected List<T> query(Query query, boolean postProcessQuery)
|
||||
{
|
||||
return query(query, buildParamMap());
|
||||
return query(query, buildParamMap(), postProcessQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -264,17 +273,16 @@ public abstract class AbstractMybatisService<T> extends SqlSessionDaoSupport
|
|||
* <p>
|
||||
* 此方法调用底层的{@code query} SQL。
|
||||
* </p>
|
||||
* <p>
|
||||
* 此方法内部会执行{@linkplain #postProcessQuery(List)}。
|
||||
* </p>
|
||||
*
|
||||
* @param query
|
||||
* @param params
|
||||
* @param postProcessQuery
|
||||
* 是否内部执行{@linkplain #postProcessQuery(List)}
|
||||
* @return
|
||||
*/
|
||||
protected List<T> query(Query query, Map<String, Object> params)
|
||||
protected List<T> query(Query query, Map<String, Object> params, boolean postProcessQuery)
|
||||
{
|
||||
return query("query", query, params);
|
||||
return query("query", query, params, postProcessQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -286,15 +294,18 @@ public abstract class AbstractMybatisService<T> extends SqlSessionDaoSupport
|
|||
* @param statement
|
||||
* @param query
|
||||
* @param params
|
||||
* @param postProcessQuery
|
||||
* 是否内部执行{@linkplain #postProcessQuery(List)}
|
||||
* @return
|
||||
*/
|
||||
protected List<T> query(String statement, Query query, Map<String, Object> params)
|
||||
protected List<T> query(String statement, Query query, Map<String, Object> params, boolean postProcessQuery)
|
||||
{
|
||||
addQueryParam(params, query);
|
||||
|
||||
List<T> list = query(statement, params);
|
||||
|
||||
postProcessQuery(list);
|
||||
if (postProcessQuery)
|
||||
postProcessQuery(list);
|
||||
|
||||
return list;
|
||||
}
|
||||
|
@ -304,16 +315,15 @@ public abstract class AbstractMybatisService<T> extends SqlSessionDaoSupport
|
|||
* <p>
|
||||
* 此方法调用底层的{@code pagingQuery}、{@code pagingQueryCount} SQL。
|
||||
* </p>
|
||||
* <p>
|
||||
* 此方法内部会执行{@linkplain #postProcessQuery(List)}。
|
||||
* </p>
|
||||
*
|
||||
* @param pagingQuery
|
||||
* @param postProcessQuery
|
||||
* 是否内部执行{@linkplain #postProcessQuery(List)}
|
||||
* @return
|
||||
*/
|
||||
protected PagingData<T> pagingQuery(PagingQuery pagingQuery)
|
||||
protected PagingData<T> pagingQuery(PagingQuery pagingQuery, boolean postProcessQuery)
|
||||
{
|
||||
return pagingQuery(pagingQuery, buildParamMap());
|
||||
return pagingQuery(pagingQuery, buildParamMap(), postProcessQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -321,17 +331,16 @@ public abstract class AbstractMybatisService<T> extends SqlSessionDaoSupport
|
|||
* <p>
|
||||
* 此方法调用底层的{@code pagingQuery}、{@code pagingQueryCount} SQL。
|
||||
* </p>
|
||||
* <p>
|
||||
* 此方法内部会执行{@linkplain #postProcessQuery(List)}。
|
||||
* </p>
|
||||
*
|
||||
* @param pagingQuery
|
||||
* @param params
|
||||
* @param postProcessQuery
|
||||
* 是否内部执行{@linkplain #postProcessQuery(List)}
|
||||
* @return
|
||||
*/
|
||||
protected PagingData<T> pagingQuery(PagingQuery pagingQuery, Map<String, Object> params)
|
||||
protected PagingData<T> pagingQuery(PagingQuery pagingQuery, Map<String, Object> params, boolean postProcessQuery)
|
||||
{
|
||||
return pagingQuery("pagingQuery", pagingQuery, params);
|
||||
return pagingQuery("pagingQuery", pagingQuery, params, postProcessQuery);
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -343,16 +352,16 @@ public abstract class AbstractMybatisService<T> extends SqlSessionDaoSupport
|
|||
* 如果{@code statement}为{@code "pagingQuery"},那么必须已定义{@code "pagingQueryCount"}
|
||||
* SQL Mapper。
|
||||
* </p>
|
||||
* <p>
|
||||
* 此方法内部会执行{@linkplain #postProcessQuery(List)}。
|
||||
* </p>
|
||||
*
|
||||
* @param statement
|
||||
* @param pagingQuery
|
||||
* @param params
|
||||
* @param postProcessQuery
|
||||
* 是否内部执行{@linkplain #postProcessQuery(List)}
|
||||
* @return
|
||||
*/
|
||||
protected PagingData<T> pagingQuery(String statement, PagingQuery pagingQuery, Map<String, Object> params)
|
||||
protected PagingData<T> pagingQuery(String statement, PagingQuery pagingQuery, Map<String, Object> params,
|
||||
boolean postProcessQuery)
|
||||
{
|
||||
addQueryParam(params, pagingQuery);
|
||||
|
||||
|
@ -371,7 +380,8 @@ public abstract class AbstractMybatisService<T> extends SqlSessionDaoSupport
|
|||
else
|
||||
list = query(statement, params, new RowBounds(startIndex, pagingData.getPageSize()));
|
||||
|
||||
postProcessQuery(list);
|
||||
if (postProcessQuery)
|
||||
postProcessQuery(list);
|
||||
|
||||
pagingData.setItems(list);
|
||||
|
||||
|
@ -390,12 +400,12 @@ public abstract class AbstractMybatisService<T> extends SqlSessionDaoSupport
|
|||
*
|
||||
* @param list
|
||||
* 不会为{@code null}
|
||||
* @see #query(Query)
|
||||
* @see #query(Query, Map)
|
||||
* @see #query(String, Query, Map)
|
||||
* @see #pagingQuery(PagingQuery)
|
||||
* @see #pagingQuery(PagingQuery, Map)
|
||||
* @see #pagingQuery(String, PagingQuery, Map)
|
||||
* @see #query(Query, boolean)
|
||||
* @see #query(Query, Map, boolean)
|
||||
* @see #query(String, Query, Map, boolean)
|
||||
* @see #pagingQuery(PagingQuery, boolean)
|
||||
* @see #pagingQuery(PagingQuery, Map, boolean)
|
||||
* @see #pagingQuery(String, PagingQuery, Map, boolean)
|
||||
*/
|
||||
protected void postProcessQuery(List<T> list)
|
||||
{
|
||||
|
|
|
@ -178,7 +178,7 @@ public class DataSetEntityServiceImpl extends AbstractMybatisDataPermissionEntit
|
|||
public PagingData<DataSetEntity> pagingQuery(User user, PagingQuery pagingQuery, String dataFilter,
|
||||
String analysisProjectId)
|
||||
{
|
||||
return pagingQueryForAnalysisProjectId(user, pagingQuery, dataFilter, analysisProjectId);
|
||||
return pagingQueryForAnalysisProjectId(user, pagingQuery, dataFilter, analysisProjectId, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -169,7 +169,7 @@ public class HtmlChartWidgetEntityServiceImpl
|
|||
public PagingData<HtmlChartWidgetEntity> pagingQuery(User user, PagingQuery pagingQuery, String dataFilter,
|
||||
String analysisProjectId)
|
||||
{
|
||||
return pagingQueryForAnalysisProjectId(user, pagingQuery, dataFilter, analysisProjectId);
|
||||
return pagingQueryForAnalysisProjectId(user, pagingQuery, dataFilter, analysisProjectId, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -102,7 +102,7 @@ public class HtmlTplDashboardWidgetEntityServiceImpl
|
|||
public PagingData<HtmlTplDashboardWidgetEntity> pagingQuery(User user, PagingQuery pagingQuery, String dataFilter,
|
||||
String analysisProjectId)
|
||||
{
|
||||
return pagingQueryForAnalysisProjectId(user, pagingQuery, dataFilter, analysisProjectId);
|
||||
return pagingQueryForAnalysisProjectId(user, pagingQuery, dataFilter, analysisProjectId, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -90,7 +90,7 @@ public class RoleUserServiceImpl extends AbstractMybatisEntityService<String, Ro
|
|||
Map<String, Object> param = buildParamMap();
|
||||
param.put("role", role);
|
||||
|
||||
return query("queryForRole", query, param);
|
||||
return query("queryForRole", query, param, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@ -99,7 +99,7 @@ public class RoleUserServiceImpl extends AbstractMybatisEntityService<String, Ro
|
|||
Map<String, Object> param = buildParamMap();
|
||||
param.put("role", role);
|
||||
|
||||
return pagingQuery("pagingQueryForRole", query, param);
|
||||
return pagingQuery("pagingQueryForRole", query, param, true);
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
|
@ -70,7 +70,7 @@ public class SqlHistoryServiceImpl extends AbstractMybatisEntityService<String,
|
|||
if (isEmpty(pagingQuery.getOrders()))
|
||||
addOrderCreateTimeDesc(params);
|
||||
|
||||
return pagingQuery(pagingQuery, params);
|
||||
return pagingQuery(pagingQuery, params, true);
|
||||
}
|
||||
|
||||
protected int deleteExpired(String schemaId, String userId, int maximum)
|
||||
|
|
|
@ -163,7 +163,7 @@ public class UserServiceImpl extends AbstractMybatisEntityService<String, User>
|
|||
{
|
||||
// 屏蔽查询结果密码,避免安全隐患
|
||||
for (User user : list)
|
||||
user.setPassword(null);
|
||||
user.clearPassword();
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
Loading…
Reference in New Issue