瀏覽代碼

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

lijie 3 年之前
父節點
當前提交
bb8ad29757
共有 51 個文件被更改,包括 874 次插入268 次删除
  1. 7 14
      src/main/java/com/persagy/proxy/adm/controller/AdmReportEquipController.java
  2. 8 28
      src/main/java/com/persagy/proxy/adm/controller/AdmSystemController.java
  3. 4 3
      src/main/java/com/persagy/proxy/adm/controller/RelationReportController.java
  4. 204 67
      src/main/java/com/persagy/proxy/adm/handler/RelationReportHandler.java
  5. 2 0
      src/main/java/com/persagy/proxy/adm/model/AdmDict.java
  6. 5 7
      src/main/java/com/persagy/proxy/adm/model/AdmEquipment.java
  7. 8 8
      src/main/java/com/persagy/proxy/adm/model/EquipmentExcel2.java
  8. 4 3
      src/main/java/com/persagy/proxy/adm/service/IAdmDictService.java
  9. 7 0
      src/main/java/com/persagy/proxy/adm/service/IAdmEquipmentService.java
  10. 10 0
      src/main/java/com/persagy/proxy/adm/service/IAdmSystemService.java
  11. 43 17
      src/main/java/com/persagy/proxy/adm/service/IRelationReportService.java
  12. 12 12
      src/main/java/com/persagy/proxy/adm/service/impl/AdmDictServiceImpl.java
  13. 43 6
      src/main/java/com/persagy/proxy/adm/service/impl/AdmEquipmentServiceImpl.java
  14. 55 0
      src/main/java/com/persagy/proxy/adm/service/impl/AdmSystemServiceImpl.java
  15. 103 24
      src/main/java/com/persagy/proxy/adm/service/impl/RelationReportService.java
  16. 18 4
      src/main/java/com/persagy/proxy/adm/strategy/RelationObjectContext.java
  17. 7 6
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/AbstractRelationObject.java
  18. 3 14
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/AbstractReportRelationObject.java
  19. 6 4
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSh2BdRelationObject.java
  20. 6 4
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSh2FlRelationObject.java
  21. 6 3
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSh2ShRelationObject.java
  22. 6 3
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSh2SpRelationObject.java
  23. 6 3
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSp2BdRelationObject.java
  24. 6 3
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSp2FlRelationObject.java
  25. 16 0
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchSubsetBd2FlRelationObject.java
  26. 15 0
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ConvectionNetworkMixMechRelationObject.java
  27. 15 0
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ConvectionNetworkNaturalRelationObject.java
  28. 15 0
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ConvectionNetworkOnewayMechRelationObject.java
  29. 15 0
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/EquipPowerEqBackupRelationObject.java
  30. 15 0
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/EquipPowerEqNormalRelationObject.java
  31. 15 0
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/EquipPowerSyBackupRelationObject.java
  32. 15 0
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/EquipPowerSyNormalRelationObject.java
  33. 5 2
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchEq2BdRelationObject.java
  34. 5 2
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchEq2FlRelationObject.java
  35. 6 3
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchEq2ShRelationObject.java
  36. 5 2
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchSy2BdRelationObject.java
  37. 5 2
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchSy2FlRelationObject.java
  38. 5 2
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchSy2ShRelationObject.java
  39. 6 3
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchSy2SpRelationObject.java
  40. 6 3
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechInArchEq2BdRelationObject.java
  41. 6 3
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechInArchEq2FlRelationObject.java
  42. 5 2
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechInArchEq2SpRelationObject.java
  43. 13 3
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/RadiationNetworkConnectRelationObject.java
  44. 15 0
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/RadiationNetworkTransparentRelationObject.java
  45. 11 2
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/RelationObjectStrategy.java
  46. 12 2
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/SensorRelationshipSs2EqRelationObject.java
  47. 12 2
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/SensorRelationshipSs2SpRelationObject.java
  48. 12 2
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/SensorRelationshipSs2SyRelationObject.java
  49. 15 0
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/TrafficNetworkFFCloseRelationObject.java
  50. 15 0
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/TrafficNetworkFFOpenRelationObject.java
  51. 15 0
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/TrafficNetworkNormalRelationObject.java

+ 7 - 14
src/main/java/com/persagy/proxy/adm/controller/AdmReportEquipController.java

@@ -33,7 +33,6 @@ import com.persagy.proxy.adm.service.IAdmSystemService;
 import com.persagy.proxy.adm.utils.AdmContextUtil;
 import com.persagy.proxy.adm.utils.AdmQueryCriteriaHelper;
 import com.persagy.proxy.common.entity.DmpResult;
-import com.persagy.proxy.common.entity.InstanceUrlParam;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.web.bind.annotation.*;
@@ -307,10 +306,7 @@ public class AdmReportEquipController {
         criteriaEquip.putPOJO("relationTo",relationTo);
         queryCriteria.setCriteria(criteriaEquip);
         List<ObjectNode> equips = DigitalObjectFacade.query(groupCode,AdmContextUtil.toDmpContext().getProjectId(),AdmCommonConstant.APP_ID,null,queryCriteria);
-        if (CollUtil.isEmpty(equips))
-            return AdmResponse.success();
-        else
-            return AdmResponse.success(equips);
+        return AdmResponse.success(equips);
     }
 
     /**
@@ -323,7 +319,7 @@ public class AdmReportEquipController {
         //return SysEquipService.pageQuery(request, arrayListOf(SFilter.eq("projectId", SPageAdmContextUtil.toDmpContext().getHeader("projectId").toString())))
         request.setName(AdmSystem.OBJ_TYPE);
         QueryCriteria queryCriteria = AdmQueryCriteriaHelper.toDmpCriteria(request);
-        queryCriteria.setSize(500l);
+        queryCriteria.setSize(500L);
         List<ObjectNode> objectNodeList = DigitalObjectFacade.query(groupCode,AdmContextUtil.toDmpContext().getProjectId(),AdmCommonConstant.APP_ID,null,queryCriteria);
         if(CollUtil.isEmpty(objectNodeList)){
             return AdmResponse.success();
@@ -331,8 +327,8 @@ public class AdmReportEquipController {
         List<AdmSystem> admSystemList = JSONUtil.toList(objectNodeList.toString(), AdmSystem.class);
         Map<String, AdmSystem> admSystemMap = CollUtil.fieldValueMap(admSystemList, BaseEntity.PROP_ID);
         QueryCriteria queryCriteriaRelation = new QueryCriteria();
-        queryCriteriaRelation.setPage(request.getPageNumber() == null ? 0 : request.getPageNumber()*1l);
-        queryCriteriaRelation.setSize(request.getPageSize() == null ? 0 : request.getPageSize()*1l);
+        queryCriteriaRelation.setPage(request.getPageNumber() == null ? 0 : request.getPageNumber()*1L);
+        queryCriteriaRelation.setSize(request.getPageSize() == null ? 0 : request.getPageSize()*1L);
 
         ObjectNode criteria = JsonNodeFactory.instance.objectNode();
         criteria.put("relCode", "Sy2Eq");
@@ -824,13 +820,10 @@ public class AdmReportEquipController {
     @GetMapping("/type/tree")
     public AdmResponse querySystemEquipCategory() throws Exception {
         // 组装上下文条件
-        AdmDict request = new AdmDict();
-        InstanceUrlParam context = AdmContextUtil.toDmpContext();
-        request.setType(AdmDictCategoryEnum.SYSTEM_EQUIP.getValue());
-        return dictService.queryCategory(context,request,AdmObjectType.class);
+        AdmDict request = AdmDict.builder().type(AdmDictCategoryEnum.SYSTEM_EQUIP.getValue()).build();
+        return dictService.queryCategory(AdmContextUtil.toDmpContext(),request,AdmObjectType.class);
     }
 
-
     /**
      * 计算动态、静态信息点
      */
