一站式BI大数据分析平台
- 更新动态
- 产品介绍
- 安装部署
- 快速入门
- 数据准备
- 数据链接
- 数据模型
- 为什么需要数据模型
- Smartbi 数据模型快速入门
- FAQ-数据模型演示参数全选且参数联动
- 指标模型
- 业务主题
- 数据集
- 数据采集
- 分析展现
- 系统管理
- 开发人员资源
- 系统集成
- 宏开发
- 扩展包开发
- 二次开发文档
- 自定义任务
- 产品OEM
- 常见问题(FAQ)
- 示例文档
测试宏代码输入
(本文档仅供参考)
问题
如何在客户端宏获取当前登录用户的角色
解决方案
可参考如下宏示例:
var userService = jsloader.imports("bof.usermanager.UserService").getInstance();
var currentUser = userService.getCurrentUser();
var allRoles = userService.getAllRolesOfUser(currentUser.id); //用户角色可能有多个,返回的是用户的全部角色
//alert(allRoles[0].name) //打印获取的角色名称
|
若是v97以上版本,在自助仪表盘宏代码中获取当前登录用户的角色可以参考如下示例:

function main(page: IPage) {
let jsloader;
let xhr=new XMLHttpRequest();
xhr.open('GET','../vision/js/freequery/lang/JSLoader.js', false);
xhr.onreadystatechange = function (data) {
if(xhr.readyState==4){
if (xhr.status == 200 || xhr.status == 304) { debugger
try {
(window.execScript || function (data) {
window['eval'](data);
})(xhr.response);
jsloader = new JSLoader({ 'baseURL': '../vision/' });
} catch (e) {
top.window.eval(xhr.response)
jsloader = new JSLoader({ 'baseURL': '../vision/' });
}
}
}
}
xhr.send();
if (!jsloader) {
alert('jsloader is undefined.');
}
let userService = jsloader.imports("bof.usermanager.UserService").getInstance();
let currentUser = userService.getCurrentUser();
let allRoles = userService.getAllRolesOfUser(currentUser.id); //用户角色可能有多个,返回的是用户的全部角色
//alert('当前角色:' + allRoles[0].name); //打印获取的角色名称
}
|
未解决你的问题?请到「社区问答」反馈你遇到的问题
