feature #1

Merged
XiaoLFeng merged 3 commits from feature into master 2024-01-24 22:14:03 +08:00
9 changed files with 68 additions and 21 deletions

21
Jenkinsfile vendored Normal file
View File

@ -0,0 +1,21 @@
pipeline {
environment {
QODANA_TOKEN=credentials('eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJvcmdhbml6YXRpb24iOiJwNTZYRyIsInByb2plY3QiOiIzd1JQNyIsInRva2VuIjoiQWFxVkoifQ.R3TH0E2LgVpBorJ1wyIx3zjIM1p4j-taEEShZKhH2l8')
}
agent {
docker {
args '''
-v "${WORKSPACE}":/data/project
--entrypoint=""
'''
image 'jetbrains/qodana-<linter>'
}
}
stages {
stage('Qodana') {
steps {
sh '''qodana'''
}
}
}
}

View File

@ -130,23 +130,27 @@ public class UserDAO {
userMapper.userEditProfile(userEditProfileVO);
}
public List<UserCurrentBackVO> userCurrentAll(UserAllCurrentVO userAllCurrentVO) {
public UserCurrentBackVO userCurrentAll(UserAllCurrentVO userAllCurrentVO) {
log.info("\t> 执行 DAO 层 UserDAO.userCurrentAll 方法");
log.info("\t\t> 从 MySQL 获取数据");
List<UserDO> userCurrentDO = userMapper.getAllUser(userAllCurrentVO);
List<UserCurrentBackVO> userCurrentDOList = new ArrayList<>();
userCurrentDO.forEach(it -> userCurrentDOList.add(Processing.returnUserInfo(it, roleDAO, permissionDAO)));
return userCurrentDOList;
UserCurrentBackVO userCurrentBackVO = new UserCurrentBackVO();
userCurrentBackVO.setUsers(new ArrayList<>())
.setCount(userMapper.getUsersCount());
userCurrentDO.forEach(it -> userCurrentBackVO.getUsers().add(Processing.returnUserInfo(it, roleDAO, permissionDAO)));
return userCurrentBackVO;
}
public List<UserCurrentBackVO> userCurrentAllLike(UserAllCurrentVO userAllCurrentVO) {
public UserCurrentBackVO userCurrentAllLike(UserAllCurrentVO userAllCurrentVO) {
log.info("\t> 执行 DAO 层 UserDAO.userCurrentAllLike 方法");
log.info("\t\t> 从 MySQL 获取数据");
List<UserDO> userCurrentDO = userMapper.getAllUserBySearch(userAllCurrentVO);
List<UserCurrentBackVO> userCurrentDOList = new ArrayList<>();
userCurrentDO.forEach(it -> userCurrentDOList.add(Processing.returnUserInfo(it, roleDAO, permissionDAO)));
return userCurrentDOList;
UserCurrentBackVO userCurrentBackVO = new UserCurrentBackVO();
userCurrentBackVO.setUsers(new ArrayList<>())
.setCount(userMapper.getUsersCount());
userCurrentDO.forEach(it -> userCurrentBackVO.getUsers().add(Processing.returnUserInfo(it, roleDAO, permissionDAO)));
return userCurrentBackVO;
}
@ -250,4 +254,10 @@ public class UserDAO {
log.info("\t\t> 从 MySQL 获取数据");
return userMapper.getUserByPhone(phone);
}
public Long getUsersCount() {
log.info("\t> 执行 DAO 层 getUsersCount 方法");
log.info("\t\t> 从 MySQL 获取数据");
return userMapper.getUsersCount();
}
}

View File

@ -12,7 +12,7 @@ public interface RoleMapper {
@Insert("insert into organize_oa.oa_role_user (uid, rid) VALUE (#{uid},#{rid})")
void roleAddUser(Long uid, Long rid);
@Select("INSERT INTO organize_oa.oa_role (role_name) VALUES (#{roleName})")
@Select("INSERT INTO organize_oa.oa_role (role_name,display_name) VALUES (#{roleName}, ${display_name})")
void roleAdd(RoleDO roleDO);
@Delete("delete from organize_oa.oa_role_user where uid=#{uid}")

View File

@ -91,4 +91,7 @@ public interface UserMapper {
@Select("SELECT is_delete FROM organize_oa.oa_user WHERE id = #{id}")
boolean userGetDelete(Long id);
@Select("SELECT COUNT(*) FROM organize_oa.oa_user")
Long getUsersCount();
}

View File

@ -18,9 +18,16 @@ import java.util.List;
@Data
@Accessors(chain = true)
public class UserCurrentBackVO {
private Long count;
private List<UserCurrent> users;
@Data
@Accessors(chain = true)
public static class UserCurrent {
private ReturnUser user;
private ReturnUserRole role;
private List<String> permission;
}
@Data
@Accessors(chain = true)

View File

@ -10,6 +10,8 @@ import javax.validation.constraints.Pattern;
@Data
public class UserEditVO {
@NotNull
private Long rid;
@NotNull
private Long id;

View File

@ -74,6 +74,9 @@ public class AuthServiceImpl implements AuthService {
// 插入数据
if (userMapper.insertUser(userDO)) {
userDO.setPassword(null);
//默认角色为学生
UserDO userDO1 = userMapper.getUserByUserNum(userDO.getUsername());
roleDAO.addRoleUser(userDO1.getId(), 2L);
return ResultUtil.success("注册成功", userDO);
} else {
return ResultUtil.error(ErrorCode.DATABASE_INSERT_ERROR);

View File

@ -110,23 +110,23 @@ public class UserServiceImpl implements UserService {
userAllCurrentVO.setPage((userAllCurrentVO.getPage() - 1) * userAllCurrentVO.getLimit());
}
// 检查是否处于模糊查询
List<UserCurrentBackVO> userAllCurrentVOList;
UserCurrentBackVO userCurrentBackVO;
if (userAllCurrentVO.getSearch() != null && !userAllCurrentVO.getSearch().isEmpty()) {
if (Pattern.matches("^[0-9A-Za-z_@]+$", userAllCurrentVO.getSearch())) {
userAllCurrentVOList = userDAO.userCurrentAllLike(userAllCurrentVO);
userCurrentBackVO = userDAO.userCurrentAllLike(userAllCurrentVO);
} else {
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("只允许 0-9、A-Z、a-z、_和@进行查询");
return ResultUtil.error(ErrorCode.REQUEST_BODY_ERROR, arrayList);
}
} else {
userAllCurrentVOList = userDAO.userCurrentAll(userAllCurrentVO);
userCurrentBackVO = userDAO.userCurrentAll(userAllCurrentVO);
}
// 检查是否存在 Role 筛选
if (userAllCurrentVO.getRole() != null) {
userAllCurrentVOList.removeIf(it -> !userAllCurrentVO.getRole().equals(it.getRole().getRid()));
userCurrentBackVO.getUsers().removeIf(it -> !userAllCurrentVO.getRole().equals(it.getRole().getRid()));
}
return ResultUtil.success(userAllCurrentVOList);
return ResultUtil.success(userCurrentBackVO);
}
@Override
@ -249,6 +249,7 @@ public class UserServiceImpl implements UserService {
.setAccountNoLocked(userEditVO.getIsLocked());
//向数据库中修改属性
userDAO.userEdit(userDO);
roleDAO.roleChangeUser(userEditVO.getId(),userEditVO.getRid());
return ResultUtil.success("用户信息修改成功");
}

View File

@ -259,8 +259,8 @@ public class Processing {
* @param userDO 用户信息
* @return {@link BaseResponse}
*/
public static @NotNull UserCurrentBackVO returnUserInfo(@NotNull UserDO userDO, RoleDAO roleDAO, PermissionDAO permissionDAO) {
UserCurrentBackVO userCurrentBackVO = new UserCurrentBackVO();
public static @NotNull UserCurrentBackVO.UserCurrent returnUserInfo(@NotNull UserDO userDO, RoleDAO roleDAO, PermissionDAO permissionDAO) {
UserCurrentBackVO.UserCurrent userCurrent = new UserCurrentBackVO.UserCurrent();
// 获取用户角色
RoleUserDO getUserRole = roleDAO.getRoleUserByUid(userDO.getId());
if (getUserRole == null) {
@ -280,7 +280,7 @@ public class Processing {
// 获取权限列表信息
getPermissionForString = permissionDAO.getPermission(userDO.getId());
}
userCurrentBackVO.setUser(new UserCurrentBackVO.ReturnUser()
userCurrent.setUser(new UserCurrentBackVO.ReturnUser()
.setId(userDO.getId())
.setJobId(userDO.getJobId())
.setUsername(userDO.getUsername())
@ -304,7 +304,7 @@ public class Processing {
.setRole(new UserCurrentBackVO.ReturnUserRole()
.setRid(getUserRole.getRid()))
.setPermission(getPermissionForString);
return userCurrentBackVO;
return userCurrent;
}
public static List<UserDO> orderUser(List<UserDO> userDOS,String order,String orderBy){