文档首页/ 工业数字模型驱动引擎/ API参考/ API/ 数据建模引擎/ 树形结构/ 批量添加实例的子节点 - BatchAddChildNode
更新时间:2026-07-28 GMT+08:00
分享

批量添加实例的子节点 - BatchAddChildNode

功能介绍

本接口用于批量为指定数据实例添加子节点,建立父子层级关联关系。当BOM(物料清单)需要新增子装配节点、组织架构需要新增下属团队或产品分类需要新增下级类目时,可调用本接口批量完成节点挂载。

  • 调用本接口时,需在parentId中指定父节点实例ID,在childList中传入待添加为子节点的实例ID列表。

  • 添加操作执行后,子节点将发生以下变更:

    • 父节点(parentNode)字段被设置为指定的父节点。

    • 根节点(rootNode)字段被设置为父节点所在树的根节点。

  • 全路径(fullPath)和原始全路径(rawFullPath)字段被更新为包含父节点路径的完整路径。

接口约束

  • 目标数据模型已在应用设计态配置了“树形结构”功能。

  • 待作为父节点和子节点的数据实例必须已存在,且未被删除。

  • 待添加的子节点实例当前必须没有父节点(即为根节点),否则无法被添加为其他节点的子节点。

调试

您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。

授权信息

账号具备所有API的调用权限,如果使用账号下的IAM用户调用当前API,该IAM用户需具备调用API所需的权限,具体权限要求请参见权限和授权项

URI

POST /rdm_{identifier}_app/publicservices/api/{modelName}/batchAddChildNode

表1 路径参数

参数

是否必选

参数类型

描述

identifier

String

参数解释:

应用的唯一标识。

  • 于2023年06月01日之前创建的应用,其唯一标识为该应用的名称。

  • 于2023年06月01日之后创建的应用,其唯一标识为该应用的ID。

获取方法请参见获取运行服务清单 - ListEnvs

约束限制:

不涉及。

取值范围:

  • 于2023年06月01日之前创建的应用:由英文字母和数字组成,长度为1-36个字符。

  • 于2023年06月01日之后创建的应用:由英文字母和数字组成,且长度为32个字符。

默认取值:

不涉及。

modelName

String

参数解释:

数据模型的英文名称。

约束限制:

不涉及。

取值范围:

以大写字母开头,只能包含字母、数字、“_”,且长度为1-60个字符。

默认取值:

不涉及。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

IAM用户的token。

获取方法请参见获取IAM用户Token

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表3 请求Body参数

参数

是否必选

参数类型

描述

applicationId

String

参数解释:

应用ID,用于指定实例所属的应用。

当URL路径中已能明确应用上下文时,此参数可不传。

获取方法请参见获取租户下的应用清单 - ListApps

约束限制:

不涉及。

取值范围:

  • 于2023年06月01日之前创建的应用:由英文字母和数字组成,长度为1-36个字符。

  • 于2023年06月01日之后创建的应用:由英文字母和数字组成,且长度为32个字符。

默认取值:

不涉及。

params

BatchOperateChildDTO object

参数解释:

请求参数对象,包含待添加子节点的父节点ID和子节点实例ID列表。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表4 BatchOperateChildDTO

参数

是否必选

参数类型

描述

childList

Array of strings

参数解释:

子节点实例ID列表,用于指定待批量添加为目标父节点子节点的实例。列表中的每个元素对应一个需要挂载的子节点实例ID,这些实例当前必须没有父节点。

约束限制:

子节点实例当前必须没有父节点。

取值范围:

-9223372036854775808到9223372036854775807的整数。

默认取值:

不涉及。

parentId

String

参数解释:

父节点实例ID,用于指定待添加子节点所属的目标父节点。例如BOM中的某个装配节点ID、组织架构中的某个部门ID等。

约束限制:

不涉及。

取值范围:

-9223372036854775808到9223372036854775807的整数。

默认取值:

不涉及。

响应参数

状态码:200

表5 响应Body参数

参数

参数类型

描述

result

String

参数解释:

请求处理结果状态。

取值范围:

  • SUCCESS:请求成功。

  • FAIL:请求失败。

data

Array of TreeableModelViewDTO objects

参数解释:

请求数据,返回批量添加后的子节点信息列表,包含更新后的根节点、父节点、全路径等树形结构属性。

取值范围:

不涉及。

errors

Array of strings

参数解释:

异常信息列表。当result为FAIL时,返回具体的错误描述,包含失败原因及建议处理方式。

取值范围:

不涉及。

表6 TreeableModelViewDTO

参数

参数类型

描述

id

String

参数解释:

唯一标识,系统生成的子节点主键ID。

取值范围:

-9223372036854775808到9223372036854775807的整数。

creator

String

参数解释:

创建者账号,标识创建该子节点的用户。

取值范围:

不涉及。

modifier

String

参数解释:

更新者账号,标识最后更新该子节点的用户。

取值范围:

不涉及。

createTime

String

参数解释:

创建时间。使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。

取值范围:

不涉及。

lastUpdateTime

String

参数解释:

最新更新时间。使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。

取值范围:

不涉及。

rdmVersion

Integer

参数解释:

系统版本号,用于数据版本控制。

取值范围:

不涉及。

rdmDeleteFlag

Integer

参数解释:

软删除标识。

取值范围:

  • 0:表示未删除。

  • 1:表示已删除。

rdmExtensionType

String

参数解释:

扩展类型,标识对象的扩展类别。

取值范围:

不涉及。

tenant

TenantViewDTO object

参数解释:

租户信息。

取值范围:

不涉及。

className

