目录
依赖包
安装GraphQL的工具
登录gql
导出生成json文件子
业务工程中导入示例代码
简介
通过调用导出接口,将设计器的设计数据与元数据打包导出到文件中。
提供了download/export两类接口。
依赖包
<dependency>
<groupId>pro.shushi.pamirs.metadata.manager</groupId>
<artifactId>pamirs-metadata-manager</artifactId>
</dependency>
安装GraphQL的工具
下载官网地址:https://github.com/Kong/insomnia/releases
登录gql
示例调用代码
mutation {
pamirsUserTransientMutation {
login(user: { login: "admin", password: "admin" }) {
needRedirect
broken
errorMsg
errorCode
errorField
}
}
}
导出生成json文件
执行GraphQL,直接返回导出数据。适用于通过浏览器直接下载文件。
全部导出
请求示例:
mutation {
dataDesignerExportReqMutation {
export(data: { fileName: "datavi_data" }) {
jsonUrl
}
}
}
指定图表导出
请求示例:
mutation {
dataDesignerExportReqMutation {
export(data: { chartCode: "CT00000000002000", fileName: "datavi_data" }) {
jsonUrl
}
}
}
对应chartCode为图表的编码code,可通过查询数据库来获得
指定报表导出
请求示例:
mutation {
dataDesignerExportReqMutation {
export(data: { reportCode: "RP00001000", fileName: "datavi_data" }) {
jsonUrl
}
}
}
对应reportCode为报表的编码code,可通过查询数据库来获得
指定业务大屏导出
请求示例:
mutation {
dataDesignerExportReqMutation {
export(data: { screenCode: "DS00001000", fileName: "datavi_data" }) {
jsonUrl
}
}
}
对应screenCode为数据大屏的编码code,可通过查询数据库来获得
业务工程中导入示例代码
# 是否初始化安装导入元数据
pm:
install:
enable: false
导入元数据示例代码
@Slf4j
@Order(Integer.MAX_VALUE-1)
@ConditionalOnProperty(prefix = "pm", name = "install.enable", havingValue = "true")
@Component
public class DemoModuleAppInstall implements MetaDataEditor, LifecycleCompletedAllInit {
//流程设计器导出的页面元数据json
private static final String INSTALL_DATAVI_META_PATH = "install/datavi_data.json";
@Override
public void edit(AppLifecycleCommand command, Map<String, Meta> metaMap) {
if(StringUtils.isBlank(INSTALL_DATAVI_META_PATH)) return;
log.info("开始安装-元数据");
try {
InitializationUtil util = InitializationUtil.get(metaMap, DemoModule.MODULE_MODULE, DemoModule.MODULE_NAME);
if (null != util) {
// 设计器的元数据
if(StringUtils.isNotBlank(INSTALL_DATAVI_META_PATH)) {
log.info("开始安装图表元数据");
DesignerInstallHelper.mateInitialization(util, INSTALL_DATAVI_META_PATH, DemoModule.MODULE_MODULE,
DemoModule.MODULE_NAME);
}
}
} catch (Exception e) {
log.error("图表设计器元数据导入异常", e);
}
}
@Override
public void process(AppLifecycleCommand command, Map<String, ModuleDefinition> runModuleMap) {
if(StringUtils.isNotBlank(INSTALL_DATAVI_META_PATH)) {
log.info("开始安装-【图表】设计器数据");
// 支持远程调用,但是执行的生命周期必须是LifecycleCompletedAllInit或之后. 本地如果安装了设计器,则没有要求
DesignerInstallHelper.bizInitialization(INSTALL_DATAVI_META_PATH);
}
}
}
Oinone社区 作者:数式-海波原创文章,如若转载,请注明出处:https://doc.oinone.top/designer/datadesigner/7298.html
访问Oinone官网:https://www.oinone.top获取数式Oinone低代码应用平台体验