easy-query
easy-query copied to clipboard
【请求支持】缺少针对列的查询拦截器
目前具有的常用拦截器有插入、更新、条件拦截器,但缺少可以动态控制查询列的拦截器实现。 例如针对以下代码:
@Data
public class User {
private Long id;
private String userName;
private String phoneNumber;
}
在管理员权限时我需要查看到phoneNumber列数据,但是在普通用户权限下,我不需要查询该列,并且也不希望接口将此列的数据暴露出去,此时需要一个动态的列查询拦截器来进行列级别的权限控制。
如果你描述的字段不具有通用性,只对少部分表有效,那不如做几个不同的DTO或者在select里动态判断select哪些字段,你描述的拦截器我感觉应该是用在一些通用字段上
对于列查询拦截会有如下应用场景: 根据不同权限查询不同列的数据,比如超级管理员会查询到所有列,A角色查询到A列、B角色则查询到B列,此时如果每个角色都需要创建一个DTO的话,不仅麻烦,而且无法动态的在前端设置哪些角色应该查询哪些列,稍微复杂一点的统计数据很可能会需要这样的功能