feat:(REQ-3282) 增加单测

This commit is contained in:
李龙 2024-12-09 10:35:18 +08:00
parent 6e3e5b7342
commit d31cfc503d
4 changed files with 87 additions and 31 deletions

View File

@ -1,9 +1,8 @@
package cn.axzo.tyr.feign.req;
import cn.axzo.foundation.page.PageReq;
import cn.axzo.tyr.feign.enums.FeatureResourceTypeEnum;
import cn.axzo.tyr.feign.enums.RolePermissionTagEnum;
import cn.axzo.tyr.feign.enums.RoleTypeEnum;
import cn.axzo.tyr.feign.enums.FeatureResourceTypeEnum;
import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
@ -16,7 +15,16 @@ import java.util.Set;
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class PageRoleReq extends PageReq {
public class PageRoleReq {
private Integer page;
private Integer pageSize;
/**
* 排序使用示例createTime__DESC
*/
private List<String> sort;
/**
* 角色id

View File

@ -17,6 +17,7 @@ import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RestController;
import java.util.Objects;
import java.util.Optional;
import java.util.stream.Collectors;
@ -85,20 +86,23 @@ public class RoleController implements RoleApi {
RoleResp result = RoleResp.builder().build();
BeanUtils.copyProperties(saasRoleRes, result);
result.setRoleFeatureResources(saasRoleRes.getSaasPermissions().stream()
.map(permission -> {
RoleFeatureResourceResp roleFeatureResourceResp = RoleFeatureResourceResp.builder().build();
BeanUtils.copyProperties(permission, roleFeatureResourceResp);
if (Objects.nonNull(saasRoleRes.getSaasPermissions())) {
result.setRoleFeatureResources(saasRoleRes.getSaasPermissions().stream()
.map(permission -> {
RoleFeatureResourceResp roleFeatureResourceResp = RoleFeatureResourceResp.builder().build();
BeanUtils.copyProperties(permission, roleFeatureResourceResp);
// roleFeatureResourceResp.setUniCode();
roleFeatureResourceResp.setTags(Optional.ofNullable(permission.getTags())
.map(tags -> tags.stream()
.map(RolePermissionTagEnum::getDesc)
.collect(Collectors.toSet())
)
.orElse(null));
return roleFeatureResourceResp;
})
.collect(Collectors.toList()));
roleFeatureResourceResp.setTags(Optional.ofNullable(permission.getTags())
.map(tags -> tags.stream()
.map(RolePermissionTagEnum::getDesc)
.collect(Collectors.toSet())
)
.orElse(null));
return roleFeatureResourceResp;
})
.collect(Collectors.toList()));
}
return result;
}

View File

@ -1455,7 +1455,7 @@ public class RoleServiceImpl extends ServiceImpl<SaasRoleMapper, SaasRole>
Map<Long, List<SaasRoleUserV2DTO.SaasRoleUser>> saasRoleUsers = listSaasRoleUser(param, page.getRecords());
Map<Long, List<SaasPermissionRelationRes>> permissionRelations = listRolePermissionRelations(param, page.getRecords());
ºº
return PageConverter.toResp(page, (record) -> from(record,
saasRoleGroups,
BooleanUtils.isTrue(param.getNeedPermissionOld()) ? saasPermissionsOld : saasPermissions,

View File

@ -2,6 +2,7 @@ package cn.axzo.tyr.server.controller.v2;
import cn.axzo.tyr.base.BaseTest;
import cn.axzo.tyr.base.MysqlDataLoader;
import cn.axzo.tyr.client.model.enums.RolePermissionTagEnum;
import cn.axzo.tyr.feign.enums.RoleTypeEnum;
import cn.axzo.tyr.feign.req.PageRoleReq;
import cn.axzo.tyr.feign.resp.RoleResp;
@ -30,87 +31,130 @@ class RoleControllerTest extends BaseTest {
}
@Test
void list() {
List<RoleResp> roleResps = roleController.list(PageRoleReq.builder()
List<RoleResp> roleResps = roleController.page(PageRoleReq.builder()
.roleIds(Sets.newHashSet(24425L))
.build())
.getData()
.getData();
Assertions.assertEquals(roleResps.size(), 1);
roleResps = roleController.list(PageRoleReq.builder()
roleResps = roleController.page(PageRoleReq.builder()
.workspaceType(6)
.build())
.getData()
.getData();
Assertions.assertEquals(roleResps.size(), 2);
roleResps = roleController.list(PageRoleReq.builder()
roleResps = roleController.page(PageRoleReq.builder()
.isDisplay(true)
.build())
.getData()
.getData();
Assertions.assertEquals(roleResps.size(), 9);
roleResps = roleController.list(PageRoleReq.builder()
roleResps = roleController.page(PageRoleReq.builder()
.roleCode("oms:project_manager")
.build())
.getData()
.getData();
Assertions.assertEquals(roleResps.size(), 1);
roleResps = roleController.list(PageRoleReq.builder()
roleResps = roleController.page(PageRoleReq.builder()
.workspaceIds(Sets.newHashSet(3L, 0L))
.build())
.getData()
.getData();
Assertions.assertEquals(roleResps.size(), 5);
roleResps = roleController.list(PageRoleReq.builder()
roleResps = roleController.page(PageRoleReq.builder()
.ouIds(Sets.newHashSet(4L, 0L))
.build())
.getData()
.getData();
Assertions.assertEquals(roleResps.size(), 5);
roleResps = roleController.list(PageRoleReq.builder()
roleResps = roleController.page(PageRoleReq.builder()
.enabled(true)
.build())
.getData()
.getData();
Assertions.assertEquals(roleResps.size(), 9);
roleResps = roleController.list(PageRoleReq.builder()
roleResps = roleController.page(PageRoleReq.builder()
.roleTypes(Sets.newHashSet(RoleTypeEnum.SUPER_ADMIN))
.build())
.getData()
.getData();
Assertions.assertEquals(roleResps.size(), 4);
roleResps = roleController.list(PageRoleReq.builder()
roleResps = roleController.page(PageRoleReq.builder()
.workspaceOuPairs(Lists.newArrayList(PageRoleReq.WorkspaceOuPair.builder()
.workspaceId(3L)
.ouId(4L)
.build()))
.build())
.getData()
.getData();
Assertions.assertEquals(roleResps.size(), 1);
roleResps = roleController.list(PageRoleReq.builder()
roleResps = roleController.page(PageRoleReq.builder()
.roleCodes(Sets.newHashSet("ou_superadmin"))
.build())
.getData()
.getData();
Assertions.assertEquals(roleResps.size(), 1);
roleResps = roleController.list(PageRoleReq.builder()
roleResps = roleController.page(PageRoleReq.builder()
.roleGroupCodes(Sets.newHashSet("omsSuperAdminGroup"))
.build())
.getData()
.getData();
Assertions.assertEquals(roleResps.size(), 1);
roleResps = roleController.list(PageRoleReq.builder()
roleResps = roleController.page(PageRoleReq.builder()
.cooperateShipTypes(Sets.newHashSet(1))
.build())
.getData()
.getData();
Assertions.assertEquals(roleResps.size(), 2);
roleResps = roleController.list(PageRoleReq.builder()
roleResps = roleController.page(PageRoleReq.builder()
.roleIds(Sets.newHashSet(24425L))
.needFeatureResources(true)
.build())
.getData()
.getData();
Assertions.assertEquals(roleResps.size(), 1);
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().size(), 10);
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().size(), 5);
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(0).getId(), 153L);
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(0).getUniCode(), "oms:menu_page");
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(0).getTags().size(), 1);
Assertions.assertTrue(roleResps.get(0).getRoleFeatureResources().get(0).getTags().contains(RolePermissionTagEnum.JOINED));
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(0).getTerminal(), "NT_OMS_WEB");
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(1).getId(), 466L);
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(1).getUniCode(), "oms:imConfig_page");
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(1).getTags().size(), 1);
Assertions.assertTrue(roleResps.get(0).getRoleFeatureResources().get(1).getTags().contains(RolePermissionTagEnum.JOINED));
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(1).getTerminal(), "NT_OMS_WEB");
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(2).getId(), 467L);
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(2).getUniCode(), "oms:im_robot_page");
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(2).getTags().size(), 1);
Assertions.assertTrue(roleResps.get(0).getRoleFeatureResources().get(2).getTags().contains(RolePermissionTagEnum.JOINED));
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(2).getTerminal(), "NT_OMS_WEB");
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(3).getId(), 469L);
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(3).getUniCode(), "oms:msgPush_page");
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(3).getTags().size(), 1);
Assertions.assertTrue(roleResps.get(0).getRoleFeatureResources().get(3).getTags().contains(RolePermissionTagEnum.JOINED));
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(3).getTerminal(), "NT_OMS_WEB");
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(4).getId(), 693L);
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(4).getUniCode(), "oms:detail_backPay_btn");
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(4).getTags().size(), 1);
Assertions.assertTrue(roleResps.get(0).getRoleFeatureResources().get(4).getTags().contains(RolePermissionTagEnum.JOINED));
Assertions.assertEquals(roleResps.get(0).getRoleFeatureResources().get(4).getTerminal(), "NT_OMS_WEB");
}
}