Quellcode durchsuchen

添加设备统计接口

zhangqiankun vor 3 Jahren
Ursprung
Commit
19750d9c65
40 geänderte Dateien mit 469 neuen und 95 gelöschten Zeilen
  1. 31 0
      src/main/java/com/persagy/proxy/adm/controller/RelationReportController.java
  2. 290 33
      src/main/java/com/persagy/proxy/adm/handler/RelationReportHandler.java
  3. 2 2
      src/main/java/com/persagy/proxy/adm/model/EquipmentBindPointExcel.java
  4. 84 0
      src/main/java/com/persagy/proxy/adm/model/EquipmentCountExcel.java
  5. 25 22
      src/main/java/com/persagy/proxy/adm/service/impl/RelationReportService.java
  6. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/RelationObjectContext.java
  7. 3 3
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/AbstractRelationObject.java
  8. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSh2BdRelationObject.java
  9. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSh2FlRelationObject.java
  10. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSh2ShRelationObject.java
  11. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSh2SpRelationObject.java
  12. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSp2BdRelationObject.java
  13. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchForArchSp2FlRelationObject.java
  14. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ArchSubsetBd2FlRelationObject.java
  15. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ConvectionNetworkMixMechRelationObject.java
  16. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ConvectionNetworkNaturalRelationObject.java
  17. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/ConvectionNetworkOnewayMechRelationObject.java
  18. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/EquipPowerEqBackupRelationObject.java
  19. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/EquipPowerEqNormalRelationObject.java
  20. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/EquipPowerSyBackupRelationObject.java
  21. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/EquipPowerSyNormalRelationObject.java
  22. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchEq2BdRelationObject.java
  23. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchEq2FlRelationObject.java
  24. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchEq2ShRelationObject.java
  25. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchSy2BdRelationObject.java
  26. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchSy2FlRelationObject.java
  27. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchSy2ShRelationObject.java
  28. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechForArchSy2SpRelationObject.java
  29. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechInArchEq2BdRelationObject.java
  30. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechInArchEq2FlRelationObject.java
  31. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/MechInArchEq2SpRelationObject.java
  32. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/RadiationNetworkConnectRelationObject.java
  33. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/RadiationNetworkTransparentRelationObject.java
  34. 1 2
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/RelationObjectStrategy.java
  35. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/SensorRelationshipSs2EqRelationObject.java
  36. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/SensorRelationshipSs2SpRelationObject.java
  37. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/SensorRelationshipSs2SyRelationObject.java
  38. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/TrafficNetworkFFCloseRelationObject.java
  39. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/TrafficNetworkFFOpenRelationObject.java
  40. 1 1
      src/main/java/com/persagy/proxy/adm/strategy/relationdata/TrafficNetworkNormalRelationObject.java

+ 31 - 0
src/main/java/com/persagy/proxy/adm/controller/RelationReportController.java

@@ -40,6 +40,7 @@ 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.EquipmentCountExcel;
 import com.persagy.proxy.adm.model.EquipmentExcel;
 import com.persagy.proxy.adm.request.AdmQueryCriteria;
 import com.persagy.proxy.adm.request.AdmResponse;
