起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 17889|回复: 11

[处理中3] 标准queryAction的before事件

[复制链接]

43

主题

229

帖子

742

积分

高级会员

Rank: 4

积分
742
QQ
发表于 2021-3-2 17:07:27 | 显示全部楼层 |阅读模式
如题,如何利用标准queryAction的before事件进行数据过滤,通过配置数据过滤权限中的业务参数配置,
在queryAction的before事件中, 通过ContextHelper.getSemanticPermission("myPermission")取出数据权限中的定义, 将这个条件拼到queryAction的condition或filter中即可

目前值条件已获取到,请问该如何将条件拼到queryAction的condition或filter中

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2021-3-3 10:36:55 | 显示全部楼层
before事件中获取可以获取到参数,直接给参数设置值不行吗?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

43

主题

229

帖子

742

积分

高级会员

Rank: 4

积分
742
QQ
 楼主| 发表于 2021-3-3 12:02:54 | 显示全部楼层
jishuang 发表于 2021-3-3 10:36
before事件中获取可以获取到参数,直接给参数设置值不行吗?

参数值是从数据权限中业务配置总动态获取的,不是固定的,所以需要ContextHelper.getSemanticPermission("myPermission")这个代码获取参数条件啊,并不是每个人都有这个过滤条件。还是回到原来的问题,如何将条件拼到queryAction的condition或filter中?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2021-3-4 14:50:10 | 显示全部楼层
before事件中获取可以获取到参数,直接给参数赋值啊
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

43

主题

229

帖子

742

积分

高级会员

Rank: 4

积分
742
QQ
 楼主| 发表于 2021-3-4 15:19:53 | 显示全部楼层
jishuang 发表于 2021-3-4 14:50
before事件中获取可以获取到参数,直接给参数赋值啊

java代码如何写?在标准action的before事件中,如何拼接当前条件,因为有可能当前action有其它过滤条件。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2021-3-5 11:17:45 | 显示全部楼层
在queryAction的before事件中, 通过ContextHelper.getSemanticPermission("myPermission")取出数据权限中的定义, 将这个条件拼到queryAction的condition或filter中即可
数据权限设置平台默认会自动拼接,通过range参数处理

这个方案是从什么地方看的?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

43

主题

229

帖子

742

积分

高级会员

Rank: 4

积分
742
QQ
 楼主| 发表于 2021-3-8 08:51:16 | 显示全部楼层
jishuang 发表于 2021-3-5 11:17
在queryAction的before事件中, 通过ContextHelper.getSemanticPermission("myPermission")取出数据权限中 ...
http://bbs.wex5.com/thread-35863-1-1.html

比较古老的帖子,最后一个回复
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2021-3-8 09:49:24 | 显示全部楼层

在queryAction的before事件中, 通过ContextHelper.getSemanticPermission("myPermission")取出数据权限中的定义, 将这个条件拼到queryAction的condition或filter中即可
数据权限设置平台默认会自动拼接,通过range参数处理

获取range参数的值处理不行吗?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

43

主题

229

帖子

742

积分

高级会员

Rank: 4

积分
742
QQ
 楼主| 发表于 2021-3-8 14:05:22 | 显示全部楼层
jishuang 发表于 2021-3-8 09:49
在queryAction的before事件中, 通过ContextHelper.getSemanticPermission("myPermission")取出数据权限中 ...

获取range参数这个有个限制,如果一个人有多个角色,那么角色条件参数是通过and链接,需求是要or链接。比如一个项目团队,只有该团队的成员可以看到该项目,如正好该团队一个成员是部门领导,而此部门领导需要看到该部门下所有的项目,这样就出现问题了。
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2021-3-8 18:08:01 | 显示全部楼层
配置了数据权限range就肯定可以获取到的啊

如果是要不同的控制控制显示不同的业务权限参考
http://docs.wex5.com/bex5-ui-question-list-10239/
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-24 05:48 , Processed in 0.051385 second(s), 23 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表