文档首页/ 工业数字模型驱动引擎/ API参考/ API/ 数据建模引擎/ 版本服务/ 管理员批量撤销检出M-V模型数据实例 - BatchCheckoutUndoByAdmin
更新时间:2026-07-28 GMT+08:00
分享

管理员批量撤销检出M-V模型数据实例 - BatchCheckoutUndoByAdmin

功能介绍

本接口用于管理员批量撤销Master-Branch-Version(M-V)模型实例的检出状态,将实例数据批量还原至检出前的最后检入版本内容。适用于数据治理中大规模清理长期锁定实例、批量处理离职员工未检入数据、系统维护前统一释放编辑锁等管理场景。

在调用本接口前,请确保目标数据模型满足以下条件:

  1. 已在应用设计态完成M-V模型实体(即“父模型”为“VersionObject”的数据实体)的创建与发布。具体操作请参见创建数据实体创建关系实体应用发布

  2. 已将对应应用成功部署至运行态。具体操作请参见部署应用

接口约束

  • 单次请求的params数组中,最多允许传入1000个撤销对象。

  • 本接口仅支持M-V模型数据实例的撤销检出,不支持单实体或关系实体。

  • 请求列表中的目标实例必须处于“已检出”状态(即workingCopy = true)。若列表中的某个e实例已处于检入状态,则无法执行撤销操作,系统将返回错误。

  • 仅具备管理员权限的IAM用户可调用本接口,普通用户调用将返回403 Forbidden。

调试

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

授权信息

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

URI

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

表1 路径参数

参数

是否必选

参数类型

描述

identifier

String

参数解释:

应用的唯一标识。

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

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

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

约束限制:

不涉及。

取值范围:

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

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

默认取值:

不涉及。

modelName

String

参数解释:

M-V模型的英文名称。

约束限制:

必须为已发布的M-V模型,单实体、关系实体不支持。

取值范围:

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

默认取值:

不涉及。

请求参数

表2 请求Header参数

参数

是否必选

参数类型

描述

X-Auth-Token

String

参数解释:

IAM用户的token。

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

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

表3 请求Body参数

参数

是否必选

参数类型

描述

applicationId

String

参数解释:

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

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

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

约束限制:

不涉及。

取值范围:

由英文字母和数字组成,且长度固定为32个字符。

默认取值:

不涉及。

params

Array of VersionModelVersionUndoCheckOutDTO objects

参数解释:

M-V模型批量撤销检出请求参数数组,每个元素为一个撤销检出对象。

约束限制:

单次请求不超过1000个。

取值范围:

不涉及。

默认取值:

不涉及。

表4 VersionModelVersionUndoCheckOutDTO

参数

是否必选

参数类型

描述

masterId

String

参数解释:

M-V模型主对象ID,用于定位需要撤销检出的版本实例。

约束限制:

不涉及。

取值范围:

-9223372036854775808到9223372036854775807的整数。

默认取值:

不涉及。

modifier

String

参数解释:

撤销检出操作者账号,用于记录本次管理操作的责任人。由系统自动记录为当前调用用户,管理员操作时无需传入。

约束限制:

不涉及。

取值范围:

不涉及。

默认取值:

不涉及。

响应参数

状态码:200

表5 响应Body参数

参数

参数类型

描述

result

String

参数解释:

M-V模型数据更新请求结果状态。

取值范围:

  • SUCCESS:请求成功。

  • FAIL:请求失败。

data

Array of VersionModelViewDTO objects

参数解释:

更新后的M-V模型版本实例详情数组。若指定的实例id不存在,返回空数组。

取值范围:

不涉及。

errors

Array of strings

参数解释:

更新异常信息数组,当result为FAIL时返回具体的错误描述。常见错误包括:实例不存在、实例处于检出状态、权限不足、密级校验失败等。

取值范围:

不涉及。

表6 VersionModelViewDTO

参数

参数类型

描述

branch

VersionModelBranchViewDTO object

参数解释:

更新后的分支对象详情,包含分支的创建时间、版本号、系统版本等属性。

取值范围:

不涉及。

checkOutTime

String

参数解释:

检出时间,使用UTC+0时间格式,格式为yyyy-MM-ddTHH:mm:ss.SSSZ。若实例未检出,返回null。

取值范围:

不涉及。

checkOutUserName

String

参数解释:

