Query Asset Topology


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

请求格式


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

请求参数


名称

位置

必需/可选

数据类型

描述

orgId

Query

必需

String

拓扑所属的组织 ID。如何获取 orgId 信息>>

mdmIds

Query

必需

String

拓扑对应的对象实例的标识符,多个对象实例之间用英文逗号隔开。单次查询指定的对象实例数量不超过 20000。为保证查询性能,建议单次查询指定的对象实例数量不超过 100。

mdmTypes

Query

可选

String

拓扑所属的对象类型的标识符,多个对象类型之间用英文逗号隔开。单次查询指定的对象类型数量不超过 100。如何获取 mdmTypes 信息>>

topologyRuleId

Query

必需

String

拓扑规则的标识符。如何获取 topologyRuleId 信息>>

attributes

Query

可选

String

待查询对象的属性,多个属性之间用英文逗号隔开。支持指定查询对象的模型属性和在通用数据服务中自定义的“虚拟属性”。如何获取 attributes 信息>>

filter

Query

可选

List<List<Map<String,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)。

locale

Query

可选

String

中文:zh-CN, 英文:en-US, 日语:ja-JP,西班牙语:es-ES。默认为 en-US。

withI18n

Query

可选

Boolean

是否返回完整的国际化内容,true 为返回,false 为不返回。默认不返回。

返回内容类型


application/json; charset = UTF-8

响应参数


名称

必然/可能返回

数据类型

描述

assetTopology

必然返回

AssetTopology 结构体

描述资产的拓扑信息。参见 AssetTopology 结构体

assets

必然返回

Asset 结构体

描述资产信息。参见 Query Accessible Asset

AssetTopology 结构体


名称

必然/可能返回

数据类型

描述

mdmId

必然返回

String

资产实例的标识符。为保证查询性能,建议单次查询指定的对象实例数量不超过 100。

children

必然返回

AssetTopology 结构体

描述子资产的拓扑信息。

返回码


参见 通用数据服务 API 返回码

示例

请求示例


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

返回示例


{
   "data": {
        "assetTopology": {
            "mdmId": "yourMdmId",
            "children": [
                {
                    "mdmId": "yourChildMdmId",
                    "children": []
                },
                {
                    "mdmId": "yourChildMdmId",
                    "children": []
                }
            ]
        },
        "assets": {
            "yourMdmId": {
                "mdmType": "EnOS_Solar_Site",
                "mdmId": "yourMdmId",
                "name": "yourMdmId",
                "capacity": 3.6
            },
            "yourChildMdmId": {
                "mdmType": "EnOS_Solar_Inverter",
                "mdmId": "yourMdmId",
                "name": "yourMdmId",
                "capacity": 1800.0
            },
            "yourChildMdmId": {
                "mdmType": "EnOS_Solar_Inverter",
                "mdmId": "yourMdmId",
                "name": "yourMdmId",
                "capacity": 1800.0
            }
        }
    },
    "code": 0,
    "msg": "OK",
    "traceId": "1234567890abcdefghijkl0987654321"
}