1.主子模型的说明

平台主子模型功能升级,具体变动请移步-->主子模型升级 

平台在支持了主子模型之后,我通过项目中功能的实践了一下,熟悉和了解了弹性模型的一些相关的配置操作。主子模型配置属于Model元数据,子模型当中的一个字段与主模型的id进行关联,如图,info界面的显示为主模型中嵌套了一个子模型。与线下GS中的单据头单据体关系很类似。在Wiki的HCM Cloud 元数据规范中,李平老师在Model元数据中对主子模型进行讲解,大家可以去参考学习一下。Model元数据

2.主子模型配置

2.1 建立模型

 我在inspur3环境中建了一个主子模型的小demo。首先,建立两个弹性模型,这里我建立了gsz_model_test作为主模型,gsz_child作为子模型。这两个模型中简单建立了几个字段作为例子的说明。

2.2 在元数据配置

V2版弹性模型可以直接在info元数据中配置,需要注意的是,V2子模型除了要配置childrens之外,还有在fields中配置hc-field-list。元数据如下:

例如,下面主子模型保存时的代码,

这样,保存元数据之后,进入配置好的弹性模型界面,就可以看到子模型已经关联到了主模型当中。

这里建议配置的时候将主模型字段用groups属性进行分组。

2.3 主子模型的一些方法配置

主子模型当中,子模型支持导入导出方法的配置,

导入导出方法是SCOPE下的sub_import和sub_export,在list元数据中的actions属性中可以配置。

在项目的配置当中,有时候需要对新增删除等方法进行校验,这时候需要对新增等方法进行重写。在校验完成之后,需要调用SCOPE中的新增方法createListItem,删除方法removeListItem方法,这里需要注意的是调用这些方法时注意传入参数_list.

子模型list元数据中配置跳转可以用方法STATE.go(),用法与SCOPE.super_go()相同,方法的参数都是('场景',{参数1,参数2....})

例如:STATE.go('common_model_tree_list',{"model":xxx","tree_id":xxxx})

2.4子模型中获取数据

在主子模型当中,有时候根据业务功能的需要,要在子模型当中获取主模型的值,或者操作子模型获取子模型中某一行的值。

在list元数据配置中获取主模型字段的值可以通过SCOPE.model.parent_data.字段名的方式获取。

在info元数据中可以通过SCOPE.params.alter.字段名获取。

获取当前选中的行的某个字段值_list.list_model.selected_item.字段名



以上,谢谢阅读。

  • 无标签