From 06c385a0860f8470cf3425a660b7bac29db27b6f Mon Sep 17 00:00:00 2001 From: zhangzhiqiang Date: Mon, 19 Dec 2022 17:41:44 +0800 Subject: [PATCH] user --- .../controller/user/UserController.java | 4 +-- .../system/service/dept/ISysDeptService.java | 1 + .../dept/dao/mapper/SysDeptMapper.java | 1 + .../service/dept/dao/mapper/SysDeptMapper.xml | 4 +++ .../service/dept/impl/SysDeptServiceImpl.java | 5 +++ .../system/service/role/ISysRoleService.java | 1 + .../role/dao/mapper/SysRoleMapper.java | 1 + .../service/role/dao/mapper/SysRoleMapper.xml | 6 ++++ .../service/role/impl/SysRoleServiceImpl.java | 14 +++++++-- .../system/service/user/ISysUserService.java | 2 ++ .../user/impl/ISysUserServiceImpl.java | 31 ++++++++++++++++--- nladmin-ui/src/api/system/menu.js | 1 - nladmin-ui/src/views/login.vue | 1 - nladmin-ui/src/views/system/menu/index.vue | 1 - nladmin-ui/src/views/system/user/index.vue | 1 - 15 files changed, 61 insertions(+), 13 deletions(-) diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/user/UserController.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/user/UserController.java index 60c64af..26d7f5a 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/user/UserController.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/controller/user/UserController.java @@ -80,8 +80,8 @@ public class UserController { @ApiOperation("修改用户") @PutMapping // @SaCheckPermission("user:edit") - public ResponseEntity update( @RequestBody SysUser resources) throws Exception { - userService.saveOrUpdate(resources); + public ResponseEntity update( @RequestBody Map resources) throws Exception { + userService.update(resources); return new ResponseEntity<>(HttpStatus.NO_CONTENT); } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/ISysDeptService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/ISysDeptService.java index c0f75d2..3e2df59 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/ISysDeptService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/ISysDeptService.java @@ -49,6 +49,7 @@ public interface ISysDeptService extends IService { * @param deptIds */ void saveUserDeptRelation(String UserId, Collection deptIds); + void delUserDeptRelation(String user); /** * 更新部门:同时更新节点 diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/dao/mapper/SysDeptMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/dao/mapper/SysDeptMapper.java index 02abb96..978d383 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/dao/mapper/SysDeptMapper.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/dao/mapper/SysDeptMapper.java @@ -24,6 +24,7 @@ public interface SysDeptMapper extends BaseMapper { * @param deptId */ void saveDeptRelation(@Param("user") String UserId,@Param("depts") Collection deptId); + void delDeptRelation(@Param("user") String UserId); List getDeptRelation(@Param("deptIds") Collection deptIds); diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/dao/mapper/SysDeptMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/dao/mapper/SysDeptMapper.xml index f625c4c..b5ec9e8 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/dao/mapper/SysDeptMapper.xml +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/dao/mapper/SysDeptMapper.xml @@ -8,6 +8,10 @@ (#{user},#{dept}) + + delete from sys_user_dept where user_id = #{user} + + update sys_dept set sub_count = (select m.count from (select count(*) count from sys_dept where pid = #{pid}) as m) diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/impl/SysDeptServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/impl/SysDeptServiceImpl.java index b15eb28..844dd04 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/impl/SysDeptServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/dept/impl/SysDeptServiceImpl.java @@ -113,6 +113,11 @@ public class SysDeptServiceImpl extends ServiceImpl impl sysDeptMapper.saveDeptRelation(userId,deptIds); } + @Override + public void delUserDeptRelation(String user) { + sysDeptMapper.delDeptRelation(user); + } + @Override @Transactional(rollbackFor = Exception.class) public void updateDept(SysDept dept) { diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/ISysRoleService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/ISysRoleService.java index be1e278..4570764 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/ISysRoleService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/ISysRoleService.java @@ -60,4 +60,5 @@ public interface ISysRoleService extends IService { * @param deptIds */ void saveUserRoleRelation(String UserId, List deptIds); + void delUserRoleRelation(String UserId); } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.java index 471f7ff..720e122 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.java @@ -21,6 +21,7 @@ import java.util.Set; public interface SysRoleMapper extends BaseMapper { void saveRoleRelation(@Param("user") String UserId, @Param("roles") Collection roles); + void delRoleRelation(@Param("user") String UserId); void deleteRoleMenuBatchRoleIds(Collection ids); diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.xml b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.xml index aad6a0a..63c6141 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.xml +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/dao/mapper/SysRoleMapper.xml @@ -8,6 +8,12 @@ (#{user},#{role}) + + delete from sys_users_roles where user_id = #{user} + + + + insert into sys_roles_menus values diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java index b73c99c..3bbb60b 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/role/impl/SysRoleServiceImpl.java @@ -7,10 +7,12 @@ import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.RequiredArgsConstructor; +import org.apache.commons.lang3.StringUtils; import org.nl.common.domain.query.PageQuery; import org.nl.modules.common.exception.BadRequestException; import org.nl.modules.common.utils.SecurityUtils; @@ -20,6 +22,7 @@ import org.nl.system.service.role.dao.mapper.SysRoleMapper; import org.nl.system.service.menu.dao.mapper.SysMenuMapper; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import java.util.*; @@ -133,8 +136,15 @@ public class SysRoleServiceImpl extends ServiceImpl impl } @Override - public void saveUserRoleRelation(String UserId, List deptIds) { - + public void saveUserRoleRelation(String user, List roles) { + if (StringUtils.isEmpty(user) || CollectionUtils.isEmpty(roles)){ + return; + } + roleMapper.saveRoleRelation(user,roles); } + @Override + public void delUserRoleRelation(String user) { + roleMapper.delRoleRelation(user); + } } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/ISysUserService.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/ISysUserService.java index a48292a..7e43a4a 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/ISysUserService.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/ISysUserService.java @@ -27,4 +27,6 @@ public interface ISysUserService extends IService { void create(Map userDetail); + void update(Map userDetail); + } diff --git a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/impl/ISysUserServiceImpl.java b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/impl/ISysUserServiceImpl.java index cd62fec..a9f181d 100644 --- a/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/impl/ISysUserServiceImpl.java +++ b/nladmin-system/nlsso-server/src/main/java/org/nl/system/service/user/impl/ISysUserServiceImpl.java @@ -6,6 +6,7 @@ import cn.hutool.core.util.StrUtil; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import lombok.SneakyThrows; +import org.apache.commons.lang3.StringUtils; import org.nl.common.domain.query.PageQuery; import org.nl.modules.common.config.FileProperties; import org.nl.modules.common.utils.FileUtil; @@ -25,13 +26,11 @@ import org.apache.commons.beanutils.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import org.springframework.util.CollectionUtils; import org.springframework.web.multipart.MultipartFile; import java.io.File; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Objects; +import java.util.*; /** *

@@ -94,7 +93,29 @@ public class ISysUserServiceImpl extends ServiceImpl imp deptService.saveUserDeptRelation(userId,(List)userDetail.get("depts")); }; if (userDetail.get("roles") !=null){ - roleService.saveUserRoleRelation(userId,(List)userDetail.get("depts")); + roleService.saveUserRoleRelation(userId,(List)userDetail.get("roles")); }; } + + @Override + @SneakyThrows + @Transactional + public void update(Map userDetail) { + if(CollectionUtils.isEmpty(userDetail)|| userDetail.get("userId")==null){ + return; + } + SysUser sysUser = new SysUser(); + BeanUtils.populate(sysUser,userDetail); + sysUser.setUpdateTime(new Date()); + sysUser.setUpdateId(SecurityUtils.getCurrentUserId()); + this.updateById(sysUser); + if (userDetail.get("depts") !=null){ + deptService.delUserDeptRelation(sysUser.getUserId()); + deptService.saveUserDeptRelation(sysUser.getUserId(),(List)userDetail.get("depts")); + }; + if (userDetail.get("roles") !=null){ + roleService.delUserRoleRelation(sysUser.getUserId()); + roleService.saveUserRoleRelation(sysUser.getUserId(),(List)userDetail.get("roles")); + } + } } diff --git a/nladmin-ui/src/api/system/menu.js b/nladmin-ui/src/api/system/menu.js index b6dd460..4e41436 100644 --- a/nladmin-ui/src/api/system/menu.js +++ b/nladmin-ui/src/api/system/menu.js @@ -25,7 +25,6 @@ export function getMenusByRole(params) { export function getMenuSuperior(ids) { const data = ids.length || ids.length === 0 ? ids : Array.of(ids) - debugger return request({ url: 'api/sysMenu/superior', method: 'post', diff --git a/nladmin-ui/src/views/login.vue b/nladmin-ui/src/views/login.vue index 51d2a3a..79835c5 100644 --- a/nladmin-ui/src/views/login.vue +++ b/nladmin-ui/src/views/login.vue @@ -133,7 +133,6 @@ export default { Cookies.remove('rememberMe') } this.$store.dispatch('Login', user).then(() => { - debugger this.loading = false window.location.href = this.redirect // if (this.redirect === 'http://localhost:8013/dashboard'){ diff --git a/nladmin-ui/src/views/system/menu/index.vue b/nladmin-ui/src/views/system/menu/index.vue index f0b64ed..3150b9e 100644 --- a/nladmin-ui/src/views/system/menu/index.vue +++ b/nladmin-ui/src/views/system/menu/index.vue @@ -259,7 +259,6 @@ export default { }, 100) }, getSupDepts(menuId) { - debugger crudMenu.getMenuSuperior(menuId).then(res => { const children = res.map(function(obj) { if (!obj.leaf && !obj.children) { diff --git a/nladmin-ui/src/views/system/user/index.vue b/nladmin-ui/src/views/system/user/index.vue index d84001f..19b2359 100644 --- a/nladmin-ui/src/views/system/user/index.vue +++ b/nladmin-ui/src/views/system/user/index.vue @@ -477,7 +477,6 @@ export default { userRoles = [] const _this = this if (form.roles !== null && form.roles.length > 0) { - debugger form.roles.forEach(function(role, index) { _this.roleDatas.push(role) const rol = { id: role }