Ver código fonte

fix bug:关系无法下载

lijie 3 anos atrás
pai
commit
27d22a8367

+ 5 - 0
src/main/java/com/persagy/proxy/adm/constant/AdmRelationType.java

@@ -75,6 +75,11 @@ public interface AdmRelationType {
 	/** ARCHFORARCH_SP2SP  空间服务于空间*/
 	String ARCHFORARCH_SP2SP = "ArchForArch_Sp2Sp";
 
+	/** ACAirNetwork_Discharge  空调排风*/
+	String ACAIRNETWORK_DISCHARGE = "ACAirNetwork_Discharge";
+	/** ACAirNetwork_Return  空调回风*/
+	String ACAIRNETWORK_RETURN = "ACAirNetwork_Return";
+
 	
 	
 	/** EQUIPPOWER_EQBACKUP  设备备用电源-低/高压开关柜→用电设备*/

+ 81 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/AcAirNetworkDischargeRelationObject.java

@@ -0,0 +1,81 @@
+package com.persagy.proxy.adm.strategy.relationdata;
+
+import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.util.StrUtil;
+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.helper.SpringHelper;
+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;
+import com.persagy.proxy.adm.constant.AdmRelationTypeEnum;
+import com.persagy.proxy.report.model.AdmRelationObject;
+import com.persagy.proxy.report.service.IRelationReportService;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+/**
+ * 
+ * @version 1.0.0
+ * @company persagy
+ * @author zhangqiankun
+ * @date 2021年9月3日 上午9:42:46
+ */
+@Component(value = AdmRelationType.ACAIRNETWORK_DISCHARGE)
+public class AcAirNetworkDischargeRelationObject extends AbstractReportRelationObject {
+
+	public AcAirNetworkDischargeRelationObject(IRelationReportService relationReportService) {
+		super(relationReportService);
+	}
+
+	@Override
+	public long countRelationObjects(String groupCode, String projectId) {
+		QueryCriteria queryCriteria = new QueryCriteria();
+		ObjectNode objectNode = OBJECT_MAPPER.createObjectNode();
+		objectNode.put("graphCode", AdmRelationTypeEnum.EQ2EQ_ACAIRNETWORK_3.getGraphCode());
+		objectNode.put("relCode", AdmRelationTypeEnum.EQ2EQ_ACAIRNETWORK_3.getRelCode());
+		objectNode.put("valid", 1);
+		queryCriteria.setCriteria(objectNode);
+		queryCriteria.setOnlyCount(true);
+		
+		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, String mainContent, Set<String> slaveContent) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.EQ2EQ_ACAIRNETWORK_3.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.EQ2EQ_ACAIRNETWORK_3.getRelCode());
+		if (StrUtil.isNotBlank(mainContent)) {
+			requestData.setMainContent(mainContent);
+		}
+		if (CollectionUtil.isNotEmpty(slaveContent)) {
+			requestData.setSlaveContent(slaveContent);
+		}
+		requestData.setPage(1L);
+		requestData.setSize(SpringHelper.getLong("persagy.common.sql.limit",500L));
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
+		return allDigitals;
+	}
+	
+	@Override
+	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
+		return this.convertObject(master, "设备", slave, "设备");
+	}
+
+	@Override
+	public Object beforeSaveRelationObject(AdmRelationObject relationObject, String groupCode, String projectId, String code) {
+		return this.beforeSaveRelationObject(relationObject, AdmRelationTypeEnum.EQ2EQ_ACAIRNETWORK_3, groupCode, projectId, code);
+	}
+	
+}

+ 81 - 0
src/main/java/com/persagy/proxy/adm/strategy/relationdata/AcAirNetworkReturnRelationObject.java

@@ -0,0 +1,81 @@
+package com.persagy.proxy.adm.strategy.relationdata;
+
+import cn.hutool.core.collection.CollectionUtil;
+import cn.hutool.core.util.StrUtil;
+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.helper.SpringHelper;
+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;
+import com.persagy.proxy.adm.constant.AdmRelationTypeEnum;
+import com.persagy.proxy.report.model.AdmRelationObject;
+import com.persagy.proxy.report.service.IRelationReportService;
+import org.springframework.stereotype.Component;
+
+import java.util.ArrayList;
+import java.util.List;
+import java.util.Set;
+
+/**
+ * 
+ * @version 1.0.0
+ * @company persagy
+ * @author zhangqiankun
+ * @date 2021年9月3日 上午9:42:46
+ */
+@Component(value = AdmRelationType.ACAIRNETWORK_RETURN)
+public class AcAirNetworkReturnRelationObject extends AbstractReportRelationObject {
+
+	public AcAirNetworkReturnRelationObject(IRelationReportService relationReportService) {
+		super(relationReportService);
+	}
+
+	@Override
+	public long countRelationObjects(String groupCode, String projectId) {
+		QueryCriteria queryCriteria = new QueryCriteria();
+		ObjectNode objectNode = OBJECT_MAPPER.createObjectNode();
+		objectNode.put("graphCode", AdmRelationTypeEnum.EQ2EQ_ACAIRNETWORK_2.getGraphCode());
+		objectNode.put("relCode", AdmRelationTypeEnum.EQ2EQ_ACAIRNETWORK_2.getRelCode());
+		objectNode.put("valid", 1);
+		queryCriteria.setCriteria(objectNode);
+		queryCriteria.setOnlyCount(true);
+		
+		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, String mainContent, Set<String> slaveContent) {
+		RequestData requestData = new RequestData();
+		requestData.setGraphCode(AdmRelationTypeEnum.EQ2EQ_ACAIRNETWORK_2.getGraphCode());
+		requestData.setRelCode(AdmRelationTypeEnum.EQ2EQ_ACAIRNETWORK_2.getRelCode());
+		if (StrUtil.isNotBlank(mainContent)) {
+			requestData.setMainContent(mainContent);
+		}
+		if (CollectionUtil.isNotEmpty(slaveContent)) {
+			requestData.setSlaveContent(slaveContent);
+		}
+		requestData.setPage(1L);
+		requestData.setSize(SpringHelper.getLong("persagy.common.sql.limit",500L));
+		
+		List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
+		this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
+		return allDigitals;
+	}
+	
+	@Override
+	protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
+		return this.convertObject(master, "设备", slave, "设备");
+	}
+
+	@Override
+	public Object beforeSaveRelationObject(AdmRelationObject relationObject, String groupCode, String projectId, String code) {
+		return this.beforeSaveRelationObject(relationObject, AdmRelationTypeEnum.EQ2EQ_ACAIRNETWORK_2, groupCode, projectId, code);
+	}
+	
+}

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

@@ -454,10 +454,10 @@ public class RelationReportController {
 			}
 			
 			File templateFile = AdmExcelUtil.getTemplateFile("relation-template.xlsx");
-			if (CollUtil.isEmpty(relationObjects)){
-				EasyExcel.write(response.getOutputStream()).withTemplate(templateFile).sheet(EXPORT_SHEET_NAME).needHead(false);
-				return;
-			}
+//			if (CollUtil.isEmpty(relationObjects)){
+//				EasyExcel.write(response.getOutputStream()).withTemplate(templateFile).sheet(EXPORT_SHEET_NAME).needHead(false);
+//				return;
+//			}
 			EasyExcel.write(response.getOutputStream()).withTemplate(templateFile).sheet(EXPORT_SHEET_NAME).needHead(false).doWrite(relationObjects);
 		} catch (Exception e) {
 			log.error("深化点导入失败", e);