元数据多环境在线发布功能说明

该功能依赖应用环境(designer_metadata)模块, 请确保体验环境的后端yml配置有该依赖

一 产品功能说明

设计同步部署

设计同步部署功能实现不同环境设计数据一键同步的目标,即将A环境设计完成的模型、界面、等设计数据一键部署至B环境。
使用此功能,需要在‘应用中心’安装‘应用环境’:
image.png
‘应用环境’安装完成,进入发起同步部署环境——>业务应用——>‘应用环境’,对要进行快速部署的发起环境、目标环境进行配置:
image.png
image.png
image.png
image.png
在进行多个环境同步部署设计数据时,必须正确配置发起环境、目标环境。
完成配置后,在应用中心,选择目标‘已安装’应用,在操作下拉菜单选择待部署设计类型,即可按照指引完成操作:
image.png

设计导出

设计导出功能具备将已安装应用所属(应用技术名称)设计元数据,如模型、界面、流程、集成设计、数据可视化导出为json文件的能力,具备筛选导出、一键导出两种方式以满足不同业务场景需要。
目标是实现在多个环境通过技术接口调用、或通过应用中心导入界面完成导入,使设计元数据在不同环境之间快速迁移同步:
image.png
image.png

:::info

  • 因平台允许多个应用名称相同,能够唯一定位具体应用使用的是‘应用技术名称’,因此识别应用标识的依据为应用技术名称。
    :::

    设计导入

    迁移导入

    对于已导出设计元数据json文件,如果导出类型为‘迁移导出’,可以在不同环境,通过应用中心——>已安装应用——>设计导入(迁移),实现设计数据导入:
    image.png

    标品导入

    对于导出类型为‘标品导出’的设计元数据,目前只支持通过技术接口形式完成导入,暂不支持界面进行可视化导入操作。

    导出导入任务

    不同环境设计元数据以导入json文件方式进行迁移的基础是设计导出,基于界面导入实现设计元数据在不同环境进行迁移场景、或通过技术接口导入以实现标品升级的场景,存在导出类型为迁移导出、标品导出的区别。
    使用此功能的操作者需要依据实际需求场景进行相应导出类型的选择。

    导出任务查看

    对于已经执行导出的任务,可通过‘应用环境——>设计导出’查看导出任务信息:
    image.png
    image.png

    导入任务查看

    对于已经执行导入的任务,可通过‘应用环境——>设计导入’查看导入任务状态、进度、详细信息:
    image.png
    image.png

    部署任务

    部署任务功能用于查看设计数据同步部署功能任务状态、详细信息;分为发起环境任务查看、目标环境任务查看。
    无论是发起环境,或是目标环境,均通过所属环境‘应用环境’中‘部署任务’功能进行查看:
    image.png

    二 产品功能操作手册

    设计导出

    环境迁移导出

    点击‘业务应用——>应用中心’,进入应用中心,默认显示‘应用列表’标签页:
    image.png
    选择‘已安装’应用——>操作,出现操作菜单:
    image.png
    选择‘设计导出’,显示支持导出的各设计项:
    image.png

    模型导出

    操作菜单选择‘模型导出’:
    image.png
    打开模型导出信息弹窗:
    image.png
    在弹窗页中存在要素信息项及操作项:

  • 导出类型:选择‘迁移导出’。

  • 文件名称:默认为‘应用名称+设计类型’。

  • 导出模式:异步模式,不可修改。

  • 导出格式:JSON文件,不可修改。

  • 一键导出:操作项,直接导出当前应用下的所有无代码模型,不需要筛选。

  • 筛选导出:操作项,进入无代码模型导出筛选页,选择要导出的设计数据。

    一键导出

    点击‘一键导出’,关闭弹窗,回到应用中心,右上角出现导出进行中提示信息:
    image.png
    导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

    筛选导出

    点击‘筛选导出’,进入无代码模型导出筛选页:
    image.png
    筛选页面按照‘模型类型’、‘可用/废弃’、‘来源’选择或输入查找条件,点击‘搜索’,进行条件搜索,查找满足条件无代码模型:
    image.png
    点击‘重置’按钮,清空已输入查找条件:
    image.png
    点击列表标题栏勾选框,可进行全选/取消全选操作,全选——选择全部模型,取消全选——取消所有已勾选项:
    image.png
    勾选要导出模型,点击‘导出’按钮:
    image.png
    回到应用中心,右上角提示导出信息:
    image.png
    导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

    界面导出

    ‘业务应用——>应用中心’,进入应用中心,选择已安装应用——>操作——>设计导出——>界面导出,弹出界面导出信息项弹窗,‘导出类型’选择‘迁移导出’:
    image.png

    一键导出

    点击‘一键导出’,关闭弹窗,回到应用中心,右上角出现导出进行中提示信息:
    image.png
    界面导出会将所选菜单项、菜单目录路径、菜单绑定页面、页面使用的自定义组件全部导出为json文件。
    导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

    筛选导出

    点击‘筛选导出’,进入应用环境——>界面导出筛选页面,显示当前应用下所有菜单项:
    image.png
    查询项‘菜单名称’输入名称,点击‘搜索’按钮,进行模糊查找匹配的菜单项:
    image.png
    点击‘清除’按钮,清除已输入的查询内容:
    image.png
    勾选菜单项后,点击‘导出’按钮:
    image.png
    回到应用中心页面,同时页面右上角提示导出进行中信息:
    image.png
    界面导出会将所选菜单项、上级菜单目录项、菜单绑定页面、页面使用的自定义组件全部导出为json文件。
    导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

    流程导出

    点击‘业务应用——>应用中心’,进入应用中心,选择已安装应用——>操作——>设计导出——>流程导出,弹出导出信息弹窗:
    image.png
    ‘导出类型’选择‘迁移导出’。

    一键导出

    点击‘一键导出’:
    image.png
    关闭弹窗,回到应用中心,右上角出现导出进行中提示信息:
    image.png
    一键导出流程数据会按照应用技术名称,将当前应用下所有流程、元数据、涉及的业务数据如审批用户、角色等全部导出为json文件。
    导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

    筛选导出

    点击‘筛选导出’:
    image.png
    进入流程数据筛选页面,显示当前应用(技术名称)下所有已发布流程:
    image.png
    支持按照流程名称(模糊匹配)、触发方式(模型触发、定时触发、日期触发、子流程)进行筛选;输入筛选条件,点击搜索按钮,查找匹配结果:
    image.png
    点击‘清除’按钮,清空筛选内容:
    image.png
    勾选列表流程项,点击‘导出’按钮:
    image.png
    返回应用中心,同时页面右上角提示导出信息:
    image.png
    流程导出会将应用(技术名称)下的所有已发布流程及相关元数据、业务数据全部导出为json文件。
    导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

    集成导出

    点击‘业务应用——>应用中心’,进入应用中心,选择已安装应用——>操作——>设计导出——>集成导出,弹出集成导出信息项弹窗,‘导出类型’选择‘迁移导出’:
    image.png

    一键导出

    点击‘一键导出’,关闭弹窗,回到应用中心,右上角出现导出进行中提示信息:
    image.png
    一键导出集成数据会按照应用技术名称,将所有已发布数据流程;以及所有已启用连接器(与应用无关)、已启用开放接口(与应用无关)全部导出为json文件。
    导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

    筛选导出

    点击‘筛选导出’:
    image.png
    进入集成数据筛选页面,默认显示‘连接器’标签页——>应用(已启用)数据项列表:
    image.png
    可选项:

  • 连接器:应用(已启用状态)、数据库(已启用状态)、与应用无关。

  • 数据流程:已发布状态,且属于发起导出应用(技术名称)下的数据流程。

  • 开放平台:API接口(已启用状态)、与应用无关。

