Browse Source

Merge remote-tracking branch 'origin/develop' into develop

# Conflicts:
#	src/main/java/com/persagy/proxy/dictionary/service/IAdmDictService.java
#	src/main/java/com/persagy/proxy/dictionary/service/impl/AdmDictServiceImpl.java
#	src/main/java/com/persagy/proxy/object/controller/AdmEquipmentController.java
lijie 3 years ago
parent
commit
5018c9ad78

+ 17 - 0
src/main/java/com/persagy/proxy/dictionary/controller/AdmDictController.java

@@ -215,4 +215,21 @@ public class AdmDictController {
         return service.queryEquipDictInfos(admEquipDictInfos);
     }
 
+    /**
+     * 需采集信息同步到所有项目
+     * @return
+     * @throws Exception
+     */
+    @PostMapping("/delivered/infos")
+    @Deprecated
+    public AdmResponse queryDictDeliveredInfos(@RequestBody AdmDictDeliverieInfosRequest request) throws Exception {
+        if(StringUtils.isEmpty(request.getObjType())){
+            return AdmResponse.success("对象类型不可以为空");
+        }
+        if(StringUtils.isEmpty(request.getClassCode())){
+            return AdmResponse.success("类型不可以为空");
+        }
+        return service.queryDictDeliveredInfos(AdmContextUtil.toDmpContext(),request,AdmObjectInfo.class);
+    }
+
 }

+ 28 - 0
src/main/java/com/persagy/proxy/dictionary/model/AdmDictDeliverieInfosRequest.java

@@ -0,0 +1,28 @@
+package com.persagy.proxy.dictionary.model;
+
+import lombok.Data;
+
+/**
+ * Description
+ * 统计设备已交付设备信息点请求
+ * @author:linhuili
+ * @date:2021/11/15
+ */
+@Data
+public class AdmDictDeliverieInfosRequest {
+
+    /** 模式: all(全部),gather(只看采集) */
+    private String model;
+
+    /** 类型编码 */
+    private String classCode;
+
+    /** 全部: 不用传值,未明确建筑传建筑(isNull)  */
+    private String buildingId;
+
+    /** 全部: 不用传值,未明确楼层(isNull) */
+    private String floorId;
+
+    /** 对象类型:设备(equipment),系统(system),空间(space),竖井(shaft) */
+    private String objType;
+}

+ 9 - 0
src/main/java/com/persagy/proxy/dictionary/service/IAdmDictService.java

@@ -7,6 +7,7 @@ import com.persagy.proxy.adm.request.AdmCreateRequest;
 import com.persagy.proxy.adm.request.AdmResponse;
 import com.persagy.proxy.common.entity.InstanceUrlParam;
 import com.persagy.proxy.dictionary.model.AdmEquipDictInfos;
+import org.springframework.web.bind.annotation.RequestBody;
 
 import java.util.List;
 
