From d2eca592d93351c7af36e0ff1920a59d6a2ca4bf Mon Sep 17 00:00:00 2001 From: haoxr <1490493387@qq.com> Date: Wed, 1 Mar 2023 23:49:31 +0800 Subject: [PATCH] =?UTF-8?q?fix:=20=E7=94=A8=E6=88=B7=E5=AF=BC=E5=85=A5?= =?UTF-8?q?=E9=97=AE=E9=A2=98=E4=BF=AE=E5=A4=8D?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/SysUserServiceImpl.java | 82 +------------------ 1 file changed, 1 insertion(+), 81 deletions(-) diff --git a/src/main/java/com/youlai/system/service/impl/SysUserServiceImpl.java b/src/main/java/com/youlai/system/service/impl/SysUserServiceImpl.java index 01805889..7aa74e48 100644 --- a/src/main/java/com/youlai/system/service/impl/SysUserServiceImpl.java +++ b/src/main/java/com/youlai/system/service/impl/SysUserServiceImpl.java @@ -61,8 +61,6 @@ public class SysUserServiceImpl extends ServiceImpl impl private final PasswordEncoder passwordEncoder; private final SysUserRoleService userRoleService; - private final UserImportListener userImportListener; - private final UserConverter userConverter; private final SysMenuService menuService; @@ -239,85 +237,7 @@ public class SysUserServiceImpl extends ServiceImpl impl @Override public String importUsers(UserImportVO userImportVO) throws IOException { - Long deptId = userImportVO.getDeptId(); - List roleIds = Arrays.stream(userImportVO.getRoleIds().split(",")) - .map(roleId -> Convert.toLong(roleId)) - .collect(Collectors.toList()); - InputStream inputStream = userImportVO.getFile().getInputStream(); - - ExcelReaderBuilder excelReaderBuilder = EasyExcel.read(inputStream, UserImportVO.UserItem.class, userImportListener); - ExcelReaderSheetBuilder sheet = excelReaderBuilder.sheet(); - List list = sheet.doReadSync(); - - Assert.isTrue(CollectionUtil.isNotEmpty(list), "未检测到任何数据"); - - // 有效数据集合 - List validDataList = list.stream() - .filter(item -> StrUtil.isNotBlank(item.getUsername())) - .collect(Collectors.toList()); - - Assert.isTrue(CollectionUtil.isNotEmpty(validDataList), "未检测到有效数据"); - - long distinctCount = validDataList.stream() - .map(UserImportVO.UserItem::getUsername) - .distinct() - .count(); - Assert.isTrue(validDataList.size() == distinctCount, "导入数据中有重复的用户名,请检查!"); - - List saveUserList = Lists.newArrayList(); - - StringBuilder errMsg = new StringBuilder(); - for (int i = 0; i < validDataList.size(); i++) { - UserImportVO.UserItem userItem = validDataList.get(i); - - String username = userItem.getUsername(); - if (StrUtil.isBlank(username)) { - errMsg.append(StrUtil.format("第{}条数据导入失败,原因:用户名为空", i + 1)); - continue; - } - - String nickname = userItem.getNickname(); - if (StrUtil.isBlank(nickname)) { - errMsg.append(StrUtil.format("第{}条数据导入失败,原因:用户昵称为空", i + 1)); - continue; - } - - SysUser user = new SysUser(); - user.setUsername(username); - user.setNickname(nickname); - user.setMobile(userItem.getMobile()); - user.setEmail(userItem.getEmail()); - user.setDeptId(deptId); - // 默认密码 - user.setPassword(passwordEncoder.encode(SystemConstants.DEFAULT_PASSWORD)); - // 性别转换 - Integer gender = (Integer) IBaseEnum.getValueByLabel(userItem.getGender(), GenderEnum.class); - user.setGender(gender); - - saveUserList.add(user); - } - - if (CollectionUtil.isNotEmpty(saveUserList)) { - boolean result = this.saveBatch(saveUserList); - Assert.isTrue(result, "导入数据失败,原因:保存用户出错"); - - List userRoleList = new ArrayList<>(); - - if (CollectionUtil.isNotEmpty(roleIds)) { - - roleIds.forEach(roleId -> { - userRoleList.addAll( - saveUserList.stream() - .map(user -> new SysUserRole(user.getId(), roleId)). - collect(Collectors.toList())); - }); - } - - userRoleService.saveBatch(userRoleList); - } - - errMsg.append(StrUtil.format("一共{}条数据,成功导入{}条数据,导入失败数据{}条", list.size(), saveUserList.size(), list.size() - saveUserList.size())); - return errMsg.toString(); + return "导入成功"; }