以上各项在列表中展示的数据均可勾选并支持导出为json文件:
image.png
勾选列表数据项,点击‘导出’按钮:
image.png
image.png
回到应用中心,右上角显示导出提示信息:
image.png
导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

数据可视化导出

点击‘业务应用——>应用中心’,进入应用中心,选择已安装应用——>操作——>设计导出——>数据可视化导出,弹出数据可视化导出信息项弹窗,‘导出类型’选择‘迁移导出’:
image.png

一键导出

点击‘一键导出’:
image.png
关闭弹窗,回到应用中心,右上角出现导出进行中提示信息:
image.png
一键导出数据可视化会将所有已发布图表(含路径目录)、报表(含路径目录)、数据大屏(含路径目录)、图表模版全部导出为json文件。
导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

筛选导出

点击‘筛选导出’:
image.png
进入数据可视化筛选列表页面,默认显示‘图表’标签页,并展示已发布图表数据项列表:
image.png
标签页:

  • 图表:显示所有已发布状态图表,以树形结构展示,支持按照‘图表名称’模糊匹配查找。
  • 报表:显示所有已发布状态报表,以树形结构展示,支持按照‘报表名称’模糊匹配查找。
  • 数据大屏:显示所有已发布状态数据大屏,以树形结构展示,支持按照‘数据大屏名称’模糊匹配查找。
  • 图表模版:显示所有图表模版,列表形式展示,支持按照‘图表名称’模糊匹配查找。