检出人名称。若实例未检出,返回null。

取值范围:

不涉及。

className

String

参数解释:

版本实例的类名。

取值范围:

不涉及。

createTime

String

参数解释:

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

取值范围:

不涉及。

creator

String

参数解释:

版本实例的创建者账号。

取值范围:

不涉及。

description

String

参数解释:

版本实例的描述信息,如工艺变更说明、设备规格备注等。

取值范围:

不涉及。

id

String

参数解释:

版本实例的唯一标识。

取值范围:

-9223372036854775808到9223372036854775807的整数。

iteration

Integer

参数解释:

版本实例的迭代版本号,用于标识同一版本下的迭代次数。

取值范围:

不涉及。

kiaguid

String

参数解释:

KIA密级,用于数据资产的安全标识。

取值范围:

不涉及。

lastUpdateTime

String

参数解释:

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

取值范围:

不涉及。

latest

Boolean

参数解释:

是否为最新版本。

取值范围:

  • true:是最新版本。

  • false:不是最新版本。

latestIteration

Boolean

参数解释:

是否为最新迭代版本。同一版本号下可能存在多次迭代,此字段标识是否为最后一次迭代。

取值范围:

  • true:是最新迭代版本。

  • false:不是最新迭代版本。

latestVersion

Boolean

参数解释:

是否为最新修订版本。

取值范围:

  • true:是最新修订版本。

  • false:不是最新修订版本。

master

VersionModelMasterViewDTO object

参数解释:

更新后的主对象详情,包含主对象的创建时间、系统版本等属性。

取值范围:

不涉及。

modifier

String

参数解释:

版本实例的更新者账号。

取值范围:

不涉及。

name

String

参数解释:

版本实例的中文名称。

取值范围:

不涉及。

preVersionId

String

参数解释:

前序版本实例ID,用于追溯版本变更历史。

取值范围:

不涉及。

rdmDeleteFlag

Integer

参数解释:

软删除标识,用于M-V模型实例的逻辑删除管理。

取值范围:

  • 0:表示未删除。

  • 1:表示已删除。

rdmExtensionType

String

参数解释:

扩展类型,用于区分不同业务域的M-V模型实例。

取值范围:

不涉及。

rdmVersion

Integer

参数解释:

系统版本号,用于数据版本控制与并发冲突检测。每次更新后自动递增。

取值范围:

不涉及。

securityLevel

String

参数解释:

安全密级,标识当前版本实例的访问控制级别。

取值范围:

  • internal:内部公开。

  • secret:秘密。

  • confidential:机密。

  • top_secret:绝密。

tenant

TenantViewDTO object

参数解释:

版本实例所属的租户信息,用于多租户场景下的数据隔离。

取值范围:

不涉及。

version

String

参数解释:

版本号。

取值范围:

不涉及。

versionCode

Integer

参数解释:

业务版本内码,用于系统内部的版本排序与比较。

取值范围:

不涉及。

workingCopy

Boolean

参数解释:

是否已检出。本接口要求实例必须处于未检出状态(workingCopy=false)方可更新。

取值范围:

  • true:已检出(当前被某用户锁定编辑中)。

  • false:未检出(处于检入状态,可被管理员更新)。

workingState

WorkingState object

参数解释:

版本实例的工作状态,包含状态编码、中文名称、英文名称及别名。

取值范围:

不涉及。

表7 VersionModelBranchViewDTO

参数

参数类型

描述

className

String

参数解释:

类名。

取值范围:

不涉及。

createTime

String

参数解释:

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

取值范围:

不涉及。

creator

String

参数解释:

创建者账号。

取值范围:

不涉及。

id

String

参数解释:

唯一标识。

取值范围:

-9223372036854775808到9223372036854775807的整数。

lastUpdateTime

AnyType

参数解释:

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

取值范围:

不涉及。

modifier

String

参数解释:

更新者账号。

取值范围:

不涉及。

rdmDeleteFlag

Integer

参数解释:

软删除标识。

取值范围:

  • 0:表示未删除。

  • 1:表示已删除。

rdmExtensionType

String

参数解释:

扩展类型。

取值范围:

不涉及。

rdmVersion

Integer

参数解释:

系统版本。

取值范围:

不涉及。

tenant

TenantViewDTO object

参数解释:

租户信息。

取值范围:

不涉及。

version

String

