流程设计器的导入导出

目录

依赖包
安装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 {
    workflowDesignerExportReqMutation {
        export(data: { module: "demo_core", fileName: "meta" }) {
            jsonUrl
        }
    }
}

指定流程编码导出

请求示例:

mutation {
    workflowDesignerExportReqMutation {
        export(data: { workflowCode: "WF0000000000132500", fileName: "meta" }) {
            jsonUrl
        }
    }
}

业务工程中导入示例代码

# 是否初始化安装导入元数据
pm:
  install:
    enable: false

导入元数据示例代码

@SPI.Service
@Slf4j
@Order(Integer.MAX_VALUE-1)
@ConditionalOnProperty(prefix = "pm", name = "install.enable", havingValue = "true")
@Component
public class DemoModuleAppInstall implements MetaDataEditor, LifecycleCompletedAllInit, MetaInstallConfigApi {
    //流程设计器导出的页面元数据json
    private static final String INSTALL_WORKFLOW_META_PATH = "install/meta.json";

    @Override
    public void edit(AppLifecycleCommand command, Map<String, Meta> metaMap) {
        if(StringUtils.isBlank(INSTALL_WORKFLOW_META_PATH)) return;
        log.info("开始安装-元数据");
        try {

            InitializationUtil util = InitializationUtil.get(metaMap, DemoModule.MODULE_MODULE, DemoModule.MODULE_NAME);
            if (null != util) {
                // 设计器的元数据
                if(StringUtils.isNotBlank(INSTALL_WORKFLOW_META_PATH)) {
                    log.info("开始安装元数据");
                    DesignerInstallHelper.mateInitialization(util, INSTALL_WORKFLOW_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_WORKFLOW_META_PATH)) {
            log.info("开始安装-设计器数据");
            // 支持远程调用,但是执行的生命周期必须是LifecycleCompletedAllInit或之后. 本地如果安装了设计器,则没有要求
            DesignerInstallHelper.bizInitialization(INSTALL_WORKFLOW_META_PATH);
        }
    }

    @Override
    public Boolean installForDesigner() {
        return Boolean.TRUE;
    }
}

生产环境使用启动设计器

生产环境如无部署设计器docker镜像,可下载我们oinone-op-ds-all-mini-workflow镜像,单独安装流程设计器。
由于导入的是流程设计器的数据,需要在流程设计器中编辑流程,合理设置相关的人员和自定义函数

Oinone社区 作者:数式-海波原创文章,如若转载,请注明出处:https://doc.oinone.top/designer/workflow/7296.html

访问Oinone官网:https://www.oinone.top获取数式Oinone低代码应用平台体验

(0)
数式-海波的头像数式-海波数式管理员
上一篇 4天前
下一篇 4天前

相关推荐

  • 工作流-流程设计扩展自定义函数示例代码汇总        后端

    工作流-流程设计扩展自定义函数示例代码汇总

    目录 1. 流程节点审批人函数2. 审批开始前执行函数3. 待办操作提交后执行函数4. 审批操作数据函数 1. 流程节点审批人函数 包含转交、抄送、加签、填写、通知人自定义函数当平台默认提供的审批人选择无法满足个性化的业务需求时,我们可以通过自定义函数处理审批人的生成逻辑 1.1 编写自定义审批人函数 @Function(name = "custo…

    2023年12月4日
    00
  • 如何自定义工作流的待办任务列表        流程设计器

    如何自定义工作流的待办任务列表

    介绍 有些时候我们需要把一些业务数据同时展示在工作流的待办列表中,这时候我们可以通过覆写oinone的待办列表展示组件 1. 由于平台原有的视图中未返回业务模型的原始数据的字段,所以我们先要将originNodeContext字段加到视图中,该workbench_usertask_active_table.xml文件存放在src/resources目录下 &…

    2024年5月8日
    00
  • 项目中工作流引入/触发        后端

    项目中工作流引入/触发

    目录 1. 使用工作流需要依赖的包和设置2. 触发方式2.1 自动触发方式2.2 触发方式 1.使用工作流需要依赖的包和设置 1.1 工作流需要依赖的模块 需在pom.xml中增加workflow、sql-record和trigger相关模块的依赖 workflow:工作流运行核心模块 sql-record:监听流程发布以后对应模型的增删改监听 trigge…

    2023年11月7日
    00
  • 流程设计流程结束通知SPI接口        后端

    流程设计流程结束通知SPI接口

    1.实现SPI接口 import pro.shushi.pamirs.meta.common.spi.SPI; import pro.shushi.pamirs.meta.common.spi.factory.SpringServiceLoaderFactory; import pro.shushi.pamirs.workflow.app.api.entit…

    2023年12月26日
    00
  • 如何在业务模型的列表中展示工作流的审批按钮        流程设计器

    如何在业务模型的列表中展示工作流的审批按钮

    介绍 当我们需要在业务模型的列表中展示审批的按钮时,我们可以通过自定义的方式完成扩展,这样就可以在业务数据中直接点击该动作按钮跳转到工作流待办详情页处理审批或填写任务 1.先在业务数据模型中新增userTaskList字段存放该条数据的工作流待办数据 @Model.model(DemoItem.MODEL_MODEL) @Model(displayName …

    2024年5月8日
    00

发表回复

您的电子邮箱地址不会被公开。 必填项已用 * 标注