@@ -67,6 +68,14 @@ public interface IAdmDictService<T> extends IAdmDictBaseService<T>{
      * @return
      */
     AdmResponse query(InstanceUrlParam context, AdmDictQueryCriteria request,String fieldName, Class<T> clazz);
+
+    /**
+     * 查询已交付信息点
+     * @param request
+     * @return
+     */
+    AdmResponse queryDictDeliveredInfos(InstanceUrlParam context,AdmDictDeliverieInfosRequest request, Class<T> clazz);
+
     /***
      * Description:统计-根据条件统计返回信息点
      * @return : com.persagy.proxy.adm.request.AdmResponse

+ 279 - 1
src/main/java/com/persagy/proxy/dictionary/service/impl/AdmDictServiceImpl.java

@@ -20,13 +20,19 @@ import com.persagy.proxy.common.entity.InstanceUrlParam;
 import com.persagy.proxy.dictionary.model.AdmDefFuncIdGather;
 import com.persagy.proxy.dictionary.model.AdmDict;
 import com.persagy.proxy.dictionary.model.AdmObjectType;
-import com.persagy.proxy.object.model.AdmObjectInfo;
+import com.persagy.proxy.object.model.*;
+import com.persagy.proxy.object.service.IAdmEquipmentService;
+import com.persagy.proxy.object.service.IAdmShaftService;
+import com.persagy.proxy.object.service.IAdmSpaceService;
+import com.persagy.proxy.object.service.IAdmSystemService;
 import lombok.EqualsAndHashCode;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.StringUtils;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
 import java.util.*;
+import java.util.function.Function;
 import java.util.stream.Collectors;
 
 /**
@@ -41,6 +47,18 @@ import java.util.stream.Collectors;
 @EqualsAndHashCode(callSuper=true)
 public class AdmDictServiceImpl<T> extends AbstractAdmDictBaseServiceImpl<T> implements IAdmDictService<T> {
 
+    @Autowired
+    private IAdmEquipmentService equipmentService;
+
+    @Autowired
+    private IAdmSpaceService spaceService;
+
+    @Autowired
+    private IAdmSystemService systemService;
+
+    @Autowired
+    private IAdmShaftService shaftService;
+
     /**
      * 字典类型查询:所有设备类型、部件类型、系统类型、专业类型
      * 查询类型:输入设备类型:equipment,输入部件类型:component,输入系统类型:system,输入专业类型:major,业务空间类型 space ,资产 property,
@@ -448,6 +466,8 @@ public class AdmDictServiceImpl<T> extends AbstractAdmDictBaseServiceImpl<T> imp
         return null;
     }
 
+
+
     /**
      * 转换排序字段
      * @param request
@@ -707,4 +727,262 @@ public class AdmDictServiceImpl<T> extends AbstractAdmDictBaseServiceImpl<T> imp
             }
         }
     }
+
+    /**
+     * 查询已交付信息点
+     * @param request
+     * @return
+     */
+    @Override
+    public AdmResponse queryDictDeliveredInfos(InstanceUrlParam context,AdmDictDeliverieInfosRequest request, Class<T> clazz) {
+        String classCode = request.getClassCode();
+        String objType = request.getObjType();
+        //根据类型查询信息点
+        List<AdmObjectInfo> admObjectInfos = queryObjectInfoByType(context, objType, classCode, clazz);
+        if(CollUtil.isEmpty(admObjectInfos)){
+            log.info("此类型下无信息点:{}{}"+objType +","+classCode);
+            return AdmResponse.success(new ArrayList<>());
+        }
+        Map<String, AdmObjectInfo> admObjectInfoMap = admObjectInfos.stream().collect(Collectors.toMap(AdmObjectInfo::getCode, Function.identity(),(v1,v2) -> v2));
+
+        //初始化待交付的信息点,id,name,localId,localName 无论是否有值默认展示,兼容历史逻辑
+        List<AdmObjectInfo> deliveredInfos = new ArrayList<>();
+        List<String> deliveredCodes = new ArrayList<>();
+        initDeliveredInfos( admObjectInfoMap, deliveredInfos, deliveredCodes);
+
+        if("equipment".equals(objType)){
+            //查询已交付的设备信息点
+            return getAdmEquipDeliveredInfo(context,request, admObjectInfoMap,deliveredInfos,deliveredCodes);
+        }
+        if("space".equals(objType)){
+            //查询已交付的空间信息点
+            return getAdmSpaceDeliveredInfo(context,request, admObjectInfoMap,deliveredInfos,deliveredCodes);
+        }
+        if("system".equals(objType)){
+            //查询已交付的系统信息点
+            return getAdmSystemDeliveredInfo(context,request, admObjectInfoMap,deliveredInfos,deliveredCodes);
+        }
+        if("shaft".equals(objType)){
+            //查询已交付的竖井信息点
+            return getAdmShaftDeliveredInfo(context,request, admObjectInfoMap,deliveredInfos,deliveredCodes);
+        }
+        return AdmResponse.success(deliveredInfos);
+    }
+
+
+    /**
+     * 组装通用对象查询条件
+     * @param request
+     * @return
+     */
+    private AdmQueryCriteria commbineObjectQueryCriteria(AdmDictDeliverieInfosRequest request){
+        //增加过滤条件
+        StringBuilder filters = new StringBuilder();
+        if(StringUtils.isNotEmpty(request.getBuildingId())){
+            if("isNull".equals(request.getBuildingId())){
+                filters.append("buildingId isNull;");
+            }else {
+                filters.append("buildingId = '"+ request.getBuildingId() +"';");
+            }
+        }
+        if(StringUtils.isNotEmpty(request.getFloorId())){
+            if("isNull".equals(request.getFloorId())){
+                filters.append("floorId isNull;");
+            }else{
+                filters.append("floorId = '"+ request.getFloorId() +"';");
+            }
+        }
+        if(StringUtils.isNotEmpty(request.getClassCode())){
+            filters.append("classCode = '"+ request.getClassCode() +"';");
+        }
+        if(StringUtils.isNotEmpty(request.getObjType())){
+            filters.append("objType = '"+ request.getObjType() +"';");
+        }
+        AdmQueryCriteria equipQueryCriteria = new AdmQueryCriteria();
+        equipQueryCriteria.setFilters(filters.toString());
+        return equipQueryCriteria;
+    }
+
+
+    /**
+     * 查询已交付的设备信息点
+     * @param context
+     * @param request
+     */
+    private AdmResponse getAdmEquipDeliveredInfo(InstanceUrlParam context,AdmDictDeliverieInfosRequest request, Map<String, AdmObjectInfo> admObjectInfoMap,List<AdmObjectInfo> deliveredInfos,List<String> deliveredCodes){
+        AdmQueryCriteria admQueryCriteria = commbineObjectQueryCriteria(request);
+        AdmResponse response = equipmentService.query(admQueryCriteria);
+        List<AdmEquipment> content = (List<AdmEquipment>)response.getContent();
+        if(CollUtil.isEmpty(content)){
+            return AdmResponse.success(new ArrayList<>());
+        }
+        //统计有值的信息点
+        for (AdmEquipment admEquipment : content) {
+            Map<String, Object> infos = admEquipment.getInfos();
+            if(CollUtil.isEmpty(infos)){
+                continue;
+            }
+            for (Map.Entry<String, Object> info : infos.entrySet()) {
+                Object value = info.getValue();
+                if(deliveredCodes.contains(info.getKey()) || value == null){
+                    continue;
+                }
+                AdmObjectInfo admObjectInfo = admObjectInfoMap.get(info.getKey());
+                if(admObjectInfo == null){
+                    continue;
+                }
+                deliveredCodes.add(info.getKey());
+                deliveredInfos.add(admObjectInfo);
+            }
+
+        }
+        return AdmResponse.success(deliveredInfos);
+    }
+
+
+    /**
+     * 查询已交付的空间信息点
+     * @param context
+     * @param request
+     */
+    private AdmResponse getAdmSpaceDeliveredInfo(InstanceUrlParam context,AdmDictDeliverieInfosRequest request, Map<String, AdmObjectInfo> admObjectInfoMap,List<AdmObjectInfo> deliveredInfos,List<String> deliveredCodes){
+        AdmQueryCriteria admQueryCriteria = commbineObjectQueryCriteria(request);
+        AdmResponse response = spaceService.query(admQueryCriteria);
+        List<AdmSpace> content = (List<AdmSpace>)response.getContent();
+        if(CollUtil.isEmpty(content)){
+            return AdmResponse.success(new ArrayList<>());
+        }
+        //统计有值的信息点
+        for (AdmSpace admSpace : content) {
+            Map<String, Object> infos = admSpace.getInfos();
+            if(CollUtil.isEmpty(infos)){
+                continue;
+            }
+            for (Map.Entry<String, Object> info : infos.entrySet()) {
+                Object value = info.getValue();
+                if(deliveredCodes.contains(info.getKey()) || value == null){
+                    continue;
+                }
+                AdmObjectInfo admObjectInfo = admObjectInfoMap.get(info.getKey());
+                if(admObjectInfo == null){
+                    continue;
+                }
+                deliveredCodes.add(info.getKey());
+                deliveredInfos.add(admObjectInfo);
+            }
+
+        }
+        return AdmResponse.success(deliveredInfos);
+    }
+
+
+    /**
+     * 查询已交付的竖井信息点
+     * @param context
+     * @param request
+     */
+    private AdmResponse getAdmShaftDeliveredInfo(InstanceUrlParam context,AdmDictDeliverieInfosRequest request, Map<String, AdmObjectInfo> admObjectInfoMap,List<AdmObjectInfo> deliveredInfos,List<String> deliveredCodes){
+        AdmQueryCriteria admQueryCriteria = commbineObjectQueryCriteria(request);
+        AdmResponse response = shaftService.doQuery(context,admQueryCriteria, AdmShaft.class);
+        List<AdmShaft> content = (List<AdmShaft>)response.getContent();
+        if(CollUtil.isEmpty(content)){
+            return AdmResponse.success(new ArrayList<>());
+        }
+        //统计有值的信息点
+        for (AdmShaft admShaft : content) {
+            Map<String, Object> infos = admShaft.getInfos();
+            if(CollUtil.isEmpty(infos)){
+                continue;
+            }
+            for (Map.Entry<String, Object> info : infos.entrySet()) {
+                Object value = info.getValue();
+                if(deliveredCodes.contains(info.getKey()) || value == null){
+                    continue;
+                }
+                AdmObjectInfo admObjectInfo = admObjectInfoMap.get(info.getKey());
+                if(admObjectInfo == null){
+                    continue;
+                }
+                deliveredCodes.add(info.getKey());
+                deliveredInfos.add(admObjectInfo);
+            }
+
+        }
+        return AdmResponse.success(deliveredInfos);
+    }
+
+    /**
+     * 查询已交付的系统信息点
+     * @param context
+     * @param request
+     */
+    private AdmResponse getAdmSystemDeliveredInfo(InstanceUrlParam context,AdmDictDeliverieInfosRequest request, Map<String, AdmObjectInfo> admObjectInfoMap,List<AdmObjectInfo> deliveredInfos,List<String> deliveredCodes){
+        AdmQueryCriteria admQueryCriteria = commbineObjectQueryCriteria(request);
+        AdmResponse response = systemService.query(admQueryCriteria);
+        List<AdmSystem> content = (List<AdmSystem>)response.getContent();
+        if(CollUtil.isEmpty(content)){
+            return AdmResponse.success(new ArrayList<>());
+        }
+        //统计有值的信息点
+        for (AdmSystem admSystem : content) {
+            Map<String, Object> infos = admSystem.getInfos();
+            if(CollUtil.isEmpty(infos)){
+                continue;
+            }
+            for (Map.Entry<String, Object> info : infos.entrySet()) {
+                Object value = info.getValue();
+                if(deliveredCodes.contains(info.getKey()) || value == null){
+                    continue;
+                }
+                AdmObjectInfo admObjectInfo = admObjectInfoMap.get(info.getKey());
+                if(admObjectInfo == null){
+                    continue;
+                }
+                deliveredCodes.add(info.getKey());
+                deliveredInfos.add(admObjectInfo);
+            }
+
+        }
+        return AdmResponse.success(deliveredInfos);
+    }
+
+    /**
+     * 初始化待交付的信息点
+     * @param admObjectInfoMap
+     * @param deliveredInfos
+     * @param deliveredCodes
+     */
+    private void initDeliveredInfos(Map<String, AdmObjectInfo> admObjectInfoMap,List<AdmObjectInfo> deliveredInfos,List<String> deliveredCodes){
+        deliveredCodes.add("id");
+        deliveredCodes.add("name");
+        deliveredCodes.add("localId");
+        deliveredCodes.add("localName");
+        //初始化待交付的信息点,id,name,localId,localName 默认展示
+        for (String code : deliveredCodes) {
+            AdmObjectInfo admObjectInfo = admObjectInfoMap.get(code);
+            if(admObjectInfo != null){
+                deliveredInfos.add(admObjectInfo);
+            }
+        }
+    }
+
+    /**
+     * 根据类型查询信息点(包含信息点是否可见,是否可编辑,是否为采集信息点)
+     * @param context
+     * @param objType
+     * @param classCode
+     * @param clazz
+     * @return
+     */
+    private List<AdmObjectInfo> queryObjectInfoByType(InstanceUrlParam context,String objType,String classCode,Class<T> clazz){
+       /* AdmQueryCriteria queryCriteria = new AdmQueryCriteria();
+        String filters ="classCode = '"+classCode+"'";
+        queryCriteria.setFilters(filters);
+        AdmResponse admResponse = doQueryObjectInfo(context, queryCriteria, AdmDictConstant.CLASS_CODE, clazz);*/
+        AdmDictQueryCriteria request = new AdmDictQueryCriteria();
+        request.setName(classCode);
+        AdmResponse admResponse = query(context, request, AdmDictConstant.CLASS_CODE, clazz);
+        return (List<AdmObjectInfo>) admResponse.getContent();
+    }
+
 }