参数解释:

版本号。

取值范围:

不涉及。

表8 VersionModelMasterViewDTO

参数

参数类型

描述

className

String

参数解释:

主对象的类名。

取值范围:

不涉及。

createTime

String

参数解释:

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

取值范围:

不涉及。

creator

String

参数解释:

主对象的创建者账号。

取值范围:

不涉及。

id

String

参数解释:

主对象的唯一标识。

取值范围:

-9223372036854775808到9223372036854775807的整数。

lastUpdateTime

String

参数解释:

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

取值范围:

不涉及。

modifier

String

参数解释:

主对象的更新者账号。

取值范围:

不涉及。

rdmDeleteFlag

Integer

参数解释:

软删除标识。

取值范围:

  • 0:表示未删除。

  • 1:表示已删除。

rdmExtensionType

String

参数解释:

主对象的扩展类型。

取值范围:

不涉及。

rdmVersion

Integer

参数解释:

主对象的系统版本号。

取值范围:

不涉及。

tenant

TenantViewDTO object

参数解释:

主对象所属的租户信息。

取值范围:

不涉及。

表9 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

参数解释:

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

取值范围:

不涉及。

表10 WorkingState

参数

参数类型

描述

alias

String

参数解释:

工作状态别名,用于系统内部的状态标。

取值范围:

不涉及。

cnName

String

参数解释:

工作状态中文名称。

取值范围:

不涉及。

code

String

参数解释:

工作状态编码。

取值范围:

不涉及。

enName

String

参数解释:

工作状态英文名称。

取值范围:

不涉及。

请求示例

示例:管理员权限批量撤销版本模型的检出操作

以数组形式传入待撤销检出的版本模型主干节点信息,批量指定主干节点ID(masterId)为602146893727801345,并指定执行撤销操作的管理员账号(modifier)为test1。

POST https://dme.cn-north-4.huaweicloud.com/rdm_04219627d6794f37ae26e8aba250415d_app/publicservices/api/VersionModel/batchUndoCheckoutByAdmin

{
  "applicationId" : "04219627d6794f37ae26e8aba250415d",
  "params" : [ {
    "masterId" : "602146893727801345",
    "modifier" : "test1"
  } ]
}

响应示例

状态码:200

OK,表示请求成功。

{
  "result": "SUCCESS",
  "data": [
    {
      "id": "601060080745455616",
      "creator": "test1",
      "modifier": "test1",
      "createTime": 2024-02-19T06:38:10.406+0000,
      "lastUpdateTime": 2024-02-19T06:56:43.319+0000,
      "rdmVersion": 4,
      "rdmDeleteFlag": 0,
      "rdmExtensionType": "VersionModel",
      "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": "VersionModel",
      "name": "modifier name",
      "description": "modifier description",
      "kiaguid": "18409de0386546f8af4bb6c1dc5cf50f",
      "securityLevel": "internal",
      "master": {
        "id": "601060080779010048",
        "creator": "test1",
        "modifier": "test1",
        "createTime": 2024-02-19T06:38:10.419+0000,
        "lastUpdateTime": 2024-02-19T06:56:43.319+0000,
        "rdmVersion": 4,
        "rdmDeleteFlag": 0,
        "rdmExtensionType": "VersionModelMaster",
        "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": "VersionModelMaster"
      },
      "branch": {
        "id": "601060080799981568",
        "creator": "test1",
        "modifier": "test1",
        "createTime": 2024-02-19T06:38:10.464+0000,
        "lastUpdateTime": 2024-02-19T06:56:43.319+0000,
        "rdmVersion": 4,
        "rdmDeleteFlag": 0,
        "rdmExtensionType": "VersionModelBranch",
        "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": "VersionModelBranch",
        "version": "A"
      },
      "latest": true,
      "latestIteration": true,
      "versionCode": 1,
      "iteration": 1,
      "version": "A",
      "latestVersion": true,
      "workingCopy": false,
      "workingState": {
        "code": "CHECKED_IN",
        "cnName": "已检入",
        "enName": "checked in",
        "alias": "CHECKED_IN"
      },
      "checkOutUserName": null,
      "checkOutTime": null,
      "preVersionId": "601372141664866304"
    }
  ],
  "errors": []
}

状态码

状态码

描述

200

OK,表示请求成功。

错误码

请参见错误码

相关文档