@@ -270,6 +271,36 @@ public class RelationReportController {
 	}
 	
 	/**
+	 * 下载报告-统计项目下已有的设备,以及静态和iot 信息点使用情况
+	 * 设备.xlsx 是个空模板,所以这里未使用 
+	 * 
+	 * @param projectId
+	 * @param request
+	 * @param response
+	 * @return
+	 */
+	@RequestMapping("/graphic/downloads/project/equip/count")
+	public void downloadsProjectEquipPoint(@RequestParam(required = false) String projectId, HttpServletRequest request, HttpServletResponse response) {
+		String groupCode = request.getHeader(AdmCommonConstant.GROUP_CODE_HEADER);
+		if (StrUtil.isBlank(projectId)) {
+			projectId = request.getHeader(AdmCommonConstant.PROJECT_ID_HEADER);
+		}
+		try {
+            response.setContentType("application/vnd.ms-excel");
+            String encode = StandardCharsets.UTF_8.name();
+            response.setCharacterEncoding(encode);
+            // 防止中文乱码
+            String fileName = URLEncoder.encode("equipment", encode);
+            response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx");
+            
+            List<EquipmentCountExcel> equipmentCountExcel = this.relationReportHandler.countClassCodeEquip(groupCode, projectId);
+            EasyExcel.write(response.getOutputStream(), EquipmentCountExcel.class).sheet(0).doWrite(equipmentCountExcel);
+		} catch(Exception e) {
+			log.error("设备数据导出异常", e);
+		}
+	}
+	
+	/**
 	 * 下载报告-设备静态信息维护模板
 	 * 
 	 * @param request

+ 290 - 33
src/main/java/com/persagy/proxy/adm/handler/RelationReportHandler.java

@@ -23,6 +23,7 @@ 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.EquipmentCountExcel;
 import com.persagy.proxy.adm.model.EquipmentExcel;
 import com.persagy.proxy.adm.service.IRelationReportService;
 import com.persagy.proxy.adm.strategy.RelationObjectContext;
@@ -67,7 +68,7 @@ public class RelationReportHandler {
 				
 		// 2.获取所有的设备类定义的className
 		List<ObjectTypeDefine> classList = this.relationReportService.queryClassList(groupCode, projectId, null, Sets.newHashSet(equipment), null);
-		// key-classCode, value-className
+		/** key-classCode, value-className */
 		Map<String, String> classDefine = new HashMap<String, String>();
 		for (ObjectTypeDefine objectTypeDefine : classList) {
 			classDefine.put(objectTypeDefine.getCode(), objectTypeDefine.getName());
@@ -110,9 +111,9 @@ public class RelationReportHandler {
 		
 		// 3.获取所有的设备、系统类定义信息
 		List<ObjectTypeDefine> classInfo = this.relationReportService.queryClassList(groupCode, projectId, null, Sets.newHashSet(equipment, AdmObjectType.SYSTEM.getIndex()), null);
-		// key-equipCode, value-equipName
+		/** key-equipCode, value-equipName */
 		Map<String, String> equipTemp = new HashMap<String, String>();
-		// key-systemCode, value-systemName
+		/** key-systemCode, value-systemName */
 		Map<String, String> systemTemp = new HashMap<String, String>();
 		for (ObjectTypeDefine info : classInfo) {
 			if (info.getCode().length() > 5) {
@@ -129,6 +130,51 @@ public class RelationReportHandler {
 	}
 	
 	/**
+	 * 下载报告-统计项目下已有的设备,以及静态和iot 信息点使用情况,以classCode为维度
+	 * 
+	 * @param groupCode
+	 * @param projectId
+	 */
+	public List<EquipmentCountExcel> countClassCodeEquip(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.获取所有的设备对象数据
+		List<ObjectNode> equipList = this.relationReportService.queryObjects(groupCode, projectId, null, null, equipment, "classCode");
+		if (CollectionUtil.isEmpty(equipList)) {
+			return Lists.newArrayList();
+		}
+		
+		// 3.获取所有的设备、系统类定义信息
+		List<ObjectTypeDefine> classInfo = this.relationReportService.queryClassList(groupCode, projectId, null, Sets.newHashSet(equipment, AdmObjectType.SYSTEM.getIndex()), null);
+		/** key-equipCode, value-equipName */
+		Map<String, String> equipTemp = new HashMap<String, String>();
+		/** key-systemCode, value-systemName */
+		Map<String, String> systemTemp = new HashMap<String, String>();
+		for (ObjectTypeDefine info : classInfo) {
+			if (info.getCode().length() > 5) {
+				equipTemp.put(info.getCode(), info.getName());
+			} else {
+				systemTemp.put(info.getCode(), info.getName());
+			}
+		}
+		
+		// 4.获取所有的信息点
+		Set<String> equipCodes = equipTemp.keySet();
+		List<ObjectInfoDefine> funidList = this.relationReportService.queryFunidList(groupCode, projectId, equipCodes, null, null);
+		
+		// 5.导出结果汇总返回
+		return this.exportClassEquipExcel(equipList, equipTemp, systemTemp, funidList, groupCode, projectId, projectName);
+	}
+	
+	/**
 	 * 构造 excel 设备数据--不在空间内的设备数据
 	 * 
 	 * @param equipList 设备数据集合
@@ -139,12 +185,13 @@ public class RelationReportHandler {
 	 * @return
 	 */
 	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>();
+		/** key: 设备ID,value: 楼层名称 */
+		Map<String, String> floorNameTemp = new HashMap<String, String>();
+		this.findFloorName(floorNameTemp, groupCode, projectId);
 		
-		this.findBuildAndFloorName(buildTemp, floorTemp, groupCode, projectId);
+		/** key: 设备ID,value: 建筑名称 */
+		Map<String, String> buildNameTemp = new HashMap<String, String>();
+		this.findBuildingName(buildNameTemp, groupCode, projectId);
 		
 		// 结果封装
 		List<EquipmentExcel> excelList = new ArrayList<EquipmentExcel>();
@@ -166,8 +213,8 @@ public class RelationReportHandler {
 				String classCode = equip.get("classCode") == null ? null : equip.get("classCode").asText();
 				excel.setClassCodeName(classCode == null ? null : classDefine.get(classCode));
 				
-				excel.setBuildName(buildTemp.get(id));
-				excel.setFloorName(floorTemp.get(id));
+				excel.setBuildName(buildNameTemp.get(id));
+				excel.setFloorName(floorNameTemp.get(id));
 				excel.setModelFileName("T1F10模型文件v18.rvt");	// 这里写死是不对的,需要后续再补充改变
 				excelList.add(excel);
 			}
@@ -188,21 +235,22 @@ public class RelationReportHandler {
 	 */
 	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>();
+		/** key: 设备ID,value: 楼层名称 */
+		Map<String, String> floorNameTemp = new HashMap<String, String>();
+		this.findFloorName(floorNameTemp, groupCode, projectId);
 		
-		this.findBuildAndFloorName(buildTemp, floorTemp, groupCode, projectId);
+		/** key: 设备ID,value: 建筑名称 */
+		Map<String, String> buildNameTemp = new HashMap<String, String>();
+		this.findBuildingName(buildNameTemp, groupCode, projectId);
 		
 		// 信息点分类信息统计
-		// key: classCode, value: 信息点
+		/** key: classCode, value: 信息点 */
 		Map<String, Set<String>> infoCodes = new HashMap<String, Set<String>>();
-		// key: classCode, value: 静态信息点的数量 
+		/** key: classCode, value: 静态信息点的数量  */
 		Map<String, Integer> staticCount = new HashMap<String, Integer>();
-		// key: classCode, value: 动态信息点的数量 
+		/** key: classCode, value: 动态信息点的数量  */
 		Map<String, Integer> dynamicCount = new HashMap<String, Integer>();
-		// key: classCode_infoCode, value: 动静态
+		/** key: classCode_infoCode, value: 动静态 */
 		Map<String, String> codeAttrbut = new HashMap<String, String>();
 		for (ObjectInfoDefine infoDefine : funidList) {
 			String classCode = infoDefine.getClassCode();
@@ -234,8 +282,8 @@ public class RelationReportHandler {
 			EquipmentBindPointExcel excel = new EquipmentBindPointExcel();
 			excel.setIndex(i + 1);
 			excel.setProjectName(projectName);
-			excel.setBuildName(buildTemp.get(id));
-			excel.setFloorName(floorTemp.get(id));
+			excel.setBuildName(buildNameTemp.get(id));
+			excel.setFloorName(floorNameTemp.get(id));
 			excel.setSystemCode(systemCode);
 			excel.setSystemName(systemTemp.get(systemCode));
 			excel.setEquipCode(equipCode);
@@ -245,14 +293,16 @@ public class RelationReportHandler {
 			excel.setLocalName(equip.get("localName") == null ? null : equip.get("localName").asText());
 			
 			// 获取此classCode下有多少信息点、静态信息点、动态信息点
-			int staticNum = staticCount.get(equipCode) == null ? 0 : staticCount.get(equipCode);
+			
+			// 静态的默认存在4个已绑信息点,ID、name、localId、localName
+			int nowStatic = 4;
+			int nowDynamic = 0;
+			int staticNum = staticCount.get(equipCode) == null ? nowStatic : staticCount.get(equipCode);
 			int dynamicNum = dynamicCount.get(equipCode) == null ? 0 : dynamicCount.get(equipCode);
-			excel.setNeedPointCount(staticNum + dynamicNum);
+			excel.setNeedBindPointCount(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)) {
@@ -271,7 +321,7 @@ public class RelationReportHandler {
 					}
 				}
 			}
-			excel.setNowPointCount(nowStatic + nowDynamic);
+			excel.setNowBindPointCount(nowStatic + nowDynamic);
 			excel.setNowStaticPointCount(nowStatic);
 			excel.setNowDynamicPointCount(nowDynamic);
 			excelList.add(excel);
@@ -280,14 +330,211 @@ public class RelationReportHandler {
 	}
 	
 	/**
-	 * 获取建筑、楼层的名称
+	 * 大概率不对,后续观察
 	 * 
-	 * @param buildTemp key: 设备ID,value: 建筑名称
-	 * @param floorTemp key: 设备ID,value: 楼层名称
+	 * @param equipList
+	 * @param equipTemp
+	 * @param systemTemp
+	 * @param funidList
 	 * @param groupCode
 	 * @param projectId
+	 * @param projectName
+	 * @return
 	 */
-	private void findBuildAndFloorName(Map<String, String> buildTemp, Map<String, String> floorTemp, String groupCode, String projectId) {
+	private List<EquipmentCountExcel> exportClassEquipExcel(List<ObjectNode> equipList, Map<String, String> equipTemp,
+			Map<String, String> systemTemp, List<ObjectInfoDefine> funidList, String groupCode, String projectId, String projectName) {
+		
+		/** 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()));
+			}
+		}
+		funidList.clear(); 	//即时清空
+		
+		/** key: 设备ID,value: 建筑Id */
+		Map<String, String> equipId2BuildId = new HashMap<String, String>();
+		/** key: 建筑ID,value: 建筑名称 */
+		Map<String, String> buildNameTemp = new HashMap<String, String>();
+		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) {
+					equipId2BuildId.put(master.getId(), slave.getId());
+					buildNameTemp.put(slave.getId(), slave.getLocalName());
+				}
+			}
+		}
+		buildDigitals.clear();	// 即时清空
+		
+		/** key: classCode, value: 当BIMID不为空时,建筑ID不为空时,值+1 */
+		Map<String, Integer> equipBimIdByBuild = new HashMap<String, Integer>();
+		/** key: classCode, value: 当BIMID不为空时,建筑ID为空时,值+1 */
+		Map<String, Integer> equipBimIdByBuildNull = new HashMap<String, Integer>();
+		/** key: classCode, value: 当BIMID为空时,建筑ID不为空时,值+1 */
+		Map<String, Integer> equipBimIdNullByBuild = new HashMap<String, Integer>();
+		/** key: classCode, value: 当BIMID为空时,建筑ID为空时,值+1 */
+		Map<String, Integer> equipBimIdNullByBuildNull = new HashMap<String, Integer>();
+		
+		/** key: classCode, value: 已绑定的静态信息点数量 */
+		Map<String, Integer> equipStaticInfoTemp = new HashMap<String, Integer>();
+		/** key: classCode, value: 已绑定的动态信息点数量 */
+		Map<String, Integer> equipDynamicInfoTemp = new HashMap<String, Integer>();
+		
+		/** key: classCode, value: 建筑ID */
+		Map<String, String> classBuildId = new HashMap<String, String>();
+		/** key: classCode_建筑ID, value: infos字段包含信息点的设备数量 */
+		Map<String, Integer> classInfosByBuild = new HashMap<String, Integer>();
+		/** key: classCode, value: infos字段包含信息点且建筑ID为空的设备数量 */
+		Map<String, Integer> classInfosNotBuild = new HashMap<String, Integer>();
+		/** key: classCode, value: 存在建筑的设备数量 */
+		Map<String, Integer> classByBuild = new HashMap<String, Integer>();
+		/** key: classCode, value: 不存在建筑的设备数量 */
+		Map<String, Integer> classNotBuild = new HashMap<String, Integer>();
+		// 总结出如上map所需数据
+		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 classCode = equip.get("classCode") == null ? null : equip.get("classCode").asText();
+			String buildingId = equipId2BuildId.get(id); 	// 获取建筑ID
+			if (StrUtil.isBlank(buildingId)) {
+				classNotBuild.put(classCode, (classNotBuild.get(classCode) == null ? 0 : (classNotBuild.get(classCode) + 1)));
+			} else {
+				classByBuild.put(classCode, (classByBuild.get(classCode) == null ? 0 : (classByBuild.get(classCode) + 1)));
+				classBuildId.put(classCode, buildingId);
+			}
+			
+			int nowStatic = 0;
+			int nowDynamic = 0;
+			Set<String> needCodes = infoCodes.get(classCode);
+			String infos = equip.get("infos") == null ? null : equip.get("infos").asText();
+			if (StrUtil.isNotBlank(infos)) {
+				JSONObject parseObject = JSONObject.parseObject(infos);
+				String bimId = parseObject.getString("bimId");
+				if (StrUtil.isBlank(bimId)) {
+					if (StrUtil.isBlank(buildingId)) {
+						equipBimIdNullByBuildNull.put(id, (equipBimIdNullByBuildNull.get(id) == null ? 1 : (equipBimIdNullByBuildNull.get(id) + 1)));
+					} else {
+						equipBimIdNullByBuild.put(id, (equipBimIdNullByBuild.get(id) == null ? 1 : (equipBimIdNullByBuild.get(id) + 1)));
+					}
+				} else {
+					if (StrUtil.isBlank(buildingId)) {
+						equipBimIdByBuildNull.put(id, (equipBimIdByBuildNull.get(id) == null ? 1 : (equipBimIdByBuildNull.get(id) + 1)));
+					} else {
+						equipBimIdByBuild.put(id, (equipBimIdByBuild.get(id) == null ? 1 : (equipBimIdByBuild.get(id) + 1)));
+					}
+				}
+				
+				if (StrUtil.isBlank(buildingId)) {
+					classInfosNotBuild.put(classCode, (classInfosNotBuild.get(classCode) == null ? 1 : (classInfosNotBuild.get(classCode) + 1)));
+				} else {
+					String key = classCode + AdmCommonConstant.UNDERLINE + buildingId;
+					classInfosByBuild.put(key, (classInfosByBuild.get(key) == null ? 1 : (classInfosByBuild.get(key) + 1)));
+				}
+				// 判断已绑定多少信息点
+				Set<String> nowCodes = parseObject.keySet();
+				for (String key : nowCodes) {
+					if (needCodes.contains(key)) {
+						if ("STATIC".equals(codeAttrbut.get(classCode + AdmCommonConstant.UNDERLINE + key))) {
+							nowStatic++;
+						} else {
+							nowDynamic++;
+						}
+					}
+				}
+			}
+			
+			equipStaticInfoTemp.put(classCode, (equipStaticInfoTemp.get(classCode) == null ? nowStatic : (equipStaticInfoTemp.get(classCode) + nowStatic)));
+			equipDynamicInfoTemp.put(classCode, (equipDynamicInfoTemp.get(classCode) == null ? nowDynamic : (equipDynamicInfoTemp.get(classCode) + nowDynamic)));
+		}
+		equipList.clear();	//即时清空
+		
+		Set<String> classCodes = classByBuild.keySet();
+		Set<String> keySet = classNotBuild.keySet();
+		classCodes.addAll(keySet);
+		
+		// 结果封装
+		int count = 0;
+		List<EquipmentCountExcel> excelList = new ArrayList<EquipmentCountExcel>();
+		for (String classCode : classCodes) {
+			String systemCode = (classCode == null || classCode.length() < 5) ? null : classCode.substring(0, 4);
+			String buildingId = classBuildId.get(classCode);
+			EquipmentCountExcel excel = new EquipmentCountExcel();
+			excel.setIndex(++count);
+			excel.setProjectName(projectName);
+			excel.setBuildName(buildingId == null ? null : (buildNameTemp.get(buildingId) == null ? null : buildNameTemp.get(buildingId)));
+			excel.setSystemCode(systemCode);
+			excel.setSystemName(systemTemp.get(systemCode));
+			excel.setEquipCode(classCode);
+			excel.setEquipName(equipTemp.get(classCode));
+			
+			if (StrUtil.isBlank(buildingId)) {
+				// 第7列,bimId为空的设备数量
+				excel.setEquipBimIdNullCount(equipBimIdNullByBuildNull.get(classCode) == null ? 0 : equipBimIdNullByBuildNull.get(classCode));
+				// 第8列,bimId不为空的数量 
+				excel.setEquipBimIdCount(equipBimIdByBuildNull.get(classCode) == null ? 0 : equipBimIdByBuildNull.get(classCode));
+				// 第9列,当前classCode下,建筑为空的设备
+				excel.setEquipCountByBuild(classNotBuild.get(classCode) == null ? 0 : classNotBuild.get(classCode));
+				// 第10列,当前classCode下,建筑为空且信息点不为空的设备
+				excel.setEquipBindPointCount(classInfosNotBuild.get(classCode) == null ? 0 : classInfosNotBuild.get(classCode));
+			} else {
+				// 第7列,bimId为空的设备数量
+				excel.setEquipBimIdNullCount(equipBimIdNullByBuild.get(classCode) == null ? 0 : equipBimIdNullByBuild.get(classCode));
+				// 第8列,bimId不为空的数量 
+				excel.setEquipBimIdCount(equipBimIdByBuild.get(classCode) == null ? 0 : equipBimIdByBuild.get(classCode));
+				// 第9列,当前建筑下的设备数量
+				excel.setEquipCountByBuild(classByBuild.get(classCode) == null ? 0 : classByBuild.get(classCode));
+				// 第10列,当前建筑下的设备且信息点不为空的数量
+				String key = classCode + AdmCommonConstant.UNDERLINE + buildingId;
+				excel.setEquipBindPointCount(classInfosByBuild.get(key) == null ? 0 : classInfosByBuild.get(key));
+			}
+			
+			// 静态的默认存在4个已绑信息点,ID、name、localId、localName
+			int staticNum = (staticCount.get(classCode) == null ? 0 : staticCount.get(classCode)) + 4;
+			int dynamicNum = dynamicCount.get(classCode) == null ? 0 : dynamicCount.get(classCode);
+			excel.setNeedStaticPointCount(staticNum);
+			excel.setNeedDynamicPointCount(dynamicNum);
+			excel.setNowStaticPointCount(equipStaticInfoTemp.get(classCode));
+			excel.setNowDynamicPointCount(equipDynamicInfoTemp.get(classCode));
+			excelList.add(excel);
+		}
+		
+		return excelList;
+	}
+	
+	/**
+	 * 获取建筑的名称
+	 * 
+	 * @param buildNameTemp key: 设备ID,value: 建筑名称
+	 * @param buildIdTemp key: 设备ID,value: 建筑ID
+	 * @param groupCode
+	 * @param projectId
+	 */
+	private void findBuildingName(Map<String, String> buildNameTemp, String groupCode, String projectId) {
 		// 获取建筑名称
 		String graphAndRelKey = GraphCodeEnum.MechInArch.name() + AdmCommonConstant.UNDERLINE + RelCodeEnum.Eq2Bd.name();
 		List<ObjectDigital> buildDigitals = this.relationObjectContext.queryAllRelations(groupCode, projectId, graphAndRelKey);
@@ -296,19 +543,29 @@ public class RelationReportHandler {
 				List<ObjectDigital> slaveDigitals = master.getRelObjs();
 				ObjectDigital slave = CollectionUtil.isEmpty(slaveDigitals) ? null : slaveDigitals.get(0);
 				if (slave != null) {
-					buildTemp.put(master.getId(), slave.getLocalName());
+					buildNameTemp.put(master.getId(), slave.getLocalName());
 				}
 			}
 		}
+	}
+	
+	/**
+	 * 获取楼层的名称
+	 * 
+	 * @param floorNameTemp key: 设备ID,value: 楼层名称
+	 * @param groupCode
+	 * @param projectId
+	 */
+	private void findFloorName(Map<String, String> floorNameTemp, String groupCode, String projectId) {
 		// 获取楼层名称
-		graphAndRelKey = GraphCodeEnum.MechInArch.name() + AdmCommonConstant.UNDERLINE + RelCodeEnum.Eq2Fl.name();
+		String 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());
+					floorNameTemp.put(master.getId(), slave.getLocalName());
 				}
 			}
 		}

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

