数据权限

就拿我做的停车系统,A角色可以访问1,2,3 停车场,B角色可以访问4,5,6 停车场,这些都可以通过数据权限做配置。

自定义数据权限和角色管理对接

首先你要有个数据权限列表的jsonp接口,List转JSON即可。

在other.properties配置

permissonDataUrl=接口url比如:http://park.停车场.cn/ms/parkParking/getParkParkingList?jsonpCallback=?

permissonDataKey=parkIds

permissonDataTitle=停车场

Pagex 使用数据权限

首先如果要使用数据权限就要求你表里有这个数据权限过滤的字段,比如我上面demo是parkIds,那么我表里面需要一个park_id字段。 然后在modelConfig 配置dp:JSON.stringify({park_id:’parkIds’}) 即可。

  1. var modelConfig= {title:'临时收费规则',pkey:'id',type:'uuid',orderBy:'update_time Desc', namespace:"park_temp_rule",table:'t_park_temp_rule',trans:true,db:"park",dp:JSON.stringify({park_id:'parkIds'})//这个配置,isMultiTenant:true};

自定义业务使用数据权限

使用DataPermissonContext获取当前登录人拥有的权限,注意:admin的数据权限为get出来会为null,没有一个权限会返回-1 如果有值的话返回的是 ‘id1’,’id2’ 直接可以在sql中in

  1. String parkIds=DataPermissonContext.getDataPermissonMap().get("parkIds")

如果Form对象继承了superBean,可以把DataPermissonContext.getDataPermissonMap() 放到superBean的dataPermissin属性