
业务场景,用于查询某个用户在某个组织下有无特定的权限。
例如,打开菜单时进行权限校验、点击功能按钮时进行权限校验等。
import com.kingdee.bos.Context;
import com.kingdee.bos.util.BOSUuid;
import com.kingdee.eas.base.permission.UserInfo;
import com.kingdee.eas.base.permission.UserOrgPermFactory;
import com.ity.FilterInfo;
import com.ity.FilterItemInfo;/*** 权限校验相关* @author 作者**/
public class CoreUtil {/*** 查询用户是否具有某个组织下的特定权限,用于前端* @param userId 用户主键* @param orgId 业务组织* @param permItemId 权限主键* */public static boolean hasPerm(String userId, String orgId, String permItemId) {boolean flag = false;FilterInfo filter = new FilterInfo();FilterItems().add(new FilterItemInfo("owner.id", userId));FilterItems().add(new FilterItemInfo("org.id", orgId));FilterItems().add(new FilterItemInfo("permItem.id", permItemId));try {flag = RemoteInstance().exists(filter);} catch (Exception e) {e.printStackTrace();}return flag;}/*** 查询用户是否具有某个组织下的特定权限,用于前端* @param user 用户* @param orgId 业务组织* @param permItemId 权限主键* */public static boolean hasPerm(UserInfo user, BOSUuid orgId, String permItemId){boolean flag = false;FilterInfo filter = new FilterInfo();FilterItems().add(new FilterItemInfo("owner.id", Id()));FilterItems().add(new FilterItemInfo("org.id", orgId));FilterItems().add(new FilterItemInfo("permItem.id", permItemId));try {flag = RemoteInstance().exists(filter);} catch (Exception e) {e.printStackTrace();}return flag;}/*** 查询用户是否具有某个组织下的特定权限,用于后台* @param ctx 上下文* @param userId 用户主键* @param orgId 业务组织* @param permItemId 权限主键* */public static boolean hasPerm(Context ctx, String userId, String orgId, String permItemId){boolean flag = false;FilterInfo filter = new FilterInfo();FilterItems().add(new FilterItemInfo("owner.id", userId));FilterItems().add(new FilterItemInfo("org.id", orgId));FilterItems().add(new FilterItemInfo("permItem.id", permItemId));try {flag = LocalInstance(ctx).exists(filter);} catch (Exception e) {e.printStackTrace();}return flag;}/*** 查询用户是否具有某个组织下的特定权限,用于后台* @param ctx 上下文* @param user 用户* @param orgId 业务组织* @param permItemId 权限主键* */public static boolean hasPerm(Context ctx, UserInfo user, BOSUuid orgId, String permItemId) {boolean flag = false;FilterInfo filter = new FilterInfo();FilterItems().add(new FilterItemInfo("owner.id", Id()));FilterItems().add(new FilterItemInfo("org.id", orgId));FilterItems().add(new FilterItemInfo("permItem.id", permItemId));try {flag = LocalInstance(ctx).exists(filter);} catch (Exception e) {e.printStackTrace();}return flag;}}
本文发布于:2024-02-26 22:15:22,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/1730761551481123.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
| 留言与评论(共有 0 条评论) |