用户管理-角色部门配置
This commit is contained in:
+72
-10
@@ -184,13 +184,13 @@ public class SysUserController {
|
||||
} else {
|
||||
SysUser user = JSON.parseObject(jsonObject.toJSONString(), SysUser.class);
|
||||
user.setUpdateTime(new Date());
|
||||
//String passwordEncode = PasswordUtil.encrypt(user.getUsername(), user.getPassword(), sysUser.getSalt());
|
||||
user.setPassword(sysUser.getPassword());
|
||||
String passwordEncode = PasswordUtil.encrypt(user.getUsername(), user.getPassword(), sysUser.getSalt());
|
||||
user.setPassword(passwordEncode);
|
||||
// user.setPassword(sysUser.getPassword());
|
||||
String roles = jsonObject.getString("selectedroles");
|
||||
String departs = jsonObject.getString("selecteddeparts");
|
||||
sysUserService.editUserWithRole(user, roles);
|
||||
// 不允许修改部门
|
||||
// sysUserService.editUserWithDepart(user, departs);
|
||||
sysUserService.editUserWithDepart(user, departs);
|
||||
sysUserService.updateNullPhoneEmail();
|
||||
result.success("修改成功!");
|
||||
}
|
||||
@@ -201,6 +201,70 @@ public class SysUserController {
|
||||
return result;
|
||||
}
|
||||
|
||||
@ApiOperation(value = "用户管理-角色配置")
|
||||
@RequiresPermissions("user:role")
|
||||
@RequestMapping(value = "/setRole", method = RequestMethod.POST)
|
||||
public Result<SysUser> setRole(@RequestBody JSONObject jsonObject) {
|
||||
Result<SysUser> result = new Result<SysUser>();
|
||||
try {
|
||||
String ids = jsonObject.getString("ids");
|
||||
List<String> idList = Arrays.asList(ids.split(","));
|
||||
for (String id : idList) {
|
||||
SysUser sysUser = sysUserService.getById(id);
|
||||
baseCommonService.addLog("编辑用户角色,id: " + id, CommonConstant.LOG_TYPE_2, 2);
|
||||
if (sysUser == null) {
|
||||
result.error500("未找到对应实体");
|
||||
} else {
|
||||
SysUser user = new SysUser();
|
||||
user.setId(id);
|
||||
user.setUpdateTime(new Date());
|
||||
|
||||
String roles = jsonObject.getString("selectedroles");
|
||||
sysUserService.editUserWithRole(user, roles);
|
||||
result.success("修改成功!");
|
||||
}
|
||||
}
|
||||
|
||||
} catch (Exception e) {
|
||||
log.error(e.getMessage(), e);
|
||||
result.error500("操作失败");
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
@ApiOperation(value = "用户管理-部门配置")
|
||||
@RequiresPermissions("user:depart")
|
||||
@RequestMapping(value = "/setDepart", method = RequestMethod.POST)
|
||||
public Result<SysUser> setDepart(@RequestBody JSONObject jsonObject) {
|
||||
Result<SysUser> result = new Result<SysUser>();
|
||||
try {
|
||||
String ids = jsonObject.getString("ids");
|
||||
List<String> idList = Arrays.asList(ids.split(","));
|
||||
for (String id : idList) {
|
||||
SysUser sysUser = sysUserService.getById(id);
|
||||
baseCommonService.addLog("编辑用户部门,id: " + id, CommonConstant.LOG_TYPE_2, 2);
|
||||
if (sysUser == null) {
|
||||
result.error500("未找到对应实体");
|
||||
} else {
|
||||
SysUser user = new SysUser();
|
||||
user.setId(id);
|
||||
user.setUpdateTime(new Date());
|
||||
String departCodes = jsonObject.getString("selecteddepartCodes");
|
||||
user.setOrgCode(departCodes);
|
||||
|
||||
String departs = jsonObject.getString("selecteddeparts");
|
||||
sysUserService.editUserWithDepart(user, departs);
|
||||
result.success("修改成功!");
|
||||
}
|
||||
}
|
||||
} catch (Exception e) {
|
||||
log.error(e.getMessage(), e);
|
||||
result.error500("操作失败");
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 删除用户
|
||||
*/
|
||||
@@ -274,14 +338,11 @@ public class SysUserController {
|
||||
public Result<List<String>> queryUserRole(@RequestParam(name = "userid", required = true) String userid) {
|
||||
Result<List<String>> result = new Result<>();
|
||||
List<String> list = new ArrayList<String>();
|
||||
List<SysDepartRoleUser> departRoleUserList = departRoleUserService.list(new QueryWrapper<SysDepartRoleUser>().lambda().eq(SysDepartRoleUser::getUserId, userid));
|
||||
List<String> dRoleIdList = departRoleUserList.stream().map(SysDepartRoleUser::getDroleId).collect(Collectors.toList());
|
||||
List<SysDepartRole> userRole = departRoleService.list(new QueryWrapper<SysDepartRole>().lambda().in(SysDepartRole::getId, dRoleIdList));
|
||||
// List<SysUserRole> userRole = sysUserRoleService.list(new QueryWrapper<SysUserRole>().lambda().eq(SysUserRole::getUserId, userid));
|
||||
List<SysUserRole> userRole = sysUserRoleService.list(new QueryWrapper<SysUserRole>().lambda().eq(SysUserRole::getUserId, userid));
|
||||
if (userRole == null || userRole.size() <= 0) {
|
||||
result.error500("未找到用户相关角色信息");
|
||||
} else {
|
||||
for (SysDepartRole sysUserRole : userRole) {
|
||||
for (SysUserRole sysUserRole : userRole) {
|
||||
list.add(sysUserRole.getRoleId());
|
||||
}
|
||||
result.setSuccess(true);
|
||||
@@ -326,6 +387,7 @@ public class SysUserController {
|
||||
* 修改密码
|
||||
*/
|
||||
//@RequiresRoles({"admin"})
|
||||
@ApiOperation(value = "用户管理-修改密码")
|
||||
@RequiresPermissions("user:edit")
|
||||
@RequestMapping(value = "/changePassword", method = RequestMethod.PUT)
|
||||
public Result<?> changePassword(@RequestBody SysUser sysUser) {
|
||||
@@ -1540,7 +1602,7 @@ public class SysUserController {
|
||||
* 根据用户id查询用户接口 - 工作流服务专用
|
||||
*
|
||||
* @param id:用户id
|
||||
* @param reqFlag:请求标识 0 工作流服务请求
|
||||
* @param reqFlag:请求标识 0-工作流服务请求
|
||||
* @return
|
||||
*/
|
||||
@RequestMapping(value = "/getUserById", method = RequestMethod.GET)
|
||||
|
||||
+16
-16
@@ -137,7 +137,7 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||
@CacheEvict(value= {CacheConstant.SYS_USERS_CACHE}, allEntries=true)
|
||||
@Transactional
|
||||
public void editUserWithRole(SysUser user,String roles) {
|
||||
this.updateById(user);
|
||||
// this.updateById(user);
|
||||
//先删后加
|
||||
sysUserRoleMapper.delete(new QueryWrapper<SysUserRole>().lambda().eq(SysUserRole::getUserId, user.getId()));
|
||||
if(oConvertUtils.isNotEmpty(roles)) {
|
||||
@@ -328,21 +328,21 @@ public class SysUserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impl
|
||||
arr = departs.split(",");
|
||||
}
|
||||
//查询已关联部门
|
||||
List<SysUserDepart> userDepartList = sysUserDepartMapper.selectList(new QueryWrapper<SysUserDepart>().lambda().eq(SysUserDepart::getUserId, user.getId()));
|
||||
if(userDepartList != null && userDepartList.size()>0){
|
||||
for(SysUserDepart depart : userDepartList ){
|
||||
//修改已关联部门删除部门用户角色关系
|
||||
if(!Arrays.asList(arr).contains(depart.getDepId())){
|
||||
List<SysDepartRole> sysDepartRoleList = sysDepartRoleMapper.selectList(
|
||||
new QueryWrapper<SysDepartRole>().lambda().eq(SysDepartRole::getDepartId,depart.getDepId()));
|
||||
List<String> roleIds = sysDepartRoleList.stream().map(SysDepartRole::getId).collect(Collectors.toList());
|
||||
if(roleIds != null && roleIds.size()>0){
|
||||
departRoleUserMapper.delete(new QueryWrapper<SysDepartRoleUser>().lambda().eq(SysDepartRoleUser::getUserId, user.getId())
|
||||
.in(SysDepartRoleUser::getDroleId,roleIds));
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
// List<SysUserDepart> userDepartList = sysUserDepartMapper.selectList(new QueryWrapper<SysUserDepart>().lambda().eq(SysUserDepart::getUserId, user.getId()));
|
||||
// if(userDepartList != null && userDepartList.size()>0){
|
||||
// for(SysUserDepart depart : userDepartList ){
|
||||
// //修改已关联部门删除部门用户角色关系
|
||||
// if(!Arrays.asList(arr).contains(depart.getDepId())){
|
||||
// List<SysDepartRole> sysDepartRoleList = sysDepartRoleMapper.selectList(
|
||||
// new QueryWrapper<SysDepartRole>().lambda().eq(SysDepartRole::getDepartId,depart.getDepId()));
|
||||
// List<String> roleIds = sysDepartRoleList.stream().map(SysDepartRole::getId).collect(Collectors.toList());
|
||||
// if(roleIds != null && roleIds.size()>0){
|
||||
// departRoleUserMapper.delete(new QueryWrapper<SysDepartRoleUser>().lambda().eq(SysDepartRoleUser::getUserId, user.getId())
|
||||
// .in(SysDepartRoleUser::getDroleId,roleIds));
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
//先删后加
|
||||
sysUserDepartMapper.delete(new QueryWrapper<SysUserDepart>().lambda().eq(SysUserDepart::getUserId, user.getId()));
|
||||
if(oConvertUtils.isNotEmpty(departs)) {
|
||||
|
||||
-1
@@ -158,7 +158,6 @@ public class FindsDepartsChildrenUtil {
|
||||
sysDepartTreeModel.setOrgCategory(sysDepart.getOrgCategory());
|
||||
sysDepartTreeModel.setOrgType(sysDepart.getOrgType());
|
||||
sysDepartTreeModel.setOrgCode(sysDepart.getOrgCode());
|
||||
sysDepartTreeModel.setOrgCode(sysDepart.getParentCode());
|
||||
sysDepartTreeModel.setMobile(sysDepart.getMobile());
|
||||
sysDepartTreeModel.setFax(sysDepart.getFax());
|
||||
sysDepartTreeModel.setAddress(sysDepart.getAddress());
|
||||
|
||||
Reference in New Issue
Block a user