refactor(系统设置): 优化用户管理的权限单元测试
This commit is contained in:
parent
ca943d1a8a
commit
2e689901e2
|
@ -155,9 +155,8 @@ public class UserController {
|
|||
|
||||
|
||||
@PostMapping("/add-project-member")
|
||||
//todo 这里权限有更改 权限待定
|
||||
@Operation(summary = "添加用户到项目")
|
||||
// @RequiresPermissions(PermissionConstants.SYSTEM_ORGANIZATION_PROJECT_READ_UPDATE)
|
||||
@Operation(summary = "批量添加用户到项目")
|
||||
@RequiresPermissions(value = {PermissionConstants.SYSTEM_USER_READ_UPDATE, PermissionConstants.SYSTEM_ORGANIZATION_PROJECT_MEMBER_ADD}, logical = Logical.AND)
|
||||
public void addProjectMember(@Validated @RequestBody UserRoleBatchRelationRequest userRoleBatchRelationRequest) {
|
||||
ProjectAddMemberBatchRequest request = new ProjectAddMemberBatchRequest();
|
||||
request.setProjectIds(userRoleBatchRelationRequest.getRoleIds());
|
||||
|
@ -166,9 +165,8 @@ public class UserController {
|
|||
}
|
||||
|
||||
@PostMapping("/add-org-member")
|
||||
@Operation(summary = "添加用户到组织")
|
||||
//todo 这里权限有更改 权限待定
|
||||
// @RequiresPermissions(PermissionConstants.SYSTEM_ORGANIZATION_PROJECT_READ_UPDATE)
|
||||
@Operation(summary = "批量添加用户到组织")
|
||||
@RequiresPermissions(value = {PermissionConstants.SYSTEM_USER_READ_UPDATE, PermissionConstants.SYSTEM_ORGANIZATION_PROJECT_MEMBER_ADD}, logical = Logical.AND)
|
||||
public void addMember(@Validated @RequestBody UserRoleBatchRelationRequest userRoleBatchRelationRequest) {
|
||||
OrganizationMemberBatchRequest request = new OrganizationMemberBatchRequest();
|
||||
request.setOrganizationIds(userRoleBatchRelationRequest.getRoleIds());
|
||||
|
|
|
@ -21,7 +21,7 @@ public class UserBaseBatchRequest {
|
|||
> userIds;
|
||||
|
||||
@Schema(description = "不处理的用户ID")
|
||||
List<String> skipIds;
|
||||
List<String> excludeIds;
|
||||
|
||||
@Schema(description = "是否选择所有数据")
|
||||
private boolean selectAll;
|
||||
|
|
|
@ -468,8 +468,8 @@ public class UserService {
|
|||
if (request.isSelectAll()) {
|
||||
List<User> userList = baseUserMapper.selectByKeyword(request.getCondition().getKeyword(), true);
|
||||
List<String> userIdList = userList.stream().map(User::getId).collect(Collectors.toList());
|
||||
if (CollectionUtils.isNotEmpty(request.getSkipIds())) {
|
||||
userIdList.removeAll(request.getSkipIds());
|
||||
if (CollectionUtils.isNotEmpty(request.getExcludeIds())) {
|
||||
userIdList.removeAll(request.getExcludeIds());
|
||||
}
|
||||
return userIdList;
|
||||
} else {
|
||||
|
|
|
@ -1,136 +0,0 @@
|
|||
package io.metersphere.system.controller.user;
|
||||
|
||||
import com.jayway.jsonpath.JsonPath;
|
||||
import io.metersphere.system.dto.UserCreateInfo;
|
||||
import io.metersphere.system.request.user.UserAndRoleBatchRequest;
|
||||
import io.metersphere.system.request.user.UserBaseBatchRequest;
|
||||
import io.metersphere.system.request.user.UserChangeEnableRequest;
|
||||
import io.metersphere.system.response.user.UserSelectOption;
|
||||
import io.metersphere.system.utils.user.UserParamUtils;
|
||||
import io.metersphere.system.utils.user.UserRequestUtils;
|
||||
import jakarta.annotation.Resource;
|
||||
import org.junit.jupiter.api.*;
|
||||
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.http.MediaType;
|
||||
import org.springframework.mock.web.MockMultipartFile;
|
||||
import org.springframework.test.context.jdbc.Sql;
|
||||
import org.springframework.test.context.jdbc.SqlConfig;
|
||||
import org.springframework.test.web.servlet.MockMvc;
|
||||
import org.springframework.test.web.servlet.MvcResult;
|
||||
import org.springframework.test.web.servlet.ResultMatcher;
|
||||
import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
|
||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
||||
|
||||
|
||||
@SpringBootTest
|
||||
@AutoConfigureMockMvc
|
||||
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
|
||||
@Sql(scripts = {"/dml/init_user_controller_none_permission_test.sql"},
|
||||
config = @SqlConfig(encoding = "utf-8", transactionMode = SqlConfig.TransactionMode.ISOLATED),
|
||||
executionPhase = Sql.ExecutionPhase.BEFORE_TEST_METHOD)
|
||||
public class UserControllerNonePermissionTests {
|
||||
@Resource
|
||||
private MockMvc mockMvc;
|
||||
UserRequestUtils userRequestUtils = null;
|
||||
|
||||
private static final String NONE_ROLE_USERNAME = "tianyang.member@163.com";
|
||||
private static final String NONE_ROLE_PASSWORD = "tianyang.member@163.com";
|
||||
|
||||
private static final ResultMatcher CHECK_RESULT_MATHER = status().isForbidden();
|
||||
|
||||
/**
|
||||
* 用户创建接口判断无权限用户是否可以访问
|
||||
* 接口参数校验优先级大于操作用户权限校验,所以参数要保证合法化
|
||||
*/
|
||||
@Test
|
||||
@Order(0)
|
||||
public void testGetGlobalSystemUserRoleSuccess() throws Exception {
|
||||
UserCreateInfo paramUserInfo = new UserCreateInfo() {{
|
||||
setId("testId");
|
||||
setName("tianyang.no.permission.email");
|
||||
setEmail("tianyang.no.permission.email@126.com");
|
||||
}};
|
||||
List<UserSelectOption> paramRoleList = new ArrayList<>() {{
|
||||
this.add(
|
||||
new UserSelectOption() {{
|
||||
this.setId("member");
|
||||
this.setName("member");
|
||||
}});
|
||||
}};
|
||||
userRequestUtils.requestGet(String.format(userRequestUtils.URL_USER_GET, NONE_ROLE_USERNAME), CHECK_RESULT_MATHER);
|
||||
//校验权限:系统全局用户组获取
|
||||
userRequestUtils.requestGet(userRequestUtils.URL_GET_GLOBAL_SYSTEM, CHECK_RESULT_MATHER);
|
||||
//校验权限:用户创建
|
||||
userRequestUtils.requestPost(userRequestUtils.URL_USER_CREATE,
|
||||
UserParamUtils.getUserCreateDTO(
|
||||
paramRoleList,
|
||||
new ArrayList<>() {{
|
||||
add(paramUserInfo);
|
||||
}}
|
||||
),
|
||||
CHECK_RESULT_MATHER);
|
||||
//校验权限:分页查询用户列表
|
||||
userRequestUtils.requestPost(userRequestUtils.URL_USER_PAGE, UserParamUtils.getDefaultPageRequest(), CHECK_RESULT_MATHER);
|
||||
//校验权限:修改用户
|
||||
userRequestUtils.requestPost(userRequestUtils.URL_USER_UPDATE,
|
||||
UserParamUtils.getUserUpdateDTO(paramUserInfo, paramRoleList), CHECK_RESULT_MATHER);
|
||||
//校验权限:启用/禁用用户
|
||||
UserChangeEnableRequest userChangeEnableRequest = new UserChangeEnableRequest();
|
||||
userChangeEnableRequest.setEnable(false);
|
||||
userChangeEnableRequest.setUserIds(new ArrayList<>() {{
|
||||
this.add("testId");
|
||||
}});
|
||||
userRequestUtils.requestPost(userRequestUtils.URL_USER_UPDATE_ENABLE, userChangeEnableRequest, CHECK_RESULT_MATHER);
|
||||
|
||||
//用户导入
|
||||
//导入正常文件
|
||||
String filePath = Objects.requireNonNull(this.getClass().getClassLoader().getResource("file/user_import_success.xlsx")).getPath();
|
||||
MockMultipartFile file = new MockMultipartFile("file", "userImport.xlsx", MediaType.APPLICATION_OCTET_STREAM_VALUE, UserParamUtils.getFileBytes(filePath));
|
||||
userRequestUtils.requestFile(userRequestUtils.URL_USER_IMPORT, file, CHECK_RESULT_MATHER);
|
||||
//用户删除
|
||||
UserBaseBatchRequest request = new UserBaseBatchRequest();
|
||||
request.setUserIds(new ArrayList<>() {{
|
||||
this.add("testId");
|
||||
}});
|
||||
userRequestUtils.requestPost(userRequestUtils.URL_USER_DELETE, request, CHECK_RESULT_MATHER);
|
||||
|
||||
//重置密码
|
||||
request = new UserBaseBatchRequest();
|
||||
request.setUserIds(Collections.singletonList("admin"));
|
||||
userRequestUtils.requestPost(userRequestUtils.URL_USER_RESET_PASSWORD, request, CHECK_RESULT_MATHER);
|
||||
|
||||
//添加用户到用户组
|
||||
UserAndRoleBatchRequest userRoleRelationRequest = new UserAndRoleBatchRequest();
|
||||
userRoleRelationRequest.setUserIds(new ArrayList<>() {{
|
||||
this.add(NONE_ROLE_USERNAME);
|
||||
}});
|
||||
userRoleRelationRequest.setRoleIds(new ArrayList<>() {{
|
||||
this.add("member");
|
||||
}});
|
||||
userRequestUtils.requestPost(userRequestUtils.URL_USER_ROLE_RELATION, userRoleRelationRequest, CHECK_RESULT_MATHER);
|
||||
}
|
||||
|
||||
@BeforeEach
|
||||
public void login() throws Exception {
|
||||
if (userRequestUtils == null) {
|
||||
MvcResult mvcResult = mockMvc.perform(MockMvcRequestBuilders.post("/login")
|
||||
.content("{\"username\":\"" + NONE_ROLE_USERNAME + "\",\"password\":\"" + NONE_ROLE_PASSWORD + "\"}")
|
||||
.contentType(MediaType.APPLICATION_JSON))
|
||||
.andExpect(status().isOk())
|
||||
.andExpect(content().contentType(MediaType.APPLICATION_JSON))
|
||||
.andReturn();
|
||||
String sessionId = JsonPath.read(mvcResult.getResponse().getContentAsString(), "$.data.sessionId");
|
||||
String csrfToken = JsonPath.read(mvcResult.getResponse().getContentAsString(), "$.data.csrfToken");
|
||||
userRequestUtils = new UserRequestUtils(mockMvc, sessionId, csrfToken);
|
||||
}
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,117 @@
|
|||
package io.metersphere.system.controller.user;
|
||||
|
||||
import io.metersphere.sdk.base.BaseTest;
|
||||
import io.metersphere.sdk.constants.PermissionConstants;
|
||||
import io.metersphere.system.dto.UserCreateInfo;
|
||||
import io.metersphere.system.request.user.UserAndRoleBatchRequest;
|
||||
import io.metersphere.system.request.user.UserBaseBatchRequest;
|
||||
import io.metersphere.system.request.user.UserChangeEnableRequest;
|
||||
import io.metersphere.system.request.user.UserRoleBatchRelationRequest;
|
||||
import io.metersphere.system.response.user.UserSelectOption;
|
||||
import io.metersphere.system.utils.user.UserParamUtils;
|
||||
import io.metersphere.system.utils.user.UserRequestUtils;
|
||||
import org.junit.jupiter.api.MethodOrderer;
|
||||
import org.junit.jupiter.api.Test;
|
||||
import org.junit.jupiter.api.TestMethodOrder;
|
||||
import org.springframework.boot.test.autoconfigure.web.servlet.AutoConfigureMockMvc;
|
||||
import org.springframework.boot.test.context.SpringBootTest;
|
||||
import org.springframework.util.LinkedMultiValueMap;
|
||||
import org.springframework.util.MultiValueMap;
|
||||
|
||||
import java.io.File;
|
||||
import java.util.ArrayList;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
|
||||
|
||||
@SpringBootTest
|
||||
@AutoConfigureMockMvc
|
||||
@TestMethodOrder(MethodOrderer.OrderAnnotation.class)
|
||||
public class UserControllerPermissionTests extends BaseTest {
|
||||
@Test
|
||||
public void permissionTest() throws Exception {
|
||||
//获取用户
|
||||
this.requestGetPermissionTest(PermissionConstants.SYSTEM_USER_READ, String.format(UserRequestUtils.URL_USER_GET, "admin"));
|
||||
|
||||
//校验权限:用户创建
|
||||
UserCreateInfo paramUserInfo = new UserCreateInfo() {{
|
||||
setId("testId");
|
||||
setName("tianyang.no.permission.email");
|
||||
setEmail("tianyang.no.permission.email@126.com");
|
||||
}};
|
||||
List<UserSelectOption> paramRoleList = new ArrayList<>() {{
|
||||
this.add(
|
||||
new UserSelectOption() {{
|
||||
this.setId("member");
|
||||
this.setName("member");
|
||||
}});
|
||||
}};
|
||||
this.requestPostPermissionTest(PermissionConstants.SYSTEM_USER_READ_ADD, UserRequestUtils.URL_USER_CREATE, UserParamUtils.getUserCreateDTO(
|
||||
paramRoleList,
|
||||
new ArrayList<>() {{
|
||||
add(paramUserInfo);
|
||||
}}
|
||||
));
|
||||
|
||||
//校验权限:修改用户
|
||||
this.requestPostPermissionTest(PermissionConstants.SYSTEM_USER_READ_UPDATE, UserRequestUtils.URL_USER_UPDATE, UserParamUtils.getUserUpdateDTO(paramUserInfo, paramRoleList));
|
||||
|
||||
//校验权限:分页查询用户列表
|
||||
this.requestPostPermissionTest(PermissionConstants.SYSTEM_USER_READ, UserRequestUtils.URL_USER_PAGE, UserParamUtils.getDefaultPageRequest());
|
||||
|
||||
//校验权限:启用/禁用用户
|
||||
UserChangeEnableRequest userChangeEnableRequest = new UserChangeEnableRequest();
|
||||
userChangeEnableRequest.setEnable(false);
|
||||
userChangeEnableRequest.setUserIds(new ArrayList<>() {{
|
||||
this.add("admin");
|
||||
}});
|
||||
this.requestPostPermissionTest(PermissionConstants.SYSTEM_USER_READ_UPDATE, UserRequestUtils.URL_USER_UPDATE_ENABLE, userChangeEnableRequest);
|
||||
|
||||
//用户导入
|
||||
File jarFile = new File(
|
||||
Objects.requireNonNull(this.getClass().getClassLoader().getResource("file/user_import_permission.xlsx")).getPath());
|
||||
|
||||
MultiValueMap<String, Object> paramMap = new LinkedMultiValueMap<>();
|
||||
paramMap.add("file", jarFile);
|
||||
this.requestMultipartPermissionTest(PermissionConstants.SYSTEM_USER_READ_IMPORT, UserRequestUtils.URL_USER_IMPORT, paramMap);
|
||||
|
||||
//用户删除
|
||||
UserBaseBatchRequest request = new UserBaseBatchRequest();
|
||||
request.setUserIds(new ArrayList<>() {{
|
||||
this.add("testId");
|
||||
}});
|
||||
this.requestPostPermissionTest(PermissionConstants.SYSTEM_USER_READ_DELETE, UserRequestUtils.URL_USER_DELETE, request);
|
||||
|
||||
//重置密码
|
||||
request = new UserBaseBatchRequest();
|
||||
request.setUserIds(Collections.singletonList("admin"));
|
||||
this.requestPostPermissionTest(PermissionConstants.SYSTEM_USER_READ_UPDATE, UserRequestUtils.URL_USER_RESET_PASSWORD, request);
|
||||
|
||||
//批量添加用户到用户组
|
||||
UserAndRoleBatchRequest userAndRoleBatchRequest = new UserAndRoleBatchRequest();
|
||||
userAndRoleBatchRequest.setUserIds(Collections.singletonList("admin"));
|
||||
userAndRoleBatchRequest.setRoleIds(Collections.singletonList("member"));
|
||||
this.requestPostPermissionTest(PermissionConstants.SYSTEM_USER_READ_UPDATE, UserRequestUtils.URL_USER_ROLE_RELATION, userAndRoleBatchRequest);
|
||||
|
||||
|
||||
//校验权限:系统全局用户组获取
|
||||
this.requestGetPermissionTest(PermissionConstants.SYSTEM_USER_ROLE_READ, UserRequestUtils.URL_GET_GLOBAL_SYSTEM);
|
||||
// 查看组织
|
||||
this.requestGetPermissionsTest(List.of(PermissionConstants.SYSTEM_USER_ROLE_READ, PermissionConstants.SYSTEM_ORGANIZATION_PROJECT_READ), UserRequestUtils.URL_GET_ORGANIZATION);
|
||||
//查看项目
|
||||
this.requestGetPermissionsTest(List.of(PermissionConstants.SYSTEM_USER_ROLE_READ, PermissionConstants.SYSTEM_ORGANIZATION_PROJECT_READ), UserRequestUtils.URL_GET_PROJECT);
|
||||
|
||||
// 批量添加用户到项目
|
||||
UserRoleBatchRelationRequest roleBatchRelationRequest = new UserRoleBatchRelationRequest();
|
||||
roleBatchRelationRequest.setUserIds(Collections.singletonList("admin"));
|
||||
roleBatchRelationRequest.setRoleIds(Collections.singletonList("member"));
|
||||
List<String> addMemberPermissionList = new ArrayList<>();
|
||||
addMemberPermissionList.add(PermissionConstants.SYSTEM_USER_READ_UPDATE);
|
||||
addMemberPermissionList.add(PermissionConstants.SYSTEM_ORGANIZATION_PROJECT_MEMBER_ADD);
|
||||
this.requestPostPermissionsTest(addMemberPermissionList, UserRequestUtils.URL_ADD_PROJECT_MEMBER, roleBatchRelationRequest);
|
||||
// 批量添加用户到组织
|
||||
this.requestPostPermissionsTest(addMemberPermissionList, UserRequestUtils.URL_ADD_ORGANIZATION_MEMBER, roleBatchRelationRequest);
|
||||
}
|
||||
|
||||
}
|
|
@ -58,6 +58,10 @@ public class UserControllerTests extends BaseTest {
|
|||
private UserMapper userMapper;
|
||||
@Resource
|
||||
private GlobalUserRoleRelationService globalUserRoleRelationService;
|
||||
@Resource
|
||||
ProjectMapper projectMapper;
|
||||
@Resource
|
||||
private UserRoleRelationMapper userRoleRelationMapper;
|
||||
|
||||
//失败请求返回编码
|
||||
private static final ResultMatcher BAD_REQUEST_MATCHER = status().isBadRequest();
|
||||
|
@ -470,14 +474,6 @@ public class UserControllerTests extends BaseTest {
|
|||
}
|
||||
}
|
||||
|
||||
public final String URL_GET_PROJECT = "/system/user/get/project";
|
||||
public final String URL_ADD_PROJECT_MEMBER = "/system/user/add-project-member";
|
||||
public final String URL_ADD_ORGANIZATION_MEMBER = "/system/user/add-org-member";
|
||||
@Resource
|
||||
ProjectMapper projectMapper;
|
||||
@Resource
|
||||
private UserRoleRelationMapper userRoleRelationMapper;
|
||||
|
||||
@Test
|
||||
@Order(8)
|
||||
public void testUserResetPasswordError() throws Exception {
|
||||
|
@ -643,7 +639,7 @@ public class UserControllerTests extends BaseTest {
|
|||
//重置非Admin用户的密码
|
||||
{
|
||||
UserBaseBatchRequest request = new UserBaseBatchRequest();
|
||||
request.setSkipIds(Collections.singletonList("admin"));
|
||||
request.setExcludeIds(Collections.singletonList("admin"));
|
||||
request.setSelectAll(true);
|
||||
BatchProcessResponse response = userRequestUtils.parseObjectFromMvcResult(
|
||||
this.requestPostAndReturn(userRequestUtils.URL_USER_RESET_PASSWORD, request),
|
||||
|
@ -906,29 +902,6 @@ public class UserControllerTests extends BaseTest {
|
|||
Assertions.assertTrue(user.getDeleted());
|
||||
USER_LIST.remove(deleteUser);
|
||||
}
|
||||
|
||||
//删除已存的所有用户(不包括admin)
|
||||
{
|
||||
UserBaseBatchRequest request = new UserBaseBatchRequest();
|
||||
request.setUserIds(USER_LIST.stream().map(UserCreateInfo::getId).collect(Collectors.toList()));
|
||||
request.setSkipIds(Collections.singletonList("admin"));
|
||||
BatchProcessResponse response = userRequestUtils.parseObjectFromMvcResult(userRequestUtils.responsePost(userRequestUtils.URL_USER_DELETE, request), BatchProcessResponse.class);
|
||||
Assertions.assertEquals(request.getUserIds().size(), response.getTotalCount(), response.getSuccessCount());
|
||||
//检查数据库
|
||||
UserExample example = new UserExample();
|
||||
example.createCriteria().andIdIn(request.getUserIds());
|
||||
List<User> userList = userMapper.selectByExample(example);
|
||||
for (User user : userList) {
|
||||
Assertions.assertTrue(user.getDeleted());
|
||||
}
|
||||
|
||||
//记录已经删除了的用户,用于反例
|
||||
DELETED_USER_ID_LIST.clear();
|
||||
USER_LIST.clear();
|
||||
DELETED_USER_ID_LIST.addAll(request.getUserIds());
|
||||
//检查删除了的用户,可以用其邮箱继续注册
|
||||
this.testAddSuccess();
|
||||
}
|
||||
}
|
||||
|
||||
//删除失败的方法要放在删除成功方法后面执行
|
||||
|
|
|
@ -13,29 +13,28 @@ import org.springframework.test.web.servlet.request.MockMvcRequestBuilders;
|
|||
|
||||
import java.nio.charset.StandardCharsets;
|
||||
|
||||
|
||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.content;
|
||||
import static org.springframework.test.web.servlet.result.MockMvcResultMatchers.status;
|
||||
|
||||
public class UserRequestUtils {
|
||||
|
||||
//用户管理URL
|
||||
public final String URL_USER_CREATE = "/system/user/add";
|
||||
public final String URL_USER_UPDATE = "/system/user/update";
|
||||
public final String URL_USER_GET = "/system/user/get/%s";
|
||||
public final String URL_USER_PAGE = "/system/user/page";
|
||||
public final String URL_GET_GLOBAL_SYSTEM = "/system/user/get/global/system/role";
|
||||
public final String URL_USER_UPDATE_ENABLE = "/system/user/update/enable";
|
||||
public final String URL_USER_IMPORT = "/system/user/import";
|
||||
public final String URL_USER_DELETE = "/system/user/delete";
|
||||
public final String URL_USER_RESET_PASSWORD = "/system/user/reset/password";
|
||||
public final String URL_USER_ROLE_RELATION = "/system/user/add/batch/user-role";
|
||||
public static final String URL_USER_CREATE = "/system/user/add";
|
||||
public static final String URL_USER_UPDATE = "/system/user/update";
|
||||
public static final String URL_USER_GET = "/system/user/get/%s";
|
||||
public static final String URL_USER_PAGE = "/system/user/page";
|
||||
public static final String URL_GET_GLOBAL_SYSTEM = "/system/user/get/global/system/role";
|
||||
public static final String URL_USER_UPDATE_ENABLE = "/system/user/update/enable";
|
||||
public static final String URL_USER_IMPORT = "/system/user/import";
|
||||
public static final String URL_USER_DELETE = "/system/user/delete";
|
||||
public static final String URL_USER_RESET_PASSWORD = "/system/user/reset/password";
|
||||
public static final String URL_USER_ROLE_RELATION = "/system/user/add/batch/user-role";
|
||||
|
||||
//查找组织、项目
|
||||
public final String URL_GET_ORGANIZATION = "/system/user/get/organization";
|
||||
public final String URL_GET_PROJECT = "/system/user/get/project";
|
||||
public final String URL_ADD_PROJECT_MEMBER = "/system/user/add-project-member";
|
||||
public final String URL_ADD_ORGANIZATION_MEMBER = "/system/user/add-org-member";
|
||||
public static final String URL_GET_ORGANIZATION = "/system/user/get/organization";
|
||||
public static final String URL_GET_PROJECT = "/system/user/get/project";
|
||||
public static final String URL_ADD_PROJECT_MEMBER = "/system/user/add-project-member";
|
||||
public static final String URL_ADD_ORGANIZATION_MEMBER = "/system/user/add-org-member";
|
||||
|
||||
private final MockMvc mockMvc;
|
||||
private final String sessionId;
|
||||
|
|
|
@ -1,7 +0,0 @@
|
|||
-- 初始化一个没有任何权限的用户
|
||||
insert into user(id, name, email, password, create_time, update_time, language, last_organization_id, phone, source,
|
||||
last_project_id, create_user, update_user)
|
||||
VALUES ('tianyang.member.id', 'tianyang.member', 'tianyang.member@163.com', MD5('tianyang.member@163.com'),
|
||||
UNIX_TIMESTAMP() * 1000, UNIX_TIMESTAMP() * 1000, NULL, NUll, '', 'LOCAL', NULL, 'admin', 'admin');
|
||||
INSERT INTO user_role_relation (id, user_id, role_id, source_id, create_time, create_user)
|
||||
VALUES (uuid(), 'tianyang.member.id', 'member', 'system', 1684747668375, 'admin');
|
Binary file not shown.
Loading…
Reference in New Issue