@@ -976,7 +969,7 @@ public class AdmReportEquipController {
         } else {
             // 2.2 根据定义获取信息点
             //查询当前实例所有信息点总数
-            long controlInfoCounts = 0l;
+            long controlInfoCounts = 0L;
             QueryCriteria queryCriteria = new QueryCriteria();
             ObjectNode criteria = JsonNodeFactory.instance.objectNode();
             criteria = JsonNodeFactory.instance.objectNode();

+ 8 - 28
src/main/java/com/persagy/proxy/adm/controller/AdmSystemController.java

@@ -177,8 +177,7 @@ public class AdmSystemController {
      * @throws Exception
      */
     @GetMapping("/export")
-    public AdmResponse exportInfos(
-                             @RequestBody AdmQueryCriteria request) throws Exception {
+    public AdmResponse exportInfos(@RequestBody AdmQueryCriteria request) {
         request.setName(AdmSystem.OBJ_TYPE);
         return service.doQuery(AdmContextUtil.toDmpContext(), request, AdmSystem.class);
     }
@@ -207,33 +206,14 @@ public class AdmSystemController {
 
     /**
      * 查询
-
      * @param request
      * @return
      * @throws Exception
      */
     @PostMapping("/query")
-    public AdmResponse query(@RequestBody AdmQueryCriteria request) throws Exception {
+    public AdmResponse query(@RequestBody AdmQueryCriteria request) {
         request.setName(AdmSystem.OBJ_TYPE);
-        AdmResponse admResponse = service.doQuery(AdmContextUtil.toDmpContext(), request, AdmSystem.class);
-        List<AdmSystem> systemList = (List<AdmSystem>) admResponse.getContent();
-        if(CollUtil.isNotEmpty(systemList)){
-            AdmDict admDict = new AdmDict();
-            admDict.setType(AdmSystem.OBJ_TYPE);
-            AdmResponse admResponseDic = dictService.queryCategory(AdmContextUtil.toDmpContext(), admDict, AdmObjectType.class);
-            if(CollUtil.isNotEmpty(admResponseDic.getContent())){
-                List<AdmObjectType> admDictList = (List<AdmObjectType>) admResponseDic.getContent();
-                Map<String, AdmObjectType> admDictMap = CollUtil.fieldValueMap(admDictList, "code");
-                systemList.stream().forEach(admSystem -> {
-                    if(admDictMap.keySet().contains(admSystem.getClassCode())){
-                        AdmObjectType admDictTemp = admDictMap.get(admSystem.getClassCode());
-                        admSystem.setCategoryName(admDictTemp.getName());
-                    }
-                });
-                admResponse.setContent(systemList);
-            }
-        }
-        return admResponse;
+        return service.doQuery(AdmContextUtil.toDmpContext(), request, AdmSystem.class);
     }
 
 
@@ -381,8 +361,8 @@ public class AdmSystemController {
         requestData.setSize(rwdQueryCriteria.getSize());
         List result = DigitalObjectSimpleFacade.queryNotSureSystem(AdmContextUtil.toDmpContext().getGroupCode(), AdmContextUtil.toDmpContext().getProjectId(), AdmContextUtil.toDmpContext().getAppId(),null, requestData);
         if(CollUtil.isNotEmpty(result)){
-           List<AdmSystem> admSystemList = JSONUtil.toList(result.toString(), AdmSystem.class);
-           return admSystemList;
+            List<AdmSystem> admSystemList = JSONUtil.toList(result.toString(), AdmSystem.class);
+            return admSystemList;
         }else{
             return null;
         }
@@ -464,7 +444,7 @@ public class AdmSystemController {
      */
     @PostMapping("/un-sys-equip")
     public AdmResponse queryUnEquip( @NotNull @QueryParam("sysId") String sysId,
-                             @RequestBody AdmQueryCriteria request) throws Exception {
+                                     @RequestBody AdmQueryCriteria request) throws Exception {
         AdmResponse admResponse = queryObjectByType(sysId,request,"Sy2Eq","MechSubset", AdmEquipment.OBJ_TYPE);
         return admResponse;
     }
@@ -480,7 +460,7 @@ public class AdmSystemController {
      */
     @PostMapping("/un-sys-shaft")
     public AdmResponse queryUnSh( @NotNull @QueryParam("sysId") String sysId,
-                             @RequestBody AdmQueryCriteria request) throws Exception {
+                                  @RequestBody AdmQueryCriteria request) throws Exception {
         AdmResponse admResponse = queryObjectByType(sysId,request,"Sy2Sh",null, AdmShaft.OBJ_TYPE);
         return admResponse;
     }
@@ -495,7 +475,7 @@ public class AdmSystemController {
      */
     @PostMapping("/un-sys-zoneSpaceBaseTable")
     public AdmResponse queryUnZoneSp(@NotNull @QueryParam("sysId") String sysId,
-                             @RequestBody AdmQueryCriteria request) throws Exception {
+                                     @RequestBody AdmQueryCriteria request) throws Exception {
         AdmResponse admResponse = queryObjectByType(sysId,request,"Sy2Sp",null, AdmSpace.OBJ_TYPE);
         return admResponse;
     }

+ 4 - 3
src/main/java/com/persagy/proxy/adm/controller/RelationReportController.java

@@ -36,6 +36,7 @@ import com.persagy.proxy.adm.constant.AdmCommonConstant;
 import com.persagy.proxy.adm.constant.AdmRelationTypeEnum;
 import com.persagy.proxy.adm.handler.RelationReportHandler;
 import com.persagy.proxy.adm.model.AdmRelationObject;
+import com.persagy.proxy.adm.model.EquipmentBindPointExcel;
 import com.persagy.proxy.adm.model.EquipmentExcel;
 import com.persagy.proxy.adm.request.AdmQueryCriteria;
 import com.persagy.proxy.adm.request.AdmResponse;
@@ -196,8 +197,8 @@ public class RelationReportController {
             String fileName = URLEncoder.encode("设备实例交付", encode);
             response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
             
-            List<EquipmentExcel> equipByNotSpace = this.relationReportHandler.findEquipByNotSpace(groupCode, projectId);
-            EasyExcel.write(response.getOutputStream(), EquipmentExcel.class).sheet(0).doWrite(equipByNotSpace);
+            List<EquipmentBindPointExcel> equipmentBindPointExcel = this.relationReportHandler.queryProjectBindPoint(groupCode, projectId);
+            EasyExcel.write(response.getOutputStream(), EquipmentBindPointExcel.class).sheet(0).doWrite(equipmentBindPointExcel);
 		} catch(Exception e) {
 			log.error("设备数据导出异常", e);
 		}
@@ -376,7 +377,7 @@ public class RelationReportController {
 			List<AdmRelationObject> relationObjects = null;
 			if (typeEnum != null) {
 				String graphAndRelKey = typeEnum.getGraphCode() + AdmCommonConstant.UNDERLINE + typeEnum.getRelCode();
-				relationObjects = this.relationObjectContext.findRelationObject(groupCode, projectId, graphAndRelKey);
+				relationObjects = this.relationObjectContext.exportRelationObject(groupCode, projectId, graphAndRelKey);
 			}
 			
 			File templateFile = this.getTemplateFile("relation-template.xlsx");

+ 204 - 67
src/main/java/com/persagy/proxy/adm/handler/RelationReportHandler.java

@@ -1,7 +1,6 @@
 package com.persagy.proxy.adm.handler;
 
 import java.util.ArrayList;
-import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.List;
@@ -12,23 +11,18 @@ import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Component;
 
 import com.alibaba.fastjson.JSONObject;
-import com.baomidou.mybatisplus.core.metadata.OrderItem;
-import com.fasterxml.jackson.databind.ObjectMapper;
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import com.google.common.collect.Lists;
-import com.persagy.dmp.basic.dto.RequestData;
-import com.persagy.dmp.basic.model.QueryCriteria;
-import com.persagy.dmp.common.helper.SpringHelper;
-import com.persagy.dmp.define.client.DigitalDefineFacade;
+import com.google.common.collect.Sets;
+import com.persagy.dmp.define.entity.ObjectInfoDefine;
 import com.persagy.dmp.define.entity.ObjectTypeDefine;
-import com.persagy.dmp.digital.client.DigitalObjectFacade;
-import com.persagy.dmp.digital.client.DigitalRelationFacade;
 import com.persagy.dmp.digital.entity.ObjectDigital;
 import com.persagy.dmp.digital.entity.ObjectRelation;
 import com.persagy.proxy.adm.constant.AdmCommonConstant;
 import com.persagy.proxy.adm.constant.AdmObjectType;
 import com.persagy.proxy.adm.constant.GraphCodeEnum;
 import com.persagy.proxy.adm.constant.RelCodeEnum;
+import com.persagy.proxy.adm.model.EquipmentBindPointExcel;
 import com.persagy.proxy.adm.model.EquipmentExcel;
 import com.persagy.proxy.adm.service.IRelationReportService;
 import com.persagy.proxy.adm.strategy.RelationObjectContext;
@@ -63,96 +57,100 @@ public class RelationReportHandler {
 	 */
 	public List<EquipmentExcel> findEquipByNotSpace(String groupCode, String projectId) {
 		groupCode = StrUtil.isBlank(groupCode) ? defaultCode : groupCode;
+		String equipment = AdmObjectType.EQUIPMENT.getIndex();
 		
-		ObjectMapper objectMapper = SpringHelper.getBean(ObjectMapper.class);
-		QueryCriteria objectCriteria = new QueryCriteria();
-		ObjectNode object = objectMapper.createObjectNode();
-		object.put("objType", AdmObjectType.EQUIPMENT.getIndex());
-		objectCriteria.setCriteria(object);
-		
-		// 1.获取所有的设备类定义的className
-		List<ObjectTypeDefine> classList = DigitalDefineFacade.queryObjectType(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, objectCriteria);
+		// 1.获取所有的设备对象数据
+		List<ObjectNode> equipList = this.relationReportService.queryObjects(groupCode, projectId, null, null, equipment, "classCode");
+		if (CollectionUtil.isEmpty(equipList)) {
+			return Lists.newArrayList();
+		}
+				
+		// 2.获取所有的设备类定义的className
+		List<ObjectTypeDefine> classList = this.relationReportService.queryClassList(groupCode, projectId, null, equipment, null);
 		// key-classCode, value-className
 		Map<String, String> classDefine = new HashMap<String, String>();
-		if (CollectionUtil.isNotEmpty(classList)) {
-			for (ObjectTypeDefine objectTypeDefine : classList) {
-				classDefine.put(objectTypeDefine.getCode(), objectTypeDefine.getName());
+		for (ObjectTypeDefine objectTypeDefine : classList) {
+			classDefine.put(objectTypeDefine.getCode(), objectTypeDefine.getName());
+		}
+		
+		// 3.查询出所有的边类型为 Eq2Sp 的关系数据
+		List<ObjectRelation> relationObjects = this.relationReportService.findRelationObjects(groupCode, projectId, null, RelCodeEnum.Eq2Sp.name());
+		Set<String> excludeIds = new HashSet<String>();
+		if (CollectionUtil.isNotEmpty(relationObjects)) {
+			for (ObjectRelation relationInfo : relationObjects) {
+				excludeIds.add(relationInfo.getObjFrom());
 			}
 		}
+		
+		return this.exportEquipmentExcel(equipList, classDefine, excludeIds, groupCode, projectId);
+	}
+	
+	/**
+	 * 统计项目下已有的设备,信息点,每个设备
+	 * 
+	 * @param groupCode
+	 * @param projectId
+	 */
+	public List<EquipmentBindPointExcel> queryProjectBindPoint(String groupCode, String projectId) {
+		groupCode = StrUtil.isBlank(groupCode) ? defaultCode : groupCode;
+		String equipment = AdmObjectType.EQUIPMENT.getIndex();
+		
+		// 1.获取项目名称
+		List<ObjectNode> projects = this.relationReportService.queryObjects(groupCode, projectId, projectId, AdmObjectType.PROJECT.getIndex(), null, null);
+		if (CollectionUtil.isEmpty(projects)) {
+			return Lists.newArrayList();
+		}
+		String projectName = projects.get(0).has("localName") ? projects.get(0).get("localName").asText() : null;
+		
 		// 2.获取所有的设备对象数据
-		objectCriteria.setOrders(Collections.singletonList(OrderItem.asc("classCode")));
-		List<ObjectNode> equipList = DigitalObjectFacade.query(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, objectCriteria);
+		List<ObjectNode> equipList = this.relationReportService.queryObjects(groupCode, projectId, null, null, equipment, "classCode");
 		if (CollectionUtil.isEmpty(equipList)) {
 			return Lists.newArrayList();
 		}
 		
-		// 3.查询出所有的边类型为 Eq2Sp 的关系数据
-		QueryCriteria relationCriteria = new QueryCriteria();
-		ObjectNode relation = objectMapper.createObjectNode();
-		relation.put("relCode", RelCodeEnum.Eq2Sp.name());
-		relationCriteria.setCriteria(relation);
-		List<ObjectRelation> relationList = DigitalRelationFacade.query(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, relationCriteria);
-		Set<String> equipIds = new HashSet<String>();
-		if (CollectionUtil.isNotEmpty(relationList)) {
-			for (ObjectRelation relationInfo : relationList) {
-				equipIds.add(relationInfo.getObjFrom());
-			}
+		// 3.获取所有的设备、系统类定义信息
+		List<ObjectTypeDefine> equipClass = this.relationReportService.queryClassList(groupCode, projectId, null, equipment, null);
+		List<ObjectTypeDefine> systemClass = this.relationReportService.queryClassList(groupCode, projectId, null, AdmObjectType.SYSTEM.getIndex(), null);
+		// key-equipCode, value-equipName
+		Map<String, String> equipTemp = new HashMap<String, String>();
+		for (ObjectTypeDefine equip : equipClass) {
+			equipTemp.put(equip.getCode(), equip.getName());
+		}
+		// key-systemCode, value-systemName
+		Map<String, String> systemTemp = new HashMap<String, String>();
+		for (ObjectTypeDefine system : systemClass) {
+			systemTemp.put(system.getCode(), system.getName());
 		}
 		
-		return this.exportEquipmentExcel(equipList, classDefine, equipIds, groupCode, projectId);
+		// 4.获取所有的信息点
+		Set<String> equipCodes = equipTemp.keySet();
+		List<ObjectInfoDefine> funidList = this.relationReportService.queryFunidList(groupCode, projectId, equipCodes, null, null);
+		return this.exportEquipmentBindPointExcel(equipList, equipTemp, systemTemp, funidList, groupCode, projectId, projectName);
 	}
 	
 	/**
-	 * 构造 excel 设备数据
+	 * 构造 excel 设备数据--不在空间内的设备数据
 	 * 
 	 * @param equipList 设备数据集合
 	 * @param classDefine 类定义信息
-	 * @param equipIds 需要剔除的设备ID集合
+	 * @param excludeIds 需要剔除的设备ID集合
 	 * @param groupCode 
 	 * @param projectId 
 	 * @return
 	 */
-	private List<EquipmentExcel> exportEquipmentExcel(List<ObjectNode> equipList, Map<String, String> classDefine, Set<String> equipIds, String groupCode, String projectId) {
+	private List<EquipmentExcel> exportEquipmentExcel(List<ObjectNode> equipList, Map<String, String> classDefine, Set<String> excludeIds, String groupCode, String projectId) {
 		// key: 设备ID,value: 建筑名称
 		Map<String, String> buildTemp = new HashMap<String, String>();
 		// key: 设备ID,value: 楼层名称
 		Map<String, String> floorTemp = new HashMap<String, String>();
 		
-		// 获取建筑名称
-		//this.relationObjectContext.findRelationObject(groupCode, projectId, projectId);
-		RequestData requestData = new RequestData();
-		requestData.setGraphCode(GraphCodeEnum.MechInArch.name());
-		requestData.setRelCode(RelCodeEnum.Eq2Bd.name());
-		requestData.setPage(1L);
-		requestData.setSize(500L);
-		List<ObjectDigital> buildDigitals = DigitalObjectFacade.queryObjectListByGraphCodeAndRelCode(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, requestData);
-		if (CollectionUtil.isNotEmpty(buildDigitals)) {
-			for (ObjectDigital master : buildDigitals) {
-				List<ObjectDigital> slaveDigitals = master.getRelObjs();
-				ObjectDigital slave = CollectionUtil.isEmpty(slaveDigitals) ? null : slaveDigitals.get(0);
-				if (slave != null) {
-					buildTemp.put(master.getId(), slave.getLocalName());
-				}
-			}
-		}
-		// 楼层名称
-		requestData.setRelCode(RelCodeEnum.Eq2Fl.name());
-		List<ObjectDigital> floorDigitals = DigitalObjectFacade.queryObjectListByGraphCodeAndRelCode(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, requestData);
-		if (CollectionUtil.isNotEmpty(floorDigitals)) {
-			for (ObjectDigital master : floorDigitals) {
-				List<ObjectDigital> slaveDigitals = master.getRelObjs();
-				ObjectDigital slave = CollectionUtil.isEmpty(slaveDigitals) ? null : slaveDigitals.get(0);
-				if (slave != null) {
-					floorTemp.put(master.getId(), slave.getLocalName());
-				}
-			}
-		}
+		this.findBuildAndFloorName(buildTemp, floorTemp, groupCode, projectId);
 		
 		// 结果封装
 		List<EquipmentExcel> excelList = new ArrayList<EquipmentExcel>();
 		for (ObjectNode equip : equipList) {
 			String id = equip.get("id") == null ? null : equip.get("id").asText();
-			if (id != null && !equipIds.contains(id)) {
+			if (id != null && !excludeIds.contains(id)) {
 				EquipmentExcel excel = new EquipmentExcel();
 				excel.setId(id);
 				excel.setName(equip.get("name") == null ? null : equip.get("name").asText());
@@ -176,5 +174,144 @@ public class RelationReportHandler {
 		}
 		return excelList;
 	}
+
+	/**
+	 * 构造 excel 设备数据--统计项目下已有的设备,信息点,每个设备
+	 * 
+	 * @param equipList
+	 * @param equipTemp
+	 * @param systemTemp
+	 * @param groupCode
+	 * @param projectId
+	 * @param projectName
+	 * @return
+	 */
+	private List<EquipmentBindPointExcel> exportEquipmentBindPointExcel(List<ObjectNode> equipList, Map<String, String> equipTemp, 
+			Map<String, String> systemTemp, List<ObjectInfoDefine> funidList, String groupCode, String projectId, String projectName) {
+		// key: 设备ID,value: 建筑名称
+		Map<String, String> buildTemp = new HashMap<String, String>();
+		// key: 设备ID,value: 楼层名称
+		Map<String, String> floorTemp = new HashMap<String, String>();
+		
+		this.findBuildAndFloorName(buildTemp, floorTemp, groupCode, projectId);
+		
+		// 信息点分类信息统计
+		// key: classCode, value: 信息点
+		Map<String, Set<String>> infoCodes = new HashMap<String, Set<String>>();
+		// key: classCode, value: 静态信息点的数量 
+		Map<String, Integer> staticCount = new HashMap<String, Integer>();
+		// key: classCode, value: 动态信息点的数量 
+		Map<String, Integer> dynamicCount = new HashMap<String, Integer>();
+		// key: classCode_infoCode, value: 动静态
+		Map<String, String> codeAttrbut = new HashMap<String, String>();
+		for (ObjectInfoDefine infoDefine : funidList) {
+			String classCode = infoDefine.getClassCode();
+			String category = infoDefine.getCategory();
+			if ("STATIC".equals(category)) {
+				int count = (staticCount.get(classCode) == null ? 0 : staticCount.get(classCode)) + 1;
+				staticCount.put(classCode, count);
+			} else {
+				int count = (dynamicCount.get(classCode) == null ? 0 : dynamicCount.get(classCode)) + 1;
+				dynamicCount.put(classCode, count);
+			}
+			
+			codeAttrbut.put(classCode + AdmCommonConstant.UNDERLINE + infoDefine.getCode(), category);
+			if (infoCodes.containsKey(classCode)) {
+				infoCodes.get(classCode).add(infoDefine.getCode());
+			} else {
+				infoCodes.put(classCode, Sets.newHashSet(infoDefine.getCode()));
+			}
+		}
+		
+		// 结果封装
+		List<EquipmentBindPointExcel> excelList = new ArrayList<EquipmentBindPointExcel>();
+		for (int i = 0; i < equipList.size(); i++) {
+			ObjectNode equip = equipList.get(i);
+			String id = equip.get("id") == null ? null : equip.get("id").asText();
+			String equipCode = equip.get("classCode") == null ? null : equip.get("classCode").asText();
+			String systemCode = (equipCode == null || equipCode.length() < 5) ? null : equipCode.substring(0, 4);
+			
+			EquipmentBindPointExcel excel = new EquipmentBindPointExcel();
+			excel.setIndex(i + 1);
+			excel.setProjectName(projectName);
+			excel.setBuildName(buildTemp.get(id));
+			excel.setFloorName(floorTemp.get(id));
+			excel.setSystemCode(systemCode);
+			excel.setSystemName(systemTemp.get(systemCode));
+			excel.setEquipCode(equipCode);
+			excel.setEquipName(equipTemp.get(equipCode));
+			excel.setEquipId(id);
+			excel.setLocalId(equip.get("localId") == null ? null : equip.get("localId").asText());
+			excel.setLocalName(equip.get("localName") == null ? null : equip.get("localName").asText());
+			
+			// 获取此classCode下有多少信息点、静态信息点、动态信息点
+			int staticNum = staticCount.get(equipCode) == null ? 0 : staticCount.get(equipCode);
+			int dynamicNum = dynamicCount.get(equipCode) == null ? 0 : dynamicCount.get(equipCode);
+			excel.setNeedPointCount(staticNum + dynamicNum);
+			excel.setNeedStaticPointCount(staticNum);
+			excel.setNeedDynamicPointCount(dynamicNum);
+			
+			int nowStatic = 0;
+			int nowDynamic = 0;
+			Set<String> needCodes = infoCodes.get(equipCode);
+			String infos = equip.get("infos") == null ? null : equip.get("infos").asText();
+			if (StrUtil.isNotBlank(infos)) {
+				JSONObject parseObject = JSONObject.parseObject(infos);
+				excel.setBimId(parseObject.getString("bimId"));
+				
+				// 判断已绑定多少信息点
+				Set<String> nowCodes = parseObject.keySet();
+				for (String key : nowCodes) {
+					if (needCodes.contains(key)) {
+						if ("STATIC".equals(codeAttrbut.get(equipCode + AdmCommonConstant.UNDERLINE + key))) {
+							nowStatic++;
+						} else {
+							nowDynamic++;
+						}
+					}
+				}
+			}
+			excel.setNowPointCount(nowStatic + nowDynamic);
+			excel.setNowStaticPointCount(nowStatic);
+			excel.setNowDynamicPointCount(nowDynamic);
+			excelList.add(excel);
+		}
+		return excelList;
+	}
+	
+	/**
+	 * 获取建筑、楼层的名称
+	 * 
+	 * @param buildTemp key: 设备ID,value: 建筑名称
+	 * @param floorTemp key: 设备ID,value: 楼层名称
+	 * @param groupCode
+	 * @param projectId
+	 */
+	private void findBuildAndFloorName(Map<String, String> buildTemp, Map<String, String> floorTemp, String groupCode, String projectId) {
+		// 获取建筑名称
+		String graphAndRelKey = GraphCodeEnum.MechInArch.name() + AdmCommonConstant.UNDERLINE + RelCodeEnum.Eq2Bd.name();
+		List<ObjectDigital> buildDigitals = this.relationObjectContext.queryAllRelations(groupCode, projectId, graphAndRelKey);
+		if (CollectionUtil.isNotEmpty(buildDigitals)) {
+			for (ObjectDigital master : buildDigitals) {
+				List<ObjectDigital> slaveDigitals = master.getRelObjs();
+				ObjectDigital slave = CollectionUtil.isEmpty(slaveDigitals) ? null : slaveDigitals.get(0);
+				if (slave != null) {
+					buildTemp.put(master.getId(), slave.getLocalName());
+				}
+			}
+		}
+		// 获取楼层名称
+		graphAndRelKey = GraphCodeEnum.MechInArch.name() + AdmCommonConstant.UNDERLINE + RelCodeEnum.Eq2Fl.name();
+		List<ObjectDigital> floorDigitals = this.relationObjectContext.queryAllRelations(groupCode, projectId, graphAndRelKey);
+		if (CollectionUtil.isNotEmpty(floorDigitals)) {
+			for (ObjectDigital master : floorDigitals) {
+				List<ObjectDigital> slaveDigitals = master.getRelObjs();
+				ObjectDigital slave = CollectionUtil.isEmpty(slaveDigitals) ? null : slaveDigitals.get(0);
+				if (slave != null) {
+					floorTemp.put(master.getId(), slave.getLocalName());
+				}
+			}
+		}
+	}
 	
 }

+ 2 - 0
src/main/java/com/persagy/proxy/adm/model/AdmDict.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.model;
 
+import lombok.Builder;
 import lombok.Data;
 
 /**
@@ -10,6 +11,7 @@ import lombok.Data;
  * @Version V1.0
  **/
 @Data
+@Builder
 public class AdmDict {
 
   private String type;

+ 5 - 7
src/main/java/com/persagy/proxy/adm/model/AdmEquipment.java

@@ -2,13 +2,13 @@ package com.persagy.proxy.adm.model;
 
 import cn.hutool.core.util.StrUtil;
 import com.alibaba.fastjson.annotation.JSONField;
-import com.fasterxml.jackson.databind.node.ObjectNode;
 import com.persagy.proxy.adm.annotations.CascadeColumn;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 
 import javax.persistence.Column;
 import java.util.List;
+import java.util.Map;
 
 /**
  * ADM 设备 实体
@@ -72,8 +72,8 @@ public class AdmEquipment extends AdmSBaseEntity<AdmEquipment>{
 
     /** 品牌id */
     private String dpBrandId;
-    
-    
+
+
 
     /** Revit族 */
     private String bimFamilyName;
@@ -111,6 +111,8 @@ public class AdmEquipment extends AdmSBaseEntity<AdmEquipment>{
 
     /** 对象类型 */
     private String objectType = OBJ_TYPE;
+    /** 设备分类 */
+    private Map<String, String> equipCategory;
 
     /** 资产信息实体类   资产对应设备设施关系 资产→设备设施*/
     @CascadeColumn(graphCode = "Property2Mech", relCode = "Pe2Eq", selectToObj = false)
@@ -188,8 +190,4 @@ public class AdmEquipment extends AdmSBaseEntity<AdmEquipment>{
     //@CascadeColumn(table="equipment", idColumn="class_code", childIdColumn="parent_id")
     private List<AdmObjectType> componentCategory;
 
-    /** 级联-设备分类 */
-    //@SCascade(table="equipment", idColumn="id", childIdColumn="class_code")
-    private ObjectNode equipCategory;
-
 }

+ 8 - 8
src/main/java/com/persagy/proxy/adm/model/EquipmentExcel2.java

@@ -19,11 +19,11 @@ import lombok.Setter;
 @Getter
 @Setter
 @HeadFontStyle(color = Font.COLOR_NORMAL)
-public class EquipmentExcel2 {
+public class EquipmentBindPointExcel {
 	
 	@ColumnWidth(10)
 	@ExcelProperty(value = "序号", index=0)
-	private String index;
+	private int index;
 	
 	@ColumnWidth(25)
 	@ExcelProperty(value = "项目名称", index=1)
@@ -71,26 +71,26 @@ public class EquipmentExcel2 {
 	
 	@ColumnWidth(10)
 	@ExcelProperty(value = "【信息点】应绑点位总数", index=12)
-	private String needPointCount;
+	private int needPointCount;
 	
 	@ColumnWidth(10)
 	@ExcelProperty(value = "【信息点】已绑点位总数", index=13)
-	private String nowPointCount;
+	private int nowPointCount;
 	
 	@ColumnWidth(10)
 	@ExcelProperty(value = "【信息点】静态应绑点", index=14)
-	private String needStaticPointCount;
+	private int needStaticPointCount;
 	
 	@ColumnWidth(10)
 	@ExcelProperty(value = "【信息点】静态已绑点", index=15)
-	private String nowStaticPointCount;
+	private int nowStaticPointCount;
 	
 	@ColumnWidth(10)
 	@ExcelProperty(value = "【信息点】动态应绑点", index=16)
-	private String needDynamicPointCount;
+	private int needDynamicPointCount;
 	
 	@ColumnWidth(10)
 	@ExcelProperty(value = "【信息点】动态已绑点", index=17)
-	private String nowDynamicPointCount;
+	private int nowDynamicPointCount;
 	
 }

+ 4 - 3
src/main/java/com/persagy/proxy/adm/service/IAdmDictService.java

@@ -1,8 +1,9 @@
 package com.persagy.proxy.adm.service;
 
-import com.persagy.proxy.adm.model.*;
+import com.persagy.proxy.adm.model.AdmDefFuncIdGather;
+import com.persagy.proxy.adm.model.AdmDict;
+import com.persagy.proxy.adm.model.AdmDictQueryCriteria;
 import com.persagy.proxy.adm.request.AdmCreateRequest;
-import com.persagy.proxy.adm.request.AdmQueryCriteria;
 import com.persagy.proxy.adm.request.AdmResponse;
 import com.persagy.proxy.common.entity.InstanceUrlParam;
 
@@ -25,7 +26,7 @@ public interface IAdmDictService<T> extends IAdmDictBaseService<T>{
      * @return
      * @throws Exception
      */
-    AdmResponse queryCategory(InstanceUrlParam context , AdmDict request, Class<T> clazz) throws Exception;
+    AdmResponse queryCategory(InstanceUrlParam context , AdmDict request, Class<T> clazz);
 
 
     /**

+ 7 - 0
src/main/java/com/persagy/proxy/adm/service/IAdmEquipmentService.java

@@ -41,4 +41,11 @@ public interface IAdmEquipmentService extends IAdmBaseService<AdmEquipment>{
     void doDeleteEuip(InstanceUrlParam context, List<AdmEquipment> voList);
     @Deprecated
     public List<AdmEquipment> doInsertExt(InstanceUrlParam context, Class<AdmEquipment> clazz, List<AdmEquipment> voList);
+
+    /**
+     * 补充设备类型属性
+     * @param context
+     * @param vos
+     */
+    void ensureSpecialValues(InstanceUrlParam context, List<AdmEquipment> vos);
 }

+ 10 - 0
src/main/java/com/persagy/proxy/adm/service/IAdmSystemService.java

@@ -1,6 +1,9 @@
 package com.persagy.proxy.adm.service;
 
 import com.persagy.proxy.adm.model.AdmSystem;
+import com.persagy.proxy.common.entity.InstanceUrlParam;
+
+import java.util.List;
 
 /**
  * ADM 系统 接口
@@ -8,4 +11,11 @@ import com.persagy.proxy.adm.model.AdmSystem;
  * @date 2021/8/18
  */
 public interface IAdmSystemService extends IAdmBaseService<AdmSystem>{
+
+    /**
+     * 补充系统分类名称属性
+     * @param context
+     * @param vos
+     */
+    void ensureSpecialValues(InstanceUrlParam context, List<AdmSystem> vos);
 }

+ 43 - 17
src/main/java/com/persagy/proxy/adm/service/IRelationReportService.java

@@ -8,6 +8,8 @@ import com.alibaba.fastjson.JSONObject;
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import com.persagy.dmp.define.entity.GraphDefine;
+import com.persagy.dmp.define.entity.ObjectInfoDefine;
+import com.persagy.dmp.define.entity.ObjectTypeDefine;
 import com.persagy.dmp.define.entity.RelationDefine;
 import com.persagy.dmp.digital.entity.ObjectRelation;
 
@@ -20,7 +22,19 @@ import com.persagy.dmp.digital.entity.ObjectRelation;
  * @date 2021年8月31日 下午4:42:51
  */
 public interface IRelationReportService {
-
+	
+	/**
+	 * 获取class类型定义数据
+	 * 
+	 * @param groupCode
+	 * @param projectId
+	 * @param classCode
+	 * @param objType
+	 * @param ascOrder
+	 * @return
+	 */
+	List<ObjectTypeDefine> queryClassList(String groupCode, String projectId, String classCode, String objType, String ascOrder);
+	
 	/**
 	 * 根据信息点统计对象个数
 	 * 
@@ -33,7 +47,7 @@ public interface IRelationReportService {
 	List<Map<String,Object>> queryObjectCountByObjInfos(String groupCode, Set<String> classCodes, Set<String> objTypes, List<String> groups);
 	
 	/**
-	 * 根据条件查询对应的类型数据
+	 * 根据条件查询对应的类型数据
 	 * 
 	 * @param groupCode
 	 * @param projectId
@@ -150,7 +164,20 @@ public interface IRelationReportService {
 	ObjectNode getObjectByCodeAndId(String groupCode, String projectId, String graphCode, String relCode, String objFrom, String objTo);
 	
 	/**
-	 * 获取对象关系数据
+	 * 获取原始的对象数据
+	 * 
+	 * @param groupCode
+	 * @param projectId
+	 * @param id
+	 * @param classCode
+	 * @param objType
+	 * @param ascOrder
+	 * @return
+	 */
+	List<ObjectNode> queryObjects(String groupCode, String projectId, String id, String classCode, String objType, String ascOrder);
+	
+	/**
+	 * 获取原始的对象关系数据
 	 * 
 	 * @param groupCode
 	 * @param projectId
@@ -158,7 +185,19 @@ public interface IRelationReportService {
 	 * @param relCode
 	 * @return
 	 */
-	List<ObjectRelation> findObjectRelationList(String groupCode, String projectId, String graphCode, String relCode);
+	List<ObjectRelation> findRelationObjects(String groupCode, String projectId, String graphCode, String relCode);
+	
+	/**
+	 * 查询信息点定义
+	 * 
+	 * @param groupCode
+	 * @param projectId
+	 * @param classCodes
+	 * @param code
+	 * @param category
+	 * @return
+	 */
+	List<ObjectInfoDefine> queryFunidList(String groupCode, String projectId, Set<String> classCodes, String code, String category);
 
 	/**
 	 * 查询关系总览(空表,先插入)
@@ -175,17 +214,4 @@ public interface IRelationReportService {
 	 */
 	boolean createRelationProjectCal(String groupCode, String projectId) throws JsonProcessingException;
 
-	/**
-	 * 查询出所有的关系信息
-	 * <p>因原代码中,不存在zoneType类型不为空时对应的方法,所以此处不再进行此数据的判断</p>
-	 * 
-	 * @param groupCode
-	 * @param projectId
-	 * @param relType
-	 * @param code
-	 * @param zoneType
-	 * @return 可以被直接导出的数据集
-	 */
-	//List<AdmRelationObject> reportRelationObject(String groupCode, String projectId, String relType, String code, String zoneType);
-
 }

+ 12 - 12
src/main/java/com/persagy/proxy/adm/service/impl/AdmDictServiceImpl.java

@@ -1,16 +1,12 @@
 package com.persagy.proxy.adm.service.impl;
 
 import cn.hutool.core.collection.CollUtil;
-
 import cn.hutool.core.util.StrUtil;
-import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
-import com.fasterxml.jackson.databind.JsonNode;
 import com.fasterxml.jackson.databind.node.ArrayNode;
 import com.fasterxml.jackson.databind.node.JsonNodeFactory;
 import com.fasterxml.jackson.databind.node.ObjectNode;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.define.entity.ObjectInfoCollect;
-import com.persagy.dmp.define.entity.ObjectInfoDefine;
 import com.persagy.proxy.adm.constant.AdmDictConstant;
 import com.persagy.proxy.adm.constant.enums.AdmDictCategoryEnum;
 import com.persagy.proxy.adm.model.*;
@@ -21,10 +17,12 @@ import com.persagy.proxy.adm.service.IAdmDictService;
 import com.persagy.proxy.common.entity.InstanceUrlParam;
 import lombok.extern.slf4j.Slf4j;
 import org.apache.commons.lang.StringUtils;
-import org.springframework.context.annotation.Primary;
 import org.springframework.stereotype.Service;
 
-import java.util.*;
+import java.util.ArrayList;
+import java.util.Iterator;
+import java.util.List;
+import java.util.Map;
 import java.util.stream.Collectors;
 
 /**
@@ -48,7 +46,7 @@ public class AdmDictServiceImpl<T> extends AbstractAdmDictBaseServiceImpl<T> imp
      * @throws Exception
      */
     @Override
-    public AdmResponse queryCategory(InstanceUrlParam context , AdmDict request, Class<T> clazz) throws Exception {
+    public AdmResponse queryCategory(InstanceUrlParam context , AdmDict request, Class<T> clazz) {
         String type = request.getType();
         QueryCriteria criteria = new QueryCriteria();
         ObjectNode node = JsonNodeFactory.instance.objectNode();
@@ -99,11 +97,11 @@ public class AdmDictServiceImpl<T> extends AbstractAdmDictBaseServiceImpl<T> imp
         AdmResponse admResponse = doQueryObjectType(context, new QueryCriteria(), clazz);
         List<AdmObjectType> objectTypes = (List<AdmObjectType>) admResponse.getContent();
         Map<String, List<AdmObjectType>> objectTypeMap = objectTypes.stream().filter(k-> StringUtils.isNotEmpty(k.getObjType()))
-                                                         .collect(Collectors.groupingBy(AdmObjectType::getObjType));
+                .collect(Collectors.groupingBy(AdmObjectType::getObjType));
         //获取专业-设备类关系
         List<AdmObjectType> equipments = objectTypeMap.get(AdmDictCategoryEnum.EQUIPMENT.getValue());
         Map<String,List<AdmObjectType>> majorEquipMap = equipments.stream().filter(k->StringUtils.isNotEmpty(k.getMajorCode()))
-                                                         .collect(Collectors.groupingBy(item -> item.getMajorCode()));
+                .collect(Collectors.groupingBy(item -> item.getMajorCode()));
 
         //获取专业-系统类关系
         List<AdmObjectType> systems = objectTypeMap.get(AdmDictCategoryEnum.SYSTEM.getValue());
@@ -157,7 +155,7 @@ public class AdmDictServiceImpl<T> extends AbstractAdmDictBaseServiceImpl<T> imp
         }
         //构建专业-系统-设备类树形结构
         for (AdmObjectType major : allMajor) {
-             //设置专业
+            //设置专业
             if(CollUtil.isNotEmpty(majorSystemMap)){
                 //专业下的系统
                 List<AdmObjectType> systemCodes = majorSystemMap.get(major.getCode());
@@ -302,8 +300,8 @@ public class AdmDictServiceImpl<T> extends AbstractAdmDictBaseServiceImpl<T> imp
             String name = null;
             //项目
             if(AdmDictCategoryEnum.PROJECT.getValue().equals(type)){
-               name = AdmDictCategoryEnum.PROJECT.getDesc();
-               classCodes.add(AdmDictCategoryEnum.PROJECT.getValue());
+                name = AdmDictCategoryEnum.PROJECT.getDesc();
+                classCodes.add(AdmDictCategoryEnum.PROJECT.getValue());
             }
             //建筑
             if(AdmDictCategoryEnum.BUILDING.getValue().equals(type)){
@@ -369,6 +367,7 @@ public class AdmDictServiceImpl<T> extends AbstractAdmDictBaseServiceImpl<T> imp
         Map<String, Boolean> projectObjectInfoCollectMap = projectObjectInfoCollect.stream().filter(item -> StrUtil.isNotEmpty(item.getDefineInfoId())).collect(Collectors.toMap(ObjectInfoCollect::getDefineInfoId,ObjectInfoCollect::getVisiable));
 
         String dictType = request.getDictType();
+
         //采集值配置查询
         if(StringUtils.isNotEmpty(dictType)){
             //查询平台级、项目级信息点采集信息
@@ -381,6 +380,7 @@ public class AdmDictServiceImpl<T> extends AbstractAdmDictBaseServiceImpl<T> imp
             admResponse.setContent(admObjectInfos);
             return admResponse;
         }
+
         //只查看采集值 todo
         if(CollUtil.isNotEmpty(projectObjectInfoCollectMap)){
             setOnlyQueryObjectInfoVisiable(admObjectInfos,projectObjectInfoCollectMap,dictType);

+ 43 - 6
src/main/java/com/persagy/proxy/adm/service/impl/AdmEquipmentServiceImpl.java

@@ -15,10 +15,13 @@ import com.persagy.dmp.define.entity.ObjectTypeDefine;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
 import com.persagy.dmp.digital.entity.ObjectRelation;
 import com.persagy.proxy.adm.constant.AdmCommonConstant;
-import com.persagy.proxy.adm.model.AdmEquipment;
-import com.persagy.proxy.adm.model.AdmProperty;
+import com.persagy.proxy.adm.model.*;
+import com.persagy.proxy.adm.request.AdmQueryCriteria;
+import com.persagy.proxy.adm.request.AdmResponse;
 import com.persagy.proxy.adm.service.IAdmComAndEquipService;
+import com.persagy.proxy.adm.service.IAdmDictService;
 import com.persagy.proxy.adm.service.IAdmEquipmentService;
+import com.persagy.proxy.adm.utils.AdmContextUtil;
 import com.persagy.proxy.adm.utils.AdmEntityTransferUtil;
 import com.persagy.proxy.adm.utils.ObjectNameUtil;
 import com.persagy.proxy.common.client.DmpRwdClient;
@@ -29,10 +32,7 @@ import lombok.extern.slf4j.Slf4j;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
-import java.util.ArrayList;
-import java.util.List;
-import java.util.Map;
-import java.util.Set;
+import java.util.*;
 import java.util.stream.Collectors;
 
 /**
@@ -48,6 +48,8 @@ public class AdmEquipmentServiceImpl extends AbstractAdmBaseServiceImpl<AdmEquip
     private DmpRwdClient rwdClient;
     @Autowired
     private ObjectMapper objectMapper;
+    @Autowired
+    private IAdmDictService dictService;
 
     @Override
     public List<AdmEquipment> doInsertEuip(InstanceUrlParam context, Class<AdmEquipment> clazz, List<AdmEquipment> voList) {
@@ -126,6 +128,41 @@ public class AdmEquipmentServiceImpl extends AbstractAdmBaseServiceImpl<AdmEquip
     }
 
     @Override
+    public AdmResponse doQuery(InstanceUrlParam context, AdmQueryCriteria request, Class<AdmEquipment> clazz) {
+        AdmResponse response = super.doQuery(context, request, clazz);
+        // 系统需要补充分类名称属性
+        ensureSpecialValues(context, (List<AdmEquipment>) response.getContent());
+        return response;
+    }
+
+    @Override
+    public void ensureSpecialValues(InstanceUrlParam context, List<AdmEquipment> vos) {
+        if(CollUtil.isEmpty(vos)) {
+            return;
+        }
+        // 查询对象类型 - 只找到这个接口,应提供一个按编码查编码名称Map的接口
+        AdmDict admDict = AdmDict.builder().type(AdmEquipment.OBJ_TYPE).build();
+        AdmResponse dicRs = dictService.queryCategory(AdmContextUtil.toDmpContext(), admDict, AdmObjectType.class);
+        List<AdmObjectType> dicList = (List<AdmObjectType>) dicRs.getContent();
+        if(CollUtil.isEmpty(dicList)) {
+            return;
+        }
+        // 转换为编码名称Map
+        Map<String, String> codeNameMap = CollUtil.fieldValueAsMap(dicList, "code", "name");
+        // 赋值
+        for(AdmEquipment vo:vos) {
+            String classCode = vo.getClassCode();
+            if(StrUtil.isEmpty(classCode)) {
+                continue;
+            }
+            Map<String, String> category = new HashMap<>(16);
+            category.put("code", classCode);
+            category.put("name", codeNameMap.get(vo.getClassCode()));
+            vo.setEquipCategory(category);
+        }
+    }
+
+    @Override
     public List<AdmEquipment> doInsertExt(InstanceUrlParam context, Class<AdmEquipment> clazz, List<AdmEquipment> voList) {
         List<AdmEquipment> vos = doInsert(context, AdmEquipment.class, voList);
         //TODO 创建资产

+ 55 - 0
src/main/java/com/persagy/proxy/adm/service/impl/AdmSystemServiceImpl.java

@@ -1,9 +1,23 @@
 package com.persagy.proxy.adm.service.impl;
 
+import cn.hutool.core.collection.CollUtil;
+import com.persagy.proxy.adm.model.AdmDict;
+import com.persagy.proxy.adm.model.AdmEquipment;
+import com.persagy.proxy.adm.model.AdmObjectType;
 import com.persagy.proxy.adm.model.AdmSystem;
+import com.persagy.proxy.adm.request.AdmQueryCriteria;
+import com.persagy.proxy.adm.request.AdmResponse;
+import com.persagy.proxy.adm.service.IAdmDictService;
+import com.persagy.proxy.adm.service.IAdmEquipmentService;
 import com.persagy.proxy.adm.service.IAdmSystemService;
+import com.persagy.proxy.common.entity.InstanceUrlParam;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Map;
+
 /**
  * ADM 系统 实现类
  * @author lvxy
@@ -11,4 +25,45 @@ import org.springframework.stereotype.Service;
  */
 @Service
 public class AdmSystemServiceImpl extends AbstractAdmBaseServiceImpl<AdmSystem> implements IAdmSystemService {
+
+    @Autowired
+    private IAdmDictService dictService;
+    @Autowired
+    private IAdmEquipmentService equipmentService;
+
+    @Override
+    public AdmResponse doQuery(InstanceUrlParam context, AdmQueryCriteria request, Class<AdmSystem> clazz) {
+        AdmResponse response = super.doQuery(context, request, clazz);
+        // 系统需要补充分类名称属性
+        ensureSpecialValues(context, (List<AdmSystem>) response.getContent());
+        return response;
+    }
+
+    @Override
+    public void ensureSpecialValues(InstanceUrlParam context, List<AdmSystem> vos) {
+        if(CollUtil.isEmpty(vos)) {
+            return;
+        }
+        // 查询对象类型 - 只找到这个接口,应提供一个按编码查编码名称Map的接口
+        AdmDict admDict = AdmDict.builder().type(AdmSystem.OBJ_TYPE).build();
+        AdmResponse dicRs = dictService.queryCategory(context, admDict, AdmObjectType.class);
+        List<AdmObjectType> dicList = (List<AdmObjectType>) dicRs.getContent();
+        if(CollUtil.isEmpty(dicList)) {
+            return;
+        }
+        // 转换为编码名称Map
+        Map<String, String> codeNameMap = CollUtil.fieldValueAsMap(dicList, "code", "name");
+        // 给系统赋值 - 同时收集设备对象,扩展设备对象赋值
+        List<AdmEquipment> equipmentList = new ArrayList<>();
+        for(AdmSystem vo:vos) {
+            vo.setCategoryName(codeNameMap.get(vo.getClassCode()));
+            // 收集设备对象
+            if(CollUtil.isEmpty(vo.getEquipmentList())) {
+                continue;
+            }
+            equipmentList.addAll(vo.getEquipmentList());
+        }
+        // 对象扩展属性赋值
+        equipmentService.ensureSpecialValues(context, equipmentList);
+    }
 }

+ 103 - 24
src/main/java/com/persagy/proxy/adm/service/impl/RelationReportService.java

@@ -27,9 +27,13 @@ import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.context.AppContext;
 import com.persagy.dmp.common.helper.SpringHelper;
 import com.persagy.dmp.common.model.response.CommonResult;
+import com.persagy.dmp.define.client.DigitalDefineFacade;
 import com.persagy.dmp.define.client.DigitalGraphDefineFacade;
+import com.persagy.dmp.define.client.DigitalObjectInfoFacade;
 import com.persagy.dmp.define.client.DigitalRelationDefineFacade;
 import com.persagy.dmp.define.entity.GraphDefine;
+import com.persagy.dmp.define.entity.ObjectInfoDefine;
+import com.persagy.dmp.define.entity.ObjectTypeDefine;
 import com.persagy.dmp.define.entity.RelationDefine;
 import com.persagy.dmp.digital.client.DigitalObjectFacade;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -63,6 +67,27 @@ public class RelationReportService implements IRelationReportService {
 	private String defaultCode;
 
 	@Override
+	public List<ObjectTypeDefine> queryClassList(String groupCode, String projectId, String classCode, String objType, String ascOrder) {
+		groupCode = StrUtil.isBlank(groupCode) ? defaultCode : groupCode;
+		
+		ObjectMapper objectMapper = SpringHelper.getBean(ObjectMapper.class);
+		QueryCriteria classCriteria = new QueryCriteria();
+		ObjectNode condition = objectMapper.createObjectNode();
+		if (StrUtil.isNotBlank(classCode)) {
+			condition.put("code", classCode);
+		}
+		if (StrUtil.isNotBlank(objType)) {
+			condition.put("objType", objType);
+		}
+		classCriteria.setCriteria(condition);
+		if (StrUtil.isNotBlank(ascOrder)) {
+			classCriteria.setOrders(Collections.singletonList(OrderItem.asc(ascOrder)));
+		}
+		List<ObjectTypeDefine> objectNodes = DigitalDefineFacade.queryObjectType(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, classCriteria);
+		return CollectionUtil.isEmpty(objectNodes) ? Lists.newArrayList() : objectNodes;
+	}
+	
+	@Override
 	public List<Map<String, Object>> queryObjectCountByObjInfos(String groupCode, Set<String> classCodes, Set<String> objTypes, List<String> groups) {
 		groupCode = StrUtil.isBlank(groupCode) ? defaultCode : groupCode;
 		
@@ -310,9 +335,33 @@ public class RelationReportService implements IRelationReportService {
 		String relationId = StrUtil.isBlank(objFrom) ? objectRelation.getObjFrom() : objectRelation.getObjTo();
 		return this.getObjectNode(groupCode, projectId, relationId); 
 	}
+
+	@Override
+	public List<ObjectNode> queryObjects(String groupCode, String projectId, String id, String classCode, String objType, String ascOrder) {
+		groupCode = StrUtil.isBlank(groupCode) ? defaultCode : groupCode;
+		
+		ObjectMapper objectMapper = SpringHelper.getBean(ObjectMapper.class);
+		QueryCriteria objectCriteria = new QueryCriteria();
+		ObjectNode object = objectMapper.createObjectNode();
+		if (StrUtil.isNotBlank(id)) {
+			object.put("id", id);
+		}
+		if (StrUtil.isNotBlank(classCode)) {
+			object.put("classCode", classCode);
+		}
+		if (StrUtil.isNotBlank(objType)) {
+			object.put("objType", objType);
+		}
+		objectCriteria.setCriteria(object);
+		if (StrUtil.isNotBlank(ascOrder)) {
+			objectCriteria.setOrders(Collections.singletonList(OrderItem.asc(ascOrder)));
+		}
+		List<ObjectNode> objectNodes = DigitalObjectFacade.query(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, objectCriteria);
+		return CollectionUtil.isEmpty(objectNodes) ? Lists.newArrayList() : objectNodes;
+	}
 	
 	@Override
-	public List<ObjectRelation> findObjectRelationList(String groupCode, String projectId, String graphCode, String relCode) {
+	public List<ObjectRelation> findRelationObjects(String groupCode, String projectId, String graphCode, String relCode) {
 		groupCode = StrUtil.isBlank(groupCode) ? defaultCode : groupCode;
 		
 		// 获取出关联对象
@@ -320,14 +369,41 @@ public class RelationReportService implements IRelationReportService {
 		
 		QueryCriteria queryCriteria = new QueryCriteria();
 		ObjectNode criteria = objectMapper.createObjectNode();
-		criteria.put("graphCode", graphCode);
-		criteria.put("relCode", relCode);
+		if (StrUtil.isNotBlank(graphCode)) {
+			criteria.put("graphCode", graphCode);
+		}
+		if (StrUtil.isNotBlank(relCode)) {
+			criteria.put("relCode", relCode);
+		}
 		queryCriteria.setCriteria(criteria);
 		List<ObjectRelation> objectRelations = DigitalRelationFacade.query(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, queryCriteria);
 		return CollectionUtil.isEmpty(objectRelations) ? Lists.newArrayList() : objectRelations;
 	}
 	
 	@Override
+	public List<ObjectInfoDefine> queryFunidList(String groupCode, String projectId, Set<String> classCodes, String code, String category) {
+		groupCode = StrUtil.isBlank(groupCode) ? defaultCode : groupCode;
+		
+		ObjectMapper objectMapper = SpringHelper.getBean(ObjectMapper.class);
+		QueryCriteria queryCriteria = new QueryCriteria();
+		ObjectNode condition = objectMapper.createObjectNode();
+		if (StrUtil.isNotBlank(code)) {
+			condition.put("code", code);
+		}
+		if (StrUtil.isNotBlank(category)) {
+			condition.put("category", category);
+		}
+		if (CollectionUtil.isNotEmpty(classCodes)) {
+			JSONObject arrays = new JSONObject();
+			arrays.put("$in", classCodes);
+			condition.putPOJO("classCode", arrays);
+		}
+		queryCriteria.setCriteria(condition);
+		List<ObjectInfoDefine> infos = DigitalObjectInfoFacade.query(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, queryCriteria);
+		return CollectionUtil.isEmpty(infos) ? Lists.newArrayList() : infos;
+	}
+	
+	@Override
 	public boolean createRelationProjectCal(String groupCode, String projectId) throws JsonProcessingException {
 		groupCode = StrUtil.isBlank(groupCode) ? defaultCode : groupCode;
 		// 1.验证是否已经添加过
@@ -371,6 +447,25 @@ public class RelationReportService implements IRelationReportService {
 		return CollectionUtil.isNotEmpty(result);
 	}
 	
+	@Override
+	public JSONObject overview(String content) throws JsonProcessingException {
+		JSONObject result = new JSONObject();
+		if (StrUtil.isBlank(content)) {
+			this.createRelationProjectCal(AppContext.getContext().getGroupCode(), AppContext.getContext().getProjectId());
+		}
+		List<JSONObject> parentList = new ArrayList<>();
+		// 获取树结构
+		this.getGraphRelationProjectTree(parentList, AppContext.getContext().getGroupCode(),
+				AppContext.getContext().getProjectId(), content);
+		result.put("content", parentList);
+		result.put("message", "");
+		result.put("pageNumber", 1);
+		result.put("pageSize", 1000);
+		result.put("result", "success");
+		result.put("total", parentList.size());
+		return result;
+	}
+	
 	/***
 	 * Description: 创建存储的对象
 	 * @param groupCode : 集团编码
@@ -405,25 +500,6 @@ public class RelationReportService implements IRelationReportService {
 		objectNode.put("modifier", AdmCommonConstant.USER_ID);	// 最后修改人
 		return objectNode;
 	}
-
-	@Override
-	public JSONObject overview(String content) throws JsonProcessingException {
-		JSONObject result = new JSONObject();
-		if (StrUtil.isBlank(content)) {
-			this.createRelationProjectCal(AppContext.getContext().getGroupCode(), AppContext.getContext().getProjectId());
-		}
-		List<JSONObject> parentList = new ArrayList<>();
-		// 获取树结构
-		this.getGraphRelationProjectTree(parentList, AppContext.getContext().getGroupCode(),
-				AppContext.getContext().getProjectId(), content);
-		result.put("content", parentList);
-		result.put("message", "");
-		result.put("pageNumber", 1);
-		result.put("pageSize", 1000);
-		result.put("result", "success");
-		result.put("total", parentList.size());
-		return result;
-	}
 	
 	/**
 	 * 获取图类型下的边类型的项目计算关系数据,并形成三级树结构
@@ -504,6 +580,7 @@ public class RelationReportService implements IRelationReportService {
 		topList.sort(Comparator.comparing(b -> b.getIntValue("sort")));
 		parentList.addAll(topList);
 	}
+	
 	/***
 	 * Description: 根据项目id查询项目计算关系
 	 * @param groupCode : 集团编码
@@ -608,11 +685,13 @@ public class RelationReportService implements IRelationReportService {
 		AdmRelationTypeEnum typeEnum = graphRelTypeMap.get(key);
 		RelationDefine relationDefine = relationDefineMap.getOrDefault(key,new RelationDefine());
 		JSONObject result = new JSONObject();
+		long count = 0;
 		if (StrUtil.isAllNotBlank(groupCode, projectId)) {
 			String zoneType = relationProject.has("zoneType") ? relationProject.get("zoneType").asText() : null;
-			long count = this.countRelationObject(groupCode, projectId, graphicId, relCode, zoneType);
-			result.put("count", count);
+			count = this.countRelationObject(groupCode, projectId, graphicId, relCode, zoneType);
 		}
+		
+		result.put("count", count);
 		result.put("graphicId", graphicId);
 		result.put("computationalState",relationProject.has("computationalState")?relationProject.get("computationalState").asText():null);
 		result.put("id",relationProject.has("id")?relationProject.get("id").asText():null);

+ 18 - 4
src/main/java/com/persagy/proxy/adm/strategy/RelationObjectContext.java

@@ -47,9 +47,9 @@ public class RelationObjectContext {
 	 * @param relType graphCode_relCode
 	 * @return
 	 */
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId, String relType) {
+	public List<AdmRelationObject> exportRelationObject(String groupCode, String projectId, String relType) {
 		RelationObjectStrategy strategy = this.relationObjectStrategyMap.get(relType);
-		return strategy == null ? Lists.newArrayList() : strategy.findRelationObject(groupCode, projectId);
+		return strategy == null ? Lists.newArrayList() : strategy.exportRelationObject(groupCode, projectId);
 	}
 	
 	/**
@@ -91,6 +91,20 @@ public class RelationObjectContext {
 		RelationObjectStrategy strategy = this.relationObjectStrategyMap.get(relType);
 		return strategy == null ? 0 : strategy.countRelationObjects(groupCode, projectId);
 	}
+
+	/**
+	 * 查询全部的关系对象数据
+	 * 
+	 * @param masterObjs 查询的数据集存储地方
+	 * @param requestData 请求参数
+	 * @param groupCode 集团编码
+	 * @param projectId 项目ID
+	 * @param relType  graphCode_relCode
+	 */
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId, String relType) {
+		RelationObjectStrategy strategy = this.relationObjectStrategyMap.get(relType);
+		return strategy == null ? Lists.newArrayList() : strategy.queryAllRelations(groupCode, projectId);
+	}
 	
 	/**
 	 * 分页查询关系对象数据
@@ -101,13 +115,13 @@ public class RelationObjectContext {
 	 * @param projectId 项目ID
 	 * @param relType  graphCode_relCode
 	 */
-	public List<ObjectDigital> queryPageObjectInfo(RequestData requestData, String groupCode, String projectId, String relType) {
+	public List<ObjectDigital> queryPageRelations(RequestData requestData, String groupCode, String projectId, String relType) {
 		List<ObjectDigital> masterObjs = new ArrayList<ObjectDigital>();
 		RelationObjectStrategy strategy = this.relationObjectStrategyMap.get(relType);
 		if (strategy == null) {
 			return masterObjs;
 		}
-		strategy.queryPageObjectInfo(masterObjs, requestData, groupCode, projectId, requestData.getPage());
+		strategy.queryPageRelations(masterObjs, requestData, groupCode, projectId, requestData.getPage());
 		return masterObjs;
 	}
 	

+ 7 - 6
src/main/java/com/persagy/proxy/adm/strategy/relationdata/AbstractRelationObject.java

@@ -31,32 +31,32 @@ public abstract class AbstractRelationObject implements RelationObjectStrategy {
 	}
 	
 	@Override
-	public void queryPageObjectInfo(List<ObjectDigital> masterObjs, RequestData requestData, String groupCode, String projectId, Long page) {
+	public void queryPageRelations(List<ObjectDigital> allDigitals, RequestData requestData, String groupCode, String projectId, Long page) {
 		requestData.setPage(page);
 		List<ObjectDigital> objectDigitals = DigitalObjectFacade.queryObjectListByGraphCodeAndRelCode(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, requestData);
 		if (CollectionUtil.isEmpty(objectDigitals)) {
 			return;
 		}
-		masterObjs.addAll(objectDigitals);
-		this.queryPageObjectInfo(masterObjs, requestData, groupCode, projectId, ++page);
+		allDigitals.addAll(objectDigitals);
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, ++page);
 	}
 	
 	@Override
 	public boolean saveRelationObject(ObjectNode relationObject, String groupCode, String projectId) {
 		ObjectRelation objectRelation = DigitalRelationFacade.createOne(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, relationObject);
-		return 	objectRelation != null;
+		return objectRelation != null;
 	}
 	
 	@Override
 	public boolean saveRelationObjects(List<ObjectNode> relationObjects, String groupCode, String projectId) {
 		List<ObjectRelation> create = DigitalRelationFacade.create(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, relationObjects);
-		return 	CollectionUtil.isNotEmpty(create);
+		return CollectionUtil.isNotEmpty(create);
 	}
 	
 	/**************************************************** 默认不实现的类 *******************************************************/
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<AdmRelationObject> exportRelationObject(String groupCode, String projectId) {
 		throw new UnsupportedOperationException("未实现的策略类");
 	}
 
@@ -64,4 +64,5 @@ public abstract class AbstractRelationObject implements RelationObjectStrategy {
 	public Object beforeSaveRelationObject(AdmRelationObject relationObject, String groupCode, String projectId, String code) {
 		throw new UnsupportedOperationException("未实现的策略类");
 	}
+	
 }

+ 3 - 14
src/main/java/com/persagy/proxy/adm/strategy/relationdata/AbstractReportRelationObject.java

@@ -4,7 +4,6 @@ import java.util.ArrayList;
 import java.util.List;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
-import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.digital.entity.ObjectDigital;
 import com.persagy.proxy.adm.constant.AdmCommonConstant;
 import com.persagy.proxy.adm.constant.AdmRelationTypeEnum;
@@ -29,19 +28,9 @@ public abstract class AbstractReportRelationObject extends AbstractRelationObjec
 		super(reportDownloadService);
 	}
 
-	/**
-	 * 根据项目ID,查询出所有的对象信息
-	 * 
-	 * @param requestData
-	 * @param extraMapping
-	 * @return
-	 */
-	protected List<AdmRelationObject> queryAllObjectInfo(RequestData requestData, String groupCode, String projectId) {
-		List<ObjectDigital> masterObjs = new ArrayList<ObjectDigital>();
-		
-		// 获取数据
-		this.queryPageObjectInfo(masterObjs, requestData, groupCode, projectId, requestData.getPage());
-		
+	@Override
+	public List<AdmRelationObject> exportRelationObject(String groupCode, String projectId) {
+		List<ObjectDigital> masterObjs = this.queryAllRelations(groupCode, projectId);
 		// 转换中台数据
 		return this.handleObjectDigital(masterObjs, groupCode, projectId);
 	}

+ 6 - 4
src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSh2BdRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -47,16 +48,17 @@ public class ArchForArchSh2BdRelationObject extends AbstractReportRelationObject
 	}
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.ArchForArch.name());
 		requestData.setRelCode(RelCodeEnum.Sh2Bd.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
-		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
-
+	
 	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		return this.convertObject(master, "设备", slave, "空间");

+ 6 - 4
src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSh2FlRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -47,16 +48,17 @@ public class ArchForArchSh2FlRelationObject extends AbstractReportRelationObject
 	}
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.ArchForArch.name());
 		requestData.setRelCode(RelCodeEnum.Sh2Fl.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
-		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
-
+	
 	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		// 获取建筑的信息

+ 6 - 3
src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSh2ShRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -45,16 +46,18 @@ public class ArchForArchSh2ShRelationObject extends AbstractReportRelationObject
 		CommonResult<List<ObjectRelation>> result = DigitalRelationFacade.queryPrototype(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, queryCriteria);
 		return result == null ? 0 : (result.getCount() == null ? 0 : result.getCount());
 	}
-
+	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.ArchForArch.name());
 		requestData.setRelCode(RelCodeEnum.Sh2Sh.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
 
 	@Override

+ 6 - 3
src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSh2SpRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -49,16 +50,18 @@ public class ArchForArchSh2SpRelationObject extends AbstractReportRelationObject
 	}
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.ArchForArch.name());
 		requestData.setRelCode(RelCodeEnum.Sh2Sp.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
-
+	
 	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		// 获取建筑的信息

+ 6 - 3
src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSp2BdRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -47,16 +48,18 @@ public class ArchForArchSp2BdRelationObject extends AbstractReportRelationObject
 		CommonResult<List<ObjectRelation>> result = DigitalRelationFacade.queryPrototype(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, queryCriteria);
 		return result == null ? 0 : (result.getCount() == null ? 0 : result.getCount());
 	}
-
+	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.ArchForArch.name());
 		requestData.setRelCode(RelCodeEnum.Sp2Bd.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
 
 	@Override

+ 6 - 3
src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSp2FlRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -49,16 +50,18 @@ public class ArchForArchSp2FlRelationObject extends AbstractReportRelationObject
 	}
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.ArchForArch.name());
 		requestData.setRelCode(RelCodeEnum.Sp2Fl.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
-
+	
 	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		// 获取建筑的信息

+ 16 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchSubsetBd2FlRelationObject.java

@@ -1,13 +1,16 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
+import com.persagy.dmp.digital.entity.ObjectDigital;
 import com.persagy.dmp.digital.entity.ObjectRelation;
 import com.persagy.proxy.adm.constant.AdmCommonConstant;
 import com.persagy.proxy.adm.constant.AdmRelationType;
@@ -41,5 +44,18 @@ public class ArchSubsetBd2FlRelationObject extends AbstractRelationObject {
 		CommonResult<List<ObjectRelation>> result = DigitalRelationFacade.queryPrototype(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, queryCriteria);
 		return result == null ? 0 : (result.getCount() == null ? 0 : result.getCount());
 	}
+	
+	@Override
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(GraphCodeEnum.ArchSubset.name());
+		requestData.setRelCode(RelCodeEnum.Bd2Fl.name());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
+	}
 
 }

+ 15 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/ConvectionNetworkMixMechRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,6 +47,19 @@ public class ConvectionNetworkMixMechRelationObject extends AbstractReportRelati
 	}
 	
 	@Override
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.SP2SP_CONVECTIONNETWORK_2.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.SP2SP_CONVECTIONNETWORK_2.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
+	}
+	
+	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		throw new UnsupportedOperationException("未实现的策略类");
 	}

+ 15 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/ConvectionNetworkNaturalRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,6 +47,19 @@ public class ConvectionNetworkNaturalRelationObject extends AbstractReportRelati
 	}
 	
 	@Override
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.SP2SP_CONVECTIONNETWORK_1.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.SP2SP_CONVECTIONNETWORK_1.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
+	}
+	
+	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		throw new UnsupportedOperationException("未实现的策略类");
 	}

+ 15 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/ConvectionNetworkOnewayMechRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,6 +47,19 @@ public class ConvectionNetworkOnewayMechRelationObject extends AbstractReportRel
 	}
 	
 	@Override
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.SP2SP_CONVECTIONNETWORK_3.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.SP2SP_CONVECTIONNETWORK_3.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
+	}
+	
+	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		throw new UnsupportedOperationException("未实现的策略类");
 	}

+ 15 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/EquipPowerEqBackupRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,6 +47,19 @@ public class EquipPowerEqBackupRelationObject extends AbstractReportRelationObje
 	}
 	
 	@Override
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.EQ2EQ_EQUIPPOWER_2.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.EQ2EQ_EQUIPPOWER_2.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
+	}
+	
+	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		throw new UnsupportedOperationException("未实现的策略类");
 	}

+ 15 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/EquipPowerEqNormalRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,6 +47,19 @@ public class EquipPowerEqNormalRelationObject extends AbstractReportRelationObje
 	}
 	
 	@Override
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.EQ2EQ_EQUIPPOWER_1.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.EQ2EQ_EQUIPPOWER_1.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
+	}
+	
+	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		throw new UnsupportedOperationException("未实现的策略类");
 	}

+ 15 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/EquipPowerSyBackupRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,6 +47,19 @@ public class EquipPowerSyBackupRelationObject extends AbstractReportRelationObje
 	}
 
 	@Override
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.EQ2EQ_EQUIPPOWER_4.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.EQ2EQ_EQUIPPOWER_4.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
+	}
+	
+	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		throw new UnsupportedOperationException("未实现的策略类");
 	}

+ 15 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/EquipPowerSyNormalRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,6 +47,19 @@ public class EquipPowerSyNormalRelationObject extends AbstractReportRelationObje
 	}
 
 	@Override
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.EQ2EQ_EQUIPPOWER_3.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.EQ2EQ_EQUIPPOWER_3.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
+	}
+	
+	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		throw new UnsupportedOperationException("未实现的策略类");
 	}

+ 5 - 2
src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchEq2BdRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -49,14 +50,16 @@ public class MechForArchEq2BdRelationObject extends AbstractReportRelationObject
 	}
 
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(AdmRelationTypeEnum.EQ2BD_FOR.getGraphCode());
 		requestData.setRelCode(AdmRelationTypeEnum.EQ2BD_FOR.getRelCode());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
 
 	@Override

+ 5 - 2
src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchEq2FlRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -49,14 +50,16 @@ public class MechForArchEq2FlRelationObject extends AbstractReportRelationObject
 	}
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.MechForArch.name());
 		requestData.setRelCode(RelCodeEnum.Eq2Fl.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
 
 	@Override

+ 6 - 3
src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchEq2ShRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -49,16 +50,18 @@ public class MechForArchEq2ShRelationObject extends AbstractReportRelationObject
 	}
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.MechForArch.name());
 		requestData.setRelCode(RelCodeEnum.Eq2Sh.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
-
+	
 	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		// 获取楼层信息

+ 5 - 2
src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchSy2BdRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -47,14 +48,16 @@ public class MechForArchSy2BdRelationObject extends AbstractReportRelationObject
 	}
 
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.MechForArch.name());
 		requestData.setRelCode(RelCodeEnum.Sy2Bd.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
 
 	@Override

+ 5 - 2
src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchSy2FlRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -47,14 +48,16 @@ public class MechForArchSy2FlRelationObject extends AbstractReportRelationObject
 	}
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.MechForArch.name());
 		requestData.setRelCode(RelCodeEnum.Sy2Fl.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
 
 	@Override

+ 5 - 2
src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchSy2ShRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -47,14 +48,16 @@ public class MechForArchSy2ShRelationObject extends AbstractReportRelationObject
 	}
 
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.MechForArch.name());
 		requestData.setRelCode(RelCodeEnum.Sy2Sh.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
 
 	@Override

+ 6 - 3
src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchSy2SpRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -49,16 +50,18 @@ public class MechForArchSy2SpRelationObject extends AbstractReportRelationObject
 	}
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.MechForArch.name());
 		requestData.setRelCode(RelCodeEnum.Sy2Sp.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
-
+	
 	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		// 获取楼层信息

+ 6 - 3
src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechInArchEq2BdRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -47,16 +48,18 @@ public class MechInArchEq2BdRelationObject extends AbstractReportRelationObject
 	}
 
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.MechInArch.name());
 		requestData.setRelCode(RelCodeEnum.Eq2Bd.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
-
+	
 	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		// 获取楼层信息

+ 6 - 3
src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechInArchEq2FlRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -47,19 +48,21 @@ public class MechInArchEq2FlRelationObject extends AbstractReportRelationObject
 	}
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.MechInArch.name());
 		requestData.setRelCode(RelCodeEnum.Eq2Fl.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
 
 	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
-		AdmRelationObject convertObject = this.convertObject(master, "楼层", slave, "设备");
+		AdmRelationObject convertObject = this.convertObject(master, "设备", slave, "楼层");
 		String floorName = master.getLocalName();
 		convertObject.setMasterFloorName(floorName);
 		convertObject.setSlaveFloorName(floorName);

+ 5 - 2
src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechInArchEq2SpRelationObject.java

@@ -1,5 +1,6 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
@@ -47,14 +48,16 @@ public class MechInArchEq2SpRelationObject extends AbstractReportRelationObject
 	}
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
 		RequestData requestData = new RequestData();
 		requestData.setGraphCode(GraphCodeEnum.MechInArch.name());
 		requestData.setRelCode(RelCodeEnum.Eq2Sp.name());
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		
-		return this.queryAllObjectInfo(requestData, groupCode, projectId);
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
 
 	@Override