image.png
勾选列表数据项,点击‘导出’按钮:
image.png
关闭弹窗,回到应用中心,右上角出现导出进行中提示信息:
image.png
筛选导出数据可视化数据会将所有已发布图表(含路径目录)、报表(含路径目录)、数据大屏(含路径目录)、图表模版全部导出为json文件。
导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

标品导出

点击‘业务应用——>应用中心’,进入应用中心,点击‘应用列表’标签项;选择‘已安装’应用,点击操作,出现操作菜单:
image.png
选择‘设计导出’,显示支持导出的各设计项:
image.png

模型导出

点击‘业务应用——>应用中心’,进入应用中心;点击已安装应用——>操作,出现操作菜单:
image.png
选择‘设计导出——>模型导出’:
image.png
打开导出信息弹窗:
image.png

一键导出

导出过程同《1.1.1.1 设计导出/环境迁移导出/模型导出/一键导出》,区别是标品导出json文件无法通过前端页面导入其它环境,只能通过技术接口导入。
导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

筛选导出

导出过程同《1.1.1.2 设计导出/环境迁移导出/模型导出/筛选导出》,区别是标品导出json文件无法通过前端页面导入其它环境,只能通过技术接口导入。
导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

界面导出

点击‘业务应用——>应用中心’,进入应用中心;选择已安装应用——>操作——>设计导出——>界面导出,‘导出类型’选择‘标品导出’:
image.png

一键导出

导出过程同《1.1.2.1 设计导出/环境迁移导出//界面导出/一键导出》,区别是标品导出json文件无法通过前端页面导入其它环境,只能通过技术接口导入。
导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

筛选导出

导出过程同《1.1.2.2 设计导出/环境迁移导出/界面导出/筛选导出》,区别是标品导出json文件无法通过前端页面导入其它环境,只能通过技术接口导入。
导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

流程导出

点击‘业务应用——>应用中心’,进入应用中心;选择已安装应用——>操作——>设计导出——>流程导出,‘导出类型’选择‘标品导出’:
image.png

一键导出

导出过程同《1.1.3.1 设计导出/环境迁移导出/流程导出/一键导出》,区别是标品导出json文件无法通过前端页面导入其它环境,只能通过技术接口导入。
导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

筛选导出

导出过程同《1.1.3.2 设计导出/环境迁移导出/流程导出/筛选导出》,区别是标品导出json文件无法通过前端页面导入其它环境,只能通过技术接口导入。
导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

集成导出

点击‘业务应用——>应用中心’,进入应用中心;选择已安装应用——>操作——>设计导出——>集成导出,‘导出类型’选择‘标品导出’:
image.png

一键导出

导出过程同《1.1.4.1 设计导出/环境迁移导出/集成导出/一键导出》,区别是标品导出json文件无法通过前端页面导入其它环境,只能通过技术接口导入。
导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

筛选导出

导出过程同《1.1.4.2 设计导出/环境迁移导出/集成导出/筛选导出》,区别是标品导出json文件无法通过前端页面导入其它环境,只能通过技术接口导入。
导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

数据可视化导出

点击‘业务应用——>应用中心’,进入应用中心;选择已安装应用——>操作——>设计导出——>数据可视化导出,‘导出类型’选择‘标品导出’:
image.png

一键导出

导出过程同《1.1.5.1 设计导出/环境迁移导出/数据可视化导出/一键导出》,区别是标品导出json文件无法通过前端页面导入其它环境,只能通过技术接口导入。
导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

筛选导出

导出过程同《1.1.5.2 设计导出/环境迁移导出/数据可视化导出/筛选导出》,区别是标品导出json文件无法通过前端页面导入其它环境,只能通过技术接口导入。
导出任务状态信息、导出任务详细信息查看方式参见《1.3 设计导出/导出任务查看》。

