feat:用户管理

This commit is contained in:
xiang
2026-03-20 21:45:34 +08:00
parent e7f90b8d97
commit 4ea369b33d
6 changed files with 62 additions and 4 deletions

View File

@@ -41,4 +41,6 @@ public interface XUserService {
UserDTO getUserDetail(String username);
LoginResp refresh(RefreshRequest request);
Boolean updateStatus(Long id, Integer status);
}

View File

@@ -239,6 +239,23 @@ public class XUserServiceImpl implements XUserService {
public Page<UserResp> getUserList(UserQueryRequest request) {
Page<XUser> page = new Page<>(request.getCurrent(), request.getPageSize());
LambdaQueryWrapper<XUser> lambdaQueryWrapper = Wrappers.lambdaQuery();
lambdaQueryWrapper.eq(XUser::getDelFlag, DelStatusEnum.NOT_DELETED.getCode());
if (StringUtils.isNotBlank(request.getName())) {
lambdaQueryWrapper.like(XUser::getName, request.getName());
}
if (StringUtils.isNotBlank(request.getUsername())) {
lambdaQueryWrapper.eq(XUser::getUsername, request.getUsername());
}
if (StringUtils.isNotBlank(request.getEmail())) {
lambdaQueryWrapper.like(XUser::getEmail, request.getEmail());
}
if (StringUtils.isNotBlank(request.getPhone())) {
lambdaQueryWrapper.like(XUser::getPhone, request.getPhone());
}
if (Objects.nonNull(request.getStatus())) {
lambdaQueryWrapper.eq(XUser::getStatus, request.getStatus());
}
lambdaQueryWrapper.orderByDesc(XUser::getCreateTime);
return userConvert.toPage(userMapper.selectPage(page, lambdaQueryWrapper));
}
@@ -386,4 +403,14 @@ public class XUserServiceImpl implements XUserService {
loginResp.setRefreshToken(request.getRefreshToken());
return loginResp;
}
@Override
public Boolean updateStatus(Long id, Integer status) {
XUser user = userMapper.getUserById(id);
if (Objects.isNull(user)) {
throw new BusinessException(Code01UserErrorCode.USER_NOT_EXISTS);
}
user.setStatus(status);
return userMapper.update(user) > 0;
}
}

View File

@@ -73,12 +73,13 @@
<if test="null != updateTime ">update_time = #{updateTime},</if>
<if test="null != tenantId ">tenant_id = #{tenantId},</if>
<if test="null != token and '' != token ">token = #{token},</if>
<if test="null != refreshToken and '' != refreshToken ">refresh_token = #{refreshToken}</if>
<if test="null != refreshToken and '' != refreshToken ">refresh_token = #{refreshToken},</if>
<if test="status != null">status = #{status}</if>
</set>
WHERE id = #{id}
</update>
<update id="deleteBatch">
update x_user set del_flag = 0, update_time = #{time}, update_by = #{operator} where id in
update x_user set del_flag = 1, update_time = #{time}, update_by = #{operator} where id in
<foreach collection="ids" item="id" open="(" close=")" separator=",">
#{id}
</foreach>