This is an automated email from the ASF dual-hosted git repository.
SbloodyS pushed a commit to branch dev
in repository https://gitbox.apache.org/repos/asf/dolphinscheduler.git
The following commit(s) were added to refs/heads/dev by this push:
new f954412def [Improvement-18249][DAO] Route UserMapper access through
UserDao (#18253)
f954412def is described below
commit f954412defc81a57d6b3a9514222785a38e292ec
Author: Wenjun Ruan <[email protected]>
AuthorDate: Sun May 17 19:47:01 2026 +0800
[Improvement-18249][DAO] Route UserMapper access through UserDao (#18253)
---
.../operator/impl/TokenAuditOperatorImpl.java | 6 +-
.../audit/operator/impl/UserAuditOperatorImpl.java | 6 +-
.../api/interceptor/LoginHandlerInterceptor.java | 6 +-
.../api/service/impl/ProjectServiceImpl.java | 10 +--
.../api/service/impl/QueueServiceImpl.java | 10 +--
.../api/service/impl/ResourcesServiceImpl.java | 6 +-
.../api/service/impl/TenantServiceImpl.java | 6 +-
.../api/service/impl/UsersServiceImpl.java | 74 +++++++++---------
.../impl/WorkflowDefinitionServiceImpl.java | 6 +-
.../interceptor/LoginHandlerInterceptorTest.java | 8 +-
.../api/service/ProjectServiceTest.java | 10 +--
.../api/service/QueueServiceTest.java | 6 +-
.../api/service/TenantServiceTest.java | 6 +-
.../api/service/UsersServiceTest.java | 88 +++++++++++-----------
.../api/service/WorkflowDefinitionServiceTest.java | 6 +-
.../dolphinscheduler/dao/repository/UserDao.java | 37 +++++++++
.../dao/repository/impl/UserDaoImpl.java | 81 ++++++++++++++++++++
17 files changed, 245 insertions(+), 127 deletions(-)
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/audit/operator/impl/TokenAuditOperatorImpl.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/audit/operator/impl/TokenAuditOperatorImpl.java
index 96f1964996..a7407f235e 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/audit/operator/impl/TokenAuditOperatorImpl.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/audit/operator/impl/TokenAuditOperatorImpl.java
@@ -24,7 +24,7 @@ import org.apache.dolphinscheduler.dao.entity.AccessToken;
import org.apache.dolphinscheduler.dao.entity.AuditLog;
import org.apache.dolphinscheduler.dao.entity.User;
import org.apache.dolphinscheduler.dao.mapper.AccessTokenMapper;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import java.util.List;
import java.util.Map;
@@ -39,13 +39,13 @@ public class TokenAuditOperatorImpl extends
BaseAuditOperator {
private AccessTokenMapper accessTokenMapper;
@Autowired
- private UserMapper userMapper;
+ private UserDao userDao;
@Override
public void modifyAuditOperationType(AuditType auditType, Map<String,
Object> paramsMap,
List<AuditLog> auditLogList) {
if (paramsMap.get(AuditLogConstants.USER_ID) != null) {
- User user =
userMapper.selectById(paramsMap.get(AuditLogConstants.USER_ID).toString());
+ User user =
userDao.queryById(paramsMap.get(AuditLogConstants.USER_ID).toString());
auditLogList.forEach(auditLog -> {
auditLog.setModelName(user.getUserName());
auditLog.setModelId(Long.valueOf(user.getId()));
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/audit/operator/impl/UserAuditOperatorImpl.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/audit/operator/impl/UserAuditOperatorImpl.java
index bbce39cb02..f986f83f1f 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/audit/operator/impl/UserAuditOperatorImpl.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/audit/operator/impl/UserAuditOperatorImpl.java
@@ -19,7 +19,7 @@ package org.apache.dolphinscheduler.api.audit.operator.impl;
import org.apache.dolphinscheduler.api.audit.operator.BaseAuditOperator;
import org.apache.dolphinscheduler.dao.entity.User;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -28,7 +28,7 @@ import org.springframework.stereotype.Service;
public class UserAuditOperatorImpl extends BaseAuditOperator {
@Autowired
- private UserMapper userMapper;
+ private UserDao userDao;
@Override
public String getObjectNameFromIdentity(Object identity) {
@@ -37,7 +37,7 @@ public class UserAuditOperatorImpl extends BaseAuditOperator {
return "";
}
- User obj = userMapper.selectById(objId);
+ User obj = userDao.queryById(objId);
return obj == null ? "" : obj.getUserName();
}
}
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/interceptor/LoginHandlerInterceptor.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/interceptor/LoginHandlerInterceptor.java
index e4d292b2cc..e61d878dc1 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/interceptor/LoginHandlerInterceptor.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/interceptor/LoginHandlerInterceptor.java
@@ -24,7 +24,7 @@ import org.apache.dolphinscheduler.common.constants.Constants;
import org.apache.dolphinscheduler.common.enums.Flag;
import org.apache.dolphinscheduler.common.thread.ThreadLocalContext;
import org.apache.dolphinscheduler.dao.entity.User;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import org.apache.commons.lang3.StringUtils;
import org.apache.http.HttpStatus;
@@ -47,7 +47,7 @@ import org.springframework.web.servlet.ModelAndView;
public class LoginHandlerInterceptor implements HandlerInterceptor {
@Autowired
- private UserMapper userMapper;
+ private UserDao userDao;
@Autowired
private Authenticator authenticator;
@@ -76,7 +76,7 @@ public class LoginHandlerInterceptor implements
HandlerInterceptor {
return false;
}
} else {
- user = userMapper.queryUserByToken(token, new Date());
+ user = userDao.queryUserByToken(token, new Date());
if (user == null) {
response.setStatus(HttpStatus.SC_UNAUTHORIZED);
log.info("user token has expired");
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ProjectServiceImpl.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ProjectServiceImpl.java
index c8b256c453..dceeab5b67 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ProjectServiceImpl.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ProjectServiceImpl.java
@@ -37,8 +37,8 @@ import
org.apache.dolphinscheduler.dao.entity.ProjectWorkflowDefinitionCount;
import org.apache.dolphinscheduler.dao.entity.User;
import org.apache.dolphinscheduler.dao.entity.WorkflowDefinition;
import org.apache.dolphinscheduler.dao.mapper.ProjectUserMapper;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
import org.apache.dolphinscheduler.dao.repository.ProjectDao;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import org.apache.dolphinscheduler.dao.repository.WorkflowDefinitionDao;
import org.apache.commons.collections4.CollectionUtils;
@@ -85,7 +85,7 @@ public class ProjectServiceImpl extends BaseServiceImpl
implements ProjectServic
private WorkflowDefinitionDao workflowDefinitionDao;
@Autowired
- private UserMapper userMapper;
+ private UserDao userDao;
/**
* create project
@@ -260,7 +260,7 @@ public class ProjectServiceImpl extends BaseServiceImpl
implements ProjectServic
putMsg(result, Status.SUCCESS);
return result;
}
- List<User> userList = userMapper.selectByIds(projectList.stream()
+ List<User> userList = userDao.queryByIds(projectList.stream()
.map(Project::getUserId).distinct().collect(Collectors.toList()));
Map<Integer, String> userMap =
userList.stream().collect(Collectors.toMap(User::getId, User::getUserName));
List<Long> projectCodes =
projectList.stream().map(Project::getCode).distinct().collect(Collectors.toList());
@@ -394,7 +394,7 @@ public class ProjectServiceImpl extends BaseServiceImpl
implements ProjectServic
putMsg(result, Status.PROJECT_ALREADY_EXISTS, projectName);
return result;
}
- User user = userMapper.selectById(loginUser.getId());
+ User user = userDao.queryById(loginUser.getId());
if (user == null) {
log.error("user {} not exists", loginUser.getId());
putMsg(result, Status.USER_NOT_EXIST, loginUser.getId());
@@ -546,7 +546,7 @@ public class ProjectServiceImpl extends BaseServiceImpl
implements ProjectServic
this.checkProjectAndAuthThrowException(loginUser, project, PROJECT);
// 2. query authorized user list
- List<User> users =
this.userMapper.queryAuthedUserListByProjectId(project.getId());
+ List<User> users =
this.userDao.queryAuthedUserListByProjectId(project.getId());
result.setData(users);
this.putMsg(result, Status.SUCCESS);
return result;
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/QueueServiceImpl.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/QueueServiceImpl.java
index 6456dfb022..c7a46c2966 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/QueueServiceImpl.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/QueueServiceImpl.java
@@ -32,8 +32,8 @@ import org.apache.dolphinscheduler.dao.entity.Queue;
import org.apache.dolphinscheduler.dao.entity.Tenant;
import org.apache.dolphinscheduler.dao.entity.User;
import org.apache.dolphinscheduler.dao.mapper.QueueMapper;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
import org.apache.dolphinscheduler.dao.repository.TenantDao;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
@@ -60,7 +60,7 @@ public class QueueServiceImpl extends BaseServiceImpl
implements QueueService {
private QueueMapper queueMapper;
@Autowired
- private UserMapper userMapper;
+ private UserDao userDao;
@Autowired
private TenantDao tenantDao;
@@ -197,7 +197,7 @@ public class QueueServiceImpl extends BaseServiceImpl
implements QueueService {
if (checkIfQueueIsInUsing(existsQueue.getQueueName(),
updateQueue.getQueueName())) {
// update user related old queue
Integer relatedUserNums =
- userMapper.updateUserQueue(existsQueue.getQueueName(),
updateQueue.getQueueName());
+ userDao.updateUserQueue(existsQueue.getQueueName(),
updateQueue.getQueueName());
log.info("Old queue have related {} users, exec update user
success.", relatedUserNums);
}
@@ -232,7 +232,7 @@ public class QueueServiceImpl extends BaseServiceImpl
implements QueueService {
throw new
ServiceException(Status.DELETE_TENANT_BY_ID_FAIL_TENANTS, tenantList.size());
}
- List<User> userList =
userMapper.queryUserListByQueue(queue.getQueueName());
+ List<User> userList =
userDao.queryUserListByQueue(queue.getQueueName());
if (CollectionUtils.isNotEmpty(userList)) {
log.warn("Delete queue failed, because there are {} users using
it.", userList.size());
throw new ServiceException(Status.DELETE_QUEUE_BY_ID_FAIL_USERS,
userList.size());
@@ -290,7 +290,7 @@ public class QueueServiceImpl extends BaseServiceImpl
implements QueueService {
* @return true if need to update user
*/
private boolean checkIfQueueIsInUsing(String oldQueue, String newQueue) {
- return !oldQueue.equals(newQueue) && userMapper.existUser(oldQueue) ==
Boolean.TRUE;
+ return !oldQueue.equals(newQueue) && userDao.existUser(oldQueue) ==
Boolean.TRUE;
}
/**
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ResourcesServiceImpl.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ResourcesServiceImpl.java
index 0757acd816..73ffefc429 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ResourcesServiceImpl.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/ResourcesServiceImpl.java
@@ -70,8 +70,8 @@ import
org.apache.dolphinscheduler.api.vo.resources.FetchFileContentResponse;
import org.apache.dolphinscheduler.common.utils.FileUtils;
import org.apache.dolphinscheduler.dao.entity.Tenant;
import org.apache.dolphinscheduler.dao.entity.User;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
import org.apache.dolphinscheduler.dao.repository.TenantDao;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import org.apache.dolphinscheduler.plugin.storage.api.StorageEntity;
import org.apache.dolphinscheduler.plugin.storage.api.StorageOperator;
import org.apache.dolphinscheduler.spi.enums.ResourceType;
@@ -101,7 +101,7 @@ public class ResourcesServiceImpl extends BaseServiceImpl
implements ResourcesSe
private TenantDao tenantDao;
@Autowired
- private UserMapper userMapper;
+ private UserDao userDao;
@Autowired
private StorageOperator storageOperator;
@@ -392,7 +392,7 @@ public class ResourcesServiceImpl extends BaseServiceImpl
implements ResourcesSe
@Override
public String queryResourceBaseDir(User loginUser, ResourceType type) {
- User user = userMapper.selectById(loginUser.getId());
+ User user = userDao.queryById(loginUser.getId());
if (user == null) {
throw new ServiceException(Status.USER_NOT_EXIST);
}
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/TenantServiceImpl.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/TenantServiceImpl.java
index 917e6f471b..747ecf3196 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/TenantServiceImpl.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/TenantServiceImpl.java
@@ -36,10 +36,10 @@ import org.apache.dolphinscheduler.dao.entity.Schedule;
import org.apache.dolphinscheduler.dao.entity.Tenant;
import org.apache.dolphinscheduler.dao.entity.User;
import org.apache.dolphinscheduler.dao.entity.WorkflowInstance;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
import org.apache.dolphinscheduler.dao.mapper.WorkflowInstanceMapper;
import org.apache.dolphinscheduler.dao.repository.ScheduleDao;
import org.apache.dolphinscheduler.dao.repository.TenantDao;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
@@ -73,7 +73,7 @@ public class TenantServiceImpl extends BaseServiceImpl
implements TenantService
private ScheduleDao scheduleDao;
@Autowired
- private UserMapper userMapper;
+ private UserDao userDao;
@Autowired
private QueueService queueService;
@@ -235,7 +235,7 @@ public class TenantServiceImpl extends BaseServiceImpl
implements TenantService
throw new
ServiceException(Status.DELETE_TENANT_BY_ID_FAIL_DEFINES, schedules.size());
}
- List<User> userList = userMapper.queryUserListByTenant(tenant.getId());
+ List<User> userList = userDao.queryUserListByTenant(tenant.getId());
if (CollectionUtils.isNotEmpty(userList)) {
throw new ServiceException(Status.DELETE_TENANT_BY_ID_FAIL_USERS,
userList.size());
}
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java
index f546091375..dfa363611d 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/UsersServiceImpl.java
@@ -44,9 +44,9 @@ import
org.apache.dolphinscheduler.dao.mapper.AlertGroupMapper;
import org.apache.dolphinscheduler.dao.mapper.DataSourceUserMapper;
import org.apache.dolphinscheduler.dao.mapper.K8sNamespaceUserMapper;
import org.apache.dolphinscheduler.dao.mapper.ProjectUserMapper;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
import org.apache.dolphinscheduler.dao.repository.ProjectDao;
import org.apache.dolphinscheduler.dao.repository.TenantDao;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
@@ -80,7 +80,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
private AccessTokenMapper accessTokenMapper;
@Autowired
- private UserMapper userMapper;
+ private UserDao userDao;
@Autowired
private TenantDao tenantDao;
@@ -174,7 +174,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
user.setQueue(queue);
// save user
- userMapper.insert(user);
+ userDao.insert(user);
return user;
}
@@ -198,7 +198,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
user.setState(Flag.YES.getCode());
// save user
- userMapper.insert(user);
+ userDao.insert(user);
return user;
}
@@ -210,7 +210,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
*/
@Override
public User getUserByUserName(String userName) {
- return userMapper.queryByUserNameAccurately(userName);
+ return userDao.queryByUserNameAccurately(userName);
}
/**
@@ -221,7 +221,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
*/
@Override
public User queryUser(int id) {
- return userMapper.selectById(id);
+ return userDao.queryById(id);
}
@Override
@@ -229,7 +229,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
if (CollectionUtils.isEmpty(ids)) {
return new ArrayList<>();
}
- return userMapper.selectByIds(ids);
+ return userDao.queryByIds(ids);
}
/**
@@ -240,7 +240,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
*/
@Override
public User queryUser(String name) {
- return userMapper.queryByUserNameAccurately(name);
+ return userDao.queryByUserNameAccurately(name);
}
/**
@@ -253,7 +253,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
@Override
public User queryUser(String name, String password) {
String md5 = EncryptionUtils.getMd5(password);
- return userMapper.queryUserByNamePassword(name, md5);
+ return userDao.queryUserByNamePassword(name, md5);
}
/**
@@ -300,7 +300,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
Page<User> page = new Page<>(pageNo, pageSize);
- IPage<User> scheduleList = userMapper.queryUserPaging(page, searchVal);
+ IPage<User> scheduleList = userDao.queryUserPaging(page, searchVal);
PageInfo<User> pageInfo = new PageInfo<>(pageNo, pageSize);
pageInfo.setTotal((int) scheduleList.getTotal());
@@ -319,9 +319,9 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
}
// Ensure the update time is set
user.setUpdateTime(new Date());
- int updatedRows = userMapper.updateById(user);
+ boolean updated = userDao.updateById(user);
- if (updatedRows == 0) {
+ if (!updated) {
throw new ServiceException(Status.UPDATE_USER_ERROR);
}
return user;
@@ -343,7 +343,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
if (!canOperator(loginUser, userId)) {
throw new ServiceException(Status.USER_NO_OPERATION_PERM);
}
- User user = userMapper.selectById(userId);
+ User user = userDao.queryById(userId);
if (user == null) {
throw new ServiceException(Status.USER_NOT_EXIST, userId);
}
@@ -365,7 +365,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
}
// todo: use the db unique index
- User tempUser = userMapper.queryByUserNameAccurately(userName);
+ User tempUser = userDao.queryByUserNameAccurately(userName);
if (tempUser != null && !userId.equals(tempUser.getId())) {
throw new ServiceException(Status.USER_NAME_EXIST);
}
@@ -408,7 +408,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
user.setUpdateTime(new Date());
user.setTenantId(tenantId);
// updateWorkflowInstance user
- if (userMapper.updateById(user) <= 0) {
+ if (!userDao.updateById(user)) {
throw new ServiceException(Status.UPDATE_USER_ERROR);
}
return user;
@@ -432,7 +432,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
throw new ServiceException(Status.USER_NO_OPERATION_PERM, id);
}
// check exist
- User tempUser = userMapper.selectById(id);
+ User tempUser = userDao.queryById(id);
if (tempUser == null) {
log.error("User does not exist, userId:{}.", id);
throw new ServiceException(Status.USER_NOT_EXIST, id);
@@ -446,12 +446,12 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
throw new ServiceException(Status.TRANSFORM_PROJECT_OWNERSHIP,
projectNames);
}
// delete user
- userMapper.queryTenantCodeByUserId(id);
+ userDao.queryTenantCodeByUserId(id);
accessTokenMapper.deleteAccessTokenByUserId(id);
sessionService.expireSession(id);
- if (userMapper.deleteById(id) <= 0) {
+ if (!userDao.deleteById(id)) {
log.error("User delete error, userId:{}.", id);
throw new ServiceException(Status.DELETE_USER_BY_ID_ERROR);
}
@@ -475,7 +475,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
}
// 2. check if user is existed
- User user = this.userMapper.selectById(userId);
+ User user = this.userDao.queryById(userId);
if (user == null) {
throw new ServiceException(Status.USER_NOT_EXIST, userId);
}
@@ -506,7 +506,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
}
// check exist
- User tempUser = userMapper.selectById(userId);
+ User tempUser = userDao.queryById(userId);
if (tempUser == null) {
throw new ServiceException(Status.USER_NOT_EXIST, userId);
}
@@ -542,7 +542,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
@Transactional
public void grantProject(User loginUser, int userId, String projectIds) {
// check exist
- User tempUser = userMapper.selectById(userId);
+ User tempUser = userDao.queryById(userId);
if (tempUser == null) {
log.error("User does not exist, userId:{}.", userId);
throw new ServiceException(Status.USER_NOT_EXIST, userId);
@@ -583,7 +583,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
@Override
public void grantProjectByCode(final User loginUser, final int userId,
final long projectCode) {
// 1. check if user is existed
- User tempUser = this.userMapper.selectById(userId);
+ User tempUser = this.userDao.queryById(userId);
if (tempUser == null) {
log.error("User does not exist, userId:{}.", userId);
throw new ServiceException(Status.USER_NOT_EXIST, userId);
@@ -635,7 +635,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
}
// 2. check if user is existed
- User user = this.userMapper.selectById(userId);
+ User user = this.userDao.queryById(userId);
if (user == null) {
log.error("User does not exist, userId:{}.", userId);
throw new ServiceException(Status.USER_NOT_EXIST, userId);
@@ -671,7 +671,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
}
// check exist
- User tempUser = userMapper.selectById(userId);
+ User tempUser = userDao.queryById(userId);
if (tempUser == null) {
log.error("User does not exist, userId:{}.", userId);
throw new ServiceException(Status.USER_NOT_EXIST, userId);
@@ -711,7 +711,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
log.warn("Only admin can grant datasource.");
throw new ServiceException(Status.USER_NO_OPERATION_PERM);
}
- User user = userMapper.selectById(userId);
+ User user = userDao.queryById(userId);
if (user == null) {
throw new ServiceException(Status.USER_NOT_EXIST, userId);
}
@@ -749,7 +749,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
if (loginUser.getUserType() == UserType.ADMIN_USER) {
user = loginUser;
} else {
- user = userMapper.queryDetailsById(loginUser.getId());
+ user = userDao.queryDetailsById(loginUser.getId());
List<AlertGroup> alertGroups =
alertGroupMapper.queryByUserId(loginUser.getId());
@@ -792,7 +792,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
log.warn("Only admin can query all general users.");
throw new ServiceException(Status.USER_NO_OPERATION_PERM);
}
- return userMapper.queryAllGeneralUser();
+ return userDao.queryAllGeneralUser();
}
/**
@@ -807,7 +807,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
if (!canOperatorPermissions(loginUser, null,
AuthorizationType.ACCESS_TOKEN, USER_MANAGER)) {
throw new ServiceException(Status.USER_NO_OPERATION_PERM);
}
- return userMapper.queryEnabledUsers();
+ return userDao.queryEnabledUsers();
}
/**
@@ -820,7 +820,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
public Result<Object> verifyUserName(String userName) {
Result<Object> result = new Result<>();
- User user = userMapper.queryByUserNameAccurately(userName);
+ User user = userDao.queryByUserNameAccurately(userName);
if (user != null) {
putMsg(result, Status.USER_NAME_EXIST);
} else {
@@ -845,13 +845,13 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
throw new ServiceException(Status.USER_NO_OPERATION_PERM);
}
- List<User> userList = userMapper.selectList(null);
+ List<User> userList = userDao.queryAll();
List<User> resultUsers = new ArrayList<>();
Set<User> userSet;
if (userList != null && !userList.isEmpty()) {
userSet = new HashSet<>(userList);
- List<User> authedUserList =
userMapper.queryUserListByAlertGroupId(alertgroupId);
+ List<User> authedUserList =
userDao.queryUserListByAlertGroupId(alertgroupId);
if (authedUserList != null && !authedUserList.isEmpty()) {
Set<User> authedUserSet = new HashSet<>(authedUserList);
@@ -876,7 +876,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
log.warn("Only admin can authorize user.");
throw new ServiceException(Status.USER_NO_OPERATION_PERM);
}
- return userMapper.queryUserListByAlertGroupId(alertGroupId);
+ return userDao.queryUserListByAlertGroupId(alertGroupId);
}
/**
@@ -952,7 +952,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
throw new ServiceException(Status.REQUEST_PARAMS_NOT_VALID_ERROR,
userName);
}
- User user = userMapper.queryByUserNameAccurately(userName);
+ User user = userDao.queryByUserNameAccurately(userName);
if (user == null) {
throw new ServiceException(Status.USER_NOT_EXIST, userName);
@@ -964,9 +964,9 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
user.setState(Flag.YES.ordinal());
user.setUpdateTime(new Date());
- userMapper.updateById(user);
+ userDao.updateById(user);
- return userMapper.queryByUserNameAccurately(userName);
+ return userDao.queryByUserNameAccurately(userName);
}
/**
@@ -1034,7 +1034,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
String tenantCode,
String queue,
int state) {
- User user = userMapper.queryByUserNameAccurately(userName);
+ User user = userDao.queryByUserNameAccurately(userName);
if (Objects.isNull(user)) {
Tenant tenant = tenantDao.queryByCode(tenantCode).orElse(null);
user = createUser(userName, userPassword, email, tenant.getId(),
phone, queue, state);
@@ -1042,7 +1042,7 @@ public class UsersServiceImpl extends BaseServiceImpl
implements UsersService {
}
updateUser(user, user.getId(), userName, userPassword, email,
user.getTenantId(), phone, queue, state, null);
- user = userMapper.queryDetailsById(user.getId());
+ user = userDao.queryDetailsById(user.getId());
return user;
}
}
diff --git
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/WorkflowDefinitionServiceImpl.java
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/WorkflowDefinitionServiceImpl.java
index a29947d122..54a165be05 100644
---
a/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/WorkflowDefinitionServiceImpl.java
+++
b/dolphinscheduler-api/src/main/java/org/apache/dolphinscheduler/api/service/impl/WorkflowDefinitionServiceImpl.java
@@ -79,7 +79,6 @@ import
org.apache.dolphinscheduler.dao.entity.WorkflowTaskRelation;
import org.apache.dolphinscheduler.dao.entity.WorkflowTaskRelationLog;
import org.apache.dolphinscheduler.dao.mapper.TaskDefinitionLogMapper;
import org.apache.dolphinscheduler.dao.mapper.TaskDefinitionMapper;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
import org.apache.dolphinscheduler.dao.mapper.WorkflowDefinitionLogMapper;
import org.apache.dolphinscheduler.dao.mapper.WorkflowTaskRelationLogMapper;
import org.apache.dolphinscheduler.dao.mapper.WorkflowTaskRelationMapper;
@@ -88,6 +87,7 @@ import org.apache.dolphinscheduler.dao.repository.ProjectDao;
import org.apache.dolphinscheduler.dao.repository.ScheduleDao;
import org.apache.dolphinscheduler.dao.repository.TaskDefinitionLogDao;
import org.apache.dolphinscheduler.dao.repository.TaskInstanceDao;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import org.apache.dolphinscheduler.dao.repository.WorkflowDefinitionDao;
import org.apache.dolphinscheduler.dao.repository.WorkflowDefinitionLogDao;
import
org.apache.dolphinscheduler.plugin.task.api.model.ConditionDependentItem;
@@ -153,7 +153,7 @@ public class WorkflowDefinitionServiceImpl extends
BaseServiceImpl implements Wo
private ProjectService projectService;
@Autowired
- private UserMapper userMapper;
+ private UserDao userDao;
@Autowired
private WorkflowDefinitionLogMapper workflowDefinitionLogMapper;
@@ -508,7 +508,7 @@ public class WorkflowDefinitionServiceImpl extends
BaseServiceImpl implements Wo
schedulerService.queryScheduleByWorkflowDefinitionCodes(workflowDefinitionCodes)
.stream()
.collect(Collectors.toMap(Schedule::getWorkflowDefinitionCode,
Function.identity()));
- List<UserWithWorkflowDefinitionCode> userWithCodes =
userMapper.queryUserWithWorkflowDefinitionCode(
+ List<UserWithWorkflowDefinitionCode> userWithCodes =
userDao.queryUserWithWorkflowDefinitionCode(
workflowDefinitionCodes);
for (WorkflowDefinition pd : workflowDefinitions) {
userWithCodes.stream()
diff --git
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/interceptor/LoginHandlerInterceptorTest.java
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/interceptor/LoginHandlerInterceptorTest.java
index 8cf9609dbb..73a11f1f08 100644
---
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/interceptor/LoginHandlerInterceptorTest.java
+++
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/interceptor/LoginHandlerInterceptorTest.java
@@ -26,7 +26,7 @@ import org.apache.dolphinscheduler.api.security.Authenticator;
import org.apache.dolphinscheduler.common.enums.ProfileType;
import org.apache.dolphinscheduler.common.enums.UserType;
import org.apache.dolphinscheduler.dao.entity.User;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import java.util.Date;
@@ -60,8 +60,8 @@ public class LoginHandlerInterceptorTest {
LoginHandlerInterceptor interceptor;
@MockBean(name = "authenticator")
private Authenticator authenticator;
- @MockBean(name = "userMapper")
- private UserMapper userMapper;
+ @MockBean(name = "userDao")
+ private UserDao userDao;
@Test
public void testPreHandle() {
@@ -82,7 +82,7 @@ public class LoginHandlerInterceptorTest {
// test token
String token = "123456";
when(request.getHeader("token")).thenReturn(token);
- when(userMapper.queryUserByToken(eq(token),
any(Date.class))).thenReturn(mockUser);
+ when(userDao.queryUserByToken(eq(token),
any(Date.class))).thenReturn(mockUser);
Assertions.assertTrue(interceptor.preHandle(request, response, null));
// test disable user
diff --git
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/ProjectServiceTest.java
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/ProjectServiceTest.java
index 91dee3942e..0393a6be68 100644
---
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/ProjectServiceTest.java
+++
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/ProjectServiceTest.java
@@ -37,8 +37,8 @@ import org.apache.dolphinscheduler.dao.entity.Project;
import org.apache.dolphinscheduler.dao.entity.User;
import org.apache.dolphinscheduler.dao.entity.WorkflowDefinition;
import org.apache.dolphinscheduler.dao.mapper.ProjectUserMapper;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
import org.apache.dolphinscheduler.dao.repository.ProjectDao;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import org.apache.dolphinscheduler.dao.repository.WorkflowDefinitionDao;
import org.apache.commons.collections4.CollectionUtils;
@@ -90,7 +90,7 @@ public class ProjectServiceTest {
private WorkflowDefinitionDao workflowDefinitionDao;
@Mock
- private UserMapper userMapper;
+ private UserDao userDao;
@Mock
private ResourcePermissionCheckService resourcePermissionCheckService;
@@ -276,12 +276,12 @@ public class ProjectServiceTest {
Assertions.assertEquals(Status.PROJECT_ALREADY_EXISTS.getCode(),
result.getCode().intValue());
// USER_NOT_EXIST
- Mockito.when(userMapper.selectById(Mockito.any())).thenReturn(null);
+ Mockito.when(userDao.queryById(Mockito.any())).thenReturn(null);
result = projectService.update(loginUser, 2L, "test", "desc");
Assertions.assertEquals(Status.USER_NOT_EXIST.getCode(),
result.getCode().intValue());
// success
- Mockito.when(userMapper.selectById(Mockito.any())).thenReturn(new
User());
+ Mockito.when(userDao.queryById(Mockito.any())).thenReturn(new User());
project.setUserId(1);
Mockito.when(projectDao.updateById(Mockito.any(Project.class))).thenReturn(true);
result = projectService.update(loginUser, 2L, "test", "desc");
@@ -334,7 +334,7 @@ public class ProjectServiceTest {
.thenReturn(true);
Mockito.when(resourcePermissionCheckService.resourcePermissionCheck(AuthorizationType.PROJECTS,
new Object[]{1},
0, baseServiceLogger)).thenReturn(true);
-
Mockito.when(this.userMapper.queryAuthedUserListByProjectId(1)).thenReturn(this.getUserList());
+
Mockito.when(this.userDao.queryAuthedUserListByProjectId(1)).thenReturn(this.getUserList());
Result result = this.projectService.queryAuthorizedUser(loginUser,
3682329499136L);
logger.info("SUCCESS 1: {}", result.toString());
List<User> users = (List<User>) result.getData();
diff --git
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/QueueServiceTest.java
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/QueueServiceTest.java
index ce6aa96582..252b0aa5c3 100644
---
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/QueueServiceTest.java
+++
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/QueueServiceTest.java
@@ -35,7 +35,7 @@ import org.apache.dolphinscheduler.common.enums.UserType;
import org.apache.dolphinscheduler.dao.entity.Queue;
import org.apache.dolphinscheduler.dao.entity.User;
import org.apache.dolphinscheduler.dao.mapper.QueueMapper;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import org.apache.commons.collections4.CollectionUtils;
@@ -76,7 +76,7 @@ public class QueueServiceTest {
private QueueMapper queueMapper;
@Mock
- private UserMapper userMapper;
+ private UserDao userDao;
@Mock
private ResourcePermissionCheckService resourcePermissionCheckService;
@@ -181,7 +181,7 @@ public class QueueServiceTest {
Assertions.assertEquals(formatter, exception.getMessage());
// success
- when(userMapper.existUser(Mockito.anyString())).thenReturn(false);
+ when(userDao.existUser(Mockito.anyString())).thenReturn(false);
assertDoesNotThrow(() -> queueService.updateQueue(getLoginUser(), 1,
NOT_EXISTS, NOT_EXISTS));
Queue queue = queueService.updateQueue(getLoginUser(), 1, NOT_EXISTS,
NOT_EXISTS);
Assertions.assertNull(queue.getCreateTime());
diff --git
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/TenantServiceTest.java
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/TenantServiceTest.java
index d8b7e8ed7f..3fa5f7f082 100644
---
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/TenantServiceTest.java
+++
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/TenantServiceTest.java
@@ -38,10 +38,10 @@ import org.apache.dolphinscheduler.dao.entity.Schedule;
import org.apache.dolphinscheduler.dao.entity.Tenant;
import org.apache.dolphinscheduler.dao.entity.User;
import org.apache.dolphinscheduler.dao.entity.WorkflowInstance;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
import org.apache.dolphinscheduler.dao.mapper.WorkflowInstanceMapper;
import org.apache.dolphinscheduler.dao.repository.ScheduleDao;
import org.apache.dolphinscheduler.dao.repository.TenantDao;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import org.apache.commons.collections4.CollectionUtils;
@@ -90,7 +90,7 @@ public class TenantServiceTest {
private WorkflowInstanceMapper workflowInstanceMapper;
@Mock
- private UserMapper userMapper;
+ private UserDao userDao;
@Mock
private ResourcePermissionCheckService resourcePermissionCheckService;
@@ -192,7 +192,7 @@ public class TenantServiceTest {
WorkflowExecutionStatus.NOT_TERMINAL_STATES))
.thenReturn(getInstanceList());
when(scheduleDao.queryScheduleListByTenant(tenantCode)).thenReturn(getScheduleList());
- when(userMapper.queryUserListByTenant(3)).thenReturn(getUserList());
+ when(userDao.queryUserListByTenant(3)).thenReturn(getUserList());
// TENANT_NOT_EXIST
assertThrowsServiceException(Status.TENANT_NOT_EXIST, () ->
tenantService.deleteTenantById(getLoginUser(), 12));
diff --git
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/UsersServiceTest.java
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/UsersServiceTest.java
index 42b95591b5..ad8bb74c6b 100644
---
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/UsersServiceTest.java
+++
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/UsersServiceTest.java
@@ -42,9 +42,9 @@ import
org.apache.dolphinscheduler.dao.mapper.AlertGroupMapper;
import org.apache.dolphinscheduler.dao.mapper.DataSourceUserMapper;
import org.apache.dolphinscheduler.dao.mapper.K8sNamespaceUserMapper;
import org.apache.dolphinscheduler.dao.mapper.ProjectUserMapper;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
import org.apache.dolphinscheduler.dao.repository.ProjectDao;
import org.apache.dolphinscheduler.dao.repository.TenantDao;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import java.util.ArrayList;
import java.util.List;
@@ -75,7 +75,7 @@ public class UsersServiceTest {
private UsersServiceImpl usersService;
@Mock
- private UserMapper userMapper;
+ private UserDao userDao;
@Mock
private AccessTokenMapper accessTokenMapper;
@@ -181,7 +181,7 @@ public class UsersServiceTest {
public void testQueryUser() {
String userName = "userTest0001";
String userPassword = "userTest0001";
- when(userMapper.queryUserByNamePassword(userName,
EncryptionUtils.getMd5(userPassword)))
+ when(userDao.queryUserByNamePassword(userName,
EncryptionUtils.getMd5(userPassword)))
.thenReturn(getGeneralUser());
User queryUser = usersService.queryUser(userName, userPassword);
Assertions.assertNotNull(queryUser);
@@ -195,7 +195,7 @@ public class UsersServiceTest {
ids.add(1);
List<User> userList = new ArrayList<>();
userList.add(new User());
- when(userMapper.selectByIds(ids)).thenReturn(userList);
+ when(userDao.queryByIds(ids)).thenReturn(userList);
List<User> userList1 = usersService.queryUser(ids);
Assertions.assertFalse(userList1.isEmpty());
}
@@ -237,7 +237,7 @@ public class UsersServiceTest {
// success
Mockito.when(resourcePermissionCheckService.resourcePermissionCheck(AuthorizationType.ACCESS_TOKEN,
null, 0,
serviceLogger)).thenReturn(true);
- when(userMapper.queryEnabledUsers()).thenReturn(getUserList());
+ when(userDao.queryEnabledUsers()).thenReturn(getUserList());
List<User> users = usersService.queryUserList(user);
Assertions.assertFalse(users.isEmpty());
}
@@ -247,7 +247,7 @@ public class UsersServiceTest {
User user = new User();
IPage<User> page = new Page<>(1, 10);
page.setRecords(getUserList());
- when(userMapper.queryUserPaging(any(Page.class),
eq("userTest"))).thenReturn(page);
+ when(userDao.queryUserPaging(any(Page.class),
eq("userTest"))).thenReturn(page);
// no operate
Result result = usersService.queryUserList(user, "userTest", 1, 10);
@@ -280,8 +280,8 @@ public class UsersServiceTest {
"Asia/Shanghai"));
// success
- when(userMapper.selectById(any())).thenReturn(getUser());
- when(userMapper.updateById(any())).thenReturn(1);
+ when(userDao.queryById(any())).thenReturn(getUser());
+ when(userDao.updateById(any())).thenReturn(true);
assertDoesNotThrow(() -> usersService.updateUser(getLoginUser(),
1,
userName,
@@ -294,8 +294,8 @@ public class UsersServiceTest {
"Asia/Shanghai"));
// non-admin should not modify tenantId and queue
- when(userMapper.selectById(2)).thenReturn(getNonAdminUser());
- User user = userMapper.selectById(2);
+ when(userDao.queryById(2)).thenReturn(getNonAdminUser());
+ User user = userDao.queryById(2);
assertThrowsServiceException(Status.USER_NO_OPERATION_PERM, () ->
usersService.updateUser(user,
2,
userName,
@@ -320,13 +320,13 @@ public class UsersServiceTest {
// update failure (0 rows affected) -> UPDATE_USER_ERROR
User failingUser = new User();
failingUser.setId(1);
- Mockito.when(userMapper.updateById(Mockito.any())).thenReturn(0);
+ Mockito.when(userDao.updateById(Mockito.any())).thenReturn(false);
assertThrowsServiceException(Status.UPDATE_USER_ERROR, () ->
usersService.updateUser(failingUser));
// success path (1 row affected)
User successUser = new User();
successUser.setId(2);
- Mockito.when(userMapper.updateById(Mockito.any())).thenReturn(1);
+ Mockito.when(userDao.updateById(Mockito.any())).thenReturn(true);
User updated = usersService.updateUser(successUser);
Assertions.assertNotNull(updated);
Assertions.assertEquals(2, updated.getId());
@@ -336,9 +336,9 @@ public class UsersServiceTest {
@Test
public void testDeleteUserById() {
User loginUser = new User();
- when(userMapper.queryTenantCodeByUserId(1)).thenReturn(getUser());
- when(userMapper.selectById(1)).thenReturn(getUser());
- when(userMapper.deleteById(1)).thenReturn(1);
+ when(userDao.queryTenantCodeByUserId(1)).thenReturn(getUser());
+ when(userDao.queryById(1)).thenReturn(getUser());
+ when(userDao.deleteById(1)).thenReturn(true);
// no operate
assertThrowsServiceException(Status.USER_NO_OPERATION_PERM,
() -> usersService.deleteUserById(loginUser, 3));
@@ -367,18 +367,18 @@ public class UsersServiceTest {
// user not exist
loginUser.setId(1);
loginUser.setUserType(UserType.ADMIN_USER);
- when(userMapper.selectById(userId)).thenReturn(null);
+ when(userDao.queryById(userId)).thenReturn(null);
assertThrowsServiceException(Status.USER_NOT_EXIST,
() -> usersService.grantProject(loginUser, userId,
projectIds));
// SUCCESS
- when(userMapper.selectById(userId)).thenReturn(getUser());
+ when(userDao.queryById(userId)).thenReturn(getUser());
assertDoesNotThrow(() -> usersService.grantProject(loginUser, userId,
projectIds));
// ERROR: NO_CURRENT_OPERATING_PERMISSION
loginUser.setId(3);
loginUser.setUserType(UserType.GENERAL_USER);
- when(userMapper.selectById(3)).thenReturn(loginUser);
+ when(userDao.queryById(3)).thenReturn(loginUser);
assertThrowsServiceException(Status.NO_CURRENT_OPERATING_PERMISSION,
() -> usersService.grantProject(loginUser, userId,
projectIds));
}
@@ -392,18 +392,18 @@ public class UsersServiceTest {
// user not exist
loginUser.setId(1);
loginUser.setUserType(UserType.ADMIN_USER);
- when(userMapper.selectById(userId)).thenReturn(null);
+ when(userDao.queryById(userId)).thenReturn(null);
assertThrowsServiceException(Status.USER_NOT_EXIST,
() -> usersService.grantProjectWithReadPerm(loginUser, userId,
projectIds));
// SUCCESS
- when(userMapper.selectById(userId)).thenReturn(getUser());
+ when(userDao.queryById(userId)).thenReturn(getUser());
assertDoesNotThrow(() ->
usersService.grantProjectWithReadPerm(loginUser, userId, projectIds));
// ERROR: NO_CURRENT_OPERATING_PERMISSION
loginUser.setId(3);
loginUser.setUserType(UserType.GENERAL_USER);
- when(userMapper.selectById(3)).thenReturn(loginUser);
+ when(userDao.queryById(3)).thenReturn(loginUser);
assertThrowsServiceException(Status.NO_CURRENT_OPERATING_PERMISSION,
() -> usersService.grantProjectWithReadPerm(loginUser, userId,
projectIds));
}
@@ -414,8 +414,8 @@ public class UsersServiceTest {
final long projectCode = 1L;
final int projectCreator = 1;
final int authorizer = 100;
-
Mockito.when(this.userMapper.selectById(authorizer)).thenReturn(this.getUser());
-
Mockito.when(this.userMapper.selectById(projectCreator)).thenReturn(this.getUser());
+
Mockito.when(this.userDao.queryById(authorizer)).thenReturn(this.getUser());
+
Mockito.when(this.userDao.queryById(projectCreator)).thenReturn(this.getUser());
Mockito.when(this.projectDao.queryByCode(projectCode)).thenReturn(this.getProject());
// ERROR: USER_NOT_EXIST
@@ -446,7 +446,7 @@ public class UsersServiceTest {
@Test
public void testRevokeProject() {
- Mockito.when(this.userMapper.selectById(1)).thenReturn(this.getUser());
+ Mockito.when(this.userDao.queryById(1)).thenReturn(this.getUser());
final long projectCode = 3682329499136L;
@@ -470,7 +470,7 @@ public class UsersServiceTest {
@Test
public void testRevokeProjectById() {
- Mockito.when(this.userMapper.selectById(1)).thenReturn(this.getUser());
+ Mockito.when(this.userDao.queryById(1)).thenReturn(this.getUser());
String projectId = "100000";
@@ -492,7 +492,7 @@ public class UsersServiceTest {
@Test
public void testGrantNamespaces() {
String namespaceIds = "100000,120000";
- when(userMapper.selectById(1)).thenReturn(getUser());
+ when(userDao.queryById(1)).thenReturn(getUser());
User loginUser = new User();
// user not exist
@@ -513,12 +513,12 @@ public class UsersServiceTest {
// user not exist
loginUser.setId(1);
loginUser.setUserType(UserType.ADMIN_USER);
- when(userMapper.selectById(userId)).thenReturn(null);
+ when(userDao.queryById(userId)).thenReturn(null);
assertThrowsServiceException(Status.USER_NOT_EXIST,
() -> usersService.grantDataSource(loginUser, userId,
datasourceIds));
// test admin user
- when(userMapper.selectById(userId)).thenReturn(getUser());
+ when(userDao.queryById(userId)).thenReturn(getUser());
when(datasourceUserMapper.deleteByUserId(Mockito.anyInt())).thenReturn(1);
assertDoesNotThrow(() -> usersService.grantDataSource(loginUser,
userId, datasourceIds));
@@ -548,7 +548,7 @@ public class UsersServiceTest {
// get general user
loginUser.setUserType(null);
loginUser.setId(1);
- when(userMapper.queryDetailsById(1)).thenReturn(getGeneralUser());
+ when(userDao.queryDetailsById(1)).thenReturn(getGeneralUser());
when(alertGroupMapper.queryByUserId(1)).thenReturn(getAlertGroups());
User generalInfo = usersService.getUserInfo(loginUser);
Assertions.assertEquals("userTest0001", generalInfo.getUserName());
@@ -562,7 +562,7 @@ public class UsersServiceTest {
() -> usersService.queryAllGeneralUsers(loginUser));
// success
loginUser.setUserType(UserType.ADMIN_USER);
- when(userMapper.queryAllGeneralUser()).thenReturn(getUserList());
+ when(userDao.queryAllGeneralUser()).thenReturn(getUserList());
List<User> users = usersService.queryAllGeneralUsers(loginUser);
Assertions.assertFalse(users.isEmpty());
}
@@ -573,7 +573,7 @@ public class UsersServiceTest {
Result result = usersService.verifyUserName("admin89899");
Assertions.assertEquals(Status.SUCCESS.getMsg(), result.getMsg());
// exist user
-
when(userMapper.queryByUserNameAccurately("userTest0001")).thenReturn(getUser());
+
when(userDao.queryByUserNameAccurately("userTest0001")).thenReturn(getUser());
result = usersService.verifyUserName("userTest0001");
Assertions.assertEquals(Status.USER_NAME_EXIST.getMsg(),
result.getMsg());
}
@@ -581,8 +581,8 @@ public class UsersServiceTest {
@Test
public void testUnauthorizedUser() {
User loginUser = new User();
- when(userMapper.selectList(null)).thenReturn(getUserList());
-
when(userMapper.queryUserListByAlertGroupId(2)).thenReturn(getUserList());
+ when(userDao.queryAll()).thenReturn(getUserList());
+ when(userDao.queryUserListByAlertGroupId(2)).thenReturn(getUserList());
// no operate
assertThrowsServiceException(Status.USER_NO_OPERATION_PERM,
() -> usersService.unauthorizedUser(loginUser, 2));
@@ -595,7 +595,7 @@ public class UsersServiceTest {
@Test
public void testAuthorizedUser() {
User loginUser = new User();
-
when(userMapper.queryUserListByAlertGroupId(2)).thenReturn(getUserList());
+ when(userDao.queryUserListByAlertGroupId(2)).thenReturn(getUserList());
// no operate
assertThrowsServiceException(Status.USER_NO_OPERATION_PERM,
() -> usersService.authorizedUser(loginUser, 2));
@@ -675,12 +675,12 @@ public class UsersServiceTest {
// user state error
userName = "userTest0001";
final String existingName = userName;
-
when(userMapper.queryByUserNameAccurately(existingName)).thenReturn(getUser());
+
when(userDao.queryByUserNameAccurately(existingName)).thenReturn(getUser());
assertThrowsServiceException(Status.REQUEST_PARAMS_NOT_VALID_ERROR,
() -> usersService.activateUser(user, existingName));
// success
-
when(userMapper.queryByUserNameAccurately(existingName)).thenReturn(getDisabledUser());
+
when(userDao.queryByUserNameAccurately(existingName)).thenReturn(getDisabledUser());
User activated = usersService.activateUser(user, existingName);
Assertions.assertNotNull(activated);
}
@@ -701,8 +701,8 @@ public class UsersServiceTest {
// batch activate user names
user.setUserType(UserType.ADMIN_USER);
-
when(userMapper.queryByUserNameAccurately("userTest0001")).thenReturn(getUser());
-
when(userMapper.queryByUserNameAccurately("userTest0002")).thenReturn(getDisabledUser());
+
when(userDao.queryByUserNameAccurately("userTest0001")).thenReturn(getUser());
+
when(userDao.queryByUserNameAccurately("userTest0002")).thenReturn(getDisabledUser());
Map<String, Object> result = usersService.batchActivateUser(user,
userNames);
Map<String, Object> successData = (Map<String, Object>)
result.get("success");
int totalSuccess = (Integer) successData.get("sum");
@@ -725,17 +725,17 @@ public class UsersServiceTest {
int stat = 1;
// User exists
- when(userMapper.existUser(userName)).thenReturn(true);
- when(userMapper.selectById(getUser().getId())).thenReturn(getUser());
-
when(userMapper.queryDetailsById(getUser().getId())).thenReturn(getUser());
-
when(userMapper.queryByUserNameAccurately(userName)).thenReturn(getUser());
- when(userMapper.updateById(any())).thenReturn(1);
+ when(userDao.existUser(userName)).thenReturn(true);
+ when(userDao.queryById(getUser().getId())).thenReturn(getUser());
+
when(userDao.queryDetailsById(getUser().getId())).thenReturn(getUser());
+
when(userDao.queryByUserNameAccurately(userName)).thenReturn(getUser());
+ when(userDao.updateById(any())).thenReturn(true);
when(tenantDao.queryByCode(tenantCode)).thenReturn(Optional.of(getTenant()));
user = usersService.createUserIfNotExists(userName, userPassword,
email, phone, tenantCode, queueName, stat);
Assertions.assertEquals(getUser(), user);
// User not exists
- Mockito.when(userMapper.existUser(userName)).thenReturn(false);
+ Mockito.when(userDao.existUser(userName)).thenReturn(false);
Mockito.when(tenantDao.queryByCode(tenantCode)).thenReturn(Optional.of(getTenant()));
user = usersService.createUserIfNotExists(userName, userPassword,
email, phone, tenantCode, queueName, stat);
Assertions.assertNotNull(user);
diff --git
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/WorkflowDefinitionServiceTest.java
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/WorkflowDefinitionServiceTest.java
index 860b40002e..168d9876bc 100644
---
a/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/WorkflowDefinitionServiceTest.java
+++
b/dolphinscheduler-api/src/test/java/org/apache/dolphinscheduler/api/service/WorkflowDefinitionServiceTest.java
@@ -62,7 +62,6 @@ import
org.apache.dolphinscheduler.dao.entity.WorkflowDefinition;
import org.apache.dolphinscheduler.dao.entity.WorkflowTaskRelation;
import org.apache.dolphinscheduler.dao.mapper.TaskDefinitionLogMapper;
import org.apache.dolphinscheduler.dao.mapper.TaskDefinitionMapper;
-import org.apache.dolphinscheduler.dao.mapper.UserMapper;
import org.apache.dolphinscheduler.dao.mapper.WorkflowDefinitionLogMapper;
import org.apache.dolphinscheduler.dao.mapper.WorkflowTaskRelationLogMapper;
import org.apache.dolphinscheduler.dao.mapper.WorkflowTaskRelationMapper;
@@ -71,6 +70,7 @@ import org.apache.dolphinscheduler.dao.repository.ProjectDao;
import org.apache.dolphinscheduler.dao.repository.ScheduleDao;
import org.apache.dolphinscheduler.dao.repository.TaskDefinitionLogDao;
import org.apache.dolphinscheduler.dao.repository.TaskInstanceDao;
+import org.apache.dolphinscheduler.dao.repository.UserDao;
import org.apache.dolphinscheduler.dao.repository.WorkflowDefinitionDao;
import org.apache.dolphinscheduler.dao.repository.WorkflowDefinitionLogDao;
import org.apache.dolphinscheduler.dao.utils.WorkerGroupUtils;
@@ -198,7 +198,7 @@ public class WorkflowDefinitionServiceTest extends
BaseServiceTestTool {
private GlobalParamsValidator globalParamsValidator;
@Mock
- private UserMapper userMapper;
+ private UserDao userDao;
protected User user;
protected Exception exception;
@@ -357,7 +357,7 @@ public class WorkflowDefinitionServiceTest extends
BaseServiceTestTool {
eq(projectCode))).thenReturn(pageListingResult);
String user1 = "user1";
String user2 = "user2";
-
when(userMapper.queryUserWithWorkflowDefinitionCode(processDefinitionCodes))
+
when(userDao.queryUserWithWorkflowDefinitionCode(processDefinitionCodes))
.thenReturn(Arrays.asList(
UserWithWorkflowDefinitionCode.builder()
.workflowDefinitionCode(processDefinitionCode1)
diff --git
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/UserDao.java
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/UserDao.java
index 5720b3aac4..3314e5d009 100644
---
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/UserDao.java
+++
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/UserDao.java
@@ -18,6 +18,43 @@
package org.apache.dolphinscheduler.dao.repository;
import org.apache.dolphinscheduler.dao.entity.User;
+import org.apache.dolphinscheduler.dao.entity.UserWithWorkflowDefinitionCode;
+
+import java.util.Date;
+import java.util.List;
+
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
public interface UserDao extends IDao<User> {
+
+ List<User> queryAllGeneralUser();
+
+ User queryByUserNameAccurately(String userName);
+
+ User queryUserByNamePassword(String userName, String password);
+
+ IPage<User> queryUserPaging(Page<User> page, String userName);
+
+ User queryDetailsById(int userId);
+
+ List<User> queryUserListByAlertGroupId(int alertGroupId);
+
+ List<User> queryUserListByTenant(int tenantId);
+
+ User queryTenantCodeByUserId(int userId);
+
+ User queryUserByToken(String token, Date now);
+
+ List<User> queryUserListByQueue(String queueName);
+
+ Boolean existUser(String queue);
+
+ Integer updateUserQueue(String oldQueue, String newQueue);
+
+ List<User> queryAuthedUserListByProjectId(int projectId);
+
+ List<User> queryEnabledUsers();
+
+ List<UserWithWorkflowDefinitionCode>
queryUserWithWorkflowDefinitionCode(List<Long> workflowDefinitionCodes);
}
diff --git
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/impl/UserDaoImpl.java
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/impl/UserDaoImpl.java
index 638ad12d5b..47042a2af2 100644
---
a/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/impl/UserDaoImpl.java
+++
b/dolphinscheduler-dao/src/main/java/org/apache/dolphinscheduler/dao/repository/impl/UserDaoImpl.java
@@ -18,14 +18,21 @@
package org.apache.dolphinscheduler.dao.repository.impl;
import org.apache.dolphinscheduler.dao.entity.User;
+import org.apache.dolphinscheduler.dao.entity.UserWithWorkflowDefinitionCode;
import org.apache.dolphinscheduler.dao.mapper.UserMapper;
import org.apache.dolphinscheduler.dao.repository.BaseDao;
import org.apache.dolphinscheduler.dao.repository.UserDao;
+import java.util.Date;
+import java.util.List;
+
import lombok.NonNull;
import org.springframework.stereotype.Repository;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+
@Repository
public class UserDaoImpl extends BaseDao<User, UserMapper> implements UserDao {
@@ -33,4 +40,78 @@ public class UserDaoImpl extends BaseDao<User, UserMapper>
implements UserDao {
super(userMapper);
}
+ @Override
+ public List<User> queryAllGeneralUser() {
+ return mybatisMapper.queryAllGeneralUser();
+ }
+
+ @Override
+ public User queryByUserNameAccurately(String userName) {
+ return mybatisMapper.queryByUserNameAccurately(userName);
+ }
+
+ @Override
+ public User queryUserByNamePassword(String userName, String password) {
+ return mybatisMapper.queryUserByNamePassword(userName, password);
+ }
+
+ @Override
+ public IPage<User> queryUserPaging(Page<User> page, String userName) {
+ return mybatisMapper.queryUserPaging(page, userName);
+ }
+
+ @Override
+ public User queryDetailsById(int userId) {
+ return mybatisMapper.queryDetailsById(userId);
+ }
+
+ @Override
+ public List<User> queryUserListByAlertGroupId(int alertGroupId) {
+ return mybatisMapper.queryUserListByAlertGroupId(alertGroupId);
+ }
+
+ @Override
+ public List<User> queryUserListByTenant(int tenantId) {
+ return mybatisMapper.queryUserListByTenant(tenantId);
+ }
+
+ @Override
+ public User queryTenantCodeByUserId(int userId) {
+ return mybatisMapper.queryTenantCodeByUserId(userId);
+ }
+
+ @Override
+ public User queryUserByToken(String token, Date now) {
+ return mybatisMapper.queryUserByToken(token, now);
+ }
+
+ @Override
+ public List<User> queryUserListByQueue(String queueName) {
+ return mybatisMapper.queryUserListByQueue(queueName);
+ }
+
+ @Override
+ public Boolean existUser(String queue) {
+ return mybatisMapper.existUser(queue);
+ }
+
+ @Override
+ public Integer updateUserQueue(String oldQueue, String newQueue) {
+ return mybatisMapper.updateUserQueue(oldQueue, newQueue);
+ }
+
+ @Override
+ public List<User> queryAuthedUserListByProjectId(int projectId) {
+ return mybatisMapper.queryAuthedUserListByProjectId(projectId);
+ }
+
+ @Override
+ public List<User> queryEnabledUsers() {
+ return mybatisMapper.queryEnabledUsers();
+ }
+
+ @Override
+ public List<UserWithWorkflowDefinitionCode>
queryUserWithWorkflowDefinitionCode(List<Long> workflowDefinitionCodes) {
+ return
mybatisMapper.queryUserWithWorkflowDefinitionCode(workflowDefinitionCodes);
+ }
}