EOS Low-Code Platform 8 EOS Low-Code Platform 8
  • 8.3.2 (opens new window)
  • 8.3.1 (opens new window)
  • 8.3LA1 (opens new window)
  • 8.2GA (opens new window)
产品简介
学习指南
更新说明
安装与集成
初见EOS
低代码开发手册
专业代码开发手册
专题场景实战
公共服务框架
应用运行治理
升级手册
常见问题
  • 1 业务规则介绍
  • 1.1 业务规则操作
  • 2.场景
  • 2.1 改变组件状态
  • 2.2 变量赋值

业务规则

# 1 业务规则介绍

当表单数据初始化和表单数据变化时将执行业务规则内函数代码,常用于在创建、查看或编辑表单时,通过设定业务规则改变组件的属性(隐藏、显示、只读、编辑、校验),也可以计算formData数据给定义的变量赋值;本质上深度监听formData数据的变化,然后执行添加的业务规则内函数代码;

注意:1.尽可能避免在业务规则内改变formData内数据,导致循环调用;

​ 2.尽可能避免在业务规则内请求接口;

业务规则生成代码如下:

image-20240124101524220

# 1.1 业务规则操作

在此可添加针对当前表单的业务规则。 业务规则配置页面 规则内容可在代码编辑器中自输入,也可“选择值”和“代码助手”辅助生成代码; 新建规则-01

# 2.场景

# 2.1 改变组件状态

场景:供应商字段为空时,子表格组件不能编辑;

效果如下:

image-20240124103346641

image-20240124103558773

操作:在业务规则添加以下代码:

其中OrderSupplier为供应商绑定的字段,OrderWarehousingentrydetails为子表格绑定的字段;

if (this.formData.OrderSupplier.id == null) {
  this.Api.setDisabled(true, ['OrderWarehousingentrydetails'])
}
else {
  this.Api.setDisabled(false, ['OrderWarehousingentrydetails'])
}

image-20240124104803223

# 2.2 变量赋值

场景:标签页名称绑定变量v_titl,计算订单子表格总价的总给变量v_title赋值

image-20240124110348821

效果如下:

image-20240124110130234

操作:在业务规则添加以下代码:

其中OrderWarehousingentrydetails为子表格绑定的字段;计算this.formData.OrderWarehousingentrydetails数组中totalPrice字段的总和;

let total = _.sumBy(this.formData.OrderWarehousingentrydetails, 'totalPrice')
this.v_title = total == 0 ? "订单详情" : "订单详情(总金额:" + total + ")"

image-20240124105842352

← 表单状态 扩展逻辑 →