EOS Low-Code Platform 8 EOS Low-Code Platform 8
产品简介
安装部署
应用开发
专题场景实战案例
低代码(Low-Code)开发参考手册
高开开发参考手册
流程开发参考手册
AFCenter 使用指南
Governor 使用指南
FAQ
  • 表单中“保存并继续”后能获取上一步保存的信息
  • 1.场景介绍
  • 2.效果展示
  • 3.实现思路
  • 4.操作步骤
  • 4.1 创建机构实体生成表单
  • 4.2 完善表单(方法一)
  • 4.3 完善表单(方法二)

# 表单中“保存并继续”后能获取上一步保存的信息

# 1.场景介绍

新建一个机构表单,在新建机构后点击保存并继续按钮,再新建机构时,父机构ID进行下拉选择时能够关联到上一步新增的机构。

# 2.效果展示

以机构表单为例,新建机构testA,点击保存并继续后查看父机构ID下拉组件,可以选到testA。

效果展示如下:

# 3.实现思路

方法一:

可以在“保存并继续”系统按钮添加动作代码块,使表单执行原本的保存并继续Api.submitFormAndGoOn方法后再次查询接口给下拉选择控件赋值。

方法二:

在“保存并继续”系统按钮添加动作代码块,使表单执行原本的保存并继续Api.submitFormAndGoOn方法后再刷新表单,使表单重新初始化达到刷新下拉选择选项的目的。

# 4.操作步骤

# 4.1 创建机构实体生成表单

初始化数据库,以MySQL为例,示例脚本如下:

    drop table if exists work_organ;
    create table work_organ (
        ID varchar(64) not null,
        CODE varchar(64) comment '机构编码',
        NAME varchar(64) comment '机构名称',
        TYPES varchar(32) comment '机构类型',
        PARENT_ID varchar(64) comment '父机构ID',
        primary key (ID)
    );

右键机构实体,生成表单。

# 4.2 完善表单(方法一)

# 4.2.1 绑定数据源为自定义v_list

在机构表单-表单设置-高级设置-添加内部变量list

在机构表单中,父机构ID:组件类型为下拉选择,绑定数据来源为自定义,绑定变量选择v_list:

# 4.2.2 定义自定义方法getOptionList

在机构表单-表单设置-高级设置-添加方法,方法名为:getOptionList,添加代码块:

示例代码如下:

//接口查询给下拉选择控件下拉选项赋值
let url = "XXX"
let condition = {
  XXX
}
this.Ajax.post(url, condition, true, {
  returnResponse: true
}).then(data => {
  console.log("data====", data)
  this.v_list = data.data.data.map(item => {
    return {
      code: item.id,
      name: item.name
    }
    this.Api.getElement('pid').setOptions(this.v_list) // 设置下拉列表
  })
})  

# 4.2.3 在“保存并继续”系统按钮添加动作代码块

在机构表单-表单设置-按钮设置中添加系统按钮:保存并继续,对保存并继续按钮进行编辑,添加动作代码块:

示例代码如下:

await this.Api.submitFormAndGoOn()
setTimeout(() => {
  this.getOptionList()
}, 500)
    

# 4.2.4 添加表单加载后事件

在机构表单-表单设置-高级设置-添加事件:表单加载后

# 4.3 完善表单(方法二)

# 4.3.1 绑定数据源为数据实体

在机构表单中,父机构ID:组件类型为下拉选择,绑定数据来源为数据实体

# 4.3.2 在“保存并继续”按钮是添加动作代码块

在机构表单-表单设置-按钮设置中添加系统按钮:保存并继续,对保存并继续按钮进行编辑,添加动作代码块:

示例代码如下:

await this.Api.submitFormAndGoOn()
setTimeout(() => {
  this.getLoading = true
  setTimeout(() => {
    this.getLoading = false
  }, 500);
}, 500);
    

← 表单提交后调用自定义服务 富文本控件自定义选择图片 →