String

参数解释:

类名,标识对象的Java类名称。

取值范围:

不涉及。

rootNode

ObjectReferenceViewDTO object

参数解释:

根节点,标识该子节点所在树的根节点信息。

添加子节点后,根节点将被设置为父节点所在树的根节点。

取值范围:

不涉及。

parentNode

ObjectReferenceViewDTO object

参数解释:

父节点,标识该子节点的直接父节点信息。

添加子节点后,父节点将被设置为指定的父节点。

取值范围:

不涉及。

leafFlag

Boolean

参数解释:

是否为叶子节点,标识该节点是否拥有子节点。

取值范围:

  • true:是叶子节点(无子节点)。

  • false:不是叶子节点(有子节点)。

fullPath

String

参数解释:

用于存储当前节点全路径,格式为从根节点到当前节点的ID路径,以“/”分隔。

例如:根节点ID/父节点ID/当前节点ID/。

取值范围:

不涉及。

rawFullPath

String

参数解释:

用于存储当前节点原始全路径,格式与fullPath一致,记录节点在树形结构中的原始层级位置。

取值范围:

不涉及。

表7 TenantViewDTO

参数

参数类型

描述

className

String

参数解释:

租户对象的类名。

取值范围:

不涉及。

code

String

参数解释:

租户编码,用于多租户场景下的租户唯一标识。

取值范围:

不涉及。

createTime

String

参数解释:

租户对象的创建时间。使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。

取值范围:

不涉及。

creator

String

参数解释:

租户对象的创建者账号。

取值范围:

不涉及。

dataSource

String

参数解释:

租户使用的数据源名称,用于多租户数据隔离。

取值范围:

不涉及。

description

String

参数解释:

租户描述信息。

取值范围:

不涉及。

disableFlag

Boolean

参数解释:

租户失效标识,用于标识租户是否已失效。

取值范围:

  • true:失效。

  • false:未失效(默认)。

id

String

参数解释:

租户的唯一标识。

取值范围:

-9223372036854775808到9223372036854775807的整数。

kiaguid

String

参数解释:

租户KIA密级。

取值范围:

不涉及。

lastUpdateTime

String

参数解释:

租户的最后更新时间。使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。

取值范围:

不涉及。

modifier

String

参数解释:

租户的更新者账号。

取值范围:

不涉及。

name

String

参数解释:

租户中文名称。

取值范围:

不涉及。

nameEn

String

参数解释:

租户英文名称。

取值范围:

不涉及。

rdmDeleteFlag

Integer

参数解释:

软删除标识。

取值范围:

  • 0:表示未删除。

  • 1:表示已删除。

rdmExtensionType

String

参数解释:

租户扩展类型。

取值范围:

不涉及。

rdmVersion

Integer

参数解释:

租户对象的系统版本号。

取值范围:

不涉及。

securityLevel

String

参数解释:

租户安全密级,用于标识租户信息的安全等级。

取值范围:

  • internal:内部公开。

  • secret:秘密。

  • confidential:机密。

  • top_secret:绝密。

tenant

TenantViewDTO object

参数解释:

租户信息,表示当前租户的父租户信息。

取值范围:

不涉及。

表8 ObjectReferenceViewDTO

参数

参数类型

描述

id

String

参数解释:

唯一标识,标识关联实例的主键ID。

clazz

String

参数解释:

类名,标识关联实例的类类型。

请求示例

示例:批量为指定父节点添加子节点

将实例ID为616949021809840128的节点批量添加为父节点实例ID为616948972547739648的子节点。

POST https://dme.cn-north-4.huaweicloud.com/rdm_04219627d6794f37ae26e8aba250415d_app/publicservices/api/TreeableModel/batchAddChildNode

{
  "params" : {
    "childList" : [ "616949021809840128" ],
    "parentId" : "616948972547739648"
  }
}

响应示例

状态码:200

OK,表示请求成功。

{
  "result": "SUCCESS",
  "data": [
    {
      "id": "616949021809840128",
      "creator": "xdmAdmin",
      "modifier": "xdmAdmin",
      "createTime": 2024-04-03T02:55:09.158+0000,
      "lastUpdateTime": 2024-04-03T02:55:09.158+0000,
      "rdmVersion": 3,
      "rdmDeleteFlag": 0,
      "rdmExtensionType": "TreeableModel",
      "tenant": {
        "id": "-1",
        "creator": "xdmAdmin",
        "modifier": "xdmAdmin",
        "createTime": 2023-12-01T01:25:21.000+0000,
        "lastUpdateTime": 2023-12-01T01:25:21.000+0000,
        "rdmVersion": 1,
        "rdmDeleteFlag": 0,
        "rdmExtensionType": "Tenant",
        "tenant": null,
        "className": "Tenant",
        "name": "basicTenant",
        "description": "默认租户",
        "kiaguid": null,
        "securityLevel": "internal",
        "nameEn": null,
        "code": "basicTenant",
        "disableFlag": false,
        "dataSource": "DefaultDataSource"
      },
      "className": "TreeableModel",
      "rootNode": {
        "id": "616948972547739648",
        "clazz": "TreeableModel",
        "className": "TreeableModel"
      },
      "parentNode": {
        "id": "616948972547739648",
        "clazz": "TreeableModel",
        "className": "TreeableModel"
      },
      "leafFlag": true,
      "fullPath": "616948972547739648/616949021809840128/",
      "rawFullPath": "616948972547739648/616949021809840128/"
    }
  ],
  "errors": []
}

状态码

状态码

描述

200

OK,表示请求成功。

错误码

请参见错误码

相关文档