Prechádzať zdrojové kódy

服务授权申请修改

mazq 1 rok pred
rodič
commit
5ae3f4c1fe

+ 4 - 3
dcuc-auth-service/src/main/java/com/dragoninfo/dcuc/auth/business/impl/zerotrust/ZeroTrustAuthApplyBusinessImpl.java

@@ -233,7 +233,7 @@ public class ZeroTrustAuthApplyBusinessImpl implements IZeroTrustAuthApplyBusine
         setSecurityUser(appTokenDetail);
 
         // 组装批量申请dto
-        List<ServiceAuthApplyDto> applyDtos = getServiceAuthApplyDtos(reqVo, applyInfoVos, serviceInfos);
+        List<ServiceAuthApplyDto> applyDtos = getServiceAuthApplyDtos(reqVo, tokenAppInfo.getApplyCode(), applyInfoVos, serviceInfos);
 
         ResponseStatus status = serviceAuthApplyService.applyAndPushToApproval(applyDtos, null);
         if (ResponseUtil.isFail(status)) {
@@ -243,13 +243,14 @@ public class ZeroTrustAuthApplyBusinessImpl implements IZeroTrustAuthApplyBusine
         return ZeroTrustDataRespVO.success(null);
     }
 
-    private List<ServiceAuthApplyDto> getServiceAuthApplyDtos(ApiServiceAuthReqVo reqVo, List<ApplyInfoVo> applyInfoVos, List<ServiceResourceDTO> serviceInfos) {
+    private List<ServiceAuthApplyDto> getServiceAuthApplyDtos(ApiServiceAuthReqVo reqVo, String defaultAppCode, List<ApplyInfoVo> applyInfoVos, List<ServiceResourceDTO> serviceInfos) {
         Map<String, ApplyInfoVo> appMap = applyInfoVos.stream().collect(Collectors.toMap(ApplyInfoVo::getApplyCode, e -> e));
         List<ServiceResourceVo> serviceResourceVos = DcucBeanUtil.createCopyToObjectList(serviceInfos, ServiceResourceVo.class);
         Map<String, ServiceResourceVo> serviceMap = serviceResourceVos.stream().collect(Collectors.toMap(ServiceResourceVo::getServiceCode, e -> e));
 
         return reqVo.getContents().stream().map(e -> {
-            ApplyInfoVo applyInfoVo = appMap.get( e.getAppCode());
+            String appCode = Optional.ofNullable(e.getAppCode()).orElse(defaultAppCode);
+            ApplyInfoVo applyInfoVo = appMap.get(appCode);
             List<String> serviceCodes = e.getServiceCodes();
             ServiceAuthApplyDto dto = new ServiceAuthApplyDto();
             dto.setApplyInfoVo(applyInfoVo);