Browse Source

Merge branch 'develop' of http://39.106.8.246:3003/BDTP/adm-middleware into develop

lvxianyun 3 years ago
parent
commit
b76cfdb305

+ 3 - 3
src/main/java/com/persagy/proxy/adm/model/AdmPoint.java

@@ -13,14 +13,14 @@ import lombok.Data;
 public class AdmPoint extends BaseEntity {
 
     /** 坐标x */
-    @JsonProperty("X")
+    @JsonProperty("x")
     private Double x;
 
     /** 坐标y */
-    @JsonProperty("Y")
+    @JsonProperty("y")
     private Double y;
 
     /** 坐标z */
-    @JsonProperty("Z")
+    @JsonProperty("z")
     private Double z;
 }

+ 39 - 18
src/main/java/com/persagy/proxy/dictionary/service/impl/AbstractAdmDictBaseServiceImpl.java

@@ -44,9 +44,15 @@ import java.util.Set;
 @Slf4j
 public class AbstractAdmDictBaseServiceImpl<T> implements IAdmDictBaseService<T> {
 
-    private static final Set<String> TABLE_INFOS=CollUtil.newHashSet("id","code","localId",
-            "localName","groupCode","projectId","objType","classCode","grouping","virtualCodes","createApp","updateApp",
-            "creator","creationTime","modifier","modifiedTime","valid","floorSequenceID");
+    private static final Set<String> TABLE_INFOS=CollUtil.newHashSet("id","name","localId","localName",
+            "qRCodePic","defaultQRCode","rFID","cADID","bimId","bimTypeId","bimLocation","bimFamilyName",
+            "bimFamilySymbol","equipSerial","modelId","note","introduction","businessFloorNum","officeFloorNum",
+            "shaftSequenceId","outline","buildQRCode","bimIdPre","floorSequenceId","floorSequenceID",
+            "permanentPeopleNum","floorIdentity","depth","width","buildArea","netArea","height","intro",
+            "ratedCoolingP","ratedHeatingP","acType","zoneOrientation","roomFuncType","roomSerial",
+            "projRoomFuncType","ratedLightP","zoneType","tenantType","tenant","elecCap","pollutionDegree",
+            "groupCode","projectId","objType","classCode","grouping","virtualCodes","createApp","updateApp",
+            "creator","creationTime","modifier","modifiedTime","valid");
 
     @Autowired
     private DmpRwdClient rwdClient;
@@ -207,27 +213,42 @@ public class AbstractAdmDictBaseServiceImpl<T> implements IAdmDictBaseService<T>
             admVO.setSort(admVO.getShowOrder());
 
             //path路径处理
-//            if(StringUtils.isEmpty(admVO.getFirstName())
-//                    || AdmDictConstant.FIRST_BASE_TAG.equals(admVO.getFirstName())
-//                    || AdmDictConstant.HIS_FIRST_BASE_TAG.equals(admVO.getFirstName())
-//                    || AdmDictConstant.HIS_FIRST_BASE_TAG_TWO.equals(admVO.getFirstName())){
-//                admVO.setPath(admVO.getCode());
-//            }else{
-//                admVO.setPath(AdmDictConstant.INFOS_EX+admVO.getCode());
-//            }
-            if (TABLE_INFOS.contains(admVO.getCode())){
-                admVO.setPath(admVO.getCode());
-            }else {
-                admVO.setPath(AdmDictConstant.INFOS_EX+admVO.getCode());
-            }
-
+            handleObjectInfoPath(admVO);
             //信息点是否可见设置默认值
             if(admVO.getVisible() == null){
                 admVO.setVisible(false);
             }
         }
     }