导出任务查看

点击‘业务应用——>应用环境’,进入应用环境:
image.png
点击‘设计导出’,显示导出任务信息列表:
image.png
点击导出任务项操作栏‘详情’,进入导出任务详情查看页:
image.png
点击‘关联文件’,可保存下载导出文件:
image.png
点击‘返回’按钮:
image.png
回到导出任务信息列表页。

设计导入

环境迁移导入

进入导入目标环境,点击‘业务应用——>应用中心’,进入应用中心;选择要导入设计数据的已安装应用:
image.png

模型导入

导入

选择‘模型导入’:
image.png
打开导入文件上传信息弹窗:
image.png
选择要导入的json文件:
image.png
选择文件后,显示待导入文件:
image.png
点击‘确定’按钮,执行设计数据迁移导入:
image.png
如果选择的导入文件类型为非迁移导出文件,则右上方提示(其它设计类型迁移导入文件类型同此):
image.png
导入文件选择正确,点击确定后,右上角提示导入信息:
image.png
点击‘设计器——>模型设计器’:
image.png

验证导入结果

进入导入环境模型设计器,查看导入数据是否已成功导入:
image.png
image.png

界面导入

导入

选择‘界面导入’:
image.png
打开导入文件上传弹窗:
image.png
选择要导入的json文件上传后,点击‘确定’按钮,关闭弹窗,右上角显示导入提示信息:
image.png

验证导入结果

进入界面设计器,检查导出数据是否正确导入:
image.png
image.png
image.png

流程导入

导入

选择‘流程导入’:
image.png
打开导入文件上传弹窗页面:
image.png
选择要导入的json文件上传后,点击‘确定’按钮,关闭弹窗,右上角显示导入提示信息:
image.png

验证导入结果

进入流程设计器,检查导出数据是否正确导入:
image.png
image.png

集成导入

导入

选择‘集成导入’:
image.png
打开导入文件上传弹窗:
image.png
选择要导入的json文件上传后,点击‘确定’按钮,关闭弹窗,右上角显示导入提示信息:
image.png

验证导入结果

进入集成设计器,检查导出数据是否正确导入。
验证连接器:
image.png
image.png
验证数据流程:
image.png
image.png
验证开放接口:
image.png
image.png

数据可视化导入

导入

选择‘数据可视化导入’:
image.png
打开导入文件上传弹窗:
image.png
选择要导入的json文件上传后,点击‘确定’按钮,关闭弹窗,右上角显示导入提示信息:
image.png

验证导入结果

进入数据可视化,检查导出数据是否正确导入:
验证图表:
image.png
image.png
验证报表:
image.png
image.png
验证数据大屏:
image.png
image.png
验证图表模版:
image.png
image.png

设计导入任务查看

导入环境,点击‘业务应用——>应用环境’,进入应用环境;点击‘设计导入’:
image.png
显示所有设计导入信息列表:
image.png
点击‘详情’,查看设计导入详细信息:
image.png
点击‘返回’按钮,回到导入信息列表展示页:
image.png

同步部署

部署环境管理

创建部署环境

选择:业务应用——>应用环境,进入应用环境;默认显示当前所有已配置环境:
image.png

删除部署环境配置

未勾选任何已配置部署环境时,删除按钮不可用:
image.png
勾选一条或多条已配置环境信息,点击”删除“,可完成已配置部署环境删除:
image.png

编辑部署环境配置

点击部署环境配置项操作栏‘编辑’操作,进入部署环境配置项编辑页:
image.png
支持对所有配置项数据进行修改编辑;其中标红项为必须,即不能为空,且名称不能重复。
点击‘返回’按钮,放弃本次编辑,回到部署环境配置项列表页:
image.png
点击‘确定’按钮,保存编辑内容,并回到部署环境配置列表展示页:
image.png

部署环境详情查看

点击部署环境配置项,操作栏‘详情’,进入部署环境配置项详情查看页面:
image.png
点击‘返回’按钮,回到部署环境配置列表展示页:
image.png

确认部署目标环境配置

进入应用环境,点击‘部署环境配置’,显示当前已配置环境列表:
image.png
检查是否已配置同步部署目标环境,如已存在,无需再次配置。
image.png

模型部署

应用中心选择已安装应用——>操作——>同步部署——>模型部署:
image.png
打开模型部署弹窗:
image.png
选择部署环境(必须):
image.png

