|
|
@@ -580,6 +580,9 @@ public class SysUserServiceImpl implements ISysUserService {
|
|
580
|
580
|
// 工作区域字典数据
|
|
581
|
581
|
Map<String, String> workAreaDictDataMap = getDictDataValueKeyMap("work_area");
|
|
582
|
582
|
|
|
|
583
|
+ // 角色列表
|
|
|
584
|
+ List<SysRole> sysRoleList = roleMapper.selectRoleList(new SysRole());
|
|
|
585
|
+
|
|
583
|
586
|
int successNum = 0;
|
|
584
|
587
|
int failureNum = 0;
|
|
585
|
588
|
StringBuilder successMsg = new StringBuilder();
|
|
|
@@ -636,6 +639,12 @@ public class SysUserServiceImpl implements ISysUserService {
|
|
636
|
639
|
}
|
|
637
|
640
|
}
|
|
638
|
641
|
|
|
|
642
|
+ List<Long> roleIdList = Collections.emptyList();
|
|
|
643
|
+ if (StrUtil.isNotEmpty(user.getRoleNames())) {
|
|
|
644
|
+ List<String> roleNameList = Arrays.stream(user.getRoleNames().split(",")).collect(Collectors.toList());
|
|
|
645
|
+ roleIdList = sysRoleList.stream().filter(sysRole -> roleNameList.contains(sysRole.getRoleName())).map(SysRole::getRoleId).distinct().collect(Collectors.toList());
|
|
|
646
|
+ }
|
|
|
647
|
+
|
|
639
|
648
|
// 验证是否存在这个用户
|
|
640
|
649
|
SysUser u = userMapper.selectUserByUserName(user.getUserName());
|
|
641
|
650
|
if (StringUtils.isNull(u)) {
|
|
|
@@ -645,6 +654,11 @@ public class SysUserServiceImpl implements ISysUserService {
|
|
645
|
654
|
user.setPassword(SecurityUtils.encryptPassword(password));
|
|
646
|
655
|
user.setCreateBy(operName);
|
|
647
|
656
|
userMapper.insertUser(user);
|
|
|
657
|
+ // 删除+新增用户与角色关联
|
|
|
658
|
+ if (CollUtil.isNotEmpty(roleIdList)) {
|
|
|
659
|
+ userRoleMapper.deleteUserRoleByUserId(user.getUserId());
|
|
|
660
|
+ insertUserRole(user.getUserId(), roleIdList.toArray(new Long[0]));
|
|
|
661
|
+ }
|
|
648
|
662
|
successNum++;
|
|
649
|
663
|
successMsg.append("<br/>" + successNum + "、账号 " + user.getUserName() + " 导入成功");
|
|
650
|
664
|
} else if (isUpdateSupport) {
|
|
|
@@ -655,6 +669,11 @@ public class SysUserServiceImpl implements ISysUserService {
|
|
655
|
669
|
user.setUserId(u.getUserId());
|
|
656
|
670
|
user.setUpdateBy(operName);
|
|
657
|
671
|
userMapper.updateUser(user);
|
|
|
672
|
+ // 删除+新增用户与角色关联
|
|
|
673
|
+ if (CollUtil.isNotEmpty(roleIdList)) {
|
|
|
674
|
+ userRoleMapper.deleteUserRoleByUserId(user.getUserId());
|
|
|
675
|
+ insertUserRole(user.getUserId(), roleIdList.toArray(new Long[0]));
|
|
|
676
|
+ }
|
|
658
|
677
|
successNum++;
|
|
659
|
678
|
successMsg.append("<br/>" + successNum + "、账号 " + user.getUserName() + " 更新成功");
|
|
660
|
679
|
} else {
|