天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

 找回密码
 注册成为天翎用户
查看: 728|回复: 1

[已解决] 根据角色编码判断当前用户是否具有下列角色

[复制链接]
yaya 发表于 2022-10-20 18:20:17 | 显示全部楼层 |阅读模式
【myApps/OBPM版本号】:v4.4- sp XX
【浏览器类型】:Chrome/其他
【联系方式-QQ】:请留下您的QQ号码
【联系电话】:    请留下您的联系电话,以便技术同事更好解决您的问题
【问题描述】:
根据角色编码判断当前用户是否具有下列角色








1、问题描述最好图文并茂,如有视频/脚本可直接放出,这样技术同事在处理该问题时效率更加高效哦~
2、如果该问题已得到解决,请在该帖子下回复\"已解决可结帖\"
 楼主| yaya 发表于 2022-10-20 18:20:54 | 显示全部楼层
function isOwenTheRolesByRoleCodes(roleCode) {
    var applicationid = getApplication();
    var flag = false;
    var process = new Packages.cn.myapps.runtime.role.service.RoleServiceImpl();
    if (roleCode != null && !"".equals(roleCode)) {
        if (roleCode.indexOf(";") >= 0) {
            var roleCodes = roleCode.split(";");
            if (roleCodes != null && roleCodes.length > 0) {
                for (var i = 0; i < roleCodes.length; i++) {
                    var roleCodeI = roleCodes[i];
                    var role1 = process.findByRoleNo(roleCodeI, applicationid);
                    if (role1 != null) {
                        var crRoleId = role1.getId();
                        if (crRoleId != null && !"".equals(crRoleId)) {
                            var roles = getWebUser().getRoles();
                            for (var it = roles.iterator(); roles != null && it.hasNext(); ) {
                                var role = it.next();
                                var roleId = role.getId();
                                if (crRoleId.equals(roleId)) {
                                    flag = true;
                                    break;
                                }
                            }
                        }
                    }
                }
            }
        } else {
            var role1 = process.findByRoleNo(roleCode, applicationid);
            if (role1 != null) {
                var crRoleId = role1.getId();
                if (crRoleId != null && !"".equals(crRoleId)) {
                    var roles = getWebUser().getRoles();
                    for (var it = roles.iterator(); roles != null && it.hasNext(); ) {
                        var role = it.next();
                        var roleId = role.getId();

                        if (crRoleId.equals(roleId)) {
                            flag = true;
                            break;
                        }
                    }
                }
            }
        }
    }
    return flag;
}

本版积分规则

QQ|手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-12 20:20

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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