+ 14 - 7
src/main/java/com/persagy/proxy/object/controller/AdmComponentController.java

@@ -4,7 +4,6 @@ import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.map.MapUtil;
 import cn.hutool.core.util.IdUtil;
 import cn.hutool.core.util.StrUtil;
-import com.persagy.dmp.common.exception.BusinessException;
 import com.persagy.proxy.adm.constant.AdmDictCategoryEnum;
 import com.persagy.proxy.adm.request.AdmCreateRequest;
 import com.persagy.proxy.adm.request.AdmQueryCriteria;
@@ -16,6 +15,7 @@ import com.persagy.proxy.dictionary.model.AdmObjectType;
 import com.persagy.proxy.dictionary.service.IAdmDictService;
 import com.persagy.proxy.object.model.AdmComponent;
 import com.persagy.proxy.object.service.IAdmComponentService;
+import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.PostMapping;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -23,6 +23,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
 import org.springframework.web.bind.annotation.RestController;
 
 import javax.ws.rs.QueryParam;
+import java.util.ArrayList;
 import java.util.HashMap;
 import java.util.List;
 import java.util.Map;
@@ -32,7 +33,7 @@ import java.util.Map;
  * @author lvxy
  * @date 2021/8/16
  */
-
+@Slf4j
 @RestController
 @RequestMapping("/object/component")
 public class AdmComponentController {
@@ -78,7 +79,8 @@ public class AdmComponentController {
             fullDictMap.put(dict.getCode(), dict);
         }
         // 设备属性调整
-        vos.stream().forEach(component -> {
+        List<AdmComponent> filterVOs = new ArrayList<>();
+        for(AdmComponent component:vos) {
             // 如果不是Eq开头,则重新生成ID
             if(StrUtil.startWith(component.getId(), "Ec")) {
                 component.setId("Ec"+ IdUtil.simpleUUID());
@@ -88,8 +90,10 @@ public class AdmComponentController {
             // 如果编码为空,或在4位、6位里都不存在,则报错
             if(StrUtil.isBlank(classCode) ||
                     (shortDictMap.get(classCode) == null && fullDictMap.get(classCode) == null)) {
-                throw new BusinessException(StrUtil.format("没有找到对象类型【{}】!", component.getClassCode()));
+                log.error(StrUtil.format("没有找到对象类型【{}】!", component.getClassCode()));
+                continue;
             }
+            filterVOs.add(component);
             // 如果少于6位,则需要适配新编码
             if(classCode.length() < 8) {
                 AdmObjectType dict = MapUtil.get(shortDictMap, classCode, AdmObjectType.class);
@@ -101,9 +105,12 @@ public class AdmComponentController {
                 String preName = dict == null ? "部件" : dict.getName();
                 component.setName(ObjectNameUtil.objectName(preName + "-"));
             }
-        });
-        vos = service.doInsert(AdmContextUtil.toDmpContext(), AdmComponent.class, vos);
-        return AdmResponse.success(vos);
+        }
+        if(CollUtil.isEmpty(filterVOs)){
+            return AdmResponse.success();
+        }
+        filterVOs = service.doInsert(AdmContextUtil.toDmpContext(), AdmComponent.class, filterVOs);
+        return AdmResponse.success(filterVOs);
     }
 
     /**

+ 11 - 6
src/main/java/com/persagy/proxy/object/controller/AdmEquipmentController.java

@@ -27,7 +27,6 @@ import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.basic.utils.JsonNodeUtils;
 import com.persagy.dmp.common.constant.CommonConstant;
 import com.persagy.dmp.common.context.AppContext;
-import com.persagy.dmp.common.exception.BusinessException;
 import com.persagy.dmp.common.helper.SpringHelper;
 import com.persagy.dmp.common.model.entity.BaseEntity;
 import com.persagy.dmp.common.model.response.CommonResult;
@@ -132,7 +131,8 @@ public class AdmEquipmentController {
 			fullDictMap.put(dict.getCode(), dict);
 		}
 		// 设备属性调整
-		vos.stream().forEach(equipment -> {
+		List<AdmEquipment> filterVOs = new ArrayList<>();
+		for(AdmEquipment equipment:vos) {
 			// 如果不是Eq开头,则重新生成ID
 			if(StrUtil.startWith(equipment.getId(), "Eq")) {
 				equipment.setId("Eq"+ IdUtil.simpleUUID());
@@ -142,8 +142,10 @@ public class AdmEquipmentController {
 			// 如果编码为空,或在4位、6位里都不存在,则报错
 			if(StrUtil.isBlank(classCode) ||
 					(shortDictMap.get(classCode) == null && fullDictMap.get(classCode) == null)) {
-				throw new BusinessException(StrUtil.format("没有找到对象类型【{}】!", equipment.getClassCode()));
+				log.error(StrUtil.format("没有找到对象类型【{}】!", equipment.getClassCode()));
+				continue;
 			}
+			filterVOs.add(equipment);
 			// 如果少于6位,则需要适配新编码
 			if(classCode.length() < 6) {
 				AdmObjectType dict = MapUtil.get(shortDictMap, classCode, AdmObjectType.class);
@@ -155,9 +157,12 @@ public class AdmEquipmentController {
 				String preName = dict == null ? "设备" : dict.getName();
 				equipment.setName(ObjectNameUtil.objectName(preName + "-"));
 			}
-		});
-		vos = service.doInsert(AdmContextUtil.toDmpContext(), AdmEquipment.class, vos);
-		return AdmResponse.success(vos);
+		}
+		if(CollUtil.isEmpty(filterVOs)){
+			return AdmResponse.success();
+		}
+		filterVOs = service.doInsert(AdmContextUtil.toDmpContext(), AdmEquipment.class, filterVOs);
+		return AdmResponse.success(filterVOs);
 	}
 
 	/**

+ 17 - 19
src/main/java/com/persagy/proxy/object/controller/AdmISpaceController.java

@@ -109,27 +109,25 @@ public class AdmISpaceController {
      */
     @PostMapping("/query")
     public AdmResponse query(@RequestBody JSONObject param) throws Exception {
-        AdmQueryCriteria admQueryCriteriaFl = new AdmQueryCriteria();
-        admQueryCriteriaFl.setName(AdmFloor.OBJ_TYPE);
-
-        if (StrUtil.isNotBlank(param.getString("floorId"))){
-            String filters = " id = '"+param.getString("floorId")+"' ";
-            admQueryCriteriaFl.addFilters(filters);
-        }
-        AdmResponse response = floorService.query(admQueryCriteriaFl);
-        AdmResponse admResponse = new AdmResponse();
-        if(CollUtil.isNotEmpty(response.getContent())){
-            AdmFloor admFloor = (AdmFloor) response.getContent().get(0);
-            if(admFloor!= null && StrUtil.isNotEmpty(admFloor.getBimIdPre())){
-                AdmQueryCriteria request = JsonHelper.toSingleEntity(param, AdmQueryCriteria.class);
-                request.setName(AdmISpace.OBJ_TYPE);
-                request.setFilters(" bimId startwith '"+admFloor.getBimIdPre()+"';");
-                admResponse = service.doQuery(AdmContextUtil.toDmpContext(), request, AdmISpace.class);
+        AdmQueryCriteria request = JsonHelper.toSingleEntity(param, AdmQueryCriteria.class);
+        request.setName(AdmISpace.OBJ_TYPE);
+        // 如果楼层ID不为空
+        String floorId = param.getString("floorId");
+        if (StrUtil.isNotBlank(floorId)){
+            AdmQueryCriteria floorCriteria = new AdmQueryCriteria();
+            floorCriteria.setName(AdmFloor.OBJ_TYPE);
+            floorCriteria.addFilters(" id = '" + floorId + "' ");
+            AdmResponse floorRes = floorService.query(floorCriteria);
+            if(CollUtil.isNotEmpty(floorRes.getContent())){
+                // 得到楼层信息,用bimId查询
+                AdmFloor floor = (AdmFloor) floorRes.getContent().get(0);
+                if(floor!= null && StrUtil.isNotEmpty(floor.getBimIdPre())){
+                    request.addFilters(" bimId startwith '" + floor.getBimIdPre() + "' ");
+                }
             }
-        }else{
-            admResponse = AdmResponse.success();
         }
-        admResponse.setMessage(param.getString("floorId"));
+        AdmResponse admResponse = service.doQuery(AdmContextUtil.toDmpContext(), request, AdmISpace.class);
+        admResponse.setMessage(floorId);
         return admResponse;
     }