-
+    /***
+     * Description: 处理信息点的path
+     * @param admVO : 信息点对象
+     * @return : void
+     * @author : lijie
+     * @date :2021/11/3 13:29
+     * Update By lijie 2021/11/3 13:29
+     */
+    private void handleObjectInfoPath(AdmObjectInfo admVO) {
+        if(StrUtil.isNotBlank(admVO.getClassCode())
+                && StrUtil.isNotBlank(admVO.getCode())
+                && "height".equals(admVO.getCode())){
+            // 特殊处理height信息点
+            admVO.setPath(AdmDictConstant.INFOS_EX+admVO.getCode());
+            return;
+        }
+        if (TABLE_INFOS.contains(admVO.getCode())
+                || ((AdmDictConstant.FIRST_BASE_TAG.equals(admVO.getFirstName())
+                || AdmDictConstant.HIS_FIRST_BASE_TAG.equals(admVO.getFirstName())
+                || AdmDictConstant.HIS_FIRST_BASE_TAG_TWO.equals(admVO.getFirstName()))
+                && "pic".equals(admVO.getCode()))){
+            // 1)表字段信息中包含的
+            // 2)第一个名称为基本参数并且信息点为pic的
+            admVO.setPath(admVO.getCode());
+            return;
+        }
+        // 其余信息点带info.
+        admVO.setPath(AdmDictConstant.INFOS_EX+admVO.getCode());
+    }
 
 
     /**

+ 20 - 3
src/main/java/com/persagy/proxy/dictionary/service/impl/AdmPlanarServiceImpl.java

@@ -25,6 +25,7 @@ import org.springframework.stereotype.Service;
 
 import java.util.ArrayList;
 import java.util.List;
+import java.util.Map;
 import java.util.Set;
 import java.util.stream.Collectors;
 /**
@@ -57,14 +58,30 @@ public class AdmPlanarServiceImpl extends AbstractAdmBaseServiceImpl<T> implemen
      */
     @Override
     public AdmResponse queryPlanarEquip(InstanceUrlParam context, AdmPlanarEquipRequests requests, Class<AdmEquipment> clazz) throws Exception {
-
+       AdmResponse admResponse = new AdmResponse();
        if(CollUtil.isEmpty(requests.getZoneTypes()) && CollUtil.isEmpty(requests.getSpaceIds()) && CollUtil.isEmpty(requests.getFuncTypes())){
            //查询建筑楼层下的所有设备(或指定类型下的设备)
-             return queryAdmEquip(context,requests,clazz);
+          admResponse = queryAdmEquip(context, requests, clazz);
        }else{
            //查询空间下的设备
-           return queryAdmEquipInSpace(context,requests,clazz);
+          admResponse = queryAdmEquipInSpace(context,requests,clazz);
+       }
+       //结果集处理,设置设备类型名称字段
+        List<AdmEquipment> content = (List<AdmEquipment>)admResponse.getContent();
+       if(CollUtil.isEmpty(content)){
+           return admResponse;
        }
+        for (AdmEquipment admEquipment : content) {
+            Map<String, String> equipCategory = admEquipment.getEquipCategory();
+            if(CollUtil.isEmpty(equipCategory)){
+                continue;
+            }
+            for (Map.Entry<String, String> entry : equipCategory.entrySet()) {
+                admEquipment.setCodeName(entry.getValue());
+            }
+        }
+        admResponse.setContent(content);
+        return admResponse;
     }
 
     /**

+ 3 - 0
src/main/java/com/persagy/proxy/object/model/AdmEquipment.java

@@ -195,4 +195,7 @@ public class AdmEquipment extends AdmBaseEntity<AdmEquipment> {
     //@CascadeColumn(table="equipment", idColumn="class_code", childIdColumn="parent_id")
     private List<AdmObjectType> componentCategory;
 
+    /** 类型名称 */
+    private String codeName;
+
 }

+ 27 - 12
src/main/java/com/persagy/proxy/object/service/impl/AdmSpaceServiceImpl.java

@@ -1,8 +1,19 @@
 package com.persagy.proxy.object.service.impl;
 
-import cn.hutool.core.collection.CollUtil;
-import cn.hutool.core.util.StrUtil;
-import cn.hutool.json.JSONUtil;
+import java.util.ArrayList;
+import java.util.Collection;
+import java.util.HashMap;
+import java.util.HashSet;
+import java.util.List;
+import java.util.Map;
+import java.util.Set;
+import java.util.stream.Collectors;
+
+import javax.servlet.http.HttpServletRequest;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.fasterxml.jackson.core.JsonProcessingException;
@@ -12,7 +23,6 @@ import com.fasterxml.jackson.databind.node.JsonNodeFactory;
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import com.google.common.collect.Sets;
 import com.persagy.dmp.basic.model.QueryCriteria;
-import com.persagy.dmp.common.constant.CommonConstant;
 import com.persagy.dmp.common.context.AppContext;
 import com.persagy.dmp.common.helper.SpringHelper;
 import com.persagy.dmp.common.model.entity.BaseEntity;
@@ -40,13 +50,11 @@ import com.persagy.proxy.object.model.AdmSystem;
 import com.persagy.proxy.object.service.IAdmEquipmentService;
 import com.persagy.proxy.object.service.IAdmSpaceService;
 import com.persagy.proxy.object.service.IAdmSystemService;
-import lombok.extern.slf4j.Slf4j;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
 
-import javax.servlet.http.HttpServletRequest;
-import java.util.*;
-import java.util.stream.Collectors;
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.json.JSONUtil;
+import lombok.extern.slf4j.Slf4j;
 
 /**
  * ADM 空间 实现类
@@ -363,9 +371,17 @@ public class AdmSpaceServiceImpl extends AbstractAdmBaseServiceImpl<AdmSpace> im
         if (null==criteria){
             return;
         }
+        
+        ObjectMapper objectMapper = SpringHelper.getBean(ObjectMapper.class);
+        if (criteria.has("not id")) {
+    		ObjectNode objectNode = objectMapper.createObjectNode();
+    		objectNode.putPOJO("$not in", criteria.get("not id"));
+    		criteria.putPOJO("id", objectNode);
+    		criteria.remove("not id");
+		}
+        
         if (criteria.has("floorId")){
             // 有建筑id过滤
-            ObjectMapper objectMapper = SpringHelper.getBean(ObjectMapper.class);
             ObjectNode relationTo = objectMapper.createObjectNode();
             relationTo.put("graphCode", GraphCodeEnum.ArchSubset.name());
             relationTo.put("relCode", RelCodeEnum.Fl2Sp.name());
@@ -378,7 +394,6 @@ public class AdmSpaceServiceImpl extends AbstractAdmBaseServiceImpl<AdmSpace> im
         }
         if (criteria.has("buildingId")){
             // 有建筑id过滤
-            ObjectMapper objectMapper = SpringHelper.getBean(ObjectMapper.class);
             ObjectNode relationTo = objectMapper.createObjectNode();
             relationTo.put("graphCode", GraphCodeEnum.ArchSubset.name());
             relationTo.put("relCode", RelCodeEnum.Bd2Sp.name());