Explorar o código

调整关系计算逻辑

lijie %!s(int64=3) %!d(string=hai) anos
pai
achega
e4976f11fe

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

@@ -53,7 +53,7 @@ public class AdmRelCalController {
                                               HttpServletRequest request) throws Exception {
         // 组装上下文条件
         InstanceUrlParam context = new InstanceUrlParam(groupCode, null, projectId, AdmCommonConstant.APP_ID);
-        admRelCalService.calcRelation(context,CollUtil.newArrayList(getAdmRelationTypeEnum(request)),objectTypeStr,relationTypeStr);
+        admRelCalService.calcRelation(context,CollUtil.newArrayList(getAdmRelationTypeEnum(request)),null);
         return AdmResponse.success(new ArrayList<>());
     }
 
@@ -82,7 +82,7 @@ public class AdmRelCalController {
                                               HttpServletRequest request) throws Exception {
         // 组装上下文条件
         InstanceUrlParam context = new InstanceUrlParam(groupCode, null, projectId, AdmCommonConstant.APP_ID);
-        admRelCalService.calcRelation(context, CollUtil.newArrayList(getAdmRelationTypeEnum(request)),objectTypeStr,relationTypeStr);
+        admRelCalService.calcRelation(context, CollUtil.newArrayList(getAdmRelationTypeEnum(request)),null);
         return AdmResponse.success(new ArrayList<>());
     }
 
@@ -184,7 +184,7 @@ public class AdmRelCalController {
         InstanceUrlParam context = new InstanceUrlParam(StrUtil.isNotBlank(groupCode)?groupCode:this.groupCode,
                 null, projectId, StrUtil.isNotBlank(appId)?appId:AdmCommonConstant.APP_ID,
                 StrUtil.isNotBlank(userId)?userId:AdmCommonConstant.USER_ID);
-        admRelCalService.calcRelation(context,CollUtil.newArrayList(AdmRelationTypeEnum.EQ2SP_SENSORRELATIONSHIP_SS2SP),null,null);
+        admRelCalService.calcRelation(context,CollUtil.newArrayList(AdmRelationTypeEnum.EQ2SP_SENSORRELATIONSHIP_SS2SP),"AirConditioningZone");
         return AdmResponse.success(new ArrayList<>());
     }
     /***
@@ -282,7 +282,7 @@ public class AdmRelCalController {
         }
         ArrayList<AdmRelationTypeEnum> admRelationTypeEnums =
                 CollUtil.newArrayList(relationTypeMap.get("eq2bd"), relationTypeMap.get("sy2bd"));
-        admRelCalService.calcRelation(context,admRelationTypeEnums,objectTypeStr,relationTypeStr);
+        admRelCalService.calcRelation(context,admRelationTypeEnums,null);
         return AdmResponse.success(new ArrayList<>());
     }
     /***

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

@@ -18,14 +18,14 @@ public interface AdmRelCalService {
      * Description: 计算关系
      * @param context : 请求参数
      * @param admRelationTypeEnums : 关系类型集合
-     * @param objectTypeStr : 参与计算的业务空间(为空表示所有业务空间类型)
-     * @param relationTypeStr : 关系类型
+     //* @param objectTypeStr : 参与计算的业务空间(为空表示所有业务空间类型)
+     //* @param relationTypeStr : 关系类型
      * @return : void
      * @author : lijie
      * @date :2021/9/11 20:35
      * Update By lijie 2021/9/11 20:35
      */
-    void calcRelation(InstanceUrlParam context, List<AdmRelationTypeEnum> admRelationTypeEnums, String objectTypeStr, String relationTypeStr);
+    void calcRelation(InstanceUrlParam context, List<AdmRelationTypeEnum> admRelationTypeEnums, String relValue);
     /***
      * Description: 计算空间服务于空间的关系
      * @param context : 通用参数

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

@@ -43,24 +43,27 @@ public class AdmRelCalServiceImpl implements AdmRelCalService {
      * Description: 计算关系
      * @param context : 请求参数
      * @param admRelationTypeEnums : 关系类型集合
-     * @param objectTypeStr : 参与计算的业务空间(为空表示所有业务空间类型)
-     * @param relationTypeStr : 关系类型
+     //* @param objectTypeStr : 参与计算的业务空间(为空表示所有业务空间类型)
+     //* @param relationTypeStr : 关系类型
      * return : void
      * @author : lijie
      * date :2021/9/11 20:35
      * Update By lijie 2021/9/11 20:35
      */
     @Override
-    public void calcRelation(InstanceUrlParam context, List<AdmRelationTypeEnum> admRelationTypeEnums, String objectTypeStr,
-                             String relationTypeStr) {
+    public void calcRelation(InstanceUrlParam context, List<AdmRelationTypeEnum> admRelationTypeEnums,String relValue) {
         for (AdmRelationTypeEnum admRelationTypeEnum : admRelationTypeEnums) {
+            RequestData requestData = RequestData.builder()
+                    .graphCode(admRelationTypeEnum.getGraphCode())
+                    .relCode(admRelationTypeEnum.getRelCode())
+                    .calBeforeRelFlag(true)
+                    .build();
+            if (StrUtil.isNotBlank(relValue)){
+                requestData.setRelValue(relValue);
+            }
             // 调用中台的计算逻辑
             DigitalRelationCaclFacade.calculatingObjRelationPrototype(context.getGroupCode(),context.getProjectId(),
-                    context.getAppId(), CommonConstant.DEFAULT_ID, RequestData.builder()
-                            .graphCode(admRelationTypeEnum.getGraphCode())
-                            .relCode(admRelationTypeEnum.getRelCode())
-                            .calBeforeRelFlag(true)
-                            .build());
+                    context.getAppId(), CommonConstant.DEFAULT_ID, requestData);
         }
     }
     /***