Bläddra i källkod

Merge branch 'release/v2.1.0-beta' into 'release/v2.2.1'

Release/v2.1.0 beta

See merge request dcuc-tjdsj/auth-back!45
黄资权 4 år sedan
förälder
incheckning
0d113379ef

+ 15 - 0
src/main/java/com/dragoninfo/dcuc/authweb/exception/RespExceptionHandler.java

@@ -2,8 +2,12 @@ package com.dragoninfo.dcuc.authweb.exception;
 
 
 import com.dragoninfo.dcuc.common.enums.ErrorCodeEnum;
+import com.dragoninfo.dcuc.common.exception.GmConfidentialityException;
+import com.dragoninfo.dcuc.common.exception.GmIntegrityException;
+import com.dragoninfo.dcuc.common.exception.GmNonRepudiationException;
 import com.dragonsoft.duceap.base.entity.http.ResponseStatus;
 import com.dragonsoft.duceap.commons.util.json.JsonUtils;
+import feign.FeignException;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 import org.springframework.core.annotation.Order;
@@ -55,6 +59,17 @@ public class RespExceptionHandler implements HandlerExceptionResolver {
                 response.setStatus(HttpStatus.INTERNAL_SERVER_ERROR.value());
                 String message = Objects.requireNonNull(((BindException) ex).getFieldError()).getDefaultMessage();
                 fail = new ResponseStatus(String.valueOf(ErrorCodeEnum.REQUEST_PARAM.getValue()), String.format(ErrorCodeEnum.REQUEST_PARAM.getLabel(), message));
+            } else if (ex instanceof FeignException) {
+                String message = ex.getMessage();
+                if (message.contains(GmConfidentialityException.ERROR_MESSAGE)) {
+                    fail = ResponseStatus.fail(String.valueOf(HttpStatus.NOT_ACCEPTABLE.value()), GmConfidentialityException.ERROR_MESSAGE);
+                } else if (message.contains(GmIntegrityException.ERROR_MESSAGE)) {
+                    fail = ResponseStatus.fail(String.valueOf(HttpStatus.NOT_ACCEPTABLE.value()), GmIntegrityException.ERROR_MESSAGE);
+                } else if (message.contains(GmNonRepudiationException.ERROR_MESSAGE)) {
+                    fail = ResponseStatus.fail(String.valueOf(HttpStatus.NOT_ACCEPTABLE.value()), GmNonRepudiationException.ERROR_MESSAGE);
+                } else {
+                    fail = ResponseStatus.fail("500", "未知异常[" + ex.getMessage() + "]");
+                }
             } else {
                 fail = ResponseStatus.fail("500", "未知异常[" + ex.getMessage() + "]");
             }

+ 24 - 1
src/main/java/com/dragoninfo/dcuc/authweb/restcontroller/api/authservice/v1/controller/WorkFlowApiController.java

@@ -78,7 +78,29 @@ public class WorkFlowApiController {
     public ApiResult authFlowRepeatCheck(@RequestBody AuthFlowRepeatCheckVo authFlowRepeatCheckVo){
         String appCode = authFlowRepeatCheckVo.getAppCode();
         List<String> serviceCodes = authFlowRepeatCheckVo.getServiceCodes();
-        ResponseDTO responseDTO = serviceAuthFlowFacade.authFlowRepeatCheck(appCode,serviceCodes);
+        ResponseDTO responseDTO = serviceAuthFlowFacade.authApplyCheck(appCode,serviceCodes);
+        String statusCode = responseDTO.getStatusCode();
+        if (ResponseStatus.SUCCESS_CODE.equals(statusCode)) {
+            return ApiResult.setSuccess();
+        } else {
+            ApiResult apiResult = ApiResult.setFailMessage(responseDTO.getMessage());
+            apiResult.setResult(responseDTO.getResult());
+            return apiResult;
+        }
+    }
+
+
+    /**
+     * 服务授权撤销是否存在授权结果
+     */
+    @ApiOperation(value = "服务授权撤销是否存在授权结果")
+    @ApiImplicitParams({@ApiImplicitParam(name = "authFlowRepeatCheckVo", value = "服务授权重复校验Vo")})
+    @PostMapping("auth-cancel-check")
+    @ResponseBody
+    public ApiResult authCancelCheck(@RequestBody AuthFlowRepeatCheckVo authFlowRepeatCheckVo){
+        String appCode = authFlowRepeatCheckVo.getAppCode();
+        List<String> serviceCodes = authFlowRepeatCheckVo.getServiceCodes();
+        ResponseDTO responseDTO = serviceAuthFlowFacade.authCancelCheck(appCode,serviceCodes);
         String statusCode = responseDTO.getStatusCode();
         if (ResponseStatus.SUCCESS_CODE.equals(statusCode)) {
             return ApiResult.setSuccess();
@@ -122,4 +144,5 @@ public class WorkFlowApiController {
         dto.setServiceCodes(resourceInfo.getVisitResourceCode());
         dto.setServiceNames(resourceInfo.getVisitResourceName());
     }
+    
 }