@@ -71,11 +71,11 @@ public class EquipmentBindPointExcel {
 	
 	@ColumnWidth(10)
 	@ExcelProperty(value = "【信息点】应绑点位总数", index=12)
-	private int needPointCount;
+	private int needBindPointCount;
 	
 	@ColumnWidth(10)
 	@ExcelProperty(value = "【信息点】已绑点位总数", index=13)
-	private int nowPointCount;
+	private int nowBindPointCount;
 	
 	@ColumnWidth(10)
 	@ExcelProperty(value = "【信息点】静态应绑点", index=14)

+ 84 - 0
src/main/java/com/persagy/proxy/adm/model/EquipmentCountExcel.java

@@ -0,0 +1,84 @@
+package com.persagy.proxy.adm.model;
+
+import org.apache.poi.ss.usermodel.Font;
+
+import com.alibaba.excel.annotation.ExcelProperty;
+import com.alibaba.excel.annotation.write.style.ColumnWidth;
+import com.alibaba.excel.annotation.write.style.HeadFontStyle;
+
+import lombok.Getter;
+import lombok.Setter;
+
+/**
+ * @version 
+ * @description 下载报告-统计项目下已有的设备,以及静态和iot 信息点使用,
+ * @company persagy
+ * @author zhangqiankun
+ * @since 2020年11月26日:	下午12:30:39
+ */
+@Getter
+@Setter
+@HeadFontStyle(color = Font.COLOR_NORMAL)
+public class EquipmentCountExcel {
+	
+	@ColumnWidth(10)
+	@ExcelProperty(value = "序号", index=0)
+	private int index;
+	
+	@ColumnWidth(25)
+	@ExcelProperty(value = "项目名称", index=1)
+	private String projectName;
+
+	@ColumnWidth(20)
+	@ExcelProperty(value = "建筑", index=2)
+	private String buildName;
+
+	@ColumnWidth(10)
+	@ExcelProperty(value = "系统编码", index=3)
+	private String systemCode;
+
+	@ColumnWidth(20)
+	@ExcelProperty(value = "系统名称", index=4)
+	private String systemName;
+	
+	@ColumnWidth(10)
+	@ExcelProperty(value = "设备类型编码", index=5)
+	private String equipCode;
+	
+	@ColumnWidth(20)
+	@ExcelProperty(value = "设备类型名称", index=6)
+	private String equipName; 
+	
+	@ColumnWidth(10)
+	@ExcelProperty(value = "录入【设备】台账总数", index=7)
+	private int equipBimIdNullCount;		// 录入平台,非BIM解析的设备数量,BIMID为空的设备,有建筑就只统计对应建筑下的,反之亦然
+	
+	@ColumnWidth(10)
+	@ExcelProperty(value = "模型解析【设备】总数", index=8)
+	private int equipBimIdCount;			// 通过BIM解析的设备数量,有建筑就只统计对应建筑下的,反之亦然
+	
+	@ColumnWidth(10)
+	@ExcelProperty(value = "平台【设备】总数", index=9)
+	private int equipCountByBuild;			// 每个设备的class_code,在同一建筑下,按照classCode分组,统计出的数量
+	
+	@ColumnWidth(10)
+	@ExcelProperty(value = "已绑点【设备】", index=10)
+	private int equipBindPointCount;		// 项目和classCode为条件(有建筑就只统计对应建筑下的,反之亦然),此情况下的已绑定设备的数量
+	
+	@ColumnWidth(10)
+	@ExcelProperty(value = "【信息点】静态应绑点", index=11)
+	private int needStaticPointCount;	// 项目和classCode为条件(有建筑就只统计对应建筑下的,反之亦然)
+	
+	@ColumnWidth(10)
+	@ExcelProperty(value = "【信息点】静态已绑点", index=12)
+	private int nowStaticPointCount;	// 项目和classCode为条件(有建筑就只统计对应建筑下的,反之亦然),此情况下的已绑定信息点的数量
+	
+	@ColumnWidth(10)
+	@ExcelProperty(value = "【信息点】动态应绑点", index=13)
+	private int needDynamicPointCount;	// 项目和classCode为条件(有建筑就只统计对应建筑下的,反之亦然)
+	
+	@ColumnWidth(10)
+	@ExcelProperty(value = "【信息点】动态已绑点", index=14)
+	private int nowDynamicPointCount;	// 项目和classCode为条件(有建筑就只统计对应建筑下的,反之亦然),此情况下的已绑定信息点的数量
+	
+}

+ 25 - 22
src/main/java/com/persagy/proxy/adm/service/impl/RelationReportService.java

@@ -11,11 +11,10 @@ import java.util.Map;
 import java.util.Set;
 import java.util.stream.Collectors;
 
-import cn.hutool.core.util.EnumUtil;
-import com.persagy.proxy.adm.constant.SpaceTypeEnum;
 import org.springframework.beans.factory.annotation.Value;
 import org.springframework.stereotype.Service;
 
+import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.metadata.OrderItem;
 import com.baomidou.mybatisplus.core.toolkit.IdWorker;
@@ -45,6 +44,7 @@ import com.persagy.dmp.digital.entity.ObjectRelationProjectCal;
 import com.persagy.dmp.simple.client.DigitalObjectSimpleFacade;
 import com.persagy.proxy.adm.constant.AdmCommonConstant;
 import com.persagy.proxy.adm.constant.AdmRelationTypeEnum;
+import com.persagy.proxy.adm.constant.SpaceTypeEnum;
 import com.persagy.proxy.adm.service.IRelationReportService;
 import com.persagy.proxy.adm.strategy.relationdata.RelationObjectStrategy;
 
@@ -52,6 +52,7 @@ import cn.hutool.core.collection.CollUtil;
 import cn.hutool.core.collection.CollectionUtil;
 import cn.hutool.core.date.DateTime;
 import cn.hutool.core.date.DateUtil;
+import cn.hutool.core.util.EnumUtil;
 import cn.hutool.core.util.StrUtil;
 
 /**
@@ -87,9 +88,10 @@ public class RelationReportService implements IRelationReportService {
 		if (StrUtil.isNotBlank(ascOrder)) {
 			classCriteria.setOrders(Collections.singletonList(OrderItem.asc(ascOrder)));
 		}
+		classCriteria.setPage(1L);
 		classCriteria.setSize(500L);
 		List<ObjectTypeDefine> all = new ArrayList<ObjectTypeDefine>();
-		this.queryPageClass(all, classCriteria, groupCode, projectId, 1L);
+		this.queryPageClass(all, classCriteria, groupCode, projectId);
 		return all;
 	}
 	
@@ -308,10 +310,11 @@ public class RelationReportService implements IRelationReportService {
 		criteria.put(key, value);
 		criteria.put("objType", objType);
 		queryCriteria.setCriteria(criteria);
-		queryCriteria.setSize(500L);
+		queryCriteria.setPage(1L);
+		queryCriteria.setSize(50000L);
 		
 		List<ObjectNode> all = new ArrayList<ObjectNode>();
-		this.queryPageObjects(all, queryCriteria, groupCode, projectId, 1L);
+		this.queryPageObjects(all, queryCriteria, groupCode, projectId);
 		return all;
 	}
 	
@@ -356,13 +359,14 @@ public class RelationReportService implements IRelationReportService {
 		if (StrUtil.isNotBlank(objType)) {
 			object.put("objType", objType);
 		}
+		objectCriteria.setPage(1L);
 		objectCriteria.setSize(500L);
 		objectCriteria.setCriteria(object);
 		if (StrUtil.isNotBlank(ascOrder)) {
 			objectCriteria.setOrders(Collections.singletonList(OrderItem.asc(ascOrder)));
 		}
 		List<ObjectNode> all = new ArrayList<ObjectNode>();
-		this.queryPageObjects(all, objectCriteria, groupCode, projectId, 1L);
+		this.queryPageObjects(all, objectCriteria, groupCode, projectId);
 		return all;
 	}
 	
@@ -405,9 +409,10 @@ public class RelationReportService implements IRelationReportService {
 			condition.putPOJO("classCode", arrays);
 		}
 		queryCriteria.setCriteria(condition);
+		queryCriteria.setPage(1L);
 		queryCriteria.setSize(500L);
 		List<ObjectInfoDefine> all = new ArrayList<ObjectInfoDefine>();
-		this.queryPageFunids(all, queryCriteria, groupCode, projectId, 1L);
+		this.queryPageFunids(all, queryCriteria, groupCode, projectId);
 		return all;
 	}
 	
@@ -701,6 +706,8 @@ public class RelationReportService implements IRelationReportService {
 		
 		result.put("count", count);
 		result.put("graphicId", graphicId);
+		result.put("statistics", new JSONObject());
+		result.put("conneObject", relationDefine.getTargetObjs());
 		result.put("computationalState",relationProject.has("computationalState")?relationProject.get("computationalState").asText():null);
 		result.put("id",relationProject.has("id")?relationProject.get("id").asText():null);
 		result.put("manual",relationProject.has("manual")?relationProject.get("manual").asText():null);
@@ -710,10 +717,9 @@ public class RelationReportService implements IRelationReportService {
 		result.put("relationTypeCode",relationProject.has("relCode")?relationProject.get("relCode").asText():null);
 		result.put("code", relationProject.has("relCode")?relationProject.get("relCode").asText():null);
 		result.put("relationTypeName",relationProject.has("relCodeName")?relationProject.get("relCodeName").asText():null);
-		result.put("statistics", new JSONObject());
-		result.put("automatic", relationProject.has("automaticFlag") && relationProject.get("automaticFlag").asBoolean());
 		result.put("source", relationProject.has("sourceFlag") && relationProject.get("sourceFlag").asBoolean());
-		result.put("conneObject", relationDefine.getTargetObjs());
+		result.put("automatic", relationProject.has("automaticFlag") && relationProject.get("automaticFlag").asBoolean());
+		result.put("mepSystemType", relationProject.has("mepSystemType") ? new JSONArray() : relationProject.get("mepSystemType").asText());
 		
 		Long modifiedTime = relationProject.get("modifiedTime") == null ? null : relationProject.get("modifiedTime").asLong();
 		Long creationTime = relationProject.get("creationTime") == null ? null : relationProject.get("creationTime").asLong();
@@ -744,16 +750,15 @@ public class RelationReportService implements IRelationReportService {
 	 * @param classCriteria
 	 * @param groupCode
 	 * @param projectId
-	 * @param page
 	 */
-	private void queryPageClass(List<ObjectTypeDefine> all, QueryCriteria classCriteria, String groupCode, String projectId, long page) {
-		classCriteria.setPage(page);
+	private void queryPageClass(List<ObjectTypeDefine> all, QueryCriteria classCriteria, String groupCode, String projectId) {
 		List<ObjectTypeDefine> objectNodes = DigitalDefineFacade.queryObjectType(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, classCriteria);
 		if (CollectionUtil.isEmpty(objectNodes)) {
 			return;
 		}
 		all.addAll(objectNodes);
-		this.queryPageClass(all, classCriteria, groupCode, projectId, ++page);
+		classCriteria.setPage((classCriteria.getPage() + 1));
+		this.queryPageClass(all, classCriteria, groupCode, projectId);
 	}
 	
 	/**
@@ -763,16 +768,15 @@ public class RelationReportService implements IRelationReportService {
 	 * @param objectCriteria
 	 * @param groupCode
 	 * @param projectId
-	 * @param page
 	 */
-	private void queryPageObjects(List<ObjectNode> all, QueryCriteria objectCriteria, String groupCode, String projectId, long page) {
-		objectCriteria.setPage(page);
+	private void queryPageObjects(List<ObjectNode> all, QueryCriteria objectCriteria, String groupCode, String projectId) {
 		List<ObjectNode> objectNodes = DigitalObjectFacade.query(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, objectCriteria);
 		if (CollectionUtil.isEmpty(objectNodes)) {
 			return;
 		}
 		all.addAll(objectNodes);
-		this.queryPageObjects(all, objectCriteria, groupCode, projectId, ++page);
+		objectCriteria.setPage((objectCriteria.getPage() + 1));
+		this.queryPageObjects(all, objectCriteria, groupCode, projectId);
 	}
 	
 	/**
@@ -782,16 +786,15 @@ public class RelationReportService implements IRelationReportService {
 	 * @param classCriteria
 	 * @param groupCode
 	 * @param projectId
-	 * @param page
 	 */
-	private void queryPageFunids(List<ObjectInfoDefine> all, QueryCriteria queryCriteria, String groupCode, String projectId, long page) {
-		queryCriteria.setPage(page);
+	private void queryPageFunids(List<ObjectInfoDefine> all, QueryCriteria queryCriteria, String groupCode, String projectId) {
 		List<ObjectInfoDefine> infos = DigitalObjectInfoFacade.query(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, queryCriteria);
 		if (CollectionUtil.isEmpty(infos)) {
 			return;
 		}
 		all.addAll(infos);
-		this.queryPageFunids(all, queryCriteria, groupCode, projectId, ++page);
+		queryCriteria.setPage((queryCriteria.getPage() + 1));
+		this.queryPageFunids(all, queryCriteria, groupCode, projectId);
 	}
 	
 }

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

@@ -121,7 +121,7 @@ public class RelationObjectContext {
 		if (strategy == null) {
 			return masterObjs;
 		}
-		strategy.queryPageRelations(masterObjs, requestData, groupCode, projectId, requestData.getPage());
+		strategy.queryPageRelations(masterObjs, requestData, groupCode, projectId);
 		return masterObjs;
 	}
 	

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

@@ -31,14 +31,14 @@ public abstract class AbstractRelationObject implements RelationObjectStrategy {
 	}
 	
 	@Override
-	public void queryPageRelations(List<ObjectDigital> allDigitals, RequestData requestData, String groupCode, String projectId, Long page) {
-		requestData.setPage(page);
+	public void queryPageRelations(List<ObjectDigital> allDigitals, RequestData requestData, String groupCode, String projectId) {
 		List<ObjectDigital> objectDigitals = DigitalObjectFacade.queryObjectListByGraphCodeAndRelCode(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, requestData);
 		if (CollectionUtil.isEmpty(objectDigitals)) {
 			return;
 		}
 		allDigitals.addAll(objectDigitals);
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, ++page);
+		requestData.setPage((requestData.getPage() + 1));
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 	}
 	
 	@Override

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

@@ -55,7 +55,7 @@ public class ArchForArchSh2BdRelationObject extends AbstractReportRelationObject
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -55,7 +55,7 @@ public class ArchForArchSh2FlRelationObject extends AbstractReportRelationObject
 		requestData.setPage(1L);
 		requestData.setSize(500L);
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -56,7 +56,7 @@ public class ArchForArchSh2ShRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 

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

@@ -58,7 +58,7 @@ public class ArchForArchSh2SpRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -58,7 +58,7 @@ public class ArchForArchSp2BdRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 

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

@@ -58,7 +58,7 @@ public class ArchForArchSp2FlRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -54,7 +54,7 @@ public class ArchSubsetBd2FlRelationObject extends AbstractRelationObject {
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 

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

@@ -55,7 +55,7 @@ public class ConvectionNetworkMixMechRelationObject extends AbstractReportRelati
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -55,7 +55,7 @@ public class ConvectionNetworkNaturalRelationObject extends AbstractReportRelati
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -55,7 +55,7 @@ public class ConvectionNetworkOnewayMechRelationObject extends AbstractReportRel
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -55,7 +55,7 @@ public class EquipPowerEqBackupRelationObject extends AbstractReportRelationObje
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -55,7 +55,7 @@ public class EquipPowerEqNormalRelationObject extends AbstractReportRelationObje
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -55,7 +55,7 @@ public class EquipPowerSyBackupRelationObject extends AbstractReportRelationObje
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -55,7 +55,7 @@ public class EquipPowerSyNormalRelationObject extends AbstractReportRelationObje
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -58,7 +58,7 @@ public class MechForArchEq2BdRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 

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

@@ -58,7 +58,7 @@ public class MechForArchEq2FlRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 

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

@@ -58,7 +58,7 @@ public class MechForArchEq2ShRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -56,7 +56,7 @@ public class MechForArchSy2BdRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 

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

@@ -56,7 +56,7 @@ public class MechForArchSy2FlRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 

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

@@ -56,7 +56,7 @@ public class MechForArchSy2ShRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 

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

@@ -58,7 +58,7 @@ public class MechForArchSy2SpRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -56,7 +56,7 @@ public class MechInArchEq2BdRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -56,7 +56,7 @@ public class MechInArchEq2FlRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 

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

@@ -56,7 +56,7 @@ public class MechInArchEq2SpRelationObject extends AbstractReportRelationObject
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 

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

@@ -55,7 +55,7 @@ public class RadiationNetworkConnectRelationObject extends AbstractReportRelatio
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -55,7 +55,7 @@ public class RadiationNetworkTransparentRelationObject extends AbstractReportRel
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -71,9 +71,8 @@ public interface RelationObjectStrategy {
 	 * @param requestData 请求参数
 	 * @param groupCode 集团编码
 	 * @param projectId 项目ID
-	 * @param page 分页起始位置
 	 */
-	void queryPageRelations(List<ObjectDigital> masterObjs, RequestData requestData, String groupCode, String projectId, Long page);
+	void queryPageRelations(List<ObjectDigital> masterObjs, RequestData requestData, String groupCode, String projectId);
 	
 	/**
 	 * 保存之前校验数据的合法性

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

@@ -55,7 +55,7 @@ public class SensorRelationshipSs2EqRelationObject extends AbstractReportRelatio
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 

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

@@ -56,7 +56,7 @@ public class SensorRelationshipSs2SpRelationObject extends AbstractReportRelatio
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 

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

@@ -55,7 +55,7 @@ public class SensorRelationshipSs2SyRelationObject extends AbstractReportRelatio
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 

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

@@ -55,7 +55,7 @@ public class TrafficNetworkFFCloseRelationObject extends AbstractReportRelationO
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);	
 		return allDigitals;
 	}
 	

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

@@ -55,7 +55,7 @@ public class TrafficNetworkFFOpenRelationObject extends AbstractReportRelationOb
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}
 	

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

@@ -55,7 +55,7 @@ public class TrafficNetworkNormalRelationObject extends AbstractReportRelationOb
 		requestData.setSize(500L);
 		
 		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
-		this.queryPageRelations(allDigitals, requestData, groupCode, projectId, requestData.getPage());
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
 		return allDigitals;
 	}