mirror of
				https://github.com/YunaiV/ruoyi-vue-pro.git
				synced 2025-11-01 03:28:41 +08:00 
			
		
		
		
	完成role单测
This commit is contained in:
		| @ -30,8 +30,8 @@ public interface SysErrorCodeConstants { | |||||||
|  |  | ||||||
|     // ========== 角色模块 1002003000 ========== |     // ========== 角色模块 1002003000 ========== | ||||||
|     ErrorCode ROLE_NOT_EXISTS = new ErrorCode(1002003000, "角色不存在"); |     ErrorCode ROLE_NOT_EXISTS = new ErrorCode(1002003000, "角色不存在"); | ||||||
|     ErrorCode ROLE_NAME_DUPLICATE = new ErrorCode(1002003001, "已经存在名为【{}}】的角色"); |     ErrorCode ROLE_NAME_DUPLICATE = new ErrorCode(1002003001, "已经存在名为【{}】的角色"); | ||||||
|     ErrorCode ROLE_CODE_DUPLICATE = new ErrorCode(1002003002, "已经存在编码为【{}}】的角色"); |     ErrorCode ROLE_CODE_DUPLICATE = new ErrorCode(1002003002, "已经存在编码为【{}】的角色"); | ||||||
|     ErrorCode ROLE_CAN_NOT_UPDATE_SYSTEM_TYPE_ROLE = new ErrorCode(1002003004, "不能操作类型为系统内置的角色"); |     ErrorCode ROLE_CAN_NOT_UPDATE_SYSTEM_TYPE_ROLE = new ErrorCode(1002003004, "不能操作类型为系统内置的角色"); | ||||||
|  |  | ||||||
|     // ========== 用户模块 1002004000 ========== |     // ========== 用户模块 1002004000 ========== | ||||||
|  | |||||||
| @ -18,6 +18,7 @@ import cn.iocoder.dashboard.modules.system.enums.permission.SysRoleTypeEnum; | |||||||
| import cn.iocoder.dashboard.modules.system.mq.producer.permission.SysRoleProducer; | import cn.iocoder.dashboard.modules.system.mq.producer.permission.SysRoleProducer; | ||||||
| import cn.iocoder.dashboard.modules.system.service.permission.SysPermissionService; | import cn.iocoder.dashboard.modules.system.service.permission.SysPermissionService; | ||||||
| import cn.iocoder.dashboard.modules.system.service.permission.SysRoleService; | import cn.iocoder.dashboard.modules.system.service.permission.SysRoleService; | ||||||
|  | import com.google.common.annotations.VisibleForTesting; | ||||||
| import com.google.common.collect.ImmutableMap; | import com.google.common.collect.ImmutableMap; | ||||||
| import lombok.extern.slf4j.Slf4j; | import lombok.extern.slf4j.Slf4j; | ||||||
| import org.springframework.lang.Nullable; | import org.springframework.lang.Nullable; | ||||||
| @ -245,7 +246,8 @@ public class SysRoleServiceImpl implements SysRoleService { | |||||||
|      * @param code 角色额编码 |      * @param code 角色额编码 | ||||||
|      * @param id 角色编号 |      * @param id 角色编号 | ||||||
|      */ |      */ | ||||||
|     private void checkDuplicateRole(String name, String code, Long id) { |     @VisibleForTesting | ||||||
|  |     public void checkDuplicateRole(String name, String code, Long id) { | ||||||
|         // 1. 该 name 名字被其它角色所使用 |         // 1. 该 name 名字被其它角色所使用 | ||||||
|         SysRoleDO role = roleMapper.selectByName(name); |         SysRoleDO role = roleMapper.selectByName(name); | ||||||
|         if (role != null && !role.getId().equals(id)) { |         if (role != null && !role.getId().equals(id)) { | ||||||
| @ -258,7 +260,7 @@ public class SysRoleServiceImpl implements SysRoleService { | |||||||
|         // 该 code 编码被其它角色所使用 |         // 该 code 编码被其它角色所使用 | ||||||
|         role = roleMapper.selectByCode(code); |         role = roleMapper.selectByCode(code); | ||||||
|         if (role != null && !role.getId().equals(id)) { |         if (role != null && !role.getId().equals(id)) { | ||||||
|             throw ServiceExceptionUtil.exception(ROLE_CODE_DUPLICATE, name); |             throw ServiceExceptionUtil.exception(ROLE_CODE_DUPLICATE, code); | ||||||
|         } |         } | ||||||
|     } |     } | ||||||
|  |  | ||||||
| @ -267,7 +269,8 @@ public class SysRoleServiceImpl implements SysRoleService { | |||||||
|      * |      * | ||||||
|      * @param id 角色编号 |      * @param id 角色编号 | ||||||
|      */ |      */ | ||||||
|     private void checkUpdateRole(Long id) { |     @VisibleForTesting | ||||||
|  |     public void checkUpdateRole(Long id) { | ||||||
|         SysRoleDO roleDO = roleMapper.selectById(id); |         SysRoleDO roleDO = roleMapper.selectById(id); | ||||||
|         if (roleDO == null) { |         if (roleDO == null) { | ||||||
|             throw ServiceExceptionUtil.exception(ROLE_NOT_EXISTS); |             throw ServiceExceptionUtil.exception(ROLE_NOT_EXISTS); | ||||||
|  | |||||||
| @ -0,0 +1,308 @@ | |||||||
|  | package cn.iocoder.dashboard.modules.system.service.permission; | ||||||
|  |  | ||||||
|  | import cn.hutool.core.bean.BeanUtil; | ||||||
|  | import cn.iocoder.dashboard.BaseDbUnitTest; | ||||||
|  | import cn.iocoder.dashboard.common.enums.CommonStatusEnum; | ||||||
|  | import cn.iocoder.dashboard.common.pojo.PageResult; | ||||||
|  | import cn.iocoder.dashboard.framework.security.core.enums.DataScopeEnum; | ||||||
|  | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleCreateReqVO; | ||||||
|  | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRolePageReqVO; | ||||||
|  | import cn.iocoder.dashboard.modules.system.controller.permission.vo.role.SysRoleUpdateReqVO; | ||||||
|  | import cn.iocoder.dashboard.modules.system.dal.dataobject.permission.SysRoleDO; | ||||||
|  | import cn.iocoder.dashboard.modules.system.dal.mysql.permission.SysRoleMapper; | ||||||
|  | import cn.iocoder.dashboard.modules.system.enums.permission.SysRoleTypeEnum; | ||||||
|  | import cn.iocoder.dashboard.modules.system.mq.producer.permission.SysRoleProducer; | ||||||
|  | import cn.iocoder.dashboard.modules.system.service.permission.impl.SysRoleServiceImpl; | ||||||
|  | import cn.iocoder.dashboard.util.AopTargetUtils; | ||||||
|  | import cn.iocoder.dashboard.util.AssertUtils; | ||||||
|  | import cn.iocoder.dashboard.util.RandomUtils; | ||||||
|  | import cn.iocoder.dashboard.util.object.ObjectUtils; | ||||||
|  | import com.google.common.collect.Sets; | ||||||
|  | import org.junit.jupiter.api.Assertions; | ||||||
|  | import org.junit.jupiter.api.Test; | ||||||
|  | import org.mockito.Mockito; | ||||||
|  | import org.springframework.boot.test.mock.mockito.MockBean; | ||||||
|  | import org.springframework.context.annotation.Import; | ||||||
|  |  | ||||||
|  | import javax.annotation.Resource; | ||||||
|  | import java.util.*; | ||||||
|  | import java.util.stream.Collectors; | ||||||
|  |  | ||||||
|  | import static cn.iocoder.dashboard.modules.system.enums.SysErrorCodeConstants.*; | ||||||
|  | import static cn.iocoder.dashboard.util.AssertUtils.assertPojoEquals; | ||||||
|  | import static cn.iocoder.dashboard.util.AssertUtils.assertServiceException; | ||||||
|  | import static cn.iocoder.dashboard.util.RandomUtils.*; | ||||||
|  | import static cn.iocoder.dashboard.util.object.ObjectUtils.max; | ||||||
|  | import static org.junit.jupiter.api.Assertions.*; | ||||||
|  | import static org.mockito.Mockito.verify; | ||||||
|  |  | ||||||
|  | @Import(SysRoleServiceImpl.class) | ||||||
|  | public class SysRoleServiceTest extends BaseDbUnitTest { | ||||||
|  |  | ||||||
|  |     @Resource | ||||||
|  |     private SysRoleServiceImpl sysRoleService; | ||||||
|  |  | ||||||
|  |     @Resource | ||||||
|  |     private SysRoleMapper roleMapper; | ||||||
|  |  | ||||||
|  |     @MockBean | ||||||
|  |     private SysPermissionService sysPermissionService; | ||||||
|  |  | ||||||
|  |     @MockBean | ||||||
|  |     private SysRoleProducer sysRoleProducer; | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testInitLocalCache_success() throws Exception { | ||||||
|  |         SysRoleDO roleDO1 = createRoleDO("role1", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL); | ||||||
|  |         roleMapper.insert(roleDO1); | ||||||
|  |         SysRoleDO roleDO2 = createRoleDO("role2", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL); | ||||||
|  |         roleMapper.insert(roleDO2); | ||||||
|  |  | ||||||
|  |         //调用 | ||||||
|  |         sysRoleService.initLocalCache(); | ||||||
|  |  | ||||||
|  |         //断言 | ||||||
|  |         //获取代理对象 | ||||||
|  |         SysRoleServiceImpl target = (SysRoleServiceImpl) AopTargetUtils.getTarget(sysRoleService); | ||||||
|  |  | ||||||
|  |         Map<Long, SysRoleDO> roleCache = (Map<Long, SysRoleDO>) BeanUtil.getFieldValue(target, "roleCache"); | ||||||
|  |         assertPojoEquals(roleDO1, roleCache.get(roleDO1.getId())); | ||||||
|  |         assertPojoEquals(roleDO2, roleCache.get(roleDO2.getId())); | ||||||
|  |  | ||||||
|  |         Date maxUpdateTime = (Date) BeanUtil.getFieldValue(target, "maxUpdateTime"); | ||||||
|  |         assertEquals(max(roleDO1.getUpdateTime(), roleDO2.getUpdateTime()), maxUpdateTime); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testCreateRole_success() { | ||||||
|  |         SysRoleCreateReqVO reqVO = randomPojo(SysRoleCreateReqVO.class, o -> { | ||||||
|  |             o.setCode("role_code"); | ||||||
|  |             o.setName("role_name"); | ||||||
|  |             o.setRemark("remark"); | ||||||
|  |             o.setType(SysRoleTypeEnum.CUSTOM.getType()); | ||||||
|  |             o.setSort(1); | ||||||
|  |         }); | ||||||
|  |         Long roleId = sysRoleService.createRole(reqVO); | ||||||
|  |  | ||||||
|  |         //断言 | ||||||
|  |         assertNotNull(roleId); | ||||||
|  |         SysRoleDO roleDO = roleMapper.selectById(roleId); | ||||||
|  |         assertPojoEquals(reqVO, roleDO); | ||||||
|  |  | ||||||
|  |         verify(sysRoleProducer).sendRoleRefreshMessage(); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testUpdateRole_success() { | ||||||
|  |         SysRoleDO roleDO = createRoleDO("role_name", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL); | ||||||
|  |         roleMapper.insert(roleDO); | ||||||
|  |         Long roleId = roleDO.getId(); | ||||||
|  |  | ||||||
|  |         //调用 | ||||||
|  |         SysRoleUpdateReqVO reqVO = randomPojo(SysRoleUpdateReqVO.class, o -> { | ||||||
|  |             o.setId(roleId); | ||||||
|  |             o.setCode("role_code"); | ||||||
|  |             o.setName("update_name"); | ||||||
|  |             o.setType(SysRoleTypeEnum.SYSTEM.getType()); | ||||||
|  |             o.setSort(999); | ||||||
|  |         }); | ||||||
|  |         sysRoleService.updateRole(reqVO); | ||||||
|  |  | ||||||
|  |         //断言 | ||||||
|  |         SysRoleDO newRoleDO = roleMapper.selectById(roleId); | ||||||
|  |         assertPojoEquals(reqVO, newRoleDO); | ||||||
|  |  | ||||||
|  |         verify(sysRoleProducer).sendRoleRefreshMessage(); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testUpdateRoleStatus_success() { | ||||||
|  |         SysRoleDO roleDO = createRoleDO("role_name", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL, CommonStatusEnum.ENABLE.getStatus()); | ||||||
|  |         roleMapper.insert(roleDO); | ||||||
|  |         Long roleId = roleDO.getId(); | ||||||
|  |  | ||||||
|  |         //调用 | ||||||
|  |         sysRoleService.updateRoleStatus(roleId, CommonStatusEnum.DISABLE.getStatus()); | ||||||
|  |  | ||||||
|  |         //断言 | ||||||
|  |         SysRoleDO newRoleDO = roleMapper.selectById(roleId); | ||||||
|  |         assertEquals(CommonStatusEnum.DISABLE.getStatus(), newRoleDO.getStatus()); | ||||||
|  |  | ||||||
|  |         verify(sysRoleProducer).sendRoleRefreshMessage(); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testUpdateRoleDataScope_success() { | ||||||
|  |         SysRoleDO roleDO = createRoleDO("role_name", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL); | ||||||
|  |         roleMapper.insert(roleDO); | ||||||
|  |         Long roleId = roleDO.getId(); | ||||||
|  |  | ||||||
|  |         //调用 | ||||||
|  |         Set<Long> deptIdSet = Arrays.asList(1L, 2L, 3L, 4L, 5L).stream().collect(Collectors.toSet()); | ||||||
|  |         sysRoleService.updateRoleDataScope(roleId, DataScopeEnum.DEPT_CUSTOM.getScore(), deptIdSet); | ||||||
|  |  | ||||||
|  |         //断言 | ||||||
|  |         SysRoleDO newRoleDO = roleMapper.selectById(roleId); | ||||||
|  |         assertEquals(DataScopeEnum.DEPT_CUSTOM.getScore(), newRoleDO.getDataScope()); | ||||||
|  |  | ||||||
|  |         Set<Long> newDeptIdSet = newRoleDO.getDataScopeDeptIds(); | ||||||
|  |         assertTrue(deptIdSet.size() == newDeptIdSet.size()); | ||||||
|  |         deptIdSet.stream().forEach(d -> assertTrue(newDeptIdSet.contains(d))); | ||||||
|  |  | ||||||
|  |         verify(sysRoleProducer).sendRoleRefreshMessage(); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testDeleteRole_success() { | ||||||
|  |         SysRoleDO roleDO = createRoleDO("role_name", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL); | ||||||
|  |         roleMapper.insert(roleDO); | ||||||
|  |         Long roleId = roleDO.getId(); | ||||||
|  |  | ||||||
|  |         //调用 | ||||||
|  |         sysRoleService.deleteRole(roleId); | ||||||
|  |  | ||||||
|  |         //断言 | ||||||
|  |         SysRoleDO newRoleDO = roleMapper.selectById(roleId); | ||||||
|  |         assertNull(newRoleDO); | ||||||
|  |  | ||||||
|  |         verify(sysRoleProducer).sendRoleRefreshMessage(); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testGetRoles_success() { | ||||||
|  |         Map<Long, SysRoleDO> idRoleMap = new HashMap<>(); | ||||||
|  |         // 验证查询状态为1的角色 | ||||||
|  |         SysRoleDO roleDO1 = createRoleDO("role1", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 1); | ||||||
|  |         roleMapper.insert(roleDO1); | ||||||
|  |         idRoleMap.put(roleDO1.getId(), roleDO1); | ||||||
|  |  | ||||||
|  |         SysRoleDO roleDO2 = createRoleDO("role2", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 1); | ||||||
|  |         roleMapper.insert(roleDO2); | ||||||
|  |         idRoleMap.put(roleDO2.getId(), roleDO2); | ||||||
|  |  | ||||||
|  |         // 以下是排除的角色 | ||||||
|  |         SysRoleDO roleDO3 = createRoleDO("role3", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 2); | ||||||
|  |         roleMapper.insert(roleDO3); | ||||||
|  |  | ||||||
|  |         //调用 | ||||||
|  |         List<SysRoleDO> roles = sysRoleService.getRoles(Arrays.asList(1)); | ||||||
|  |  | ||||||
|  |         //断言 | ||||||
|  |         assertEquals(2, roles.size()); | ||||||
|  |         roles.stream().forEach(r -> assertPojoEquals(idRoleMap.get(r.getId()), r)); | ||||||
|  |  | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testGetRolePage_success() { | ||||||
|  |         Map<Long, SysRoleDO> idRoleMap = new HashMap<>(); | ||||||
|  |         // 验证名称包含"role", 状态为1,code为"code"的角色 | ||||||
|  |         // 第一页 | ||||||
|  |         SysRoleDO roleDO = createRoleDO("role1", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 1, "code"); | ||||||
|  |         roleMapper.insert(roleDO); | ||||||
|  |         idRoleMap.put(roleDO.getId(), roleDO); | ||||||
|  |         // 第二页 | ||||||
|  |         roleDO = createRoleDO("role2", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 1, "code"); | ||||||
|  |         roleMapper.insert(roleDO); | ||||||
|  |  | ||||||
|  |         // 以下是排除的角色 | ||||||
|  |         roleDO = createRoleDO("role3", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 2, "code"); | ||||||
|  |         roleMapper.insert(roleDO); | ||||||
|  |         roleDO = createRoleDO("role4", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL, 1, "xxxxx"); | ||||||
|  |         roleMapper.insert(roleDO); | ||||||
|  |  | ||||||
|  |         //调用 | ||||||
|  |         SysRolePageReqVO reqVO = randomPojo(SysRolePageReqVO.class, o -> { | ||||||
|  |             o.setName("role"); | ||||||
|  |             o.setCode("code"); | ||||||
|  |             o.setStatus(1); | ||||||
|  |             o.setPageNo(1); | ||||||
|  |             o.setPageSize(1); | ||||||
|  |             o.setBeginTime(null); | ||||||
|  |             o.setEndTime(null); | ||||||
|  |         }); | ||||||
|  |         PageResult<SysRoleDO> result = sysRoleService.getRolePage(reqVO); | ||||||
|  |         assertEquals(2, result.getTotal()); | ||||||
|  |         result.getList().stream().forEach(r -> assertPojoEquals(idRoleMap.get(r.getId()), r)); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testCheckDuplicateRole_success() { | ||||||
|  |         sysRoleService.checkDuplicateRole(randomString(), randomString(), null); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testCheckDuplicateRole_nameDuplicate() { | ||||||
|  |         SysRoleDO roleDO = createRoleDO("role_name", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL); | ||||||
|  |         roleMapper.insert(roleDO); | ||||||
|  |  | ||||||
|  |         String duplicateName = "role_name"; | ||||||
|  |  | ||||||
|  |         assertServiceException(() -> sysRoleService.checkDuplicateRole(duplicateName, randomString(), null), ROLE_NAME_DUPLICATE, duplicateName); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testCheckDuplicateRole_codeDuplicate() { | ||||||
|  |         SysRoleDO roleDO = randomPojo(SysRoleDO.class, o -> { | ||||||
|  |             o.setName("role_999"); | ||||||
|  |             o.setCode("code"); | ||||||
|  |             o.setType(SysRoleTypeEnum.CUSTOM.getType()); | ||||||
|  |             o.setStatus(1); | ||||||
|  |             o.setDataScope(DataScopeEnum.ALL.getScore()); | ||||||
|  |         }); | ||||||
|  |         roleMapper.insert(roleDO); | ||||||
|  |  | ||||||
|  |         String randomName = randomString(); | ||||||
|  |         String duplicateCode = "code"; | ||||||
|  |  | ||||||
|  |         assertServiceException(() -> sysRoleService.checkDuplicateRole(randomName, duplicateCode, null), ROLE_CODE_DUPLICATE, duplicateCode); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testCheckUpdateRole_success() { | ||||||
|  |         SysRoleDO roleDO = createRoleDO("role_name", SysRoleTypeEnum.CUSTOM, DataScopeEnum.ALL); | ||||||
|  |         roleMapper.insert(roleDO); | ||||||
|  |         Long roleId = roleDO.getId(); | ||||||
|  |  | ||||||
|  |         sysRoleService.checkUpdateRole(roleId); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testCheckUpdateRole_roleIdNotExist() { | ||||||
|  |         assertServiceException(() -> sysRoleService.checkUpdateRole(randomLongId()), ROLE_NOT_EXISTS); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     @Test | ||||||
|  |     public void testCheckUpdateRole_systemRoleCanNotBeUpdate() { | ||||||
|  |         SysRoleDO roleDO = createRoleDO("role_name", SysRoleTypeEnum.SYSTEM, DataScopeEnum.ALL); | ||||||
|  |         roleMapper.insert(roleDO); | ||||||
|  |         Long roleId = roleDO.getId(); | ||||||
|  |  | ||||||
|  |         assertServiceException(() -> sysRoleService.checkUpdateRole(roleId), ROLE_CAN_NOT_UPDATE_SYSTEM_TYPE_ROLE); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     private SysRoleDO createRoleDO(String name, SysRoleTypeEnum typeEnum, DataScopeEnum scopeEnum, Integer status) { | ||||||
|  |         return createRoleDO( name, typeEnum, scopeEnum, status, randomString()); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     private SysRoleDO createRoleDO(String name, SysRoleTypeEnum typeEnum, DataScopeEnum scopeEnum, Integer status, String code) { | ||||||
|  |         return createRoleDO(null, name, typeEnum, scopeEnum, status, code); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     private SysRoleDO createRoleDO(String name, SysRoleTypeEnum typeEnum, DataScopeEnum scopeEnum) { | ||||||
|  |         return createRoleDO(null, name, typeEnum, scopeEnum, randomCommonStatus(), randomString()); | ||||||
|  |     } | ||||||
|  |  | ||||||
|  |     private SysRoleDO createRoleDO(Long id, String name, SysRoleTypeEnum typeEnum, DataScopeEnum scopeEnum, Integer status, String code) { | ||||||
|  |         SysRoleDO roleDO = randomPojo(SysRoleDO.class, o -> { | ||||||
|  |             o.setId(id); | ||||||
|  |             o.setName(name); | ||||||
|  |             o.setType(typeEnum.getType()); | ||||||
|  |             o.setStatus(status); | ||||||
|  |             o.setDataScope(scopeEnum.getScore()); | ||||||
|  |             o.setCode(code); | ||||||
|  |         }); | ||||||
|  |         return roleDO; | ||||||
|  |     } | ||||||
|  |  | ||||||
|  | } | ||||||
		Reference in New Issue
	
	Block a user
	 timfruit
					timfruit