完善根据身份id和身份类型批量查询角色接口
This commit is contained in:
parent
812ff3fab4
commit
57d5ab56a4
@ -3,6 +3,7 @@ package cn.axzo.tyr.client.feign;
|
||||
import cn.axzo.framework.domain.web.result.ApiResult;
|
||||
import cn.axzo.tyr.client.model.req.QueryByIdentityIdTypeReq;
|
||||
import cn.axzo.tyr.client.model.req.QuerySaasRoleReq;
|
||||
import cn.axzo.tyr.client.model.res.QueryBatchByIdentityIdTypeRes;
|
||||
import cn.axzo.tyr.client.model.vo.SaasRoleVO;
|
||||
import org.springframework.cloud.openfeign.FeignClient;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
@ -12,7 +13,6 @@ import org.springframework.web.bind.annotation.RequestParam;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 角色
|
||||
@ -60,7 +60,7 @@ public interface SaasRoleApi {
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/api/saasRole/queryBatchByIdentityIdType")
|
||||
ApiResult<Map<QueryByIdentityIdTypeReq, List<SaasRoleVO>>> queryBatchByIdentityIdType(@RequestBody List<QueryByIdentityIdTypeReq> req);
|
||||
ApiResult<List<QueryBatchByIdentityIdTypeRes>> queryBatchByIdentityIdType(@RequestBody List<QueryByIdentityIdTypeReq> req);
|
||||
|
||||
|
||||
|
||||
|
||||
@ -0,0 +1,31 @@
|
||||
package cn.axzo.tyr.client.model.res;
|
||||
|
||||
import cn.axzo.tyr.client.model.vo.SaasRoleVO;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@NoArgsConstructor
|
||||
@Builder
|
||||
public class QueryBatchByIdentityIdTypeRes {
|
||||
|
||||
Long identityId;
|
||||
|
||||
/**
|
||||
* 身份类型 1:工人 2:班组长 3:从业人员 4:监管人员 5:运营人员
|
||||
*/
|
||||
Integer identityType;
|
||||
|
||||
Long workspaceId;
|
||||
|
||||
Long ouId;
|
||||
|
||||
List<SaasRoleVO> role;
|
||||
|
||||
|
||||
}
|
||||
@ -1,6 +1,5 @@
|
||||
package cn.axzo.tyr.client.model.vo;
|
||||
|
||||
import cn.axzo.tyr.client.model.permission.PermissionPointTreeNode;
|
||||
import lombok.AllArgsConstructor;
|
||||
import lombok.Builder;
|
||||
import lombok.Data;
|
||||
@ -8,7 +7,6 @@ import lombok.NoArgsConstructor;
|
||||
|
||||
import java.util.Date;
|
||||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
@Data
|
||||
@AllArgsConstructor
|
||||
@ -38,11 +36,6 @@ public class SaasRoleVO {
|
||||
*/
|
||||
private Long updateBy;
|
||||
|
||||
/**
|
||||
* 分组id(这个关联关系应该放在上一级,从结构上看,上下级是多对多的,如果放在下级返回上级的id不太合适)
|
||||
*/
|
||||
// private List<Long> roleGroupIds;
|
||||
|
||||
/**
|
||||
* 权限组
|
||||
*/
|
||||
@ -53,17 +46,8 @@ public class SaasRoleVO {
|
||||
*/
|
||||
private Long isDelete;
|
||||
|
||||
|
||||
private Date createAt;
|
||||
|
||||
private Date updateAt;
|
||||
|
||||
/**
|
||||
* 获取角色对应所用的权限
|
||||
* @return
|
||||
*/
|
||||
public List<PermissionPointTreeNode> getFeature(){
|
||||
return this.permissionGroup.stream().map(SaasPermissionGroupVO::getFeature).flatMap(List::stream).distinct().collect(Collectors.toList());
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@ -6,6 +6,7 @@ import cn.axzo.framework.domain.web.result.ApiResult;
|
||||
import cn.axzo.tyr.client.feign.SaasRoleApi;
|
||||
import cn.axzo.tyr.client.model.req.QueryByIdentityIdTypeReq;
|
||||
import cn.axzo.tyr.client.model.req.QuerySaasRoleReq;
|
||||
import cn.axzo.tyr.client.model.res.QueryBatchByIdentityIdTypeRes;
|
||||
import cn.axzo.tyr.client.model.vo.SaasRoleVO;
|
||||
import cn.axzo.tyr.server.service.RoleService;
|
||||
import com.google.common.collect.Lists;
|
||||
@ -16,7 +17,6 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* 权限
|
||||
@ -64,7 +64,7 @@ public class SaasRoleController implements SaasRoleApi {
|
||||
}
|
||||
|
||||
@Override
|
||||
public ApiResult<Map<QueryByIdentityIdTypeReq, List<SaasRoleVO>>> queryBatchByIdentityIdType(List<QueryByIdentityIdTypeReq> req) {
|
||||
public ApiResult<List<QueryBatchByIdentityIdTypeRes>> queryBatchByIdentityIdType(List<QueryByIdentityIdTypeReq> req) {
|
||||
return ApiResult.ok(roleService.queryBatchByIdentityIdType(req));
|
||||
}
|
||||
|
||||
|
||||
@ -2,6 +2,7 @@ package cn.axzo.tyr.server.service;
|
||||
|
||||
import cn.axzo.tyr.client.model.req.QueryByIdentityIdTypeReq;
|
||||
import cn.axzo.tyr.client.model.req.QuerySaasRoleReq;
|
||||
import cn.axzo.tyr.client.model.res.QueryBatchByIdentityIdTypeRes;
|
||||
import cn.axzo.tyr.client.model.vo.SaasRoleVO;
|
||||
|
||||
import java.util.List;
|
||||
@ -21,5 +22,5 @@ public interface RoleService {
|
||||
|
||||
List<SaasRoleVO> query(QuerySaasRoleReq req);
|
||||
|
||||
Map<QueryByIdentityIdTypeReq, List<SaasRoleVO>> queryBatchByIdentityIdType(List<QueryByIdentityIdTypeReq> req);
|
||||
List<QueryBatchByIdentityIdTypeRes> queryBatchByIdentityIdType(List<QueryByIdentityIdTypeReq> req);
|
||||
}
|
||||
|
||||
@ -6,6 +6,7 @@ import cn.axzo.tyr.client.model.req.QueryByIdentityIdTypeReq;
|
||||
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.QueryBatchByIdentityIdTypeRes;
|
||||
import cn.axzo.tyr.client.model.vo.SaasPermissionGroupVO;
|
||||
import cn.axzo.tyr.client.model.vo.SaasRoleVO;
|
||||
import cn.axzo.tyr.server.repository.entity.*;
|
||||
@ -145,10 +146,16 @@ public class RoleServiceImpl implements RoleService {
|
||||
}
|
||||
|
||||
@Override
|
||||
public Map<QueryByIdentityIdTypeReq, List<SaasRoleVO>> queryBatchByIdentityIdType(List<QueryByIdentityIdTypeReq> req) {
|
||||
HashMap<QueryByIdentityIdTypeReq, List<SaasRoleVO>> result = new HashMap<>();
|
||||
public List<QueryBatchByIdentityIdTypeRes> queryBatchByIdentityIdType(List<QueryByIdentityIdTypeReq> req) {
|
||||
List<QueryBatchByIdentityIdTypeRes> result = new ArrayList<>();
|
||||
req.forEach(e -> {
|
||||
result.put(e,queryByIdentityIdType(e.getIdentityId(),e.getIdentityType(),e.getWorkspaceId(),e.getOuId()));
|
||||
result.add(QueryBatchByIdentityIdTypeRes.builder()
|
||||
.identityId(e.getIdentityId())
|
||||
.identityType(e.getIdentityType())
|
||||
.workspaceId(e.getWorkspaceId())
|
||||
.ouId(e.getOuId())
|
||||
.role(queryByIdentityIdType(e.getIdentityId(),e.getIdentityType(),e.getWorkspaceId(),e.getOuId()))
|
||||
.build());
|
||||
});
|
||||
return result;
|
||||
}
|
||||
|
||||
Loading…
Reference in New Issue
Block a user