This commit is contained in:
parent
14a1e5e7cb
commit
df1af787f1
|
@ -14,9 +14,11 @@ import net.maku.framework.security.user.UserDetail;
|
|||
import net.maku.system.convert.SysUserConvert;
|
||||
import net.maku.system.entity.SysUserEntity;
|
||||
import net.maku.system.query.SysUserQuery;
|
||||
import net.maku.system.service.SysPostService;
|
||||
import net.maku.system.service.SysUserPostService;
|
||||
import net.maku.system.service.SysUserRoleService;
|
||||
import net.maku.system.service.SysUserService;
|
||||
import net.maku.system.vo.SysUserBaseVO;
|
||||
import net.maku.system.vo.SysUserPasswordVO;
|
||||
import net.maku.system.vo.SysUserVO;
|
||||
import org.springdoc.core.annotations.ParameterObject;
|
||||
|
@ -42,6 +44,7 @@ public class SysUserController {
|
|||
private final SysUserService sysUserService;
|
||||
private final SysUserRoleService sysUserRoleService;
|
||||
private final SysUserPostService sysUserPostService;
|
||||
private final SysPostService sysPostService;
|
||||
private final PasswordEncoder passwordEncoder;
|
||||
|
||||
@GetMapping("page")
|
||||
|
@ -77,9 +80,26 @@ public class SysUserController {
|
|||
public Result<SysUserVO> info() {
|
||||
SysUserVO user = SysUserConvert.INSTANCE.convert(SecurityUser.getUser());
|
||||
|
||||
// 用户岗位列表
|
||||
List<Long> postIdList = sysUserPostService.getPostIdList(user.getId());
|
||||
user.setPostIdList(postIdList);
|
||||
|
||||
// 用户岗位名称列表
|
||||
List<String> postNameList = sysPostService.getNameList(postIdList);
|
||||
user.setPostNameList(postNameList);
|
||||
|
||||
return Result.ok(user);
|
||||
}
|
||||
|
||||
@PutMapping("info")
|
||||
@Operation(summary = "修改登录用户信息")
|
||||
@OperateLog(type = OperateTypeEnum.UPDATE)
|
||||
public Result<String> loginInfo(@RequestBody @Valid SysUserBaseVO vo) {
|
||||
sysUserService.updateLoginInfo(vo);
|
||||
|
||||
return Result.ok();
|
||||
}
|
||||
|
||||
@PutMapping("password")
|
||||
@Operation(summary = "修改密码")
|
||||
@OperateLog(type = OperateTypeEnum.UPDATE)
|
||||
|
|
|
@ -2,6 +2,7 @@ package net.maku.system.convert;
|
|||
|
||||
import net.maku.framework.security.user.UserDetail;
|
||||
import net.maku.system.entity.SysUserEntity;
|
||||
import net.maku.system.vo.SysUserBaseVO;
|
||||
import net.maku.system.vo.SysUserExcelVO;
|
||||
import net.maku.system.vo.SysUserVO;
|
||||
import org.mapstruct.Mapper;
|
||||
|
@ -18,6 +19,8 @@ public interface SysUserConvert {
|
|||
|
||||
SysUserEntity convert(SysUserVO vo);
|
||||
|
||||
SysUserEntity convert(SysUserBaseVO vo);
|
||||
|
||||
SysUserVO convert(UserDetail userDetail);
|
||||
|
||||
UserDetail convertDetail(SysUserEntity entity);
|
||||
|
|
|
@ -24,4 +24,7 @@ public class SysUserQuery extends Query {
|
|||
@Schema(description = "性别")
|
||||
private Integer gender;
|
||||
|
||||
@Schema(description = "机构ID")
|
||||
private Long orgId;
|
||||
|
||||
}
|
||||
|
|
|
@ -12,16 +12,17 @@ import net.maku.framework.common.utils.DateUtils;
|
|||
import net.maku.framework.common.utils.ExcelUtils;
|
||||
import net.maku.framework.common.utils.PageResult;
|
||||
import net.maku.framework.mybatis.service.impl.BaseServiceImpl;
|
||||
import net.maku.framework.security.cache.TokenStoreCache;
|
||||
import net.maku.framework.security.user.SecurityUser;
|
||||
import net.maku.framework.security.utils.TokenUtils;
|
||||
import net.maku.system.convert.SysUserConvert;
|
||||
import net.maku.system.dao.SysUserDao;
|
||||
import net.maku.system.entity.SysUserEntity;
|
||||
import net.maku.system.enums.SuperAdminEnum;
|
||||
import net.maku.system.query.SysRoleUserQuery;
|
||||
import net.maku.system.query.SysUserQuery;
|
||||
import net.maku.system.service.SysUserPostService;
|
||||
import net.maku.system.service.SysUserRoleService;
|
||||
import net.maku.system.service.SysUserService;
|
||||
import net.maku.system.service.SysUserTokenService;
|
||||
import net.maku.system.service.*;
|
||||
import net.maku.system.vo.SysUserBaseVO;
|
||||
import net.maku.system.vo.SysUserExcelVO;
|
||||
import net.maku.system.vo.SysUserVO;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
@ -45,6 +46,8 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserDao, SysUserEntit
|
|||
private final SysUserRoleService sysUserRoleService;
|
||||
private final SysUserPostService sysUserPostService;
|
||||
private final SysUserTokenService sysUserTokenService;
|
||||
private final SysOrgService sysOrgService;
|
||||
private final TokenStoreCache tokenStoreCache;
|
||||
private final TransService transService;
|
||||
|
||||
@Override
|
||||
|
@ -55,7 +58,7 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserDao, SysUserEntit
|
|||
// 分页查询
|
||||
IPage<SysUserEntity> page = getPage(query);
|
||||
params.put(Constant.PAGE, page);
|
||||
|
||||
|
||||
// 数据列表
|
||||
List<SysUserEntity> list = baseMapper.getList(params);
|
||||
|
||||
|
@ -71,6 +74,13 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserDao, SysUserEntit
|
|||
// 数据权限
|
||||
params.put(Constant.DATA_SCOPE, getDataScope("t1", null));
|
||||
|
||||
// 机构过滤
|
||||
if (query.getOrgId() != null) {
|
||||
// 查询子机构ID列表,包含本机构
|
||||
List<Long> orgList = sysOrgService.getSubOrgIdList(query.getOrgId());
|
||||
params.put("orgList", orgList);
|
||||
}
|
||||
|
||||
return params;
|
||||
}
|
||||
|
||||
|
@ -133,6 +143,25 @@ public class SysUserServiceImpl extends BaseServiceImpl<SysUserDao, SysUserEntit
|
|||
}
|
||||
|
||||
@Override
|
||||
public void updateLoginInfo(SysUserBaseVO vo) {
|
||||
SysUserEntity entity = SysUserConvert.INSTANCE.convert(vo);
|
||||
// 设置登录用户ID
|
||||
entity.setId(SecurityUser.getUserId());
|
||||
|
||||
// 判断手机号是否存在
|
||||
SysUserEntity user = baseMapper.getByMobile(entity.getMobile());
|
||||
if (user != null && !user.getId().equals(entity.getId())) {
|
||||
throw new ServerException("手机号已经存在");
|
||||
}
|
||||
|
||||
// 更新用户
|
||||
updateById(entity);
|
||||
|
||||
// 删除用户缓存
|
||||
tokenStoreCache.deleteUser(TokenUtils.getAccessToken());
|
||||
}
|
||||
|
||||
@Override
|
||||
public void delete(List<Long> idList) {
|
||||
// 删除用户
|
||||
removeByIds(idList);
|
||||
|
|
Loading…
Reference in New Issue
Block a user