feat(2227-permissionQuery): 代码合并
This commit is contained in:
parent
5d75d6abf0
commit
68b33b07dc
@ -9,10 +9,12 @@ import cn.axzo.maokai.common.enums.SaasCooperateShipCooperateTypeEnum;
|
||||
import cn.axzo.tyr.client.common.enums.RoleTypeEnum;
|
||||
import cn.axzo.tyr.client.model.base.WorkspaceOUPair;
|
||||
import cn.axzo.tyr.client.model.enums.IdentityType;
|
||||
import cn.axzo.tyr.client.model.req.IdentityAuthReq;
|
||||
import cn.axzo.tyr.client.model.req.NavTreeReq;
|
||||
import cn.axzo.tyr.client.model.req.PagePermissionReq;
|
||||
import cn.axzo.tyr.client.model.req.PagePermissionResp;
|
||||
import cn.axzo.tyr.client.model.req.PermissionCheckReq;
|
||||
import cn.axzo.tyr.client.model.res.IdentityAuthRes;
|
||||
import cn.axzo.tyr.client.model.res.NavTreeResp;
|
||||
import cn.axzo.tyr.server.model.PermissionDO;
|
||||
import cn.axzo.tyr.server.model.PermissionQueryContext;
|
||||
@ -26,8 +28,10 @@ import cn.axzo.tyr.server.repository.entity.SaasRoleUserRelation;
|
||||
import cn.axzo.tyr.server.service.PermissionQueryService;
|
||||
import cn.axzo.tyr.server.service.RoleService;
|
||||
import cn.axzo.tyr.server.service.SaasFeatureResourceService;
|
||||
import cn.axzo.tyr.server.service.TyrSaasAuthService;
|
||||
import cn.axzo.tyr.server.util.KeyUtil;
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import cn.hutool.core.util.StrUtil;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.stereotype.Service;
|
||||
@ -58,6 +62,7 @@ public class PermissionQueryServiceImpl implements PermissionQueryService {
|
||||
private final SaasFeatureResourceService featureResourceService;
|
||||
private final RoleUserService roleUserService;
|
||||
private final RoleService roleService;
|
||||
private final TyrSaasAuthService saasAuthService;
|
||||
|
||||
@Override
|
||||
public List<NavTreeResp> getNavTree(NavTreeReq req) {
|
||||
@ -87,6 +92,10 @@ public class PermissionQueryServiceImpl implements PermissionQueryService {
|
||||
|
||||
@Override
|
||||
public boolean hasPermission(PermissionCheckReq req) {
|
||||
//这里暂时硬编码-非OMS端鉴权请求 直接转老接口处理
|
||||
if (!StrUtil.equals("NT_OMS_WEB" ,req.getTerminal())) {
|
||||
return hasPermissionV2(req);
|
||||
}
|
||||
//权限编码转ID
|
||||
List<ResourcePermission> resourcePermissions = featureResourceService.permissionQuery(
|
||||
ResourcePermissionQueryDTO.builder().featureCodes(req.getFeatureCodes()).build());
|
||||
@ -106,6 +115,20 @@ public class PermissionQueryServiceImpl implements PermissionQueryService {
|
||||
return resourcePermissions.stream().anyMatch(r -> featureIds.contains(r.getId()));
|
||||
}
|
||||
|
||||
private boolean hasPermissionV2(PermissionCheckReq req) {
|
||||
//包装请求老鉴权接口
|
||||
IdentityAuthReq authReq = IdentityAuthReq.builder()
|
||||
.personId(req.getPersonId())
|
||||
.workspaceOusPairs(Collections.singletonList(IdentityAuthReq.WorkspaceOuPair.builder()
|
||||
.workspaceId(req.getWorkspaceId())
|
||||
.ouId(req.getOuId()).build()))
|
||||
.featureCode(new HashSet<>(req.getFeatureCodes()))
|
||||
.terminal(Collections.singletonList(req.getTerminal()))
|
||||
.build();
|
||||
IdentityAuthRes.WorkspacePermission permissions = saasAuthService.findIdentityAuthMix(authReq).getPermissions().get(0);
|
||||
return CollectionUtil.isNotEmpty(permissions.getPermissionPoint());
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<PagePermissionResp> getPagePermission(PagePermissionReq req) {
|
||||
//这里没有区分是否为页面的组件或菜单树下级 同时包含了页面自身
|
||||
|
||||
Loading…
Reference in New Issue
Block a user