MechInArchEq2FlRelationObject.java 3.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. package com.persagy.proxy.adm.strategy.relationdata;
  2. import java.util.ArrayList;
  3. import java.util.List;
  4. import org.springframework.stereotype.Component;
  5. import com.fasterxml.jackson.databind.node.ObjectNode;
  6. import com.persagy.dmp.basic.dto.RequestData;
  7. import com.persagy.dmp.basic.model.QueryCriteria;
  8. import com.persagy.dmp.common.model.response.CommonResult;
  9. import com.persagy.dmp.digital.client.DigitalRelationFacade;
  10. import com.persagy.dmp.digital.entity.ObjectDigital;
  11. import com.persagy.dmp.digital.entity.ObjectRelation;
  12. import com.persagy.proxy.adm.constant.AdmCommonConstant;
  13. import com.persagy.proxy.adm.constant.AdmRelationType;
  14. import com.persagy.proxy.adm.constant.AdmRelationTypeEnum;
  15. import com.persagy.proxy.adm.constant.GraphCodeEnum;
  16. import com.persagy.proxy.adm.constant.RelCodeEnum;
  17. import com.persagy.proxy.adm.model.AdmRelationObject;
  18. import com.persagy.proxy.adm.service.IRelationReportService;
  19. /**
  20. *
  21. * @version 1.0.0
  22. * @company persagy
  23. * @author zhangqiankun
  24. * @date 2021年9月3日 上午9:42:46
  25. */
  26. @Component(value = AdmRelationType.MECHINARCH_EQ2FL)
  27. public class MechInArchEq2FlRelationObject extends AbstractReportRelationObject {
  28. public MechInArchEq2FlRelationObject(IRelationReportService relationReportService) {
  29. super(relationReportService);
  30. }
  31. @Override
  32. public long countRelationObjects(String groupCode, String projectId) {
  33. QueryCriteria queryCriteria = new QueryCriteria();
  34. ObjectNode objectNode = OBJECT_MAPPER.createObjectNode();
  35. objectNode.put("graphCode", GraphCodeEnum.MechInArch.name());
  36. objectNode.put("relCode", RelCodeEnum.Eq2Fl.name());
  37. queryCriteria.setCriteria(objectNode);
  38. queryCriteria.setOnlyCount(true);
  39. CommonResult<List<ObjectRelation>> result = DigitalRelationFacade.queryPrototype(groupCode, projectId, AdmCommonConstant.APP_ID, AdmCommonConstant.USER_ID, queryCriteria);
  40. return result == null ? 0 : (result.getCount() == null ? 0 : result.getCount());
  41. }
  42. @Override
  43. public List<ObjectDigital> queryAllRelations(String groupCode, String projectId) {
  44. RequestData requestData = new RequestData();
  45. requestData.setGraphCode(GraphCodeEnum.MechInArch.name());
  46. requestData.setRelCode(RelCodeEnum.Eq2Fl.name());
  47. requestData.setPage(1L);
  48. requestData.setSize(500L);
  49. List<ObjectDigital> allDigitals = new ArrayList<ObjectDigital>();
  50. this.queryPageRelations(allDigitals, requestData, groupCode, projectId);
  51. return allDigitals;
  52. }
  53. @Override
  54. protected AdmRelationObject handleObjectDigital(ObjectDigital master, ObjectDigital slave, String groupCode, String projectId) {
  55. AdmRelationObject convertObject = this.convertObject(master, "设备", slave, "楼层");
  56. String floorName = master.getLocalName();
  57. convertObject.setMasterFloorName(floorName);
  58. convertObject.setSlaveFloorName(floorName);
  59. return convertObject;
  60. }
  61. @Override
  62. public Object beforeSaveRelationObject(AdmRelationObject relationObject, String groupCode, String projectId, String code) {
  63. return this.beforeSaveRelationObject(relationObject, AdmRelationTypeEnum.EQ2FL, groupCode, projectId, code);
  64. }
  65. }