Query Asset Hierarchy


根据对象实例标识符等信息获取指定资产的层级关系。

请求格式


GET https://{api-gateway}/cds-asset-service/v1.0/hierarchy?action=query

请求参数


名称 位置 必需/可选 数据类型 描述
orgId Query 必需 String 资产层级所属的组织 ID。如何获取 orgId 信息>>
mdmIds Query/Form 必需 String 资产对应的对象实例的标识符,多个对象实例之间用英文逗号隔开。单次查询指定的对象实例数量不超过 20000。为保证查询性能,建议单次查询指定的对象实例数量不超过 100。
mdmTypes Query/Form 可选 String 资产所属的对象类型的标识符,多个对象类型之间用英文逗号隔开。单次查询指定的对象类型数量不超过 100,置空则返回所有子资产层级。如何获取 mdmTypes 信息>>
attributes Query/Form 可选 String 待查询对象的属性,多个属性之间用英文逗号隔开。支持指定查询对象的模型属性和在通用数据服务中自定义的“虚拟属性”。如何获取 attributes 信息>>
locale Query/Form 可选 String 中文:zh-CN, 英文:en-US, 日语:ja-JP,西班牙语:es-ES。默认为 en-US。
withI18n Query/Form 可选 Boolean 是否返回完整的国际化内容,true 为返回,false 为不返回。默认不返回。
filter Query/Form 可选 String

返回结果按 attributes 进行过滤。例如:[[{"field":"field1","operator":">=","value":"1"},{"field":"field2","operator":"<=","value":"2"}],[{"field":"field3","operator":"==","value":"3"}]],该表达式含义为:(field1 >= 1 and field2 <= 2) or (field3=3)。

若指定 name 字段的值,支持指定国际化内容中的值。例如,指定 [{"field":"name","operator":"==","value":"光伏场站"}],同时指定参数 localezh-CN,返回结果将仅展示中文名称为光伏场站的对象。
orderBy Query/Form 可选 String

返回结果按 attributes 进行排序。例如:[{"field":"field1","order":"ASC"}, {"field":"field2","order":"DESC"}],该表达式含义为:按 field1 升序进行一级排序,并按 field2 降序进行二级排序。

若指定 name 字段的值,支持指定国际化内容中的值。例如,指定 [{"field":"name","order":"ASC"}],同时指定参数 localezh-CN,返回结果将按照 name 字段中的中文内容排序。
pageSize Query/Form 可选 Integer 分页查询时单页返回记录的条数,最大值为 20000。
pageNo Query/Form 可选 Integer 分页查询时指定页码,从 1 开始。

返回内容类型


application/json; charset = UTF-8

响应参数


名称 必然/可能返回 数据类型 描述
data 必然返回 Asset 结构体 描述资产信息。参见 Query Accessible Asset
pagination 必然返回 Pagination 结构体 描述分页信息。参见 Pagination 结构体

Pagination 结构体


名称 必然/可能返回 数据类型 描述
pageNo 必然返回 Integer 请求页数,从 1 开始。
pageSize 必然返回 Integer 每页的记录数。
totalSize 必然返回 Integer 记录总数。

示例

请求示例


GET https://{api-gateway}/cds-asset-service/v1.0/hierarchy?action=query&orgId=yourOrgId&mdmIds=yourMdmId&withI18n=true

返回示例


{
    "data": {
        "yourMdmId": {
            "mdmObjects": {
               "Solar_CombinerBox":[
                    {
                        "mdmId":"yourChildMdmId",
                        "attributes": {
                            "mdmType": "Solar_CombinerBox",
                            "modelId": "EnOS_Solar_CombinerBox",
                            "timezone": "+08:00",
                            "nameI18n": {
                              "defaultVaule": "Solar_CombinerBox",
                              "i18nValue": {
                                "en_US": "Solar_CombinerBox",
                                "zh_CN": "太阳能汇流箱",
                                "de_DE": "Solar_CombinerBox"
                              }
                            },
                            "name": "yourMdmName",
                            "branches": "2,3,4,5,6,7,8,9,10,11,12,13,14,15,16",
                            "topoParentDeviceID": "yourParentDeviceId",
                            "modelIdPath": "/EnOS_Solar_CombinerBox",
                            "mdmId": "yourChildMdmId",
                            "parentId": "yourMdmId",
                            "branchMax": "16"
                        }
                    }
                ],
                "Solar_Site": [
                    {
                        "mdmId": "yourMdmId",
                        "attributes": {
                            "altitude": "4.0",
                            "timezone": "+08:00",
                            "longitude": "121.0846",
                            "mdmId": "yourMdmId"
                        }
                    }
                ]
            }
        }
    },
    "code": 0,
    "msg": "OK",
    "traceId": "1234567890abcdefghijkl0987654321"
}