feat: (feature/REQ-3034) 修改临时接口支持一直要查询未删除用户

This commit is contained in:
lilong 2024-10-12 18:12:03 +08:00
parent ea90dc0f86
commit bed47b058b

View File

@ -1,7 +1,6 @@
package cn.axzo.tyr.server.controller.roleuser;
import cn.axzo.basics.common.util.AssertUtil;
import cn.axzo.foundation.dao.support.converter.PageConverter;
import cn.axzo.foundation.page.PageResp;
import cn.axzo.framework.domain.web.result.ApiPageResult;
import cn.axzo.framework.domain.web.result.ApiResult;
@ -35,8 +34,11 @@ import cn.axzo.tyr.server.service.SaasRoleUserRelationService;
import cn.axzo.tyr.server.service.SaasRoleUserService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.google.common.collect.Lists;
import lombok.RequiredArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.BooleanUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RestController;
@ -44,6 +46,8 @@ import org.springframework.web.bind.annotation.RestController;
import javax.validation.Valid;
import java.util.Collections;
import java.util.List;
import java.util.Optional;
import java.util.stream.Collectors;
/**
* @author tanjie@axzo.cn
@ -201,6 +205,42 @@ public class RoleUserController implements TyrSaasRoleUserApi {
@Override
public ApiResult<PageResp<SaasRoleUserRelationDTO>> pageRoleUserRelation(PageRoleUserRelationReq param) {
IPage page = new Page<>(param.getPage(), param.getPageSize());
return ApiResult.ok(PageConverter.toResp(saasRoleUserRelationMapper.pageRoleUserRelation(page, param)));
PageResp resp = new PageResp();
List<SaasRoleUserRelationDTO> saasRoleUserRelationDTOS = listNormalUser(param);
if (BooleanUtils.isTrue(param.getIncludeDelete())) {
List<SaasRoleUserRelationDTO> deleteUsers = saasRoleUserRelationMapper.pageRoleUserRelation(page, param).getRecords();
saasRoleUserRelationDTOS.addAll(deleteUsers);
}
resp.setData(saasRoleUserRelationDTOS);
return ApiResult.ok(resp);
}
private List<SaasRoleUserRelationDTO> listNormalUser(PageRoleUserRelationReq param) {
if (CollectionUtils.isEmpty(param.getRoleIds()) && CollectionUtils.isEmpty(param.getWorkspaceOUPairs())) {
return Collections.emptyList();
}
return saasRoleUserRelationService.listV2(ListRoleUserRelationParam.builder()
.roleIds(Lists.newArrayList(param.getRoleIds()))
.workspaceOuPairs(Optional.ofNullable(param.getWorkspaceOUPairs())
.map(e -> e.stream().map(f -> ListRoleUserRelationParam.WorkspaceOuPair.builder()
.workspaceId(f.getWorkspaceId())
.ouId(f.getOuId())
.build())
.collect(Collectors.toList()))
.orElse(null))
.build())
.stream()
.map(e -> {
SaasRoleUserRelationDTO saasRoleUserRelationDTO = SaasRoleUserRelationDTO.builder().build();
BeanUtils.copyProperties(e, saasRoleUserRelationDTO);
saasRoleUserRelationDTO.setId(e.getId());
saasRoleUserRelationDTO.setNaturalPersonId(e.getSaasRoleUser().getPersonId());
return saasRoleUserRelationDTO;
})
.collect(Collectors.toList());
}
}