1. 根据楼层、系统、房间和属性组合查询构件

在同一个模型中根据楼层、系统、房间和属性值查询符合条件的构件,分页返回构件信息。


请求方式:GET

请求地址:/api/{databaseKey}/queries/combination?modelKey={aa}&pageNumber={xx}&pageSize={yy}&attributes={zz}&share={share}

1.1. 请求参数

Headers:

参数名 类型 示例 是否必填 参数含义
Authorization string c4570cb9ca324bc8ba7dd9d1967710ea 操作的通关令牌

PathParas:

参数名 类型 示例 是否必填 参数含义
NULL NULL NULL NULL NULL

SearchParas:

参数名 类型 示例 是否必填 参数含义
modelKey string NULL 模型key
share string NULL 分享key
pageNumber string NULL 分页返回的页码,从0开始
pageSize string NULL 分页返回每页最大条目,取值1~100
attribute string NULL 返回属性列表,如不指定则返回全部

Body

application/json:

{
"key": {   // 构件key
   "operator": "like",
   "value":"M12342432_1",
   "logic": "and"
},
"name": {   // 构件名称
   "operator": "==",
   "value": "风墙1",
   "logic": "and"
},     
"type":{   // 构件类型
   "operator": "in",
   "value": ["墙", "楼梯", "隔板"],
   "logic": "and",
},  
"floor": {   // 楼层
   "operator": "in",
   "value": ["1楼", "2楼"],
   "logic": "and"
}, 
"system":{   // 系统
   "operator": "in",
   "value": ["风管系统"],
   "logic": "and"
},   
"room":{   // 房间
   "operator": "not in",
   "value": ["主卧", "客卧"],
   "logic": "and"
},   
"attribute":[
{
"field": "约束.标高",
"value": 200,
  "operator": ">=",
  "logic": "and"
},
... ...
]
}

1.2. 参数说明

参数名 类型 示例 是否必填 参数含义
NULL NULL NULL NULL NULL

1.3. 正确返回

{
    "message": "请求处理成功",
    "code": "SUCCESS",
    "data": {
        "content": [
            {
                "name": "斜檩条:斜檩条-1m:2824483",
                "type": "IfcBuildingElementProxy",
                "key": "M1577178468831_03xNH48oj7Wv6Pwjg1c_RA"
            },
            {
                "name": "斜檩条:斜檩条:2745945",
                "type": "IfcBuildingElementProxy",
                "key": "M1577178468831_3gTr6XEtj3kO57N2kFyI$W"
            }
        ],
        "first": false,
        "last": false,
        "number": 2,
        "numberOfElements": 2,
        "size": 2,
        "totalElements": 27,
        "totalPages": 14
    }
}

1.4. 状态码

状态码 code message data 原因
400 PARAMETER_REQUIRED 参数(xxx)不能为空 NULL 当modelKey或body为空时
400 BAD_PARAMETER_VALUE 参数(xxx)值不正确 NULL 当key存在不属于上述body列举的key时
400 BAD_PARAMETER 参数(xxx)类型不正确! NULL 当key对应的值与上述body中类型不一致时
400 BAD_PARAMETER attribute节点必须包含field、operator、logic和value字段 NULL 当attribute中的节点缺少field、operator、value、logic字段时
400 BAD_PARAMETER (xxx)必须包含operator、logic和value字段 NULL 当key、name、type、floor中缺少operator、value或logic字段时
400 PARAMETER_REQUIRED 参数(value)不能为空 NULL 当任意value值为空数组时
400 BAD_PARAMETER 参数(logic)类型不正确! NULL 当logic的值不为and、or时
400 PARSE_FAILED 模型(XXX)解析失败 NULL 当模型解析已经失败时
400 PARSE_NOT_FINISHED 模型(XXX)正在解析 NULL 当模型解析尚未完成时
400 BAD_PARAMETER_VALUE room条件只支持IFC或RVT模型 NULL 当存在room条件且模型不是IFC或RVT类型时

1.5. 备注

暂无备注

1.6. 注意事项

1)参数中只接受上述body中列举的7种属性,参数值类型可以为数组、字符串或数值;

2)body中key之间的关系由logic决定,logic可取值类型为and、or。先计算所有‘与’关系,再计算所有‘或’关系;

3)operator表示比较运算符,支持==、!=、<、<=、>、>=、like、in、not in

4)当value值为数组时,只允许in、not in 运算符

5)field表示查询字段,可以为字段名(如name)或者对象字段的具体属性(如attribute.机械.系统类型)

6)floor、room、system不允许 >、<、>=、<=这4种逻辑运算符

7)room查询条件只支持IFC和RVT模型

版权所有@盈嘉互联(北京)科技有限公司 京ICP备15051988号-9 Copyright © 2021 all right reserved,powered by Gitbook该文件修订时间: 2021-08-25 16:16:24

results matching ""

    No results matching ""