From db9393b18251742bd522563e687d9b638f1dba10 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=BE=90=E7=8E=89=E7=A5=A5?= Date: Mon, 6 Mar 2023 22:47:13 +0800 Subject: [PATCH] =?UTF-8?q?=E3=80=90=E6=9B=B4=E6=96=B0=E3=80=91=E5=AE=8C?= =?UTF-8?q?=E5=96=84=E5=AF=BC=E5=87=BAword=E7=9A=84=E5=9B=BE=E7=89=87?= =?UTF-8?q?=E6=98=BE=E7=A4=BA=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../user/service/impl/SysUserServiceImpl.java | 19 ++++++++++++++---- .../main/resources/userExportTemplate.docx | Bin 18188 -> 16405 bytes .../src/test/java/vip/xiaonuo/Test.java | 18 ++--------------- 3 files changed, 17 insertions(+), 20 deletions(-) diff --git a/snowy-plugin/snowy-plugin-sys/src/main/java/vip/xiaonuo/sys/modular/user/service/impl/SysUserServiceImpl.java b/snowy-plugin/snowy-plugin-sys/src/main/java/vip/xiaonuo/sys/modular/user/service/impl/SysUserServiceImpl.java index 33bc825b..ba7a7944 100644 --- a/snowy-plugin/snowy-plugin-sys/src/main/java/vip/xiaonuo/sys/modular/user/service/impl/SysUserServiceImpl.java +++ b/snowy-plugin/snowy-plugin-sys/src/main/java/vip/xiaonuo/sys/modular/user/service/impl/SysUserServiceImpl.java @@ -1003,13 +1003,17 @@ public class SysUserServiceImpl extends ServiceImpl impl } String fileName = "SNOWY2.0系统B端用户信息清单.xlsx"; List sysUserList = this.list(queryWrapper); + if(ObjectUtil.isEmpty(sysUserList)) { + throw new CommonException("无数据可导出"); + } transService.transBatch(sysUserList); sysUserList = CollectionUtil.sort(sysUserList, Comparator.comparing(SysUser::getOrgId)); List sysUserExportResultList = sysUserList.stream() .map(sysUser -> { SysUserExportResult sysUserExportResult = new SysUserExportResult(); BeanUtil.copyProperties(sysUser, sysUserExportResult); - sysUserExportResult.setGroupName(sysUserExportResult.getOrgName()); + sysUserExportResult.setGroupName(ObjectUtil.isNotEmpty(sysUserExportResult.getOrgName())? + sysUserExportResult.getOrgName():"无组织"); // 状态枚举转为文字 sysUserExportResult.setUserStatus(sysUserExportResult.getUserStatus() .equalsIgnoreCase(SysUserStatusEnum.ENABLE.getValue())?"正常":"停用"); @@ -1124,13 +1128,20 @@ public class SysUserServiceImpl extends ServiceImpl impl File.separator + "userExportTemplate.docx")); // 构造填充的参数 Map map = BeanUtil.beanToMap(sysUser); - map.put("avatar", new ImageEntity(ImgUtil.toBytes(ImgUtil.toImage(StrUtil.split(sysUser.getAvatar(), - StrUtil.COMMA).get(1)), ImgUtil.IMAGE_TYPE_PNG), 120, 160)); + String avatarBase64; + if(ObjectUtil.isNotEmpty(sysUser.getAvatar())) { + avatarBase64 = sysUser.getAvatar(); + } else { + avatarBase64 = CommonAvatarUtil.generateImg(sysUser.getAvatar()); + } + ImageEntity imageEntity = new ImageEntity(ImgUtil.toBytes(ImgUtil.toImage(StrUtil + .split(avatarBase64, StrUtil.COMMA).get(1)), ImgUtil.IMAGE_TYPE_PNG), 120, 160); + map.put("avatar", imageEntity); map.put("exportDateTime", DateUtil.format(DateTime.now(), DatePattern.CHINESE_DATE_PATTERN)); // 生成doc XWPFDocument doc = WordExportUtil.exportWord07(destTemplateFile.getAbsolutePath(), map); // 生成临时导出文件 - resultFile = FileUtil.file(FileUtil.getTmpDir() + File.separator + sysUser.getName() + "个人信息.docx"); + resultFile = FileUtil.file(FileUtil.getTmpDir() + File.separator + "SNOWY2.0系统B端用户信息_" + sysUser.getName() + ".docx"); // 写入 BufferedOutputStream outputStream = FileUtil.getOutputStream(resultFile); doc.write(outputStream); diff --git a/snowy-plugin/snowy-plugin-sys/src/main/resources/userExportTemplate.docx b/snowy-plugin/snowy-plugin-sys/src/main/resources/userExportTemplate.docx index acd4457534407dfff21870aec395e5144aa6ad6e..983604a3e40a2eb081d73b16274f92a21bb8b977 100644 GIT binary patch delta 11133 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 delta 12918 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 I(Z9I=2eBGmb^rhX diff --git a/snowy-web-app/src/test/java/vip/xiaonuo/Test.java b/snowy-web-app/src/test/java/vip/xiaonuo/Test.java index b59a9b55..d84ca2e6 100644 --- a/snowy-web-app/src/test/java/vip/xiaonuo/Test.java +++ b/snowy-web-app/src/test/java/vip/xiaonuo/Test.java @@ -12,11 +12,6 @@ */ package vip.xiaonuo; -import com.alibaba.excel.EasyExcel; -import com.alibaba.excel.read.listener.PageReadListener; -import vip.xiaonuo.common.exception.CommonException; -import vip.xiaonuo.sys.modular.user.param.SysUserImportParam; - /** * TestMain方法 * @@ -24,16 +19,7 @@ import vip.xiaonuo.sys.modular.user.param.SysUserImportParam; * @date 2022/9/17 17:10 */ public class Test { - public static void main(String[] args) { - try { - EasyExcel.read("D://import.xlsx", SysUserImportParam.class, new PageReadListener(dataList -> { - for (SysUserImportParam sysUserImportParam : dataList) { - System.out.println(sysUserImportParam); - } - })).sheet().headRowNumber(2).doRead(); - } catch (Exception e) { - e.printStackTrace(); - throw new CommonException("文件导入失败"); - } + public static void main(String[] args) throws Exception { + } }