嵌入式BI工具如何让SaaS产品具有 “安全感”和“敏锐感”(2)

发布时间:2023/01/03 09:01 发布者:lenka.guo

返回博客中心

Wyn商业智能提供了基于GraphQL的丰富的API接口,允许通过API和动态参数来根据用户上下文信息获取相应的数据和生成文档。具体嵌入方式可以根据SaaS系统情况进行合理调整。

嵌入式BI工具如何让SaaS产品具有 “安全感”和“敏锐感”(1)

嵌入式BI工具如何让SaaS产品具有 “安全感”和“敏锐感”(2)

嵌入式BI工具如何让SaaS产品具有 “安全感”和“敏锐感”(3)

BI与SaaS集成示例

Wyn商业智能提供了基于GraphQL的丰富的API接口,允许通过API和动态参数来根据用户上下文信息获取相应的数据和生成文档。具体嵌入方式可以根据SaaS系统情况进行合理调整。

1、创建数据源

对于多租户的场合,通常会基于用户进行分库处理,这种情况可以通过用户上下文信息,创建动态数据源:

1.1添加扩展参数,增加用户上下文的数据库信息

Picture1.png

1.2 创建用户时,绑定上该用户的数据库信息

Picture2.png

1.3 创建数据源时,使用动态参数配置

Picture3.png

2、创建角色和用户 (使用Wyn内置用户)

2.1创建角色名:

POST /api/graphql?token=8908645b0958662d66731038944c7d236d3d7c1ee98e3e2de3c5268453965a8a

Content-Type: application/json

{"query":"mutation { addRole( roleName: "2" ) { name } }"}

Picture4.png

2.2 POST提交:

POST /admin/api/accountmanagement/api/v1/roles?token=8908645b0958662d66731038944c7d236d3d7c1ee98e3e2de3c5268453965a8a

Content-Type: application/json

{"Name":"2"}

Picture5.png

2.3 为角色分配权限:

POST

/admin/api/accountmanagement/api/v1/roles/3f497dc1-66a6-45cb-a999-6c7f4b1bb15f/permissions?token=8908645b0958662d66731038944c7d236d3d7c1ee98e3e2de3c5268453965a8a

Content-Type: application/json

{"Permissions":["create-data-source","create-semantic-model","create-dataset","create-dashboard","view-dashboard","create-report","view-report","schedule-reports","create-input-form","view-revision","allow-sharing"]}

Picture6.png

2.4 创建用户,并分配角色

POST /admin/api/accountmanagement/api/v1/users/?token=8908645b0958662d66731038944c7d236d3d7c1ee98e3e2de3c5268453965a8a

Content-Type: application/json

{"username":"2","email":"123@123.com","mobile":"","firstName":"","lastName":"","fullName":null,"password":"2","confirmPassword":"2","roles":["2"],"customizePropertyInfo":{"DBName":["Test"],"Password":["mAbQ5mlMDWck_xysj3rQ"],"Port":["3306"],"ServerIP":["192.168.32.100"],"Uid":["root"]}}

Picture7.png

3、API生成Token

生成Token的API接口,除此之外所有的API调用都需要Token参数才能正确访问

POST /connect/token

Content-Type: application/x-www-form-urlencoded

grant_type=password&username=admin&password=admin&client_id=integration&client_secret=eunGKas3Pqd6FMwx9eUpdS7xmz&access-token-lifetime=86400

* 注意申请token时应使用access-token-lifetime参数限制token的有效时长,单位为秒,长期无限制的使用永久Token将可能由于Token堆积而影响登录性能 (永久Token可通过清理wynis 数据库中 grants 表中的数据进行处理)

Picture8.png

4、创建门户目录

4.1 获取最大分类ID

POST /api/graphql?token=8908645b0958662d66731038944c7d236d3d7c1ee98e3e2de3c5268453965a8a

Content-Type: application/json

{"query":"query { tags (type: "system") { id, parentId, order, name, url, color, iconCssClass, isFavorites } }"}

Picture9.png

4.2 新建门户分类(order等于第一步返回值的最大值+1)

var order = Math.max(...res.data.tags.map((item) => item.order)) + 1;

POST

/api/graphql?token=8908645b0958662d66731038944c7d236d3d7c1ee98e3e2de3c5268453965a8a

Content-Type: application/json

{"query":"mutation { addTag(name:"2", urlName:"2", order: 1961, iconCssClass: "mdi mdi-folder", grant: [ {role:"Everyone", ops:[Read]} ] , color: "null", parentId: "null" ) { id } }"}

Picture10.png

5、复制文档并上传(可选)

根据实际的业务场景,如果需要给每个用户增加可单独编辑保存的默认文档

可以通过以下2种方式进行处理:

5.1 利用Wyn Tools或其他工具复制文档并按租户重命名

5.2 批量上传文档(手动上传)

* 也可以通过角色权限分配的方式,将某个文档共享给某角色下的所有用户进行浏览

Picture11.png

6、API分类

6.1 获取分类ID

POST /api/graphql?token=77c9bfccf16659f2ab62cf7796b640156f13cea35bc30cde1597ddb4457720c7

Content-Type: application/json

{"query":"query { tags { id, name}}"}

Picture12.png

6.2获取文档ID

POST /api/graphql?token=77c9bfccf16659f2ab62cf7796b640156f13cea35bc30cde1597ddb4457720c7

Content-Type: application/json

{"query": "query { documenttypes(key:"rdl") { documents { id, title, type} } }"}

Picture13.png

6.3给文档设置分类(请求参数的分类id和文档id来自前两步)

POST /api/graphql?token=77c9bfccf16659f2ab62cf7796b640156f13cea35bc30cde1597ddb4457720c7

Content-Type: application/json

{"query":"mutation { tagDocument(tagId: "eafd31d7-7aad-40b7-9206-f4866127a853", documentId: "f30ce97b-7369-424e-8b39-8ffa6b305838") }"}

Picture14.png



Wyn 商业智能软件| 下载试用

Wyn 是西安葡萄城自主研发的嵌入式商业智能软件,能帮助企业用户发现更多的数据潜在价值,为管理者制定决策提供数据支撑。Wyn 具备完整的嵌入式分析能力,能够与其他软件深度集成,也可独立部署使用,快速提升数据展示和分析能力。

Wyn 支持公有云、私有云和本地部署等多种部署方式,并能在Java、.net、PHP等开发平台中使用。您可以将其与ERP、CRM、OA等业务系统,以及钉钉、企业微信等APP进行深度集成,持续交付BI和报表功能,助力您的客户发现数据的价值。

了解更多关于 Wyn 嵌入式商业智能软件的内容,请点击此处访问官网,立即下载体验。