Przeglądaj źródła

feature(消息监听修改): 消息监听修改

消息监听修改
mazq 3 lat temu
rodzic
commit
3c9f42ed98

+ 19 - 1
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/msg/WorkFlowResultListener.java

@@ -6,9 +6,12 @@ import com.dragoninfo.dcuc.auth.auth.business.IAuthAprResultBusiness;
 import com.dragoninfo.dcuc.auth.auth.business.IServiceAuthBusiness;
 import com.dragoninfo.dcuc.auth.auth.dto.ApprovalWorkFlowDTO;
 import com.dragoninfo.dcuc.auth.auth.dto.WorkFlowResutlAcceptDTO;
+import com.dragoninfo.dcuc.auth.auth.entity.AppFunApplyContent;
 import com.dragoninfo.dcuc.auth.auth.enumresources.WorkFlowStatusEnum;
 import com.dragoninfo.dcuc.auth.config.DcucAuthConfig;
+import com.dragoninfo.dcuc.duceap.enums.AuthApplyTypeEnum;
 import com.dragonsoft.duceap.commons.util.collections.CollectionUtils;
+import com.dragonsoft.duceap.commons.util.string.StringUtils;
 import com.dragonsoft.mq.client.model.entity.MessageInfoDTO;
 import org.apache.kafka.clients.consumer.ConsumerRecord;
 import org.slf4j.Logger;
@@ -76,7 +79,7 @@ public class WorkFlowResultListener {
             logger.info("WorkFlowResultListener------ work flow dto:{}", JSON.toJSONString(dto));
 
             //兼容历史未处理过的messageId
-            if(config.getAppCode().equals(appCode)) {
+            if(StringUtils.isBlank(appCode) || config.getAppCode().equals(appCode)) {
                 dealAuthCenterAuthFlow(messageId, dto);
             } else {
                 String approveInfo = map.get("approveInfo");
@@ -103,10 +106,25 @@ public class WorkFlowResultListener {
      * @param dto
      */
     private void dealAuthCenterAuthFlow(String messageId, WorkFlowResutlAcceptDTO dto) {
+        //历史服务授权消息处理
         if(!messageId.contains(StrUtil.COLON)) {
             serviceAuthBusiness.dealAuthFlowResult(dto);
         } else {
             aprResultBusiness.dealAuthFlowResult(dto);
+            String[] arr = messageId.split(StrUtil.COLON);
+            String workFlowType = arr[1];
+            logger.info("workFlowType:{}", workFlowType);
+            //处理服务授权结果
+            if(AuthApplyTypeEnum.APP_FUN_AUTH.getValue().equals(workFlowType)) {
+                aprResultBusiness.dealAuthFlowResult(dto);
+            } else if(AuthApplyTypeEnum.SERVICE_AUTH.getValue().equals(workFlowType) ||
+                    AuthApplyTypeEnum.SERVICE_AUTH_CANCEL.getValue().equals(workFlowType)) {
+                //因服务授权后续需要改造
+                //TODO
+                // 改造后删除
+                serviceAuthBusiness.dealAuthFlowResult(dto);
+            }
+
         }
     }
 }