一键部署

点击‘一键部署’按钮:
image.png
回到应用中心,页面右上方出现一键部署提示信息:
image.png

筛选部署

点击‘筛选部署’按钮:
image.png
进入模型筛选页面,操作同《1.1.1.2 设计导出/环境迁移导出/模型导出/筛选导出》,区别是筛选完成后需要点击‘同步’按钮,即可无需导出导入过程,直接将已选择模型同步部署至目标环境:
image.png

部署结果验证

进入部署目标环境/模型设计器,查看模型同步部署结果,操作同《2.1.1.2 设计导入/环境迁移导入/模型导入/验证导入结果》。

界面部署

应用中心选择已安装应用——>操作——>同步部署——>界面部署:
image.png
打开部署弹窗:
image.png
选择部署环境(必须):
image.png

一键部署

点击‘一键部署’按钮:
image.png
回到应用中心,页面右上方出现一键部署提示信息:
image.png

筛选部署

点击‘筛选部署’按钮:
image.png
进入筛选页面,操作同《1.1.2.2 设计导出/环境迁移导出/界面导出/筛选导出》,区别是筛选完成后需要点击‘同步’按钮,即可无需导出导入过程,直接将已选择数据同步部署至目标环境:
image.png

验证部署结果

进入部署目标环境/界面设计器,查看界面同步部署结果,操作同《2.1.2.2 设计导入/环境迁移导入/界面导入/验证导入结果》。

流程部署

应用中心选择已安装应用——>操作——>同步部署——>流程部署:
image.png
打开流程部署弹窗:
image.png
选择部署环境(必须):
image.png

一键部署

点击‘一键部署’按钮:
image.png
回到应用中心,页面右上方出现一键部署提示信息:
image.png
当前应用(技术名称)下所有已启用状态流程、所使用元数据、所使用业务数据,同步部署至目标环境。

筛选部署

点击‘筛选部署’按钮:
image.png
进入筛选页面,操作同《1.1.3.2 设计导出/环境迁移导出/流程导出/筛选导出》,区别是筛选完成后需要点击‘同步’按钮,即可无需导出导入过程,直接将已选择数据同步部署至目标环境:
image.png

验证部署结果

进入部署目标环境/流程设计器,查看同步部署结果,操作同《2.1.3.2 设计导入/环境迁移导入/流程导入/验证导入结果》。

集成部署

应用中心选择已安装应用——>操作——>同步部署——>集成部署:
image.png
打开部署弹窗:
image.png
选择部署环境(必须):
image.png

一键部署

点击‘一键部署’按钮:
image.png
回到应用中心,页面右上方出现一键部署提示信息:
image.png
当前应用(技术名称)下所有已启用连接器、已发布数据流程、已启用数据库(与应用无关)、已启用开放接口(与应用无关),同步部署至目标环境。

筛选部署

点击‘筛选部署’按钮:
image.png
进入筛选页面,操作同《1.1.4.2 设计导出/环境迁移导出/集成导出/筛选导出》,区别是筛选完成后需要点击‘同步’按钮,即可无需导出导入过程,直接将已选择数据同步部署至目标环境:
image.png

验证部署结果

进入部署目标环境/集成设计器,查看同步部署结果,操作同《2.1.4.2 设计导入/环境迁移导入/集成导入/验证导入结果》。

数据可视化部署

应用中心选择已安装应用——>操作——>同步部署——>数据可视化部署:
image.png
打开部署弹窗:
image.png
选择部署环境(必须):
image.png

一键部署

点击‘一键部署’按钮:
image.png
回到应用中心,页面右上方出现一键部署提示信息:
image.png
当前环境所有图表、报表、数据大屏,以及所有图表模板(无发布状态),同步部署至目标环境。

筛选部署

点击‘筛选部署’按钮:
image.png
进入筛选页面,操作同《1.1.5.2 设计导出/环境迁移导出/数据可视化导出/筛选导出》,区别是筛选完成后需要点击‘同步’按钮,即可无需导出导入过程,直接将已选择数据同步部署至目标环境:
image.png

验证部署结果

进入部署目标环境/数据可视化,查看同步部署结果,操作同《2.1.5.2 设计导入/环境迁移导入/数据可视化导入/验证导入结果》。

部署任务查看

发起环境部署任务查看

