diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/constant/ModuleConstant.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/constant/ModuleConstant.java index 746da4ba2d..5e72094a57 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/constant/ModuleConstant.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/constant/ModuleConstant.java @@ -41,6 +41,7 @@ public interface ModuleConstant { //使用授权码获取授权信息 如下 String AUTHORIZATION_CODE = "authorization_code"; String AUTHORIZATION_INFO = "authorization_info"; + String ID = "id"; //获取/刷新接口调用令牌 如下 String AUTHORIZER_APPID = "authorizer_appid"; diff --git a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ComponentVerifyTicketServiceImpl.java b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ComponentVerifyTicketServiceImpl.java index a5fc281cc2..d667724fe3 100644 --- a/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ComponentVerifyTicketServiceImpl.java +++ b/epmet-module/epmet-third/epmet-third-server/src/main/java/com/epmet/service/impl/ComponentVerifyTicketServiceImpl.java @@ -264,13 +264,14 @@ public class ComponentVerifyTicketServiceImpl implements ComponentVerifyTicketSe HashMap hashMap = JSON.parseObject(authInfo, HashMap.class); Map map = hashMap.get(ModuleConstant.AUTHORIZATION_INFO); authorizationInfoResultDTO = mapToEntity(map, AuthorizationInfoResultDTO.class); + String authAppId = authorizationInfoResultDTO.getAuthorizer_appid(); log.info("授权信息:"+map); String expiresIn = authorizationInfoResultDTO.getExpires_in(); Date expiresInTime = this.countExpirationTime(expiresIn); //授权信息分为两张表,基础信息authorization_info,授权列表func_info // 1. 基础信息 AuthorizationInfoFormDTO authInfoDTO = new AuthorizationInfoFormDTO(); - authInfoDTO.setAuthorizerAppid(authorizationInfoResultDTO.getAuthorizer_appid()); + authInfoDTO.setAuthorizerAppid(authAppId); authInfoDTO.setAuthorizerAccessToken(authorizationInfoResultDTO.getAuthorizer_access_token()); authInfoDTO.setAuthorizerRefreshToken(authorizationInfoResultDTO.getAuthorizer_refresh_token()); authInfoDTO.setExpiresInTime(expiresInTime); @@ -284,20 +285,19 @@ public class ComponentVerifyTicketServiceImpl implements ComponentVerifyTicketSe List funcInfos = new ArrayList<>(); List func_info = authorizationInfoResultDTO.getFunc_info(); log.info("权限列表信息:"+func_info); - for (Map map1 : func_info) { - List key = (List)map1.keySet(); - FuncInfoFormDTO fu = new FuncInfoFormDTO(); - String funcscopeCategory = key.get(NumConstant.ZERO).toString(); - fu.setFuncscopeCategory(funcscopeCategory); - Map funcscope = (Map) map1.get(funcscopeCategory); - String funcscopeId = funcscope.get("id").toString(); - fu.setFuncscopeId(funcscopeId); - fu.setAuthorizationInfoAppid(authorizationInfoResultDTO.getAuthorizer_appid()); - fu.setCustomerId(customerId); - funcInfos.add(fu); - } + func_info.forEach(func -> { + func.forEach((key,value) -> { + FuncInfoFormDTO fu = new FuncInfoFormDTO(); + fu.setFuncscopeCategory((String) key); + Map funcScope = (Map) value; + fu.setFuncscopeId(funcScope.get(ModuleConstant.ID).toString()); + fu.setAuthorizationInfoAppid(authAppId); + fu.setCustomerId(customerId); + funcInfos.add(fu); + }); + }); //先逻辑删除,在插入 - funcInfoDao.updateOldFuncInfo(customerId,authorizationInfoResultDTO.getAuthorizer_appid()); + funcInfoDao.updateOldFuncInfo(customerId,authAppId); funcInfoDao.insertFuncInfo(funcInfos); // 授权信息放入缓存 redisThird.setAuthInfo(authorizationInfoResultDTO,customerId,clientType);