+ 13 - 3
src/main/java/com/persagy/proxy/adm/strategy/relationdata/RadiationNetworkConnectRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,10 +47,18 @@ public class RadiationNetworkConnectRelationObject extends AbstractReportRelatio
 	}
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
-		throw new UnsupportedOperationException("未实现的策略类");
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.SP2SP_RADIATIONNETWORK_1.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.SP2SP_RADIATIONNETWORK_1.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
-
+	
 	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		throw new UnsupportedOperationException("未实现的策略类");

+ 15 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/RadiationNetworkTransparentRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,6 +47,19 @@ public class RadiationNetworkTransparentRelationObject extends AbstractReportRel
 	}
 	
 	@Override
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.SP2SP_RADIATIONNETWORK_2.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.SP2SP_RADIATIONNETWORK_2.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
+	}
+	
+	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		throw new UnsupportedOperationException("未实现的策略类");
 	}

+ 11 - 2
src/main/java/com/persagy/proxy/adm/strategy/relationdata/RelationObjectStrategy.java

@@ -53,7 +53,16 @@ public interface RelationObjectStrategy {
 	 * @param projectId 项目ID
 	 * @return 不会返回null
 	 */
-	List<AdmRelationObject> findRelationObject(String groupCode, String projectId);
+	List<AdmRelationObject> exportRelationObject(String groupCode, String projectId);
+	
+	/**
+	 * 查询出所有的关系对象数据
+	 * 
+	 * @param groupCode 集团编码
+	 * @param projectId 项目ID
+	 * @return 不会返回null
+	 */
+	List<ObjectDigital> queryAllRelations(String groupCode, String projectId);
 	
 	/**
 	 * 分页查询关系对象数据
@@ -64,7 +73,7 @@ public interface RelationObjectStrategy {
 	 * @param projectId 项目ID
 	 * @param page 分页起始位置
 	 */
-	void queryPageObjectInfo(List<ObjectDigital> masterObjs, RequestData requestData, String groupCode, String projectId, Long page);
+	void queryPageRelations(List<ObjectDigital> masterObjs, RequestData requestData, String groupCode, String projectId, Long page);
 	
 	/**
 	 * 保存之前校验数据的合法性

+ 12 - 2
src/main/java/com/persagy/proxy/adm/strategy/relationdata/SensorRelationshipSs2EqRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,8 +47,16 @@ public class SensorRelationshipSs2EqRelationObject extends AbstractReportRelatio
 	}
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
-		throw new UnsupportedOperationException("未实现的策略类");
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.EQ2EQ_SENSORRELATIONSHIP_SS2EQ.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.EQ2EQ_SENSORRELATIONSHIP_SS2EQ.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
 
 	@Override

+ 12 - 2
src/main/java/com/persagy/proxy/adm/strategy/relationdata/SensorRelationshipSs2SpRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -46,8 +48,16 @@ public class SensorRelationshipSs2SpRelationObject extends AbstractReportRelatio
 	}
 
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
-		throw new UnsupportedOperationException("未实现的策略类");
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.EQ2SP_SENSORRELATIONSHIP_SS2SP.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.EQ2SP_SENSORRELATIONSHIP_SS2SP.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
 
 	@Override

+ 12 - 2
src/main/java/com/persagy/proxy/adm/strategy/relationdata/SensorRelationshipSs2SyRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,8 +47,16 @@ public class SensorRelationshipSs2SyRelationObject extends AbstractReportRelatio
 	}
 	
 	@Override
-	public List<AdmRelationObject> findRelationObject(String groupCode, String projectId) {
-		throw new UnsupportedOperationException("未实现的策略类");
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.EQ2SY_SENSORRELATIONSHIP_SS2SY.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.EQ2SY_SENSORRELATIONSHIP_SS2SY.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
 	}
 
 	@Override

+ 15 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/TrafficNetworkFFCloseRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,6 +47,19 @@ public class TrafficNetworkFFCloseRelationObject extends AbstractReportRelationO
 	}
 	
 	@Override
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.SP2SP_TRAFFICNETWORK_3.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.SP2SP_TRAFFICNETWORK_3.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
+	}
+	
+	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		throw new UnsupportedOperationException("未实现的策略类");
 	}

+ 15 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/TrafficNetworkFFOpenRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,6 +47,19 @@ public class TrafficNetworkFFOpenRelationObject extends AbstractReportRelationOb
 	}
 	
 	@Override
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.SP2SP_TRAFFICNETWORK_2.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.SP2SP_TRAFFICNETWORK_2.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
+	}
+	
+	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		throw new UnsupportedOperationException("未实现的策略类");
 	}

+ 15 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/TrafficNetworkNormalRelationObject.java

@@ -1,10 +1,12 @@
 package com.persagy.proxy.adm.strategy.relationdata;
 
+import java.util.ArrayList;
 import java.util.List;
 
 import org.springframework.stereotype.Component;
 
 import com.fasterxml.jackson.databind.node.ObjectNode;
+import com.persagy.dmp.basic.dto.RequestData;
 import com.persagy.dmp.basic.model.QueryCriteria;
 import com.persagy.dmp.common.model.response.CommonResult;
 import com.persagy.dmp.digital.client.DigitalRelationFacade;
@@ -45,6 +47,19 @@ public class TrafficNetworkNormalRelationObject extends AbstractReportRelationOb
 	}
 
 	@Override
+	public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.SP2SP_TRAFFICNETWORK_1.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.SP2SP_TRAFFICNETWORK_1.getRelCode());
+		requestData.setPage(1L);
+		requestData.setSize(500L);
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		return allDigitals;
+	}
+	
+	@Override
 	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
 		throw new UnsupportedOperationException("未实现的策略类");
 	}