package com.persagy.proxy.adm.service; import com.alibaba.fastjson.JSONObject; import com.persagy.proxy.adm.model.AdmDCSQueryRequest; import com.persagy.proxy.adm.model.AdmSpace; import com.persagy.proxy.adm.request.AdmResponse; import com.persagy.proxy.common.entity.InstanceUrlParam; import java.util.List; import java.util.Map; import java.util.Set; /** * ADM 空间 接口 * @author lvxy * @date 2021/8/18 */ public interface IAdmSpaceService extends IAdmBaseService{ /** * 新增 * @param context * @param clazz * @param voList * @return */ List doInsertExt(InstanceUrlParam context, Class clazz, List voList); /** * 查询业务空间所有类型 */ AdmResponse doQueryType(InstanceUrlParam context, AdmDCSQueryRequest request); /** * 查询业务空间 级联查询:建筑(buildingList),楼层(floorlList),空间类型(objectType)未明确楼层(isnull),未明确建筑(isnull) */ AdmResponse doQuerySpaces(InstanceUrlParam context, AdmDCSQueryRequest request); List doQuerySpaceTypes(InstanceUrlParam context); /** * 查询指定竖井下指定空间类型的空间 * @param context * @param shaftId * @param spaceType * @return */ List querySpaceInShaft(InstanceUrlParam context, String shaftId, String spaceType); /** * 查询指定建筑下指定空间类型的空间 * @param context * @param buildingId * @param spaceType * @return */ List querySpaceInBuilding(InstanceUrlParam context, String buildingId, String spaceType); /** * 查询楼层与空间关系映射 * @param context * @param floorIds * @param spaceType * @return Map> */ Map> querySpaceMapInFloors(InstanceUrlParam context, List floorIds, String spaceType); /** * 查询垂直交通关系映射 * @param context * @param spaceIds * @return */ Map> queryTrafficSpaceMap(InstanceUrlParam context, Iterable spaceIds, String spaceType); }