进入部署发起环境,点击‘业务应用——>应用环境’,进入应用环境后点击‘部署任务’,显示部署任务信息列表:
image.png
点击‘详情’,查看部署任务详细信息:
image.png
点击‘返回’按钮:
image.png
返回部署任务信息展示列表。

目标环境部署任务查看

进入部署目标环境,点击‘业务应用——>应用环境’,进入应用环境后点击‘部署任务’,显示部署任务信息列表:
image.png
其它操作同《3.7.1 同步部署/部署任务查看/发起环境部署任务查看》。

Oinone社区 作者:shao原创文章,如若转载,请注明出处:https://doc.oinone.top/designer/14947.html

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

(0)
shao的头像shao数式管理员
上一篇 2024年8月7日 pm10:28
下一篇 2024年8月8日 pm12:19

相关推荐

  • 数据可视化-如何自定义查询数据方法

    场景 根据测试商品,汇总数据通过测试统计商品透出到数据可视化图表数据; 统计商品类目的最大库存以及平均售价信息 测试商品模型 @Model.model(DemoItem.MODEL_MODEL) @Model(displayName = "测试商品", labelFields = "name") @Model.Code(sequence = "SEQ", prefix = "IT", size = 8) public class DemoItem extends CodeModel { private static final long serialVersionUID = -5104390780952631397L; public static final String MODEL_MODEL = "demo.DemoItem"; @Field.String @Field(displayName = "商品名称") private String name; @Field.Html @Field(displayName = "商品描述") private String description; @Field.Money(D=2) @Field(displayName = "商品价格") private BigDecimal itemPrice; @Field.Integer @Field(displayName = "商品库存") private Long inventoryQuantity; …. 测试商品统计 @Model.model(DemoItemStatistics.MODEL_MODEL) @Model(displayName = "测试商品统计", labelFields = "name") public class DemoItemStatistics extends IdModel { private static final long serialVersionUID = 5626273740800455515L; public static final String MODEL_MODEL = "demo.DemoItemStatistics"; @Field.String @Field(displayName = "类目名称") private String categoryName; @Field.Integer @Field(displayName = "商品库存") private Long inventoryQuantity; @Field.Money @Field(displayName = "商品价格") private BigDecimal itemPrice; } 自定义商品类目统计数据 【注意】 图表设计器能获取到的接口需指定:category = FunctionCategoryEnum.QUERY_PAGE,且出参和入参类型要与本示例一致 @Function.Advanced(type = FunctionTypeEnum.QUERY, displayName = "商品统计列表", category = FunctionCategoryEnum.QUERY_PAGE) @Function.fun(FunctionConstants.queryPage) @Function(openLevel = {FunctionOpenEnum.LOCAL, FunctionOpenEnum.REMOTE, FunctionOpenEnum.API}) public Pagination<DemoItemStatistics> queryPage(Pagination<DemoItemStatistics> page, IWrapper<DemoItemStatistics> queryWrapper) { List<DemoItemStatistics> list = new ArrayList<>(); List<DemoItem> items = demoItemService.queryListByWrapper(Pops.<DemoItem>lambdaQuery() .from(DemoItem.MODEL_MODEL) .eq(DemoItem::getStatus, ItemStatusEnum.ACTIVE)); if(CollectionUtils.isEmpty(items)) return page; Map<Long, List<DemoItem>> itemMap = items.stream().collect(Collectors.groupingBy(DemoItem::getCategoryId)); for (Map.Entry<Long, List<DemoItem>> longListEntry : itemMap.entrySet()) { long categoryId = longListEntry.getKey(); List<DemoItem> demoItems =…

    2024年5月18日
    1.5K00
  • 项目中工作流引入和流程触发

    目录 1. 使用工作流需要依赖的包和设置2. 触发方式2.1 自动触发方式2.2 触发方式 1.使用工作流需要依赖的包和设置 1.1 工作流需要依赖的模块 需在pom.xml中增加workflow、sql-record和trigger相关模块的依赖 workflow:工作流运行核心模块 sql-record:监听流程发布以后对应模型的增删改监听 trigger:异步任务调度模块 <dependency> <groupId>pro.shushi.pamirs.workflow</groupId> <artifactId>pamirs-workflow-api</artifactId> </dependency> <dependency> <groupId>pro.shushi.pamirs.workflow</groupId> <artifactId>pamirs-workflow-core</artifactId> </dependency> <dependency> <groupId>pro.shushi.pamirs.core</groupId> <artifactId>pamirs-sql-record-core</artifactId> </dependency> <dependency> <groupId>pro.shushi.pamirs.core</groupId> <artifactId>pamirs-trigger-core</artifactId> </dependency> <dependency> <groupId>pro.shushi.pamirs.core</groupId> <artifactId>pamirs-trigger-bridge-tbschedule</artifactId> </dependency> 在application.yml中增加对应模块的依赖以及sql-record路径以及其他相关设置 pamirs: … record: sql: #改成自己路径 store: /opt/pamirs/logs … boot: init: true sync: true modules: … – sql_record – trigger – workflow … sharding: define: data-sources: ds: pamirs models: "[trigger.PamirsSchedule]": tables: 0..13 event: enabled: true schedule: enabled: true # ownSign区分不同应用 ownSign: demo rocket-mq: # enabled 为 false情况不用配置 namesrv-addr: 192.168.6.2:19876 trigger: auto-trigger: true 2.触发方式 2.1自动触发方式 在流程设计器中设置触发方式,如果设置了代码触发方式则不会自动触发 2.2代码调用方式触发 2.2.1.再流程设计器中触发设置中,设置为是否人工触发设置为是 2.2.2.查询数据库获取该流程的编码 2.2.3.在代码中调用 /** * 触发⼯作流实例 */ private Boolean startWorkflow(WorkflowD workflowD, IdModel modelData) { WorkflowDefinition workflowDefinition = new WorkflowDefinition().queryOneByWrapper( Pops.<WorkflowDefinition>lambdaQuery() .from(WorkflowDefinition.MODEL_MODEL) .eq(WorkflowDefinition::getWorkflowCode, workflowD.getCode()) .eq(WorkflowDefinition::getActive, 1) ); if (null == workflowDefinition) { // 流程没有运⾏实例 return Boolean.FALSE; } String model = Models.api().getModel(modelData); //⼯作流上下⽂ WorkflowDataContext wdc = new WorkflowDataContext(); wdc.setDataType(WorkflowVariationTypeEnum.ADD); wdc.setModel(model); wdc.setWorkflowDefinitionDefinition(workflowDefinition.parseContent()); wdc.setWorkflowDefinition(workflowDefinition); wdc.setWorkflowDefinitionId(workflowDefinition.getId()); IdModel copyData = KryoUtils.get().copy(modelData); // ⼿动触发创建的动作流,将操作⼈设置为当前⽤户,作为流程的发起⼈ copyData.setCreateUid(PamirsSession.getUserId()); copyData.setWriteUid(PamirsSession.getUserId()); String jsonData = JsonUtils.toJSONString(copyData.get_d()); //触发⼯作流 新增时触发-onCreateManual 更新时触发-onUpdateManual Fun.run(WorkflowModelTriggerFunction.FUN_NAMESPACE, "onCreateManual", wdc, msgId, jsonData); return Boolean.TRUE; }

    2023年11月7日
    1.7K00
  • 表格字段配置Switch开关

    在业务开发中,我们经常会遇到表格中有个Switch开关组件: 那么如何通过界面设计器配置这个组件呢,下面让我们一起来学习下吧。 设计布尔类型的组件 1: 首先在界面设计器的组件区域添加一个组件。 2: 我们给这个组件添加一个元件,元件的配置必须跟下面的一致 3: 给元件添加属性配置 拖拽一个单行文本字段, 字段编码必须是truthyAction,代表的是该字段为true的时候要执行的动作 再拖拽一个单行文本字段, 字段编码必须是falsyAction,代表的是该字段为false的时候要执行的动作 4: 发布元件,然后再去对应的界面设计器页面,将对应的字段切换成刚刚设计的组件 5: 发布界面设计器,染红我们可以在运行时的页面看到效果 当switch切换的时候,会执行对应的action

    2023年11月21日
    2.0K00
  • 【界面设计器】树下拉/级联

    阅读之前 你应该: 熟悉模型的增删改查相关内容。【界面设计器】模型增删改查基础 了解联动关系的相关内容。【界面设计器】左树右表 名词解释 字段组件:为字段提供交互能力的组件,一个字段对应一个组件。 关联关系字段:在模型中与其他模型建立关联关系的字段。 可选项:选择组件使用的具体选项,可以是静态的,也可以是动态的。 选中:用户在使用选择组件时,针对某一选项标记或提取这一选项。 概述 本章内容主要是对【界面设计器】左树右表内容中提及的字段相关内容的补充,并非完整教程,有不清楚的地方可以交替阅读进行理解。 场景 沿用【界面设计器】左树右表中的两个场景。 我们可以做出这些优化: 将【商品类目】的【上级类目】组件改为【级联】组件。其第1级为【商品类目】,使用自关联依次展开。 将【部门】的【上级部门】组件改为【树下拉】组件。其第1级为【公司】,第2级为【部门】,【部门】使用自关联依次展开。 PS:本章不提供任何步骤介绍,请根据场景内容自行探索。 扩展知识 具备选择行为的组件 常用的选择组件可以进行一些基本的划分。 从可选数量来看 单选:只能选一个值。 多选:可以选择多个值。 从业务类型来看 枚举(Enum):通过数据字典提供可选项。 布尔(Boolean):可以看作一个特殊的枚举,其可选范围只有是和否。 一对一(O2O)和多对一(M2O):对一(X2O)类型仅支持单选,通过关联模型的数据源提供可选项。 一对多(O2M)以及多对多(M2M):对多(X2M)类型仅支持多选,通过关联模型的数据源提供可选项。 从交互形态来看 单选框(Radio) 多选框(Checkbox) 下拉选择(Select) 树下拉(TreeSelect) 级联(Cascader) 其中,树下拉(TreeSelect)和级联(Cascader)组件要求数据源可以构成树结构,因此通常使用这两个字段组件的都是关联关系字段。 下拉选择(Select) 在介绍树下拉/级联之前,我们有必要先了解一下在关联关系字段中使用下拉选择(Select)这一字段组件的表现情况。 根据关联关系字段对应的关联模型,我们可以获得其组件所需的可选项,在用户进行选中后,该组件将获得一个选项值,并且在表单提交、计算公式等被使用。 通常情况下,我们通过queryPage接口获取分页后的可选项列表,再通过点击/滚动方式获得其他页的可选项供用户选择。 树下拉(TreeSelect)/级联(Cascader) 与上述介绍的下拉选择(Select)不同点在于,其可选项是通过【联动关系】配置进行获取的,它并不要求直接获取到真正可以被选择的可选项,而是通过树结构依次展开的。用户可选择的可选项一定是与关联关系字段对应的关联模型相同的树节点。对于无法选择的节点,其主要作用在于将数据进行划分,以便于用户进行选择。 由于树节点具备特殊性,无法直接使用平台的任何一个模型。因此树结构被定义在UiTreeNode模型中,该模型是描述树结构的基本模型,其提供了多个接口为树结构的查询提供了基本能力。 通常情况下,在创建页面,我们通过UiTreeNode模型的fetchChildren接口依次获取其子节点。在编辑页面,我们通过fetchAll、reverselyQuery、reverselyQueryWithSize这三个接口获取回填的数据,根据不同情况进行调用。虽然使用来不同的接口,但最终都会使用当前模型的queryPage接口获取数据。

    2023年11月1日
    2.2K00
  • 创建与编辑一体化

    在业务操作中,用户通常期望能够在创建页面后立即进行编辑,以减少频繁切换页面的步骤。我们可以充分利用Oinone平台提供的创建与编辑一体化功能,使操作更加高效便捷。 通过拖拽实现表单页面设计 在界面设计器中,我们首先需要设计出对应的页面。完成页面设计后,将需要的动作拖入设计好的页面。这个动作的关键在于支持一个功能,即根据前端传入的数据是否包含id来判断是创建操作还是编辑操作。 动作的属性配置如下: 前端自定义动作 一旦页面配置完成,前端需要对这个动作进行自定义。以下是一个示例的代码: @SPI.ClassFactory( ActionWidget.Token({ actionType: [ActionType.Server], model: '模型', name: '动作的名称' }) ) export class CreateOrUpdateServerActionWidget extends ServerActionWidget { @Widget.Reactive() protected get updateData(): boolean { return true; } } 通过以上步骤,我们实现了一个更智能的操作流程,使用户能够在创建页面的同时进行即时的编辑,从而提高了整体操作效率。这种创建与编辑一体化的功能不仅使操作更加顺畅,同时也为用户提供了更灵活的工作流程。

    2023年11月21日
    2.0K00

Leave a Reply

登录后才能评论