Commit a43dbc42 authored by huyuchen's avatar huyuchen

hyc 用户菜单字典调整

parent 0e019ad1
...@@ -108,4 +108,13 @@ public interface ErrorCodes { ...@@ -108,4 +108,13 @@ public interface ErrorCodes {
*/ */
String SYS_ROLE_UPDATE_SYSTEM = "sys.role.update.system"; String SYS_ROLE_UPDATE_SYSTEM = "sys.role.update.system";
/**
* 系统内置用户不允许删除
*/
String SYS_USER_DELETE_SYSTEM = "sys.user.delete.system";
/**
* 系统内置用户不允许修改
*/
String SYS_USER_UPDATE_SYSTEM = "sys.user.update.system";
} }
...@@ -117,6 +117,9 @@ public class SysUser extends BaseEntity { ...@@ -117,6 +117,9 @@ public class SysUser extends BaseEntity {
@Schema(description = "邮箱") @Schema(description = "邮箱")
private String email; private String email;
@Schema(description = "是否是系统内置")
private String systemFlag;
/** /**
* 0-正常,1-删除 * 0-正常,1-删除
*/ */
......
...@@ -122,4 +122,9 @@ public class UserVO implements Serializable { ...@@ -122,4 +122,9 @@ public class UserVO implements Serializable {
* 邮箱 * 邮箱
*/ */
private String email; private String email;
/**
* 是否是系统内置
*/
private String systemFlag;
} }
...@@ -19,14 +19,19 @@ package com.yifu.cloud.plus.v1.yifu.admin.service.impl; ...@@ -19,14 +19,19 @@ package com.yifu.cloud.plus.v1.yifu.admin.service.impl;
import cn.hutool.core.util.StrUtil; import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysRole;
import com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysRoleMenu; import com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysRoleMenu;
import com.yifu.cloud.plus.v1.yifu.admin.mapper.SysRoleMenuMapper; import com.yifu.cloud.plus.v1.yifu.admin.mapper.SysRoleMenuMapper;
import com.yifu.cloud.plus.v1.yifu.admin.service.SysRoleMenuService; import com.yifu.cloud.plus.v1.yifu.admin.service.SysRoleMenuService;
import com.yifu.cloud.plus.v1.yifu.admin.service.SysRoleService;
import com.yifu.cloud.plus.v1.yifu.common.core.constant.CacheConstants; import com.yifu.cloud.plus.v1.yifu.common.core.constant.CacheConstants;
import com.yifu.cloud.plus.v1.yifu.common.core.exception.ErrorCodes;
import com.yifu.cloud.plus.v1.yifu.common.core.util.MsgUtils;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.cache.CacheManager; import org.springframework.cache.CacheManager;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert;
import java.util.Arrays; import java.util.Arrays;
import java.util.List; import java.util.List;
...@@ -47,6 +52,8 @@ public class SysRoleMenuServiceImpl extends ServiceImpl<SysRoleMenuMapper, SysRo ...@@ -47,6 +52,8 @@ public class SysRoleMenuServiceImpl extends ServiceImpl<SysRoleMenuMapper, SysRo
private final CacheManager cacheManager; private final CacheManager cacheManager;
private final SysRoleService sysRoleService;
/** /**
* @param roleId 角色 * @param roleId 角色
* @param menuIds 菜单ID拼成的字符串,每个id之间根据逗号分隔 * @param menuIds 菜单ID拼成的字符串,每个id之间根据逗号分隔
...@@ -55,6 +62,11 @@ public class SysRoleMenuServiceImpl extends ServiceImpl<SysRoleMenuMapper, SysRo ...@@ -55,6 +62,11 @@ public class SysRoleMenuServiceImpl extends ServiceImpl<SysRoleMenuMapper, SysRo
@Override @Override
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean saveRoleMenus(Long roleId, String menuIds) { public Boolean saveRoleMenus(Long roleId, String menuIds) {
SysRole sysRole = sysRoleService.getById(roleId);
String roleType = "0";
// 系统内置
Assert.state(!roleType.equals(sysRole.getSystemFlag()),
MsgUtils.getMessage(ErrorCodes.SYS_ROLE_UPDATE_SYSTEM));
this.remove(Wrappers.<SysRoleMenu>query().lambda().eq(SysRoleMenu::getRoleId, roleId)); this.remove(Wrappers.<SysRoleMenu>query().lambda().eq(SysRoleMenu::getRoleId, roleId));
if (StrUtil.isBlank(menuIds)) { if (StrUtil.isBlank(menuIds)) {
......
...@@ -96,15 +96,6 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl ...@@ -96,15 +96,6 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
userRole.setRoleId(roleId); userRole.setRoleId(roleId);
return userRole; return userRole;
}).forEach(sysUserRoleMapper::insert); }).forEach(sysUserRoleMapper::insert);
// 保存用户岗位信息
// Optional.ofNullable(userDto.getPost()).ifPresent(posts -> {
// posts.stream().map(postId -> {
// SysUserPost userPost = new SysUserPost();
// userPost.setUserId(sysUser.getUserId());
// userPost.setPostId(postId);
// return userPost;
// }).forEach(sysUserPostMapper::insert);
// });
return Boolean.TRUE; return Boolean.TRUE;
} }
...@@ -171,6 +162,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl ...@@ -171,6 +162,10 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
if (null == user){ if (null == user){
return Boolean.FALSE; return Boolean.FALSE;
} }
String type = "0";
// 系统内置
Assert.state(!type.equals(sysUser.getSystemFlag()),
MsgUtils.getMessage(ErrorCodes.SYS_USER_DELETE_SYSTEM));
sysUserRoleMapper.deleteByUserId(sysUser.getUserId()); sysUserRoleMapper.deleteByUserId(sysUser.getUserId());
this.removeById(sysUser.getUserId()); this.removeById(sysUser.getUserId());
return Boolean.TRUE; return Boolean.TRUE;
...@@ -181,6 +176,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl ...@@ -181,6 +176,11 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
public Boolean updateUserInfo(UserDTO userDto) { public Boolean updateUserInfo(UserDTO userDto) {
UserVO userVO = baseMapper.getUserVoByUsername(userDto.getUsername()); UserVO userVO = baseMapper.getUserVoByUsername(userDto.getUsername());
String type = "0";
// 系统内置
Assert.state(!type.equals(userDto.getSystemFlag()),
MsgUtils.getMessage(ErrorCodes.SYS_USER_UPDATE_SYSTEM));
Assert.isTrue(ENCODER.matches(userDto.getPassword(), userVO.getPassword()), Assert.isTrue(ENCODER.matches(userDto.getPassword(), userVO.getPassword()),
MsgUtils.getMessage(ErrorCodes.SYS_USER_UPDATE_PASSWORDERROR)); MsgUtils.getMessage(ErrorCodes.SYS_USER_UPDATE_PASSWORDERROR));
...@@ -198,6 +198,12 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl ...@@ -198,6 +198,12 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@CacheEvict(value = CacheConstants.USER_DETAILS, key = "#userDto.username") @CacheEvict(value = CacheConstants.USER_DETAILS, key = "#userDto.username")
public Boolean updateUser(UserDTO userDto) { public Boolean updateUser(UserDTO userDto) {
String userType = "0";
// 系统内置
Assert.state(!userType.equals(userDto.getSystemFlag()),
MsgUtils.getMessage(ErrorCodes.SYS_USER_UPDATE_SYSTEM));
SysUser sysUser = new SysUser(); SysUser sysUser = new SysUser();
BeanUtils.copyProperties(userDto, sysUser); BeanUtils.copyProperties(userDto, sysUser);
sysUser.setUpdateTime(LocalDateTime.now()); sysUser.setUpdateTime(LocalDateTime.now());
......
...@@ -23,6 +23,7 @@ ...@@ -23,6 +23,7 @@
<result column="role_name" property="roleName"/> <result column="role_name" property="roleName"/>
<result column="role_code" property="roleCode"/> <result column="role_code" property="roleCode"/>
<result column="role_desc" property="roleDesc"/> <result column="role_desc" property="roleDesc"/>
<result column="system_flag" property="systemFlag"/>
<result column="create_time" property="createTime"/> <result column="create_time" property="createTime"/>
<result column="update_time" property="updateTime"/> <result column="update_time" property="updateTime"/>
<result column="del_flag" property="delFlag"/> <result column="del_flag" property="delFlag"/>
...@@ -38,6 +39,7 @@ ...@@ -38,6 +39,7 @@
r.role_name, r.role_name,
r.role_code, r.role_code,
r.role_desc, r.role_desc,
r.system_flag,
r.del_flag, r.del_flag,
r.create_time, r.create_time,
r.update_time, r.update_time,
......
...@@ -35,6 +35,7 @@ ...@@ -35,6 +35,7 @@
<result column="user_group" property="userGroup"/> <result column="user_group" property="userGroup"/>
<result column="post" property="post"/> <result column="post" property="post"/>
<result column="email" property="email"/> <result column="email" property="email"/>
<result column="system_flag" property="systemFlag"/>
<collection property="roleList" ofType="com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysRole" <collection property="roleList" ofType="com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysRole"
select="com.yifu.cloud.plus.v1.yifu.admin.mapper.SysRoleMapper.listRolesByUserId" column="user_id"> select="com.yifu.cloud.plus.v1.yifu.admin.mapper.SysRoleMapper.listRolesByUserId" column="user_id">
</collection> </collection>
...@@ -58,6 +59,7 @@ ...@@ -58,6 +59,7 @@
<result column="user_group" property="userGroup"/> <result column="user_group" property="userGroup"/>
<result column="post" property="post"/> <result column="post" property="post"/>
<result column="email" property="email"/> <result column="email" property="email"/>
<result column="system_flag" property="systemFlag"/>
<collection property="roleList" ofType="com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysRole"> <collection property="roleList" ofType="com.yifu.cloud.plus.v1.yifu.admin.api.entity.SysRole">
<id column="role_id" property="roleId"/> <id column="role_id" property="roleId"/>
<result column="role_name" property="roleName"/> <result column="role_name" property="roleName"/>
...@@ -85,6 +87,7 @@ ...@@ -85,6 +87,7 @@
sys_user.user_group AS userGroup, sys_user.user_group AS userGroup,
sys_user.post, sys_user.post,
sys_user.email, sys_user.email,
sys_user.system_flag AS systemFlag,
r.role_id, r.role_id,
r.role_name, r.role_name,
r.role_code, r.role_code,
...@@ -108,6 +111,7 @@ ...@@ -108,6 +111,7 @@
sys_user.user_group AS userGroup, sys_user.user_group AS userGroup,
sys_user.post, sys_user.post,
sys_user.email, sys_user.email,
sys_user.system_flag AS systemFlag,
r.role_id, r.role_id,
r.role_name, r.role_name,
r.role_code, r.role_code,
...@@ -153,6 +157,7 @@ ...@@ -153,6 +157,7 @@
sys_user.user_group AS userGroup, sys_user.user_group AS userGroup,
sys_user.post, sys_user.post,
sys_user.email, sys_user.email,
sys_user.system_flag AS systemFlag,
sys_dept.name AS deptName sys_dept.name AS deptName
FROM sys_user FROM sys_user
LEFT JOIN sys_dept ON sys_dept.dept_id = sys_user.dept_id LEFT JOIN sys_dept ON sys_dept.dept_id = sys_user.dept_id
...@@ -182,6 +187,7 @@ ...@@ -182,6 +187,7 @@
u.group, u.group,
u.user_group userGroup, u.user_group userGroup,
u.email, u.email,
u.system_flag systemFlag,
d.name AS deptName d.name AS deptName
FROM sys_user u FROM sys_user u
LEFT JOIN sys_dept d ON d.dept_id = u.dept_id LEFT JOIN sys_dept d ON d.dept_id = u.dept_id
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment