通过名字获取角色信息
This commit is contained in:
parent
10cdd20b93
commit
f757421375
@ -2,6 +2,7 @@ package cn.axzo.tyr.client.feign;
|
|||||||
|
|
||||||
import cn.axzo.framework.domain.web.result.ApiResult;
|
import cn.axzo.framework.domain.web.result.ApiResult;
|
||||||
import cn.axzo.tyr.client.model.req.QueryByIdentityIdTypeReq;
|
import cn.axzo.tyr.client.model.req.QueryByIdentityIdTypeReq;
|
||||||
|
import cn.axzo.tyr.client.model.req.QueryRoleByNameReq;
|
||||||
import cn.axzo.tyr.client.model.req.QuerySaasRoleReq;
|
import cn.axzo.tyr.client.model.req.QuerySaasRoleReq;
|
||||||
import cn.axzo.tyr.client.model.res.IsSuperAdminRes;
|
import cn.axzo.tyr.client.model.res.IsSuperAdminRes;
|
||||||
import cn.axzo.tyr.client.model.res.QueryBatchByIdentityIdTypeRes;
|
import cn.axzo.tyr.client.model.res.QueryBatchByIdentityIdTypeRes;
|
||||||
@ -14,6 +15,7 @@ import org.springframework.web.bind.annotation.PostMapping;
|
|||||||
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
|
||||||
|
import javax.validation.Valid;
|
||||||
import javax.validation.constraints.NotNull;
|
import javax.validation.constraints.NotNull;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@ -72,4 +74,11 @@ public interface TyrSaasRoleApi {
|
|||||||
@PostMapping("/api/saasRole/isSuperAdmin")
|
@PostMapping("/api/saasRole/isSuperAdmin")
|
||||||
ApiResult<List<IsSuperAdminRes>> isSuperAdmin(@RequestBody List<QueryByIdentityIdTypeReq> req);
|
ApiResult<List<IsSuperAdminRes>> isSuperAdmin(@RequestBody List<QueryByIdentityIdTypeReq> req);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过角色名字获取角色信息
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@PostMapping("/api/saasRole/findRoleByName")
|
||||||
|
ApiResult<List<SaasRoleVO>> findRoleByName(@RequestBody @Valid QueryRoleByNameReq req);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -0,0 +1,21 @@
|
|||||||
|
package cn.axzo.tyr.client.model.req;
|
||||||
|
|
||||||
|
import cn.axzo.tyr.client.model.base.BaseWorkspaceAndOuModel;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
|
import javax.validation.constraints.NotEmpty;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author honghao.zhang
|
||||||
|
* @since 2023/10/18 16:08
|
||||||
|
*/
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@Data
|
||||||
|
public class QueryRoleByNameReq extends BaseWorkspaceAndOuModel {
|
||||||
|
|
||||||
|
@NotEmpty(message = "角色名字不能为空")
|
||||||
|
private List<String> roleNames;
|
||||||
|
|
||||||
|
}
|
||||||
@ -1,6 +1,5 @@
|
|||||||
package cn.axzo.tyr.client.model.roleuser.req;
|
package cn.axzo.tyr.client.model.roleuser.req;
|
||||||
|
|
||||||
import cn.axzo.tyr.client.common.enums.RoleTypeEnum;
|
|
||||||
import cn.axzo.tyr.client.model.enums.IdentityType;
|
import cn.axzo.tyr.client.model.enums.IdentityType;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@ -21,27 +20,6 @@ public class CreateSuperAdminRoleParam {
|
|||||||
@NotNull(message = "ouId不能为空")
|
@NotNull(message = "ouId不能为空")
|
||||||
private Long ouId;
|
private Long ouId;
|
||||||
|
|
||||||
/**
|
|
||||||
* 适用单位类型 1:总包 2:建设单位 4:监理单位 8:劳务分包 16:专业分包 0都可以用 只会挂在最末级
|
|
||||||
* <p>
|
|
||||||
* 业务层,这个字段不要直接用。有变种的getter、setter,或者直接用解释工具。
|
|
||||||
*/
|
|
||||||
private Long fitOuTypeBit;
|
|
||||||
|
|
||||||
/**
|
|
||||||
*
|
|
||||||
* 适用节点类型 1:部门 2:班组 4:小组 只会挂在最末级
|
|
||||||
*
|
|
||||||
* 业务层,这个字段不要直接用
|
|
||||||
*/
|
|
||||||
private Long fitOuNodeTypeBit;
|
|
||||||
|
|
||||||
/**
|
|
||||||
* 角色Id,必填
|
|
||||||
* 只能传SUPER_ADMIN,ADMIN
|
|
||||||
*/
|
|
||||||
private RoleTypeEnum roleType;
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 身份id
|
* 身份id
|
||||||
*/
|
*/
|
||||||
|
|||||||
@ -4,6 +4,7 @@ import cn.axzo.basics.common.exception.ServiceException;
|
|||||||
import cn.axzo.framework.domain.web.result.ApiResult;
|
import cn.axzo.framework.domain.web.result.ApiResult;
|
||||||
import cn.axzo.tyr.client.feign.TyrSaasRoleApi;
|
import cn.axzo.tyr.client.feign.TyrSaasRoleApi;
|
||||||
import cn.axzo.tyr.client.model.req.QueryByIdentityIdTypeReq;
|
import cn.axzo.tyr.client.model.req.QueryByIdentityIdTypeReq;
|
||||||
|
import cn.axzo.tyr.client.model.req.QueryRoleByNameReq;
|
||||||
import cn.axzo.tyr.client.model.req.QuerySaasRoleReq;
|
import cn.axzo.tyr.client.model.req.QuerySaasRoleReq;
|
||||||
import cn.axzo.tyr.client.model.res.IsSuperAdminRes;
|
import cn.axzo.tyr.client.model.res.IsSuperAdminRes;
|
||||||
import cn.axzo.tyr.client.model.res.QueryBatchByIdentityIdTypeRes;
|
import cn.axzo.tyr.client.model.res.QueryBatchByIdentityIdTypeRes;
|
||||||
@ -74,4 +75,9 @@ public class SaasRoleController implements TyrSaasRoleApi {
|
|||||||
return ApiResult.ok(roleService.isSuperAdmin(req));
|
return ApiResult.ok(roleService.isSuperAdmin(req));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ApiResult<List<SaasRoleVO>> findRoleByName(QueryRoleByNameReq req) {
|
||||||
|
return ApiResult.ok(roleService.findRoleByName(req));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@ -8,7 +8,6 @@ import cn.axzo.tyr.server.repository.entity.SaasRole;
|
|||||||
import cn.axzo.tyr.server.repository.entity.SaasRoleWithUser;
|
import cn.axzo.tyr.server.repository.entity.SaasRoleWithUser;
|
||||||
import cn.axzo.tyr.server.repository.mapper.SaasRoleMapper;
|
import cn.axzo.tyr.server.repository.mapper.SaasRoleMapper;
|
||||||
import cn.hutool.core.collection.CollUtil;
|
import cn.hutool.core.collection.CollUtil;
|
||||||
import cn.hutool.core.collection.CollectionUtil;
|
|
||||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||||
import org.apache.commons.collections.CollectionUtils;
|
import org.apache.commons.collections.CollectionUtils;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
@ -81,5 +80,15 @@ public class SaasRoleDao extends ServiceImpl<SaasRoleMapper, SaasRole> {
|
|||||||
.select(SaasRole::getId)
|
.select(SaasRole::getId)
|
||||||
.list();
|
.list();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<SaasRole> findRoleByName(Long ouId, Long workspaceId,
|
||||||
|
List<String> roleNames) {
|
||||||
|
return this.lambdaQuery()
|
||||||
|
.eq(workspaceId != null && workspaceId != 0, SaasRole::getWorkspaceId, workspaceId)
|
||||||
|
.eq(ouId != null && ouId != 0, SaasRole::getOwnerOuId, ouId)
|
||||||
|
.in(CollectionUtils.isNotEmpty(roleNames), SaasRole::getName, roleNames)
|
||||||
|
.eq(SaasRole::getIsDelete, TableIsDeleteEnum.NORMAL.value).list();
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@ -1,8 +1,8 @@
|
|||||||
package cn.axzo.tyr.server.service;
|
package cn.axzo.tyr.server.service;
|
||||||
|
|
||||||
import cn.axzo.tyr.client.common.enums.WorkspaceJoinType;
|
|
||||||
import cn.axzo.tyr.client.model.enums.IdentityType;
|
import cn.axzo.tyr.client.model.enums.IdentityType;
|
||||||
import cn.axzo.tyr.client.model.req.QueryByIdentityIdTypeReq;
|
import cn.axzo.tyr.client.model.req.QueryByIdentityIdTypeReq;
|
||||||
|
import cn.axzo.tyr.client.model.req.QueryRoleByNameReq;
|
||||||
import cn.axzo.tyr.client.model.req.QuerySaasRoleReq;
|
import cn.axzo.tyr.client.model.req.QuerySaasRoleReq;
|
||||||
import cn.axzo.tyr.client.model.res.IsSuperAdminRes;
|
import cn.axzo.tyr.client.model.res.IsSuperAdminRes;
|
||||||
import cn.axzo.tyr.client.model.res.QueryBatchByIdentityIdTypeRes;
|
import cn.axzo.tyr.client.model.res.QueryBatchByIdentityIdTypeRes;
|
||||||
@ -51,4 +51,10 @@ public interface RoleService {
|
|||||||
*/
|
*/
|
||||||
Set<Long> filterPermissionPoint(Set<SaasRoleVO> role, TyrSaasAuthServiceImpl.UserRoleInfoMap userRoleInfoMap);
|
Set<Long> filterPermissionPoint(Set<SaasRoleVO> role, TyrSaasAuthServiceImpl.UserRoleInfoMap userRoleInfoMap);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 通过角色名字获取角色信息
|
||||||
|
* @param req
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<SaasRoleVO> findRoleByName(QueryRoleByNameReq req);
|
||||||
}
|
}
|
||||||
|
|||||||
@ -4,15 +4,10 @@ import cn.axzo.basics.common.constant.enums.TableIsDeleteEnum;
|
|||||||
import cn.axzo.basics.common.exception.ServiceException;
|
import cn.axzo.basics.common.exception.ServiceException;
|
||||||
import cn.axzo.pokonyan.config.mybatisplus.BaseEntity;
|
import cn.axzo.pokonyan.config.mybatisplus.BaseEntity;
|
||||||
import cn.axzo.tyr.client.common.enums.RoleTypeEnum;
|
import cn.axzo.tyr.client.common.enums.RoleTypeEnum;
|
||||||
import cn.axzo.tyr.client.common.enums.WorkspaceJoinType;
|
|
||||||
import cn.axzo.tyr.client.feign.SaasRoleGroupApi;
|
|
||||||
import cn.axzo.tyr.client.model.enums.IdentityType;
|
import cn.axzo.tyr.client.model.enums.IdentityType;
|
||||||
import cn.axzo.tyr.client.model.enums.PermissionGroupType;
|
import cn.axzo.tyr.client.model.enums.PermissionGroupType;
|
||||||
import cn.axzo.tyr.client.model.permission.PermissionPointTreeNode;
|
import cn.axzo.tyr.client.model.permission.PermissionPointTreeNode;
|
||||||
import cn.axzo.tyr.client.model.req.QueryByIdentityIdTypeReq;
|
import cn.axzo.tyr.client.model.req.*;
|
||||||
import cn.axzo.tyr.client.model.req.QuerySaasPermissionGroupReq;
|
|
||||||
import cn.axzo.tyr.client.model.req.QuerySaasRoleGroupReq;
|
|
||||||
import cn.axzo.tyr.client.model.req.QuerySaasRoleReq;
|
|
||||||
import cn.axzo.tyr.client.model.res.IsSuperAdminRes;
|
import cn.axzo.tyr.client.model.res.IsSuperAdminRes;
|
||||||
import cn.axzo.tyr.client.model.res.QueryBatchByIdentityIdTypeRes;
|
import cn.axzo.tyr.client.model.res.QueryBatchByIdentityIdTypeRes;
|
||||||
import cn.axzo.tyr.client.model.vo.SaasPermissionGroupVO;
|
import cn.axzo.tyr.client.model.vo.SaasPermissionGroupVO;
|
||||||
@ -21,11 +16,7 @@ import cn.axzo.tyr.client.model.vo.SaasRoleVO;
|
|||||||
import cn.axzo.tyr.client.model.vo.SaveOrUpdateRoleVO;
|
import cn.axzo.tyr.client.model.vo.SaveOrUpdateRoleVO;
|
||||||
import cn.axzo.tyr.server.repository.dao.*;
|
import cn.axzo.tyr.server.repository.dao.*;
|
||||||
import cn.axzo.tyr.server.repository.entity.*;
|
import cn.axzo.tyr.server.repository.entity.*;
|
||||||
import cn.axzo.tyr.server.service.PermissionGroupService;
|
import cn.axzo.tyr.server.service.*;
|
||||||
import cn.axzo.tyr.server.service.RoleService;
|
|
||||||
import cn.axzo.tyr.server.service.SaasPgroupPermissionRelationService;
|
|
||||||
import cn.axzo.tyr.server.service.SaasRoleGroupRelationService;
|
|
||||||
import cn.axzo.tyr.server.service.SaasRoleGroupService;
|
|
||||||
import cn.hutool.core.bean.BeanUtil;
|
import cn.hutool.core.bean.BeanUtil;
|
||||||
import cn.hutool.core.collection.CollectionUtil;
|
import cn.hutool.core.collection.CollectionUtil;
|
||||||
import com.google.common.collect.Lists;
|
import com.google.common.collect.Lists;
|
||||||
@ -446,4 +437,10 @@ public class RoleServiceImpl implements RoleService {
|
|||||||
.map(PermissionPointTreeNode::getPermissionPointId)
|
.map(PermissionPointTreeNode::getPermissionPointId)
|
||||||
.collect(Collectors.toSet());
|
.collect(Collectors.toSet());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<SaasRoleVO> findRoleByName(QueryRoleByNameReq req) {
|
||||||
|
List<SaasRole> roleList = saasRoleDao.findRoleByName(req.getOuId(), req.getWorkspaceId(), req.getRoleNames());
|
||||||
|
return BeanUtil.copyToList(roleList, SaasRoleVO.class);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user