feat:(REQ-2720) 增加日志,增加查询产品权限、角色权限的私有接口

This commit is contained in:
lilong 2024-08-01 14:39:16 +08:00
parent c2ef333701
commit e06cb5d126
2 changed files with 25 additions and 0 deletions

View File

@ -44,6 +44,7 @@ import cn.axzo.tyr.server.repository.entity.SaasRoleGroup;
import cn.axzo.tyr.server.repository.entity.SaasRoleGroupRelation;
import cn.axzo.tyr.server.service.ProductFeatureRelationService;
import cn.axzo.tyr.server.service.ProductPermissionCacheService;
import cn.axzo.tyr.server.service.RolePermissionCacheService;
import cn.axzo.tyr.server.service.RoleService;
import cn.axzo.tyr.server.service.SaasCommonDictService;
import cn.axzo.tyr.server.service.SaasFeatureResourceService;
@ -142,6 +143,8 @@ public class PrivateController {
private CacheRoleFeatureResourceJob cacheRoleFeatureResourceJob;
@Autowired
private SaasFeatureResourceService saasFeatureResourceService;
@Autowired
private RolePermissionCacheService rolePermissionCacheService;
/**
* 统一层级的roleGroup按照id升序sort从1递增
@ -699,6 +702,16 @@ public class PrivateController {
return saasFeatureResourceService.listCache(request);
}
@PostMapping("/api/private/workspaceProductCached/list")
public Object workspaceProductCached(@RequestBody WorkspaceProductService.ListWorkspaceProductPermissionCacheParam request) {
return workspaceProductService.listWorkspaceProductPermissionCached(request);
}
@PostMapping("/api/private/rolePermissionCache/list")
public Object rolePermissionCache(@RequestBody RolePermissionCacheService.ListRolePermissionParam request) {
return rolePermissionCacheService.list(request);
}
@Data
@Builder
@NoArgsConstructor

View File

@ -2,6 +2,7 @@ package cn.axzo.tyr.server.service.impl;
import cn.axzo.apollo.workspace.common.enums.TableIsDeleteEnum;
import cn.axzo.basics.common.BeanMapper;
import cn.axzo.basics.common.util.StopWatchUtil;
import cn.axzo.framework.domain.ServiceException;
import cn.axzo.pokonyan.util.TraceSupplier;
import cn.axzo.thrones.client.saas.ServicePkgClient;
@ -1502,10 +1503,21 @@ public class TyrSaasAuthServiceImpl implements TyrSaasAuthService {
*/
private IdentityAuthRes findIdentityAuthV2(IdentityAuthReq identityAuthReq) {
StopWatchUtil watch = StopWatchUtil.createStarted("redis:");
watch.start("query workspaceProductPermission");
Map<Long, List<WorkspaceProductService.ProductPermission>> workspaceProductPermissions = listWorkspaceProductPermission(identityAuthReq);
watch.stop();
log.info("redis:workspaceProductPermission:", JSON.toJSONString(workspaceProductPermissions));
watch.start("query userRole");
List<SaasRoleUserV2DTO> saasRoleUsers = listRoleUserRelationsV2(identityAuthReq);
log.info("redis:saasRoleUsers:", JSON.toJSONString(saasRoleUsers));
watch.stop();
watch.start("query rolePermission");
Map<Long, List<RolePermissionCacheService.PermissionDTO>> rolePermissions = listRolePermission(identityAuthReq, saasRoleUsers);
log.info("redis:rolePermissions:", JSON.toJSONString(rolePermissions));
watch.stop();
Map<String, List<SaasRoleUserV2DTO.SaasRole>> workspaceRoles = saasRoleUsers.stream()
.collect(Collectors.groupingBy(e -> e.getSaasRoleUser().buildOuWorkspaceKey(),